v1.0.3: improve session sync and update installation - #104
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: f8b617d92c
ℹ️ 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".
| // Installation is the user's decision. Storage checks and write draining | ||
| // belong to Core operations / normal shutdown, never update admission. |
There was a problem hiding this comment.
Drain active Watch work before quitting for installation
When Watch is running and happens to be inside its detached background sync, this new path calls quitAndInstall without stopping or draining it. apps/desktop/src/runtime/index.ts only aborts and awaits entries in the request active map during shutdown (lines 84–92), but startWatch returns after registering a long-lived handle, so subsequent Watch sync work is absent from that map; process.exit(0) can therefore terminate a rollout/SQLite mutation mid-write without producing the required partial outcome. User-directed installation need not be vetoed, but normal shutdown must explicitly stop and await registered watches before exiting.
AGENTS.md reference: AGENTS.md:L64-L64
Useful? React with 👍 / 👎.
|
|
||
| <p align="center"> | ||
| <img src="images/README/provider-metadata-sync-flow.png" alt="Provider 元数据同步示意:保持当前配置不变,将会话文件与 SQLite 索引从 Provider A 对齐到 Provider B" width="760"> | ||
| <img src="images/README/provider-metadata-sync-flow-zh.png" alt="Provider 元数据同步示意:保持当前配置不变,将会话文件与 SQLite 索引从 Provider A 对齐到 Provider B" width="760"> |
There was a problem hiding this comment.
Avoid promising that synchronized sessions can resume
Each newly embedded localized diagram labels the post-sync outcome as “Session can resume” (and equivalents in Chinese, Japanese, and Korean), even though Provider alignment does not guarantee continuation when the destination Provider/account cannot decrypt encrypted_content or has other compatibility problems. Because this prominent visual contradicts the caveat immediately above it, replace the outcome with a claim limited to metadata alignment rather than session usability.
AGENTS.md reference: AGENTS.md:L15-L17
Useful? React with 👍 / 👎.
| </div> | ||
|
|
||
| <p align="center"> | ||
| <img src="../images/README/provider-metadata-sync-flow-en.png" alt="Sync session files and the SQLite index from Provider A to Provider B while keeping the current configuration unchanged" width="760"> |
There was a problem hiding this comment.
Keep localized artwork out of the runtime tarball
The root package publishes the entire images/README directory, so adding four roughly 1.5 MiB PNGs makes every CLI/Web npm installation download documentation artwork that is never used at runtime. Comparing npm pack --dry-run --json --ignore-scripts at the parent and this commit shows the compressed package growing from about 2.28 MiB to 7.50 MiB; optimize these images or exclude localized README assets from the published runtime package.
Useful? React with 👍 / 👎.
| ### 26.3 自动更新 | ||
|
|
||
| 启动检查按用户确认调整为每天首次启动一次(本地日期,延迟15秒,持久化去重),失败或无新版静默;只有更高版本才弹窗提示。没有循环检查,持续运行跨日也不自动触发;手动按钮保留,不自动下载或安装。旧Windows .NET单EXE更新不能直接迁移到Electron多文件产物,首次需手动安装或另做过渡升级器。 | ||
| 启动检查按用户确认调整为每天首次启动一次(本地日期,延迟5秒,持久化去重),失败或无新版静默;只有更高版本才弹窗提示。没有循环检查,持续运行跨日也不自动触发;手动按钮保留,不自动下载或安装。旧Windows .NET单EXE更新不能直接迁移到Electron多文件产物,首次需手动安装或另做过渡升级器。 |
There was a problem hiding this comment.
Reconcile the updater baseline with ADR-0046
This section is updated to the new five-second policy, but its adjacent active guidance still says not to install during writes and to forbid update restarts during pending recovery (lines 1982–1983), directly contradicting ADR-0046 and the implementation introduced here. Amend or explicitly mark those bullets as superseded so the vNext baseline does not present the removed install gate as the target behavior.
AGENTS.md reference: AGENTS.md:L9-L13
Useful? React with 👍 / 👎.
| - 安装版:`CodexProviderSync-1.0.3-windows-x64-setup.exe`。 | ||
| - 便携版:`CodexProviderSync-1.0.3-windows-x64-portable.zip`,完整解压后运行 `Codex Provider Sync.exe`。 | ||
| - [官方 Release](https://github.com/Dailin521/codex-provider-sync/releases/tag/v1.0.3) 提供 SHA-256、SBOM 和容器验收文件。 | ||
| - 每天首次启动后约 **5 秒**自动检查一次更新;也可随时手动检查。 |
There was a problem hiding this comment.
Restore the manual-upgrade warning for version 1.0.1
For installed version 1.0.1, the update check is known to fail, so those users cannot reach the newly advertised download/install flow. This rewrite removes both the prior v1.0.3 upgrade section and the root README warning that told affected users to install a newer package manually once, while this line now advertises automatic checking without qualification; retain that migration instruction in the current release notes so stranded users know how to upgrade.
AGENTS.md reference: AGENTS.md:L91-L91
Useful? React with 👍 / 👎.
用户可见变化\n\n- 问题会话单独跳过,正常会话继续同步;支持更大的会话首行。\n- 下载完成后由用户决定是否重启安装,首次自动检查更新缩短为约 5 秒。\n- 更新中文、英文、日文、韩文首页说明和同步示意图。\n\n## 本地验证\n\n-
pm run desktop:test\n-
pm run desktop:build\n-
pm run desktop:verify-production-bundle\n- Windows 安装版与便携版生产验收:Sync → Restore、混合数据和大首行通过。