feat: 接入后端同分支后台热更新 - #570
Conversation
There was a problem hiding this comment.
Sorry @ClozyA, your pull request is larger than the review limit of 150,000 diff characters
1d60246 to
73ee85b
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 1d60246364
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| "后端更新自动在后台下载,准备好后提示下次启动生效,无需中断当前任务", | ||
| "Runtime 更新至 v0.1.3,并暂时隐藏设置页中无效的后端日期信息", |
There was a problem hiding this comment.
Collapse the changelog into one user-facing entry
This PR adds two separate changelog records, and the second exposes implementation details such as the Runtime version. Repository policy requires exactly one concise, user-facing record per PR, so combine these lines into a single description of the observable update behavior.
AGENTS.md reference: AGENTS.md:L31-L32
Useful? React with 👍 / 👎.
| if (!result.success) { | ||
| backendLogs.value = result.logs || '' | ||
| throw new Error(result.error || t('init.backend.failedTitle')) |
There was a problem hiding this comment.
Expose Runtime remediation for startup preparation failures
When a staged same-branch update is applied during the next managed startup, backendStart() can now fail with DEPENDENCY_SYNC_FAILED or ENVIRONMENT_BROKEN and return remediation such as rebuild-environment. This panel discards those structured fields and retains only the message and logs, while its Retry button merely invokes backendStart() again; because an already-initialized installation re-enters directly at the backend step, the existing dependency repair actions are never reachable, leaving users stuck retrying the same failed bootstrap or skipping into a broken environment.
Useful? React with 👍 / 👎.
| if (progress.progress !== undefined) { | ||
| state.progress = Math.min(100, Math.max(0, Math.round(progress.progress))) | ||
| } |
There was a problem hiding this comment.
Preserve progress across zero-valued phase transitions
In the legacy/off initialization path, installers emit nonzero progress for one phase and then emit progress: 0 when moving from checks to download or installation (for example, environment checking reaches 50 before download starts at 0). Assigning every zero unconditionally makes the single step progress bar jump backward, whereas the replaced flow explicitly ignored zero updates once progress had begun; retain the current value or switch to an indeterminate phase instead of resetting the displayed step percentage.
Useful? React with 👍 / 👎.
变更
dev分支的后端同分支后台热更新生产实现v0.1.3unknown的后端日期,并保留后端哈希信息res/version.json记录本次用户可见变更提交
origin/dev线性重建验证
yarn lint --max-warnings 1yarn typecheckyarn build:maingit diff --check