Skip to content

Commit dfc958e

Browse files
authored
docs(MOC-65): 精简 v2.1.17 release notes 至硬性 2500-3200 (#311)
原 6711 字节(超上限 3200 的 209%),违反 release notes 硬性标准 (feedback_release_notes_template:固定 2500-3200,无弹性)。重写为 单综合主题 + 5 条 bullets 中英镜像,现 3062 字节(对齐 v2.1.7 标杆 3013)。 校验:wc -c=3062 / grep '^### '=4 / 强调字符=0 / 禁忌=0。 Refs MOC-65
1 parent f05e49a commit dfc958e

1 file changed

Lines changed: 20 additions & 30 deletions

File tree

release-notes/v2.1.17.md

Lines changed: 20 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -2,50 +2,40 @@
22

33
## 中文
44

5-
### tool_search 工具链打通 + MCP 授权可移植保险箱 + Usage 命中率 + Code Graph + 一批稳定性修复
5+
### tool_search 工具链打通 + MCP 授权可移植保险箱 + Usage 命中率与稳定性修复
66

7-
本版自 v2.1.16 起合入 16 个 PR:打通 Codex 0.130+ 的 `tool_search` MCP 工具全链路、把 MCP 授权做成可移植可恢复的保险箱、补齐 Usage 缓存命中率可视化与 Code Graph 自动生成,并收掉一批真机暴露的稳定性 bug
7+
本版自 v2.1.16 起合入 16 个 PR:打通 Codex 0.130+ 的 `tool_search` MCP 工具链、把 MCP 授权做成可移植可恢复的保险箱,并补 Usage 缓存命中率与一批稳定性修复
88

9-
主要改动:
9+
本版改动:
1010

11-
- `tool_search` 工具链全链路(#289 / #290 / #291 / #293 / MOC-48 #296):Codex 0.130+ 把 server-side MCP 工具(`mcp__notion__*` / `mcp__linear__*` 等)defer 到 `tool_search`、不再直接进 `tools[]`,代理此前会 silently drop。现已在 chat 路径打通:从 `tool_search_output` 发现工具 → 注入 chat `tools[]` → 按 `namespace` 路由回上游;新增 dropped-tools 计数器 dashboard + observability 加固,README 兼容矩阵补说明。
12-
- MCP 授权可移植保险箱(MOC-62 #307,默认开):把 Codex MCP OAuth 凭据改存为可移植文件 `~/.codex/.credentials.json`(0o600),并在 `~/.codex` 之外维护镜像 `~/.codex-app-transfer/mcp-credentials.json`。整个凭据文件被切账号 / 误删 / 换机清掉时,下次启动弹确认让你从备份恢复;单个 server 的主动登出会被尊重、绝不复活。不解决 OAuth 自然过期(过期仍需重新授权);token 明文落盘(0o600,Codex 官方支持的模式)。
13-
- Usage 缓存命中率(#305):按对话视图显示每对话缓存命中率,点数字弹出逐轮命中率直方图(命中含于总计、双色,hover 看命中 / 总输入 / 输出);proxy 本地记录 `session → 真实上游模型`,按对话模型列显示真实上游模型而非 Codex 客户端占位名 `gpt-5.x`(本版本之后的新对话)。
14-
- Code Graph 自动生成 + Pages 部署(MOC-52 #298 / #300,#297 加 README 链接):`cargo metadata` 自动生成交互式 crate 依赖图,GitHub Actions 直接部署到 Pages(无 gh-pages 分支、不提交 main);下载量趋势 SVG 同址发布。
15-
- `apply_patch` chat 路径长文档信封修复(#303):长文档编辑场景下非破坏性修正 patch 信封,避免长文档 diff 失败。
16-
- 启动防白屏(#257):前端初始化链加 try-catch,`config.json` 锁 / 损坏 / 权限问题不再让整条初始化断裂导致白屏,getSettings 失败时回退默认值保证 UI 可用。
17-
- `model_catalog.json` 自动同步(#266 / #287):改 model 或重启 Codex 时自动同步 catalog,避免模型清单与实际配置不一致。
18-
- 关闭桌面宠物开关真正生效(MOC-34 #286):关掉自动唤醒 Codex 桌面宠物后 pet 真正关闭,不再残留。
19-
- 杂项修复(MOC-54 #306):残留配置扫描改 await auto_apply 落盘消除启动竞态(修复清掉残留、重启又报残留的根因);致谢概览长度改 CI 门禁强制(`README.md` ≤ 20 字 / `README.en.md` ≤ 40 字);活跃度图单点态渲染 grid + marker 不再空荡。
20-
- 修若干 fetch 失败场景(#285)。
11+
- `tool_search` 工具链全链路:Codex 0.130+ 把 server-side MCP 工具 defer 到 `tool_search`、不再直接进 `tools[]`,代理此前会 silently drop;现 chat 路径打通(发现 → 注入 → 按 `namespace` 路由回上游),并加 dropped-tools 计数器与 observability。
12+
- MCP 授权可移植保险箱(默认开):凭据改存可移植 `~/.codex/.credentials.json` 并维护 `~/.codex` 外镜像,整文件被切账号 / 误删 / 换机清掉时下次启动弹确认恢复,单 server 主动登出不复活;不解决 OAuth 过期。
13+
- Usage 缓存命中率:按对话显示命中率与逐轮命中率直方图,模型列显示真实上游模型而非 `gpt-5.x` 占位。
14+
- Code Graph 自动生成:`cargo metadata` 出交互式 crate 依赖图,GitHub Actions 部署到 Pages。
15+
- 稳定性修复:`apply_patch` chat 长文档信封、启动防白屏 try-catch、`model_catalog.json` 自动同步、关闭桌面宠物开关真正生效、残留扫描启动竞态与活跃度图单点态。
2116

2217
### 验证
2318

2419
- `cargo fmt --all -- --check`
25-
- `cargo test --workspace` + `cargo test -p codex-app-transfer`
26-
- CI 全绿(含新增 `docs-acknowledgements` 致谢长度门禁)
20+
- `cargo test --workspace`
21+
- `cargo test -p codex-app-transfer`
2722

2823
## English
2924

30-
### tool_search tool-chain wired end-to-end + portable MCP auth vault + Usage hit rate + Code Graph + stability fixes
25+
### tool_search tool chain wired + portable MCP auth vault + Usage hit rate and stability fixes
3126

32-
This release merges 16 PRs since v2.1.16: wires the Codex 0.130+ `tool_search` MCP tool chain end-to-end, turns MCP authorization into a portable, recoverable vault, adds Usage cache-hit-rate visualization and automatic Code Graph generation, and clears a batch of field-surfaced stability bugs.
27+
This release merges 16 PRs since v2.1.16: it wires the Codex 0.130+ `tool_search` MCP tool chain, turns MCP authorization into a portable recoverable vault, and adds Usage cache-hit-rate plus a batch of stability fixes.
3328

34-
Changes:
29+
Changes in this release:
3530

36-
- `tool_search` tool chain end-to-end (#289 / #290 / #291 / #293 / MOC-48 #296): Codex 0.130+ defers server-side MCP tools (`mcp__notion__*` / `mcp__linear__*`, etc.) to `tool_search` instead of putting them directly in `tools[]`; the proxy used to silently drop them. Now wired on the chat path: discover tools from `tool_search_output` → inject into chat `tools[]` → route back upstream by `namespace`; added a dropped-tools counter dashboard + observability hardening, with the README compatibility matrix updated.
37-
- Portable MCP auth vault (MOC-62 #307, on by default): stores Codex MCP OAuth credentials in a portable file `~/.codex/.credentials.json` (mode 0o600) and keeps a mirror outside `~/.codex` at `~/.codex-app-transfer/mcp-credentials.json`. When the whole file is wiped by an account switch / accidental delete / new machine, the next launch prompts you to restore from backup; an intentional per-server logout is respected and never resurrected. Does not fix natural OAuth expiry (expired tokens still need re-authorization); tokens are stored in plaintext (mode 0o600, a Codex-supported mode).
38-
- Usage cache hit rate (#305): the by-conversation view shows each conversation's cache hit rate; clicking the number opens a per-prompt hit-rate histogram (cached contained within total, two-tone; hover for cached / total input / output). The proxy locally records `session → real upstream model`, so the model column shows the real upstream model instead of Codex's `gpt-5.x` placeholder (for conversations after this version).
39-
- Automatic Code Graph + Pages deploy (MOC-52 #298 / #300, #297 adds the README link): `cargo metadata` generates an interactive crate dependency graph deployed straight to Pages via GitHub Actions (no gh-pages branch, no commits to main); the download-trend SVG is published at the same site.
40-
- `apply_patch` chat-path long-document envelope fix (#303): non-destructive envelope correction for long-document edits, avoiding failed long-document diffs.
41-
- White-screen guard on startup (#257): the frontend init chain is wrapped in try-catch so a locked / corrupt / permission-denied `config.json` no longer breaks the whole init into a white screen; getSettings falls back to defaults to keep the UI usable.
42-
- Automatic `model_catalog.json` sync (#266 / #287): the catalog auto-syncs when changing model or restarting Codex, avoiding drift between the model list and actual config.
43-
- Desktop-pet toggle truly takes effect (MOC-34 #286): turning off the auto-wake Codex desktop pet now actually disables it.
44-
- Misc fixes (MOC-54 #306): the residual-config scan now awaits auto_apply persistence to remove a startup race (the root cause of "clean the residue, restart, residue reappears"); acknowledgement-overview length is now CI-enforced (`README.md` ≤ 20 chars / `README.en.md` ≤ 40 chars); the activity chart renders a grid + marker in its single-point state instead of looking empty.
45-
- Several fetch-failure fixes (#285).
31+
- `tool_search` tool chain: Codex 0.130+ defers server-side MCP tools to `tool_search` instead of `tools[]`, which the proxy used to silently drop; the chat path is now wired (discover, inject, route back by `namespace`), with a dropped-tools counter and observability.
32+
- Portable MCP auth vault (on by default): credentials move to a portable `~/.codex/.credentials.json` with a mirror kept outside `~/.codex`; if the whole file is wiped by an account switch, delete, or new machine, the next launch prompts to restore, while an intentional per-server logout is respected; OAuth expiry is not solved.
33+
- Usage cache hit rate: per-conversation hit rate with a per-prompt histogram, and the real upstream model shown instead of the `gpt-5.x` placeholder.
34+
- Code Graph: `cargo metadata` generates an interactive crate dependency graph deployed to Pages via GitHub Actions.
35+
- Stability fixes: `apply_patch` long-document envelope on the chat path, white-screen try-catch on startup, automatic `model_catalog.json` sync, the desktop-pet toggle truly disabling, and the residual-scan startup race plus activity-chart single-point state.
4636

4737
### Verification
4838

4939
- `cargo fmt --all -- --check`
50-
- `cargo test --workspace` + `cargo test -p codex-app-transfer`
51-
- CI green (including the new `docs-acknowledgements` length gate)
40+
- `cargo test --workspace`
41+
- `cargo test -p codex-app-transfer`

0 commit comments

Comments
 (0)