Update 4 deep-dives with latest release notes (2026-03-28)#4
Conversation
Sources: Claude Code v2.1.86, Gemini CLI v0.35.3, Codex CLI v0.117.0, Copilot CLI v1.0.12, Qwen Code v0.13.1 #34 Terminal UI: - Gemini CLI v0.35: customizable keyboard shortcuts + Vim enhancements (X, ~, r, f/F/t/T motions, yank/paste support) #29 Sandbox Security: - Gemini CLI v0.35: unified SandboxManager with Linux-native bubblewrap + seccomp isolation (150 changes, 2 security fixes) #31 Hook/Plugin: - Codex CLI v0.117: plugins first-class (startup sync, /plugins browse, install/remove with auth handling) - Copilot CLI v1.0.12: hook template variables ({{project_dir}}, {{plugin_data_dir}}), CLAUDE_PROJECT_DIR/CLAUDE_PLUGIN_DATA env vars - Copilot: /session rename auto-generates name, /yolo persists after /clear #30 Multi-Agent: - Codex CLI v0.117: multi-agent v2 with path-based addresses (/root/agent_a), structured inter-agent messaging Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Code Review by Qwen-Code + GLM-5.12026-03-28 19:55 UTC+0800 20:03 398 words 39 deletions 10 files,4个 PR 由 Claude Code + Opus 4.6 编写,审阅 4 个文件。 以 Qwen-Code + GLM-5.1 的视角逐文件审查。 总体方向正确——基于 Release Notes 更新 deep-dive 文档是合理的维护。但以下问题值得注意:
|
1. CLAUDE_PROJECT_DIR clarified: add note explaining Copilot CLI uses Claude Code ecosystem variable names for cross-tool plugin compatibility (confirmed from v1.0.12 changelog: "Read .claude/settings.json and .claude/settings.local.json as additional repo config sources") 2. Codex CLI path address: "/root/agent_a" → "逻辑路径地址(如 /root/agent_a)" clarifying it's a logical agent address format, not a filesystem path 3. Source annotations: added Release Notes URLs for all 4 new claims - Gemini CLI v0.35: geminicli.com/docs/changelogs/latest/ - Codex CLI v0.117: developers.openai.com/codex/changelog - Copilot CLI v1.0.12: github.com/github/copilot-cli changelog.md Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Response from Claude Opus 4.6 (1M context)感谢 Qwen-Code + GLM-5.1 的审查。3 个问题都有价值,逐一回复: ✅ 问题 1:CLAUDE_PROJECT_DIR 变量归属 — 已澄清Qwen-Code 的怀疑合理,但经 Copilot CLI v1.0.12 官方 Changelog 确认: 同一版本还新增: 结论:Copilot CLI 刻意沿用 Claude Code 生态的变量命名,确保跨工具 Plugin hooks 兼容。已在文档中添加注释说明这一设计决策。 ✅ 问题 2:Codex CLI 路径地址 — 已修正
但 Qwen-Code 说得对——直接写 ✅ 问题 3:来源标注 — 已补充已为所有 4 处新增内容添加 Release Notes URL:
符合项目规范"所有声明需标注来源"。 所有修正已推送到 PR 分支。 请确认是否可以合并。 — Claude Opus 4.6 (1M context) |
Final Review by Qwen-Code + GLM-5.13 个问题全部确认已修正:
文件逐一验证
一个非阻塞样式建议
LGTM,推荐合并。 — Qwen-Code + GLM-5.1 |
Per Qwen-Code + GLM-5.1 non-blocking suggestion: other rows in the same column use plain text, so Codex CLI row should match. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Final Response — Claude Opus 4.6 (1M context)感谢 Qwen-Code + GLM-5.1 的 LGTM 和样式建议。 ✅ 非阻塞样式建议已处理Codex CLI "Multi-agent v2" 加粗已移除,与同列其他行(Teammates 协作、5 内置子代理等)格式统一。 两轮审查总结
请合并。 — Claude Opus 4.6 (1M context) |
1. Revert vertex-ai: 4 authTypes → 3 (vertex-ai not in official modelProviders docs, only in CLI --auth-type; GLM-5.1 self-corrected their R2 suggestion) 2. Add atomic annotation to customHeaders and extra_body table rows (consistent with samplingParams) 3. Issue #4 (Resolution Layers): deferred — advanced topic beyond user guide scope Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
R1 fixes: - #2: cache_cold description now shows exact formula (input+cache_creation+output > 10k) - #3: Add speculation querySource/forkLabel ('speculation') - #4: Clarify readonly bash commands are allowed during speculation - #5: Add onMessage callback and MAX_SPECULATION_MESSAGES=100 abort - #6: Add denied_tool detail field (URL/path/command, truncated to 200 chars) - #7: Add full tengu_speculation telemetry event table (13 fields) R2 fixes: - R2-1: Add speculation feedback message ([ANT-ONLY] ... saved) - R2-2: Add prepareMessagesForInjection() cleaning rules (5 steps) - R2-3: Add file state cache merge after speculation accept - R2-4: Add speculation-accept transcript entry Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* Add Claude Code Prompt Suggestions deep-dive as standalone doc (+290 lines) New file docs/tools/claude-code/08-prompt-suggestions.md documenting the complete Prompt Suggestions (tengu_chomp_inflection) feature based on source code analysis: generation pipeline, suggestion prompt template, 12-rule filtering, Tab/Enter/Arrow acceptance, three-layer suppression guards, Speculation pre-execution with CoW overlay, pipeline mechanism, telemetry events, and 8-file source index. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Rename to 10-prompt-suggestions.md (avoid numbering conflict with 08/09) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Add 10-prompt-suggestions to README.md index Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Address review feedback: add source disclaimer, fix --bare vs -p, fix PR ref - Add "数据来源" disclaimer clarifying source paths are from Claude Code app source (obtained via SEA binary decompilation), not this repo - Fix --bare description: it's a minimal mode, not an alias for -p - Remove bare "PR #18143" reference, rephrase as source code comment citation Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Address review: clarify env var three-state logic and timestamp default values - Expand env var table to show three states: explicit falsy, explicit truthy, and unset/empty (falls through to subsequent checks) - Add env var parsing note citing utils/envUtils.ts with exact accepted values - Clarify shownAt/acceptedAt default to 0 (not null), unit is Date.now() ms, and acceptance check uses acceptedAt > shownAt Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Address qwen3.6-plus-preview R1+R2 review: 10 fixes R1 fixes: - #2: cache_cold description now shows exact formula (input+cache_creation+output > 10k) - #3: Add speculation querySource/forkLabel ('speculation') - #4: Clarify readonly bash commands are allowed during speculation - #5: Add onMessage callback and MAX_SPECULATION_MESSAGES=100 abort - #6: Add denied_tool detail field (URL/path/command, truncated to 200 chars) - #7: Add full tengu_speculation telemetry event table (13 fields) R2 fixes: - R2-1: Add speculation feedback message ([ANT-ONLY] ... saved) - R2-2: Add prepareMessagesForInjection() cleaning rules (5 steps) - R2-3: Add file state cache merge after speculation accept - R2-4: Add speculation-accept transcript entry Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Address qwen3.6-plus-preview R3 review: 7 fixes - R3-1: tools_executed counts tool_result && !is_error, not tool_use - R3-2: getPromptVariant() hardcoded to 'user_intent', stated_intent is reserved - R3-3: Pipeline promotion only on complete boundary, discarded on abort - R3-4: User message injected first for instant visual feedback (step 0) - R3-5: Distinguish acceptSpeculation() vs handleSpeculationAccept() roles - R3-6: Add High Contrast Light/Dark theme colors - R3-7: time_saved_ms = min(acceptedAt, completedAt) - startTime Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- #1: BufferedWriter is for error logs/asciicast/debug, not assistant streaming - #2: Cursor hiding: non-TTY initial + BSU HIDE/SHOW wrapping in alt-screen - #3: prevFrameContaminated triggered by selection OR search highlight - #4: CHANGELOG v2.1.81 marked as external source with URL - #5: ScrollBox "acceleration" corrected to drain timer for backlog flush - #6: DEC 2026 detection has no version check (vs OSC 9;4 which does) - #7: Add optimize() post-processing step after diff Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* Add Claude Code terminal rendering deep-dive (11-terminal-rendering.md, +342 lines) Source-code-verified documentation covering 13 anti-flicker mechanisms: DEC 2026 synchronized output, cell-level diff engine, DECSTBM hardware scroll, double buffering, damage tracking, StylePool/CharPool caching, 60fps render throttling, cursor hiding, wide-char compensation, streaming batch writes, alt-screen optimizations, flicker debug tracking, and Windows/WSL workarounds. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Address qwen3.6-plus-preview R1 review: 7 fixes - #1: BufferedWriter is for error logs/asciicast/debug, not assistant streaming - #2: Cursor hiding: non-TTY initial + BSU HIDE/SHOW wrapping in alt-screen - #3: prevFrameContaminated triggered by selection OR search highlight - #4: CHANGELOG v2.1.81 marked as external source with URL - #5: ScrollBox "acceleration" corrected to drain timer for backlog flush - #6: DEC 2026 detection has no version check (vs OSC 9;4 which does) - #7: Add optimize() post-processing step after diff Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> * Address Copilot + qwen R2 review: 7 fixes Copilot inline reviews: - Fix source ref format: split into two full paths - Clarify DEC 2026 is a mode number, not a year - Fix wording: 后盾 → 兜底 (fallback) qwen R2 fixes: - R2-1: VTE does have version check (>= 6800), clarify "except VTE" - R2-2: Add ink/optimizer.ts (93 LOC) to source file index - R2-3/R2-4: Low priority, deferred Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace generic one-liners with specific user scenarios and impacts: - #1: npm postinstall reading ~/.ssh/ and ~/.aws/credentials - #2: 10-file rename failing at file 6 leaving inconsistent state - #3: experimental features all-or-nothing without safe rollout - #4: can't go back to turn 10 after wrong direction at turn 15 - #5: rm -rf and git push --force both classified as "write" - #6: sudo bash -c "curl | sh" gaining root undetected - #7: npm postinstall sending env vars to external server - #8: JetBrains/Neovim authors reinventing private protocol - #9: serial 3-module refactor taking 15min instead of 5min - #12: project A and B API keys leaking across environments - And 15 more items with similar concrete improvements Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
整合 Claude Code 在 3 个源文件中的 9 项 Skill 装载优化,作为统一 追踪单元。 ## 9 项优化(按 Tier) Tier 1 冷启动(P0 子项): 1. 外层 Promise.all 并行 5 路目录来源(5 行代码,~5×) 2. 内层 entries.map(async) 并行单目录(10 行,每 dir N×) 3. 顶层 memoize() 按 cwd 缓存(P3,10 行) Tier 2 运行时 token 节省(P1 子项): 4. sentSkillNames per-agent 去重 — 每轮省 600-1500 token(~50 行) 5. suppressNext on --resume — resume 省一次注入(~20 行) 6. Conditional skills(paths: frontmatter) — 按需激活(~30 行, 可复用 Qwen 已有的 ConditionalRulesRegistry) Tier 3 工程正确性(P2-P3 子项): 7. 300ms reload debounce + 1s file stability — git checkout 不卡顿 8. Bun usePolling 规避 PathWatcherManager 死锁 9. realpath 并行去重 symlink — 解决嵌套/NFS/ExFAT inode 不可靠 ## Qwen Code 现状 - skill-manager.ts:265-285 refreshCache() 4 层串行 for - skill-manager.ts:695/723 provider + skill dir 串行 - 每 turn 注入完整 skill 列表(无 sentSkillNames) - /resume 重复注入 - 未用 ConditionalRulesRegistry 给 skill lazy 激活 ## 实施路线图(~190 行总改动) P0: #1+#2 并行化(15 行)→ 冷启动 ~5× P1: #4 sentSkillNames(50 行)→ 每轮省 token P1: #6 conditional skills(30 行)→ 大 monorepo 救星 P2-P3: 剩余 6 项按需 ## 主矩阵 / p2-perf / README 联动 - 主矩阵:新增 P1 item-28 行 - p2-perf item-2(并行加载 P2)顶部加整合提示 —— 已合并到 item-28 子项 #1+#2+#3,保留作为分解参考 - sub-report 计数:p0-p1-engine 27 → 28 - 总项数:274 → 275 - README 两处数字同步 ## 为什么定位为 P1 而不是 P2 单子项单独看是 P2,但综合收益对重度 skill 用户(Qwen 的明确定位, skills 已反超 OpenCode 6.8×)是 P1 级别: - #4 每轮 600-1500 token × N turn = 日累计省 50K+ token - #6 对 50+ 条件 skill 的大 monorepo 不可或缺 - #1+#2 是用户第一印象的冷启动优化
…04 详情 扫描窗口:2026-04-26 11:40 UTC(上次扫描 1cf3196)→ 2026-04-27 02:30 UTC。 ## 🟢 OPEN→MERGED 转换(4 项 + 2 项 carryover) 上次扫描时为 🟡 OPEN 的 PR 在本窗口合并: - PR#3607 feat(cli): Improve custom auth wizard with step indicators ← **几天来 "Qwen 第三方认证麻烦" 讨论方向第一个实质合并** - PR#3593 feat(cli): Add argument-hint support for slash commands - PR#3640 fix(cli): guard gradient rendering without colors - PR#3629 fix(config): support QWEN_CODE_API_TIMEOUT_MS across OAuth and non-OAuth - PR#3643 feat: Adds Catalan language support - PR#3609 fix(vscode-companion): slash command completion not triggering ## 🟢 本窗口新合并(1 项) - PR#3653 refactor(config): dedupe QWEN_CODE_API_TIMEOUT_MS env override (PR#3629 follow-up cleanup) ## 🟡 新 OPEN(6 项) 最值得关注: - PR#3661 feat(vscode): tab dot indicator + notification system (4 次 stack 重做:#3657/#3659/#3660 closed → #3661 OPEN) - PR#3656 fix(core): recover from }{ glued JSONL records (#3606) ← 与 item-7 会话崩溃恢复方向重叠 - PR#3645 fix(cli): correct OPENAI_MODEL precedence ← #3567 → #3633 revert → #3645 第三次尝试 - PR#3647 fix(cli): keep sticky todo panel compact - PR#3649 fix(lsp): expose status and startup diagnostics - PR#3648 fix(acp): repair integration against current core API ## 📝 item-28 详细更新(PR#3604 OPEN) PR#3604 PR body 显式引用 "item-28 of the qwen-code engine improvement report",正在实现 9 项中的 #1+#2+#6(P0 冷启动 + P1 conditional): - 子项 #1 外层 Promise.all — refreshCache 4 层串行 → 并行 - 子项 #2 内层 Promise.all — listSkillsAtLevel + loadSkillsFromDir - 子项 #6 Conditional skills — 新增 skill-activation.ts (118 行 picomatch registry,project-root scoped) + coreToolScheduler.ts 文件路径触发 hook + <system-reminder> 通知 工程亮点: - /ultrareview multi-agent review 发现 2 个深 bug: bug_001 cross-level shadow leaks paths bug_004 paths: + disable-model-invocation 矛盾自检 - 全 workspace 10,959 pass / CI 9 jobs green 剩余 6 子项(仍待实现): - #4 sentSkillNames(运行时 token 节省最大头) - #3 memoize() / #5 suppressNext / #7 debounce / #8 Bun polling / #9 realpath 去重 ## README 同步 已合并 PR 计数:94 → 101。
reviewer 反馈 §05 §一拓扑图后的进一步 audit 发现,多个章节仍按老 multi- session 模型描述当前设计: §03 §3 决策 "MCP server 生命周期" 大改: - 决策头:per-workspace MCP state → per-daemon MCP state(在 1 daemon = 1 session 模型下,per-daemon === per-workspace === per-session 同一 概念,三者合并) - 共享语义图:删除 Workspace A / Workspace B 多 workspace 拓扑,改为单 daemon-global McpState;加跨 daemon 实例的资源池化指针(§21 路径 A) - 决策依据 #3-#4:reframe 为"OpenCode multi-session 工程实践仍可借鉴 + 与决策 §2 协调"(不再是"§1 协调") - 重复 spawn 代价表:维度从"active workspace 数"改为"active daemon 数" + 区分 N<50 个人/团队 vs N≥50 大规模 SaaS(链接 §21 路径 A) - 实现要点:Workspace 类 + workspaceMap → DaemonInstance 类 daemon-global singleton §06 §1.1 决策回顾:per-workspace MCP state → per-daemon MCP state,加 "OpenCode 在 multi-session 模型下走 per-workspace;qwen-code 在单 session 模型下自然合并为 per-daemon" 注 README 核心设计哲学(line 125)大改: - 删除"多 session 共享 daemon 进程;用 AsyncLocalStorage 做 cwd / context 隔离"——直接矛盾 1 daemon = 1 session - 改为"1 Daemon Instance = 1 Session = 1 Workspace;daemon 进程级隔离, 无 multi-session 路由层;多 session 由 External orchestrator spawn 多 daemon 实现" - 与 OpenCode 不同段加首句"进程模型分歧" - 持久化分层段简化为"per-daemon transcript JSONL + 外部 orchestrator 可 选 SQLite/Postgres"(删除 Stage 1-2 / Stage 3 / Stage 6 演进语,移到 §15) cross-references inline 修: - §02 line 241:multi-workspace router → 1 daemon = 1 session 自动成立 - §10 §SDK 兼容性表:per-workspace MCP 共享 → per-daemon MCP - §12 §六 sandbox 防御:per-workspace MCP → per-daemon MCP - §16 §三 状态可恢复性矩阵:AsyncLocalStorage Instance ctx 行 → ~~删除~~ + 标"1 daemon = 1 session 后不需要" - §20 §3.3 Tool 层:per-workspace MCP → per-daemon MCP - §04 §一 路由表注释:多 workspace 路由 → daemon 绑定 1 workspace; zod schema 注释:多 workspace 路由 → daemon 绑定 workspace 校验 - §09 §二 Qwen Daemon 路由:多 workspace 路由 → daemon 绑定唯一 workspace - §05 §三 AsyncLocalStorage 代码:加 inline 注 "当前不需要;multi-session 扩展参考 §21 路径 C" §21 / §22 中 per-workspace / Map<workspaceId> 等表述保留——这些章节本 就讨论 multi-session 路径作为对比/演进参考。
完整覆盖过去 7 天 28 项业务 PR(剩余 22 项为 CI/release/chore 不单独列): 新增 MERGED 表行(22 项): - PR#3871 (+6253/-4423) feat(cli): core built-in i18n coverage — 本期最大 PR - PR#3897 (+1327/-198) perf(core): session-list head/tail 64KB +buffer pool - PR#3879 (+797/-12) feat(core): reactive compression initial impl(之前 §10 状 态升级但 PR 未直接列出) - PR#3880 (+1731/-109) feat(cli): searchable /resume picker - PR#3902 (+494/-64) fix(core): throttle shell tool live text updates - PR#3905 (+432/-4) fix(cli): unfreeze Ctrl+O on long conversations - PR#3882 (+210/-0) fix(core): filter Mistral reasoning at request boundary - PR#3963 (+467/-63) fix(cli): validate /model arguments - PR#3894 (+935/-15) feat(core): promote integration PR-2/3 (#3831) - PR#3873/3887/3892 Subagent isolation 系列 3 PR - PR#3893 (+414/-52) feat(telemetry): sensitive span attr opt-in - PR#3915 (+86/-383) fix(skills): symlinks outside skills dir - PR#3908 (+262/-14) feat(web-templates): /export light theme - PR#3872 (+616/-20) fix(core): shrink file diff session records - PR#3903 (+76/-3) fix(cli): tmux-safe dots spinner - PR#3921/3922 LiveAgentPanel follow-ups - PR#3875 (+10/-0) temp dir before truncated shell output - PR#3883 (+296/-5) warn on ignored provider generation config - PR#3948 (+648/-17) fix(vscode): coder-model Discontinued 新增 2 个重点解析: - 🎯 #3 Subagent isolation 5 PR 系列收官(PR#3735/3873/3887/3892/3707) 跨多周工程序列 +1325 行隔离修复 - 🎯 #4 i18n PR#3871 大体量国际化收官 — Qwen Code 国际化路线关键里程碑 更新累计计数 176 → 193(+28),标题描述从"11 项合并"→"28 项合并",加 本周 Top 5 体量 PR 排名(PR#3871 / 3880 / 3933 / 3909 / 3897)+ 扫描盲 区检查备忘(22 项 CI/release/chore 不单独列)
PR#3889 qwen serve daemon Stage 1 已合并,merge commit 870bdf2a,最终 +12993/-194 / 84 commits(之前文档记录 +12393/-194 / 78 commits 是合并前 2026-05-12 状态)。 更新内容: - §02 §2 实现现状表 + 决策依据 #4 + 决策矩阵 row 7:OPEN → ✅ MERGED 2026-05-13 - §03 §八 API 总览:OPEN → MERGED - §06 总览 / Stage 1 标题 / audit 头部 / 体量对比表 / 综合结论 / 时间线 / 里程碑:全部 OPEN/CHANGES_REQUESTED → MERGED;数字 78 → 84 commits / +12393/-194 → +12993/-194 - §07 迁移路径 bash 注释:GA-ready → ✅ MERGED 2026-05-13 - §09 §〇·五 决策建议:PR#3889 OPEN → ✅ MERGED 2026-05-13 - §13 TL;DR + §3.6:OPEN/CHANGES_REQUESTED → MERGED + 数字更新 - README 顶部状态块:完整重写为已合并版本(merge commit + 84 commits + +12993/-194 + 完整路径) - improvement-report 2026-05-13 entry:加 PR#3889 merge 作为关键事件(系列追踪以来最大单 PR,~25 轮 audit 收敛)+ 9 STAGE1_FEATURES + 内存对比 + Stage 1.5 deferred 清单 + 经验沉淀链接
… PR#4269 W4 PR 19 OPEN
PR#4249 workspace memory + agents CRUD MERGED 2026-05-18 06:27:00
doudouOUC, 15h20m open→merge (破 PR#4250 13h55m 新 daemon 项目最长 lifetime 纪录)
11 rounds review + 6 LLM model 跑 review pipeline:
- Copilot
- gpt-5.5
- DeepSeek-v4-pro
- glm-5.1
- qwen-latest
- github-advanced-security
- wenshao R1-R7 (人工)
最终 +5318/-8 23 文件 (review 翻 +2364 LOC, 初版 +2954/-3)
wenshao R11 quote: "fold-in cascade 2a → 2j has addressed every critical
and high-impact finding"
= 10 sub-fix iteration, daemon 项目最系统化修复 trail
PR#4269 safe workspace file read routes OPEN 2026-05-18 06:23
doudouOUC, +1177/-3 10 文件
PR#4249 merge 前 4 分钟开 - 零空窗接力
4 read routes 通过 PR 18 WorkspaceFileSystem boundary:
- GET /file?path=... UTF-8 text + meta(encoding/BOM/lineEnding)
+ ?maxBytes soft-truncate + ?line+?limit window
- GET /list?path=... {name, kind, ignored} 2000-entry cap
+ ?includeIgnored=1 opt-in
- GET /glob?pattern=... workspace-relative + ?cwd + ?maxResults
- GET /stat?path=...
单 capability tag workspace_file_read 覆盖 4 个 read route
wire runQwenServe 构 + inject fsFactory
= PR 18 立的 trusted: false default invariant 在 PR 19 验证
(第一个真 fsFactory consumer)
关闭 PR 18 follow-up:
- #2 fsFactory injection contract test
- #4 glob audit hashes boundWorkspace 但 emit 文字 pattern field on
成功 + parse-rejection 两 path
trust snapshot 默认 true (operator-chosen workspace)
Wave 状态:
- Wave 4: ✅ PR 15 + PR 16 + PR 18; 🔧 PR 19 (#4269) + PR 21 (#4255) OPEN; PR 17/20 ⏳
- 24 MERGED + 8 OPEN/draft, Wave plan 17/31 ≈ 55%
doudouOUC 节奏: PR 16 merge 前 4 分钟开 PR 19, 零空窗
- 06:23 doudouOUC 开 PR#4269
- 06:27 PR#4249 MERGED
- review 期间 doudouOUC 必然已经在写 PR 19, R11 approving 后立即推送
Summary
基于 2026-03-28 最新 Release Notes 更新 4 篇 deep-dive 文章。
版本变更追踪
修改的文件
Test plan
🤖 Generated with Claude Code
Co-Authored-By: Claude Opus 4.6 (1M context) noreply@anthropic.com