@sema-ai/core 1.276.0 → 1.277.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -5
- package/dist/bench/metrics.js +1 -1
- package/dist/bench/metrics.js.map +1 -1
- package/dist/core/auto-mode.d.ts.map +1 -1
- package/dist/core/auto-mode.js +14 -1
- package/dist/core/auto-mode.js.map +1 -1
- package/dist/core/cache-break-detector.js +0 -0
- package/dist/core/cache-break-detector.js.map +1 -1
- package/dist/core/task-registry.d.ts +6 -0
- package/dist/core/task-registry.d.ts.map +1 -1
- package/dist/core/task-registry.js +30 -0
- package/dist/core/task-registry.js.map +1 -1
- package/dist/tools/fs/index.d.ts.map +1 -1
- package/dist/tools/fs/index.js +5 -2
- package/dist/tools/fs/index.js.map +1 -1
- package/dist/tools/gitea-issue.d.ts +1 -1
- package/dist/tools/gitea-issue.d.ts.map +1 -1
- package/dist/tools/scheduler-tools.d.ts.map +1 -1
- package/dist/tools/scheduler-tools.js +8 -6
- package/dist/tools/scheduler-tools.js.map +1 -1
- package/package.json +3 -5
- package/CHANGELOG.md +0 -5444
- package/docs/A1-ATTRIBUTION-ROUND1-2026-07-09.md +0 -181
- package/docs/AB-ORACLE-GATE-VERDICT-2026-07-10.md +0 -100
- package/docs/ANCHOR-GAP-INVENTORY-2026-07-09.md +0 -143
- package/docs/ARCHITECTURE.md +0 -125
- package/docs/BUGHUNT-2026-07-05-NIGHT.md +0 -98
- package/docs/BUILD.md +0 -63
- package/docs/CANCEL-ASYNC-ATTRIBUTION-2026-07-09.md +0 -98
- package/docs/CC-198-VS-201-DRIFT-2026-07-09.md +0 -70
- package/docs/CC-BASELINE-FAKE-ZERO-AUDIT-2026-07-09.md +0 -51
- package/docs/CC-DRIFT-198-206-AGENT-TYPES-2026-07-10.md +0 -82
- package/docs/CC-DRIFT-198-206-CHANGELOG-2026-07-10.md +0 -82
- package/docs/CC-DRIFT-198-206-REMINDERS-2026-07-10.md +0 -96
- package/docs/CC-DRIFT-198-206-ROADMAP-2026-07-10.md +0 -110
- package/docs/CC-DRIFT-198-206-TOOL-INVENTORY-2026-07-10.md +0 -53
- package/docs/CC-DRIFT-198-206-USAGE-CONSTANTS-2026-07-10.md +0 -64
- package/docs/CC-DRIFT-198-206-WORKFLOW-2026-07-10.md +0 -83
- package/docs/CC-PARITY-CHECKLIST.md +0 -220
- package/docs/CC-PARITY-DEEP-SWEEP-2026-07-07.md +0 -149
- package/docs/CC-SUBAGENT-PROMPT-STUDY-2026-07-09.md +0 -219
- package/docs/CC-TASK-REMINDER-CADENCE-STUDY-2026-07-09.md +0 -396
- package/docs/CC-TOOL-PARITY-SWEEP-2026-07.md +0 -56
- package/docs/CC-TOOL-PROMPT-DEEP-DIFF-2026-07-08.md +0 -274
- package/docs/CC-TOOLSURFACE-DEEP-DIVE-2026-07-07.md +0 -197
- package/docs/CC206-OBSERVER-ANCHORS-2026-07-11.md +0 -463
- package/docs/CC207-CORE-SWEEP-BACKLOG-2026-07-12.md +0 -155
- package/docs/CENTER-CONTROL-PLANE-SEAM.md +0 -86
- package/docs/CLEANUP-CONTRACT-ANCHOR-2026-07-09.md +0 -83
- package/docs/COLD-START-RSI-2026-07-09.md +0 -72
- package/docs/COMPACTION-LIVE-AUDIT-2026-07-09.md +0 -114
- package/docs/CONTEXT-lifecycle-extension-points-and-stop-attribution.md +0 -71
- package/docs/COREWARS-POLYGLOT-TRIAGE-2026-07-09.md +0 -85
- package/docs/DEADTARGET-OVERFULL-HBOX-2026-07-10.md +0 -92
- package/docs/DEADTARGET-PATH-TRACING-REVERSE-2026-07-10.md +0 -87
- package/docs/DEADTARGET-WINNING-AVG-COREWARS-2026-07-10.md +0 -96
- package/docs/DEEPSEEK-API-LIMITS-PROBE-2026-07-09.md +0 -118
- package/docs/DESIGN-140-MOCK-VERIFY-2026-07-11.md +0 -79
- package/docs/DESIGN-140-VERIFICATION-2026-07-11.md +0 -43
- package/docs/DESIGN-DRAFT-workflow-collab-2026-07-11.md +0 -56
- package/docs/DESIGN-ORACLE-GROUNDING-GATE-2026-07-10.md +0 -167
- package/docs/DESIGN-TFRAG-RECONCILE-SCAFFOLD-2026-07-09.md +0 -102
- package/docs/EXP-PA2-PE-DESIGN-2026-07-11.md +0 -220
- package/docs/EXT-DOGFOOD-2026-07-12.md +0 -50
- package/docs/FINAL-VERIFY-SURFACE-AUDIT-2026-07-09.md +0 -44
- package/docs/FRAG-RECON-INVESTIGATION-2026-07-09.md +0 -183
- package/docs/HANDOFF.md +0 -121
- package/docs/KNOWN-ISSUES.md +0 -96
- package/docs/LEGW-WINDOW-TAX-2026-07-10.md +0 -82
- package/docs/LIVE-PROBE-BATCH-2026-07-11.md +0 -207
- package/docs/M2-CERT-ATTRIBUTION-2026-07-10.md +0 -61
- package/docs/M25-LEG-VARIANCE-ATTRIBUTION-2026-07-10.md +0 -81
- package/docs/MAILMAN-TIMEOUT-ATTRIBUTION-2026-07-10.md +0 -88
- package/docs/MEMORY-BACKEND-DIALECT-NOTES.md +0 -69
- package/docs/MTEB-ESCAPE-HATCH-ATTRIBUTION-2026-07-09.md +0 -57
- package/docs/MTEB-LEADERBOARD-ATTRIBUTION-2026-07-10.md +0 -134
- package/docs/ORACLE-GATE-NEGATIVE-SAMPLE-2026-07-11.md +0 -28
- package/docs/PARITY-CONTEXT-TRANSACTIONS-2026-07-10.md +0 -67
- package/docs/PARITY-PROGRESS-MATRIX-2026-07-10.md +0 -37
- package/docs/PARITY-SPOT-AGENT-TYPES-2026-07-10.md +0 -70
- package/docs/PARITY-SPOT-REMINDERS-2026-07-10.md +0 -144
- package/docs/PARITY-SPOT-TOOL-INVENTORY-2026-07-10.md +0 -61
- package/docs/PARITY-SPOT-USAGE-CONSTANTS-2026-07-10.md +0 -95
- package/docs/PARITY-SPOT-WORKFLOW-2026-07-10.md +0 -93
- package/docs/PASSWORD-RECOVERY-PANEL-VERDICT-2026-07-10.md +0 -62
- package/docs/R8-R9-FINALIZE-COORDINATION-2026-07-09.md +0 -124
- package/docs/REPL-CODE-MODE-EVALUATION-2026-07-10.md +0 -187
- package/docs/REPORT-1249-TARGETED.md +0 -48
- package/docs/RESEARCH-3P-MEMORY-SWAP-2026-07-12.md +0 -273
- package/docs/ROADMAP.md +0 -111
- package/docs/RSI-CLOUD-DEPLOY-2026-07-06.md +0 -289
- package/docs/RSI-PROCESS-AI-COLDSTART-2026-07-11.md +0 -68
- package/docs/S18-THOROUGHNESS-AUDIT-2026-07-09.md +0 -113
- package/docs/SERVICE-INTEGRATION-GUIDE.md +0 -298
- package/docs/SUBAGENT-STREAM-RESILIENCE-PARITY-2026-07-10.md +0 -118
- package/docs/SWEBENCH-PRO-RECON-2026-07-11.md +0 -31
- package/docs/TB-EFFICIENCY-TELEMETRY-2026-07-08.md +0 -114
- package/docs/TB-FAILURE-AUTOPSY-2026-07-05-RERUN.md +0 -67
- package/docs/TB-FAIRNESS-AUDIT-2026-07-08.md +0 -141
- package/docs/TB-FULL-1257-2026-07-08.md +0 -77
- package/docs/TB-LEG-GAP-ATTRIBUTION-1261-1263-2026-07-11.md +0 -154
- package/docs/TB-REGRESSION-DAEMON-KILL-2026-07-08.md +0 -58
- package/docs/TB-RSI-CROSSCHECK-2026-07-06.md +0 -68
- package/docs/TB-RSI-LEDGER.md +0 -30
- package/docs/TB-STABLE-SET-2026-07-08.md +0 -127
- package/docs/TB21-RECON-2026-07-11.md +0 -28
- package/docs/TEST-DESIGN-BATCH-1-2-3.md +0 -97
- package/docs/THIRD-PARTY-INTEGRATION.md +0 -45
- package/docs/TOKEN-ESTIMATE-CALIBRATION-LIVE-2026-07-09.md +0 -102
- package/docs/audit-2026-06-10-/347/254/254/344/272/214/350/275/256-/347/251/272/347/231/275/345/214/272/344/270/216/345/277/230/346/216/245/347/272/277.md +0 -147
- package/docs/audit-2026-06-10-/350/256/241/347/256/227bug/346/211/253/346/217/217.md +0 -163
- package/docs/audit-2026-06-11-/344/277/256/345/244/215/345/244/215/345/256/241/344/270/216/345/233/236/345/275/222/344/270/223/346/211/253.md +0 -95
- package/docs/audit-2026-06-12-design71-P1/346/275/234/344/274/217/351/235/242/350/243/201/345/206/263/344/270/216/345/220/236/351/224/231/345/256/241/350/256/241.md +0 -45
- package/docs/audit-2026-06-12-/345/205/254/345/274/200/346/227/213/351/222/256/346/264/273/346/200/247/344/270/216vendored/346/255/273/350/267/257.md +0 -63
- package/docs/audit-2026-06-15/ADDENDUM-second-pass.md +0 -88
- package/docs/audit-2026-06-15/ARCHITECTURE-AND-ROADMAP.md +0 -187
- package/docs/audit-2026-06-15/DOC-CORRECTIONS.md +0 -105
- package/docs/audit-2026-06-15/INDEX.md +0 -49
- package/docs/audit-2026-06-15/ORCHESTRATION-STATUS.md +0 -98
- package/docs/audit-2026-06-15/PRODUCTION-ISSUES.md +0 -189
- package/docs/audit-2026-06-15/REFERENCES-literature.md +0 -139
- package/docs/audit-2026-06-15/VENDOR-REFACTOR-PLAN.md +0 -96
- package/docs/cc-probe-198/README.md +0 -72
- package/docs/cc-probe-198/STABILITY-AUDIT.md +0 -118
- package/docs/cc-probe-198/live-schema-monitor-worktree-2026-07-09.json +0 -56
- package/docs/cc-probe-198/mount-variants.json +0 -536
- package/docs/cc-probe-198/plan-mode-run.json +0 -1
- package/docs/cc-probe-198/probe-bash-bg.json +0 -224
- package/docs/cc-probe-198/probe-edit-mismatch.json +0 -120
- package/docs/cc-probe-198/probe-read-missing.json +0 -62
- package/docs/cc-probe-198/probe-search-empty.json +0 -127
- package/docs/cc-probe-198/probe-task-family.json +0 -227
- package/docs/cc-probe-198/probes.status +0 -6
- package/docs/cc-probe-198/raw-capture-interactive.json +0 -948
- package/docs/cc-probe-198/raw-capture-print.json +0 -787
- package/docs/cc-probe-198/raw-capture2-interactive.json +0 -948
- package/docs/cc-probe-198/raw-capture2-print.json +0 -787
- package/docs/cc-probe-198/system-prompt.txt +0 -135
- package/docs/cc-probe-198/tools-array.json +0 -962
- package/docs/durability-boundary.md +0 -63
- package/docs/fix-2026-06-10-/350/256/241/347/256/227bug/344/277/256/345/244/215-search/346/211/271.md +0 -75
- package/docs/fix-2026-06-11-/347/254/254/344/272/214/350/275/256-/344/277/256/345/244/215-search/346/211/271.md +0 -62
- package/docs/parity-sweep/REPORT-DYNAMIC.md +0 -97
- package/docs/parity-sweep/REPORT-STATIC-GGB.md +0 -127
- package/docs/parity-sweep/REPORT-STATIC-RWE.md +0 -133
- package/docs/vendor-history.md +0 -385
- package/docs/vendored-upstream-diff-2026-07.md +0 -83
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
# CC 版本漂移调研 — agent 类型面:2.1.198 → 2.1.204(clay 线上)→ 2.1.206(latest)
|
|
2
|
-
|
|
3
|
-
**日期**:2026-07-10 · **调研官**:search AI(roadmap 预调研,不落码)
|
|
4
|
-
**三方源**:
|
|
5
|
-
- 198 主锚:`claude-198/cc-2.1.198/package/claude-cli-2.1.198.pretty.js`(带行号)
|
|
6
|
-
- 204 文本层:scratchpad `cc204-bundle.js`(从真二进制抽出,坐标=字节偏移)
|
|
7
|
-
- 206 文本层:scratchpad `cc206-bundle.js`(同上)
|
|
8
|
-
**锚清单**:`docs/PARITY-SPOT-AGENT-TYPES-2026-07-10.md`
|
|
9
|
-
**方法纪律**:minified 变量名跨版本会变,定位一律用字符串字面量+结构模式;每个 delta 做灰度判定;双坐标(198 行号 + 204/206 字节偏移)。
|
|
10
|
-
|
|
11
|
-
---
|
|
12
|
-
|
|
13
|
-
## 判决先行
|
|
14
|
-
|
|
15
|
-
**agent 类型面 198→206 高度稳定:注册表构成、7 个内建类型的 whenToUse 全文、Agent 工具 input schema、agent_listing 呈现管线、opus 升档、深度上限、fork 双门 —— 全部逐字/逐结构无漂移(核过 15 组锚)。**
|
|
16
|
-
|
|
17
|
-
真 delta 集中在三块:
|
|
18
|
-
|
|
19
|
-
1. **198→204 最大新增 = Observer agents 体系**(per-agent `observer`/`observerMessage` 字段 + `ObserverReport` 工具 + 自动后台 spawn 配对)——**env-only 实验**(需 `CLAUDE_CODE_EXPERIMENTAL_OBSERVER_AGENTS`),但 schema/工具/管线已全量落码。与我们 design/80 supervisor 撞路线,是本轮 roadmap 权重最高项。
|
|
20
|
-
2. **ListAgents 工具在 204 落了本体描述**(198 只有名字常量与外围引用,tool 描述文本 0 命中):语义=列出「in-process subagents + 本机其他 Claude sessions + 云端 sessions(有 cloud access 时)+ remote bridge sessions(只可回复)」,名字即 SendMessage 地址,`[ref]` 消歧。**回答专项问题:206 的 ListAgents 与 198 对比,语义从「无本体(仅被 SendMessage/worker prompt 引用的名字)」变为「有一等描述的发现工具,且范围显式扩到云端 session 与 remote bridge」;204 与 206 之间该描述逐字同。**
|
|
21
|
-
3. **204→206 是净删除**:`agent_descriptions`/`claudemd_files` 上下文体检警告移除、auto-mode environment wizard(含 "Dispatch Explore subagents now" 段)整体消失。206 没有为 agent 类型面新增任何类型/字段/门。
|
|
22
|
-
|
|
23
|
-
**版本段结论**:线上(204)已生效的、值得进 roadmap 的=Observer 体系与 ListAgents 语义;206 即将到来的对本维度≈零(只有删减)。
|
|
24
|
-
|
|
25
|
-
---
|
|
26
|
-
|
|
27
|
-
## Delta 表
|
|
28
|
-
|
|
29
|
-
| # | 版本段 | 变化 | 灰度判定 | 坐标 | roadmap 权重 |
|
|
30
|
-
|---|--------|------|----------|------|--------------|
|
|
31
|
-
| D1 | **198→204** | **Observer agents 体系**:①AgentDefinition 新字段 `observer`(声明一个 agent 类型,宿主运行时自动 spawn 为后台观察者)+ `observerMessage`(digest 附言),md frontmatter / JSON / SDK agents option schema 三面全接线;②新工具 `ObserverReport`(观察者唯一上报通路,目标由配对解析、无收件人参数);③观察者以 `run_in_background:!0` 自动 spawn(`spawnFirstRun`,ctx 带 `isObserver:!0`,origin kind `"observer"`,digest 消息 origin `"observer-activity"`);④观察者禁用 SendMessage(报错指回 ObserverReport)、观察者自身的 observer 声明被忽略(禁链式);⑤观察者收 read-only activity digest(tool-call/user-message/tool-result/turn-ended 四类),预期稳态=沉默 | **env-only(实验)**:`CLAUDE_CODE_DISABLE_BACKGROUND_TASKS` 未设 **且** `CLAUDE_CODE_EXPERIMENTAL_OBSERVER_AGENTS` 已设 **且** `Ze("tengu_observer_agents_enabled",!0)`(门默认开但 env 不设即整体关死 → 实验) | 198=全 0 命中(ObserverReport/agentObserver/observer-gate);204@12888986(YWn 门)/12890916(digest 指令文)/14284067(auto-spawn+permission gate)/17303668(`Vmo="ObserverReport"`)/17335249(SendMessage 拒观察者)/18143896+24100680(schema 字段)/20771608(spawnFirstRun);206 同在(tengu_observer_agents_enabled=1、observerMessage=20 命中) | **HIGH**(与 design/80 supervisor 同一问题域:CC 选择「同侧 agent 观察者+digest+单工具上报」形态,而非我们的决策-动作绑定形态;落码前按宪法需锚核腿+活体探针) |
|
|
32
|
-
| D2 | **198→204** | **ListAgents 工具本体描述落地**:198 仅有 `var C5e="ListAgents"` 常量+3 处外围引用(rename map `ListPeers→ListAgents`、SendMessage 报错、worker prompt),描述文本 0 命中且 198 wire probe 工具数组无此工具;204/206 在常量旁新增完整描述:列 in-process subagents、本机 local sessions、**云端 sessions(cloud access 时)**、**remote bridge sessions(只可回复)**;name=SendMessage 地址、`[ref]` 消歧 | 随 REPL/fleet 形态出现(相邻谓词 `PO()`:REPL 强制 on;cli/remote entrypoint 走 `tengu_slate_harbor` 默认 !1)——**默认关(实验/形态门)**,普通会话 roster 不含此工具(198 probe 坐实) | 198:224366(常量)+224723(worker prompt 引用);204@11162798;206@11185050(两版描述逐字同) | **MED**(peer/cross-session 发现语义的权威新语料;sema 做 SendMessage/peer 面时按此对齐) |
|
|
33
|
-
| D3 | **198→204** | **Agent 工具新增 auto-classifier 输入适配器**:`{name:Agent, toAutoClassifierInput(e)=> e.subagent_type ? "(type): prompt" : ": prompt"}` —— auto-mode 权限分类器对 Agent 启动看到结构化摘要(198 该适配器 0 命中,机制本身 198 已用于 SendMessage) | GA(无独立门;auto-mode 生效时生效) | 198=0(`subagent_type}): ${e.prompt}` 0 命中);204@16369731;206 同 | LOW |
|
|
34
|
-
| D4 | **198→204** | **agent context 内部 plumbing**:①`isBackgroundAgent` 字段全路径接线(198=0,204/206=24 命中;main-session/workflow/spawn/fork ctx 全带);②workflow spawn ctx 增 `workflowRunId`/`workflowName`;③SkillTool forked-skill 执行现构造完整 subagent agentContext(`agentType:"subagent"`+subagentName=agent 类型+depth;198 同路径只传 override agentId);④subagent ctx 出现处 6→8(新 2 处=forked-skill+observer spawnFirstRun) | GA(内部记账,无门) | 198:422816(SkillTool)/446660(workflow ctx 无 runId);204@18134291 附近 8 处 subagent ctx | LOW(内部;对我们 ScopedToolResultStore/租户隔离类比有参考) |
|
|
35
|
-
| D5 | **198→204** | **claude-code-guide persona 扩容**:whenToUse (3) Claude API 档扩写(Messages API、Tool Runner `client.beta.messages.tool_runner`、Managed Agents 托管沙箱、prompt caching)+**新增 (4) Claude Tag(Claude in Slack)**(setup、`/install-slack-app`);"Claude Tag" 198=0→204/206=50 命中(整个新特性域,guide 语料随之扩) | GA(guide 定义无新门;但 guide 本身仍仅非 SDK entrypoint 才船,HCe 条件未变) | 198:486807(旧 3 档文本,亲读);204@18115682;206 同 | LOW(sema=SDK 形态不船 guide;PARITY-SPOT F1 的「SDK 语义不带 guide」结论不受影响) |
|
|
36
|
-
| E1 | **204→206** | `agent_descriptions`(自定义 agent whenToUse 总量 >15000 tokens 警告)与 `claudemd_files` 两个上下文体检警告**移除**(1→0) | n/a(删除) | 198:479? n/a;204@18628985(agent_descriptions)/18628214(YHt=15000);206=0 命中 | LOW |
|
|
37
|
-
| E2 | **204→206** | auto-mode environment wizard **整段消失**(含 "Dispatch Explore subagents now — via Agent tool with subagent_type: 'Explore'" 指导;`auto-mode environment` 204=1→206=0)——Explore 的一个显式消费场景被移除/重构 | n/a(删除;属 auto-mode 相邻维度) | 198:649853;204=1;206=0 | LOW |
|
|
38
|
-
| E3 | **204→206** | bg fleet 新遥测/预热门:`tengu_bg_agent_notification`(通知遥测)、`tengu_bg_prewarm_burst*`(daemon 接管后 stale worker 预热)——fleet daemon 面,非 agent 类型 roster 面 | 遥测事件(非行为门)/prewarm 属 daemon 行为 | 206@23772539 / 25157161 | LOW |
|
|
39
|
-
|
|
40
|
-
**版本段汇总**:198→204(线上已生效)=D1-D5;204→206(即将到来)=E1-E3(全删减/外围)。
|
|
41
|
-
|
|
42
|
-
---
|
|
43
|
-
|
|
44
|
-
## 无漂移锚清单(15 组,全部亲核)
|
|
45
|
-
|
|
46
|
-
1. **HCe 注册表构成与顺序**逐结构同:SDK disable(`CLAUDE_AGENT_SDK_DISABLE_BUILTIN_AGENTS`)→ coordinator(worker)分支 → general-purpose → statusline-setup(!gate)→ claude(!gate)→ Explore+Plan(ibis 门)→ guide(entrypoint≠sdk-ts/py/cli)。198:487221-487240;204 `bqe`@18134291;206 `fje`@18288634。
|
|
47
|
-
2. **内建类型集**:general-purpose / Explore / Plan / statusline-setup / claude / claude-code-guide / worker / fork(+coordinator worker);`output-style-setup` 三版皆 0(198 已下线的结论对 204/206 继续成立)。
|
|
48
|
-
3. **7 类型 whenToUse 全文逐字同**(guide 除外=D5):gp/Explore(nbm)/Explore-lean(rbm)/Plan/statusline/worker/claude/fork 逐 700 字符窗口比对,divergence 全部落在字符串结束后的 minify 格式差。
|
|
49
|
-
4. **定义字段**同:Explore/Plan `disallowedTools` 六件套(Agent/Artifact/ExitPlanMode/Edit/Write/NotebookEdit)、`omitClaudeMd:!0`、`model:"inherit"`、Plan `tools=Explore.tools`;statusline `["Read","Edit"]+sonnet+orange`;guide `haiku+dontAsk+动态 tools getter`;worker `["*"]+maxTurns:200+bubble`;claude `appendSystemPrompt:!0+背景 job 协议 prompt`(逐字同,含 narrate/restate/result:/needs input:/failed: 协议)。
|
|
50
|
-
5. **Explore system prompt**("You are a file search specialist"+READ-ONLY banner+并行 tool call 提示)逐字同(banner 2 命中 ×3 版)。
|
|
51
|
-
6. **opus 升档 GAe→A4e/m9e**逻辑同:仅 Explore+built-in;`fr()==="firstParty"` 且主模型不在 ["haiku","sonnet","opus"] 梯内→"opus",否则 inherit。198:409162-409171;204@11385024;206@11410608。
|
|
52
|
-
7. **Explore/Plan 门 iAt→BGt/QVt**:env `CLAUDE_CODE_DISABLE_EXPLORE_PLAN_AGENTS` kill-switch + `tengu_slate_ibis` 默认 !0;204/206 改手写 memo 变量(198 用 wn() memoize),语义等价。204@11386710;206@11412393。
|
|
53
|
-
8. **Agent 工具 input schema 逐字同**:required 集不变(description/prompt;subagent_type 仍自由 string optional,"If omitted, the general-purpose agent is used" 句 1 命中 ×3);model enum `["sonnet","opus","haiku","fable"]`(fork 忽略 model 句同);run_in_background/name(regex+保留名 refine)/team_name(deprecated)/mode/isolation(`["worktree","remote"]`)/cwd;omit 规则(env disable 或 teammate ctx → omit run_in_background;cwd 恒 omit)同。198:453300-453390;204@16987204;206@17059569。
|
|
54
|
-
9. **agent_listing 管线全同**:头部两句/removal 句+ambient 尾注("This is ambient context…" 1 命中 ×3)/并发句及其条件(`showConcurrencyNote = Oi()!=="pro"`)/`(Tools: …)` 投影("All tools except" 1 命中 ×3)/`whenToUseLean` 选文案(2 命中 ×3)。198:479489-479512+599201-599216。
|
|
55
|
-
10. **fork 类型**:定义(tools ["*"]/maxTurns:200/inherit/bubble/空 system prompt)+双门 `tengu_copper_fox`/`tengu_fork_subagent_enabled` + "You are a worker fork" 指令文全同。198:225044-225073;204@11235732。
|
|
56
|
-
11. **深度上限=5**:198 `Y4t=5`(224503);204 `IMr=5`;"Subagent nesting limit reached" 文本同(1 命中 ×3)。
|
|
57
|
-
12. **launch 期类型解析**:subagent_type_denied/not_found/ambiguous + `tengu_subagent_type_miss`/`tengu_subagent_type_normalized` 计数全同(3/2/1/2/1 ×3 版)。
|
|
58
|
-
13. **stop-marker general-purpose 回落**:198 已有(454726-454740),非 204 新增(字面量计数 1→2 是 minify 三元 `:"general-purpose"` 撞正则的假阳性)。
|
|
59
|
-
14. **CLAUDE_AGENTS_SELECT**:198 已有 7 处(fleet-view TUI 选中态传递),非本维度 delta。
|
|
60
|
-
15. **插件 agent 字段面**:ignored 警告列表(permissionMode/hooks/mcpServers)与解析字段(skills/background/memory/isolation/color/effort/maxTurns/disallowedTools)同,204/206 仅增 observer/observerMessage(归 D1)。
|
|
61
|
-
|
|
62
|
-
---
|
|
63
|
-
|
|
64
|
-
## 对 sema roadmap 的含义(结论三态)
|
|
65
|
-
|
|
66
|
-
- **线上已生效(198→204,优先)**:
|
|
67
|
-
- D1 Observer 体系=HIGH:CC 给出「观察者=平级 agent 类型 + read-only digest 订阅 + 单一 ObserverReport 上报 + 禁链式/禁 SendMessage」的形态锚。我们 design/80 supervisor 是决策-动作绑定形态;若做 CC-parity 观察者,应作为 AgentDefinition 字段(observer/observerMessage)+ 独立工具进入,而非复用 supervisor。**实验期(env-only),可等其转正再落码,但 schema 字段可先预留。**
|
|
68
|
-
- D2 ListAgents=MED:落码 SendMessage/peer 面时按 204/206 描述对齐语义(含云端 session 与 bridge 只读语义)。
|
|
69
|
-
- PARITY-SPOT backlog(F2 subagent_type Optional/F3 Tools 投影/F5 Emr 尾注/F1 内置 Explore/Plan/F4 whenToUseLean/F8 maxTurns 钉)**全部继续成立**——本轮核实这些锚在 204/206 零漂移,落码不必等 206。
|
|
70
|
-
- **即将到来(204→206)**:本维度无新增,只删减(E1/E2)。206 升锚无 agent 类型面阻力。
|
|
71
|
-
|
|
72
|
-
---
|
|
73
|
-
|
|
74
|
-
## 诚实盲区
|
|
75
|
-
|
|
76
|
-
1. **ListAgents 工具对象的运行时消费点未逐行追到**:204/206 中描述常量经 esbuild 模块命名空间间接消费,minified 文本层没找到 `name(){return "ListAgents"}` 形态的 tool object;「198 无本体、204 新增」判决基于:描述文本 198=0 命中、"cloud access"/"remote bridge" 198=0、198 wire probe 工具数组无 ListAgents、SendMessage 侧仅 name 引用。若 198 在 fleet REPL 形态下有动态构造的同名工具(文本层不可见),该判决需活体探针复核。
|
|
77
|
-
2. 204/206 坐标=文本层字节偏移(bundle 从二进制抽出),非行号;偏移随重抽会变,复核时用引文串重定位。
|
|
78
|
-
3. guide 的 getSystemPrompt 正文(帮助语料本体)只比对了注入结构(commands/custom agents/MCP 列表逻辑同形)+whenToUse,未全文逐字(量级大、非 roster 面)。
|
|
79
|
-
4. "Claude Tag"(Slack)50 命中未深挖——非本维度,只确认其进入 guide persona。
|
|
80
|
-
5. 204 新增约 52 个、206 再新增约 36 个 tengu 门中,codename 门(slate/copper/vellum/ochre 等)无法反查语义的未逐一展开;只对 agent 关键词命中的做了取证。
|
|
81
|
-
6. 未跑 204/206 活体探针(wire 级 tools-array);Agent 工具 required 集结论基于 schema 源码逐字同+198 probe,建议 206 升锚时补一次 wire 采集。
|
|
82
|
-
7. teammate/TeamCreate、workflow-subagent 内部面(相邻维度)未深审,与 PARITY-SPOT 盲区口径一致。
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
# CC 版本漂移调研:2.1.198 → 2.1.204(线上) → 2.1.206(latest) — 官方 changelog 对照腿
|
|
2
|
-
|
|
3
|
-
> 日期:2026-07-10 · 调研性质:roadmap 预调研,不落码 · 本档=五维静态取证的 changelog 对照腿
|
|
4
|
-
> 三方源:198 可读源(pretty.js,主锚)/ 204 文本层(cc204-bundle.js,29.0MB)/ 206 文本层(cc206-bundle.js,30.9MB)
|
|
5
|
-
> changelog 源:`raw.githubusercontent.com/anthropics/claude-code/main/CHANGELOG.md`(2026-07-10 取),2.1.199–2.1.206 八个版本全在,无缺号。
|
|
6
|
-
|
|
7
|
-
## 判决(先行)
|
|
8
|
-
|
|
9
|
-
1. **198→204(clay 线上已生效)最值钱的一条是 2.1.203 的委派 prompt 增句**:general-purpose agent prompt 新增 *"You are already the dedicated agent for this task. Do the work directly — do not re-delegate your entire assignment to another single subagent."*(198 零命中)。GA 无门,直接可抄进 sema 委派 prompt。**roadmap=HIGH**。
|
|
10
|
-
2. **2.1.201 是单条目版本,专改 Sonnet 5 的 harness reminder 载体**:新增 sonnet-5 专例谓词(`Cdc/ruc: lo(e)==="claude-sonnet-5"`)穿入报文组装函数(198 CD → 204 qF),sonnet-5 的 reminder 文本在进 role:system 批之前就先套 `<system-reminder>` 包裹、降级回 user 时不再二次包裹。**静态读数与 changelog 措辞("不再用 system role")有张力——精确 wire 语义需活体探针定谳**(见盲区)。模型条件化 GA,无 tengu 门。对我方:sonnet-5 专例,fable/opus 通道不受影响,**MED(侦察)**。
|
|
11
|
-
3. **门面翻涌但核心报文机制稳**:tengu_ 门 198→204 净 +52/−4,204→206 净 +36/−6;但 mid_conversation_system 门控函数、`<system-reminder>` 包裹器、api_system 构造器、模型能力表(sonnet-5/opus-4-8/fable-5 含 mid_conv_system)四处锚 198↔204 逐字同。**我方 reminders/cadence 已修口径(口径⑤)未被 204/206 推翻**。
|
|
12
|
-
4. **静默变更(changelog 没说、静态逮到)共 4 条值得记档**:①observer agents 机制(204,env-only)②API 请求体 gzip(204,默认关)③strict structured-output 派生(204,GA+fallback)④staged mcp_call/PTC(206,默认开 kill-switch)。
|
|
13
|
-
5. **204→206 即将到来面**:auto-mode 新规则(禁篡改 transcript、rm -rf 未解析变量必须显式批准)+ EndConversation welfare 工具(默认关实验)+ EnterWorktree 越界确认。对 sema 的 shellGate/safetyAxis parity 是**MED**素材。
|
|
14
|
-
|
|
15
|
-
## 版本时间线(逐版一句话 + 与五维的关联)
|
|
16
|
-
|
|
17
|
-
| 版本 | 主题 | 关联维度 |
|
|
18
|
-
|---|---|---|
|
|
19
|
-
| 2.1.199 | bugfix 波:subagent 被限流静默失败/把 API error 当成功结果上报(**engine 面,静态未定位,待坐实**)、stacked slash-skill(`tengu_stacked_slash_commands`,204 有)、流中 error 丢响应修 | agent-types |
|
|
20
|
-
| 2.1.200 | **AskUserQuestion 不再默认 auto-continue**;default 权限模式更名 Manual;bg daemon 修复群 | tool-inventory |
|
|
21
|
-
| 2.1.201 | **单条目:Sonnet 5 不再用 mid-conversation system role 承载 harness reminders** | reminders |
|
|
22
|
-
| 2.1.202 | **Dynamic workflow size 设置** + `workflow.run_id`/`workflow.name` OTel 属性;/review 回退单 pass;workflow 脚本 unicode 引号转义修(未静态定位) | workflow |
|
|
23
|
-
| 2.1.203 | **subagent 反再委派 prompt 句**;MCP roots/list 加 additional working dirs;worktree 隔离 subagent 跑错 checkout 修;大波 bg/agents 修 | agent-types |
|
|
24
|
-
| 2.1.204 | 单条目:headless SessionStart hook 流式修 | — |
|
|
25
|
-
| 2.1.205 | **auto-mode 两规则(transcript 防篡改 / rm -rf 未解析变量)**;--json-schema 修(invalid schema 静默降级、format 关键字被拒);/doctor 全面体检;max-turns 边界丢消息修 | reminders/安全面 |
|
|
26
|
-
| 2.1.206 | EnterWorktree 越界确认;gateway /login;model picker 修复群;bg 后台升级 | tool-inventory |
|
|
27
|
-
|
|
28
|
-
## Delta 表
|
|
29
|
-
|
|
30
|
-
灰度判定口径:门形态 `Ze("tengu_xxx",默认)`(206/204 帮手均名 `Ze`)+ env 开关 + 入口条件;缺门=GA。
|
|
31
|
-
三态:**[198→204]**=线上已生效;**[204→206]**=即将到来。
|
|
32
|
-
|
|
33
|
-
| # | 条目 | 版本段 | 灰度判定 | 双坐标 | roadmap |
|
|
34
|
-
|---|---|---|---|---|---|
|
|
35
|
-
| 1 | 委派 prompt 增句「dedicated agent…do not re-delegate your entire assignment」+ fork 侧「If you ARE the fork — execute directly; do not re-delegate」 | [198→204] 2.1.203 | GA(prompt 常量,无门) | 198 零命中;204@16292670(general-purpose agent prompt)、204@11419216、204@16982298 | **HIGH** |
|
|
36
|
-
| 2 | Sonnet 5 harness reminder 载体改道:`Cdc(e){lo(e)==="claude-sonnet-5"}` 穿入 qF:进 api_system 批前先 `dw()` 包裹(`_.push(...o?q.reminders.map(dw):q.reminders)`;attachment `_.push(o?dw(q):q)`)、AL_ 降级时 sonnet-5 免二次包裹 | [198→204] 2.1.201 | GA(模型条件化,无 tengu 门;上层仍有 env `CLAUDE_CODE_FORCE_MID_CONVERSATION_SYSTEM` + 模型能力覆写) | 198:597800(CD)/598654(_v)/598707(vgf);204@20502545(qF)、204@9231836(Cdc)、206@9101786(ruc,机制延续) | MED |
|
|
37
|
-
| 3 | AskUserQuestion 不再默认 auto-continue:新 settings 键 `askUserQuestionTimeout` enum `["60s","5m","10m","never"]` 默认 never(198=硬编码倒计时「auto-continue in Ns」) | [198→204] 2.1.200 | GA(行为默认变更)+ 用户可配 | 198:644879;204@7161337(schema)、204@18303842(/config 面板+`tengu_ask_user_question_timeout_changed`) | MED |
|
|
38
|
-
| 4 | Dynamic workflow size:/config 设置 + 提示 tip + `tengu_workflow_size_warning_shown`;OTel 新属性 `workflow.run_id`/`workflow.name` | [198→204] 2.1.202 | GA(设置项);OTel 无门 | 204@15738025(tip 文本)、204@8185114(o0r 函数);198 `workflow.run_id` 零命中 | MED |
|
|
39
|
-
| 5 | 【静默】total-tokens reminder 锚点改 user-turn:env `CLAUDE_CODE_TOTAL_TOKENS_REMINDER_AFTER_USER_TURN` + settings `totalTokensReminderAfterUserTurn` + GB `tengu_lapis_anchor_user_turn` 默认 !1(padded-countdown 每 user turn 重锚) | [198→204] 静默(lapis_anchor/budget 门 198 已有,user_turn 新增) | 默认关(实验),env/settings/GB 三层覆写 | 204@7166712(settings describe)、204@11380533(XVc) | MED |
|
|
40
|
-
| 6 | 【静默】observer agents:agent definition 新 `observer` 字段(观察者 agent 挂到被观察 agent,禁链式) | [198→204] 静默 | **env-only**:须 `CLAUDE_CODE_EXPERIMENTAL_OBSERVER_AGENTS` 且 `tengu_observer_agents_enabled`(默认 !0)且未禁 bg tasks | 204@12888986(YWn/JWn);198 零命中 | MED(侦察) |
|
|
41
|
-
| 7 | 【静默】API 请求体 gzip:`CLAUDE_CODE_GZIP_REQUEST_BODIES ?? Ze("tengu_gzip_request_bodies",!1)` | [198→204] 静默 | 默认关(实验) | 204@9223580(Jah) | LOW |
|
|
42
|
-
| 8 | 【静默】strict structured-output schema 派生:Ajv 校验+strict 转换,失败 fallback 非 strict(`tengu_structured_output_strict_schema` 记 converted/fallback);为 2.1.205 的 --json-schema 修复群打底 | [198→204] 静默;修复收口在 [204→206] 2.1.205 | GA(派生自动跑,带 fallback;telemetry 门非行为门) | 204@11160116(zqh);198 零命中 | MED |
|
|
43
|
-
| 9 | 【静默】fallback 清扫在飞工具:`discardAndAbortInFlight` + `tengu_convolute_arcades_*`(retry/tools)遥测族 | [198→204] 静默 | 遥测+行为伴生,细门未逐条解 | 204@14381025(A3r) | LOW |
|
|
44
|
-
| 10 | subagent 限流/API error 误报成功修复(changelog 2.1.199 两条) | [198→204] 2.1.199 | 判定不适用(bugfix);**静态未定位=待坐实** | 无坐标;归 agent-types 腿活体对照 | MED |
|
|
45
|
-
| 11 | auto-mode 新规则:session transcript 防篡改(transcript=「harness-written session state」,含 `{"meta":{…}}` classifier ground-truth 行防伪造) | [204→206] 2.1.205 | GA(auto-mode 分类器规则文本;auto-mode 本身 firstParty/anthropicAws 或 `CLAUDE_CODE_ENABLE_AUTO_MODE`) | 206@14228426;198/204 `harness-written session state` 零命中 | MED |
|
|
46
|
-
| 12 | auto-mode 新规则:`rm -rf $VAR` 变量不可解析→必须显式批准且**不可被 permission rule auto-allow**(「Fail closed」;字面路径/已知安全 temp 例外) | [204→206] 2.1.205 | GA(同上 auto-mode 入口) | 206@14067180、206@14206729;198/204 无此段 | MED |
|
|
47
|
-
| 13 | EndConversation 工具(welfare:持续辱骂时模型可结束会话;deferred tool 经 ToolSearch 加载;fork/bg 内 no-op) | [204→206] 2.1.206 段(changelog 未提=静默) | **默认关(实验)**:`Ze("tengu_umber_kestrel",!1)` + 模型 floor(`modelMeetsEndConversationFloor`)+ 非 LWn() | 206@11191757(注册)、206@17368846(工具体)、206@17370517(`tengu_end_conversation_tool_call`);204/198 零命中 | LOW |
|
|
48
|
-
| 14 | 【静默】staged mcp_call / PTC:mcp_call 请求新增 `input_files`/`output_files`/`expires_at`/`timeout_ms` → `runStagedMcpCall`(bridge/CCR 面) | [204→206] 静默 | **默认开(kill-switch)**:`Ze("tengu_ptc_enabled",!0)`,关则报 "staged mcp_call is disabled" | 206@24628412;`runStagedMcpCall` 198/204 零命中 | MED |
|
|
49
|
-
| 15 | EnterWorktree 越界确认(项目 `.claude/worktrees/` 之外须确认) | [204→206] 2.1.206 | GA(确认对话) | changelog 条目;静态未逐字定位(TUI 对话文本) | LOW-MED |
|
|
50
|
-
| 16 | plan review step(plan 退出对话加 review-artifact 选择;`tengu_plan_review_step`/`tengu_plan_exit_dialog_shown`) | [204→206] 静默 | 遥测+伴生 UI;artifact 门另有 `a9e()` gate off 分支 | 206@21606926 | LOW |
|
|
51
|
-
| 17 | default 权限模式更名 Manual + footer ⏸ 徽章(2.1.200/203) | [198→204] | GA(纯命名/UI) | changelog 条目,未逐字定位 | LOW |
|
|
52
|
-
| 18 | 门面翻涌总账:198→204 +52/−4(移除 tengu_shoji_engine/fleet_suggestion_dispatch/fleetview_onboarding_v2/auto_mode_repo_visibility_lookup_failed,末者 206 回归);204→206 +36/−6(移除 orchid_mantis/v2、sparrow_ledger、silk_almanac、omelette_whisk→fouet 换代、schedule_offer_shown) | 两段 | 清单在 scratchpad `cc{198,204,206}*.tengu.txt` | — | 侦察底账 |
|
|
53
|
-
|
|
54
|
-
## changelog↔静态 双向对账
|
|
55
|
-
|
|
56
|
-
- **changelog 说了 + 静态坐实**:#1(203 再委派句)、#2(201 sonnet-5)、#3(200 AskUserQuestion)、#4(202 workflow size/OTel)、#11/#12(205 auto-mode 规则)、2.1.199 stacked slash(`tengu_stacked_slash_commands` 204 在)。
|
|
57
|
-
- **changelog 说了 + 静态未找到(待坐实)**:2.1.199 subagent API error 误报修、2.1.202 workflow 脚本 unicode 引号转义修、2.1.205 max-turns 丢消息修、EnterWorktree 确认文本。多为 TUI/流程内 bugfix,无廉价字符串锚。
|
|
58
|
-
- **静态找到 + changelog 没说(静默变更)**:#5 lapis user-turn 锚、#6 observer agents、#7 gzip、#8 strict structured-output、#9 convolute_arcades、#13 EndConversation、#14 staged mcp_call/PTC、#16 plan review step。
|
|
59
|
-
|
|
60
|
-
## 无漂移锚清单(核过,7 处)
|
|
61
|
-
|
|
62
|
-
1. mid_conversation_system 门控函数(198:132464-132483 oIn ↔ 204@9234312 FNn):hipaa 拒/FORCE env/模型 deny-list(claude-3-*, opus-4-0/1/5/6/7, sonnet-4-0/4-5/4-6, haiku-4-5)/`mid_conv_system` 能力/mythos-5 特例——**逐字同**。
|
|
63
|
-
2. `<system-reminder>` 包裹器(198:598654 _v ↔ 204 dw)逐字同。
|
|
64
|
-
3. api_system 构造器(198:598707 vgf ↔ 204 NL_)逐字同(role:"system")。
|
|
65
|
-
4. api_system→wire 转换 `{role:"system",content}`(198:593944 ↔ 204@17789242)无条件转换未变。
|
|
66
|
-
5. 模型能力表 mid_conv_system 持有者(sonnet-5/opus-4-8/fable-5)198↔204 一致(204@6162657/6166439/6167227)。
|
|
67
|
-
6. beta 注册 `mid-conversation-system-2026-04-07`(198:99328 ↔ 204@8143130)三版本都在。
|
|
68
|
-
7. memdir_relevance/memdir_aki_extract:198 已有(2/2/2),**非** 204 新增。
|
|
69
|
-
|
|
70
|
-
## 诚实盲区
|
|
71
|
-
|
|
72
|
-
1. **#2(201)wire 语义未定谳**:静态读到的是「sonnet-5 的 reminder 进 api_system 批前先包 `<system-reminder>`」,而 T() 在末消息为 user 时仍 push NL_(role:system)。与 changelog「no longer use the mid-conversation system role」的字面有张力——可能配合服务端模型能力覆写(`zoe(e,"mid_conversation_system")`)才成立,或我漏了 201-204 间某处调用面。**需活体探针(真 sonnet-5 会话抓 wire)定谳,我方无 sonnet-5 常用通道,标 P2 侦察**。
|
|
73
|
-
2. 204/206 是文本层抽取(bundle.js),Bun 二进制 native 段未逐条对照;本档结论未用原始二进制 grep -a 复核(锚串均在文本层命中,风险低)。
|
|
74
|
-
3. 代号实验门未逐个解码:204 的 loggia_denkbild/ochre_gantry/omelette_fouet/vellum_ash,206 的 salt_marsh/pewter_canteen(umber_kestrel 已解=EndConversation)。默认按实验(GB 控)对待。
|
|
75
|
-
4. 本腿只做 changelog 对照粒度;五维逐锚深核归各维度腿(AGENT-TYPES/REMINDERS/TOOL-INVENTORY/USAGE-CONSTANTS/WORKFLOW 的 PARITY-SPOT 档)。
|
|
76
|
-
5. 2.1.205/206 的 bg-agent/daemon/fleet 修复群(约 40 条)与我方引擎面基本正交,未逐条核,统一归「TUI/daemon 面,无关」。
|
|
77
|
-
|
|
78
|
-
## roadmap 建议(本腿视角)
|
|
79
|
-
|
|
80
|
-
- **立即可落**(等 1.260.0 发完后小修批):#1 反再委派句抄进 sema 委派 prompt(HIGH,GA 无门,双版本已生效)。
|
|
81
|
-
- **对齐检查**:#3 AskUserQuestion 默认不 auto-continue——核 sema harness 对应默认;#8/2.1.205 --json-schema strict+fallback——对我们 StructuredOutput 校验路径;#12 rm -rf 变量规则——sema shellGate 加同款 fail-closed 判定。
|
|
82
|
-
- **侦察项**:#2 活体定谳、#6 observer agents(与我方 supervisor 撞型,CC 走 env-only 实验=方向确认)、#14 staged mcp_call(PTC 苗头)。
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
# CC 版本漂移调研:system-reminder 族 198→204→206(2026-07-10)
|
|
2
|
-
|
|
3
|
-
> 维度=system-reminder 族(注入位/文案/cadence/门默认值)。三方源:
|
|
4
|
-
> - 198 锚:`/Users/clay/开发/gittea/claude-198/cc-2.1.198/package/claude-cli-2.1.198.pretty.js`(行号坐标)
|
|
5
|
-
> - 204 文本层:scratchpad `cc204-bundle.js`(29,016,658 B,字节偏移坐标)
|
|
6
|
-
> - 206 文本层:scratchpad `cc206-bundle.js`(30,917,202 B,字节偏移坐标)
|
|
7
|
-
> 锚清单来源:`docs/PARITY-SPOT-REMINDERS-2026-07-10.md`(SR-1~SR-7/SR-V1)+ `docs/CC-TASK-REMINDER-CADENCE-STUDY-2026-07-09.md`(五口径全套)。
|
|
8
|
-
> 方法:字符串字面量+结构模式定位(不靠 minified 变量名);逐锚计数对比+窗口 diff+新增面扫描(`*_reminder` token 全集、attachment 注册清单、`tengu_` 门全集三版本 set-diff)。只读不落码。
|
|
9
|
-
|
|
10
|
-
## 0. 判决先行
|
|
11
|
-
|
|
12
|
-
1. **🟢 task/todo reminder cadence 机器 198→204→206 零漂移(最高优先核验项,已闭合)。**
|
|
13
|
-
计数器循环、`_or` 逐块跳过谓词(口径⑤ BLOCK 级时钟的判定核)、10/10 阈值、task/todo 互斥分发、
|
|
14
|
-
`CLAUDE_CODE_TODO_REMINDER_MODE`/`tengu_soft_slate_nudge` kill-switch、`task_reminder_same_turn`
|
|
15
|
-
同轮去重、reminder 文案——**全部逐字/逐结构同构**。我们刚按 198 口径⑤修完的 block 级时钟
|
|
16
|
-
(commit 8373f28)对 204(clay 线上)和 206(latest)依然是正确口径,**不需要任何返工**。
|
|
17
|
-
2. **🟢 budget/token 量表 lane 门默认值无翻转。** 198 的「三死一活」格局在 204/206 保持:
|
|
18
|
-
`token_usage`(env 默认关)/`total_tokens_reminder`(`tengu_lapis_anchor` 默认 "off")/
|
|
19
|
-
`output_token_usage`(仍 `return []` 死代码)/`budget_usd`(仍 maxBudgetUsd opt-in 唯一活 lane)。
|
|
20
|
-
204 给 total_tokens lane 新增了一条**默认关**的第五子门(用户轮重发腿,见 Δ2),不改变默认行为。
|
|
21
|
-
3. **🔴 唯一 HIGH:204 起 Read 工具新增「seeded 文件去重」reminder(线上已生效,默认开)。**
|
|
22
|
-
CLAUDE.md/nested memory 装载时预播 readFileState(`seededFromContext:!0`),模型 Read 一个已在
|
|
23
|
-
上下文里且磁盘未变的 seeded 文件 → 不再返回文件内容,返回
|
|
24
|
-
`<system-reminder>This file is already in your context (see "Contents of ${path}" above) and has not changed on disk. Use that content instead of re-reading.</system-reminder>`。
|
|
25
|
-
模型面行为变化+token 经济优化,roadmap 应对齐。
|
|
26
|
-
4. reminder type 族名清单(`*_reminder` token 全集)三版本**完全同构**(零新增零删除);
|
|
27
|
-
attachment 注册清单唯一新增=`workflow_size_guideline_change`(204+,Δ3)。
|
|
28
|
-
5. 204→206 增量偏小且多为默认关实验门(failed-MCP 显面、fleet nudge)或邻维度(/doctor AI 化)。
|
|
29
|
-
|
|
30
|
-
## 1. Delta 表
|
|
31
|
-
|
|
32
|
-
| # | 变化 | 版本段 | 灰度判定 | roadmap | 坐标 |
|
|
33
|
-
|---|---|---|---|---|---|
|
|
34
|
-
| Δ1 | **Read seeded 文件去重 reminder**:CLAUDE.md/nested-memory 播种 readFileState(`seededFromContext:!0,keepContent:!0`);Read 命中未变更 seeded 文件(offset=1 无 limit)→ `file_unchanged` + `source:"seeded"` → 上述 already-in-your-context reminder;at-mention 路径同映射为 `already_read_file` attachment;UI 显示 "Already in context (basename)";schema describe 明说 "dedup matched a startup-seeded entry (CLAUDE.md / nested memory)" | 198→204 | **默认开(GA-等效)**:唯一门=`tengu_read_dedup_killswitch` 反向 killswitch,静态默认 `!1`(198 已有该门,204 只是扩了 seeded 分支);无 env 前置 | **HIGH** | 198 无("This file is already in your context"/"has not changed on disk" 零命中;dedup 门 pretty.js:478380-478390 仅同 offset/limit 重读分支);204:常量+Wfc @byte 9396178-9399000、Read.call seeded 分支 @17847482/17847880、schema describe @17844222、播种点(`seededFromContext:!0`)×6 hits、at-mention 映射 @17890757 窗口;206 同构(seededFromContext ×6) |
|
|
35
|
-
| Δ2 | **total_tokens_reminder 用户轮重发腿**:注册条件从 198 的 `e===null?JFm(...):[]` 变为 `let T=(s?.isRegularUserPrompt??!1)&&SDe()!=="off"&&XVc(); e===null\|\|T?Cwy(...,T):[]`;T 时 `YVc(agent,tokens)` 把 padded-countdown 基线重置到当前用户轮(每用户轮预算语义);新解析器 XVc:env `CLAUDE_CODE_TOTAL_TOKENS_REMINDER_AFTER_USER_TURN` → settings `totalTokensReminderAfterUserTurn` → gate `tengu_lapis_anchor_user_turn` | 198→204 | **默认关(实验)**:`tengu_lapis_anchor_user_turn` 默认 `!1`;且主门 `tengu_lapis_anchor` 仍默认 "off"(双关);budget 子门 `tengu_lapis_anchor_budget`=15M 198 已有非新增 | LOW(WATCH:statsig 可远程开;`tengu_lapis_anchor` 计数 2→4 即此腿) | 198 注册 pretty.js:479219(GFl 尾)+ JFm :480416 + 门 :240830-240846;204:注册新腿 @byte 17866133、Cwy @17895495、SDe/wjn/XVc @11380077-11380600、YVc/JVc @11379538;206 注册同(`oPe()!=="off"&&VYc()`,@~18017001 窗口) |
|
|
36
|
-
| Δ3 | **`workflow_size_guideline_change` 新 attachment**:/config 新设置 `workflowSizeGuideline`(unrestricted/small=5/medium=15/large=50 agent 数);会话中变更时注入 reminder("The user changed their workflow size guideline in /config: …"/"…workflow size is unrestricted again.");Workflow tool prompt/description 静态附加 "The user has configured a workflow size guideline in /config: …";超标时 UI warning(`tengu_workflow_size_warning_shown` 遥测) | 198→204 | **机制无独立 tengu 门(GA)**;入口条件=`uE()`(dynamic workflows 启用面:org policy/launch gate//config 开关)+ `isRegularUserPrompt`;内容 config-driven(用户不配置=恒 unrestricted=不发) | MED(sema 有 workflow 面;编排规模治理原语) | 198 零命中;204:文案+producer Imd @byte 16880304-16881100、注册 @17866133 窗口(`Imd(Eb(o??[]),_t().workflowSizeGuideline)`)、render 分发 @20573829、UI 过滤表 PZy @19225737、Workflow prompt 挂接 @16908118;206 同构(×5 命中) |
|
|
37
|
-
| Δ4 | **skill 目录作用域变体 note**:bare 名调用 prompt-type skill 且 repo 内存在 directory-scoped variants 时注入 isMeta reminder:"Directory-scoped variants of the \"X\" skill exist in this repo: - \`dir:X\` — for files under dir/ … The bare name always resolves to this unscoped skill; the variants are reachable only by their exact qualified names. If the files you are working on are under a variant's directory, invoke that variant now with the Skill tool and follow it instead…" | 198→204 | **GA(无活门)**:唯一短路 `LBr()` 硬编码 `return !1`;条件=Skill 工具挂载+变体存在;`tengu_skill_scoped_variant_note` 仅遥测 | MED(sema skills 有 scoped 形态时需对齐;模型面消歧文案) | 198 零命中;204:producer ejr @byte 16035146-16036000(含全文案);206 同构 |
|
|
38
|
-
| Δ5 | **team-memory 同步警告族**(PostToolUse `additionalContext` 注入):Read/Edit/Write 团队记忆文件时的 conflict notice(`tengu_team_mem_conflict_notice_delivered`)/持久化警告(`tengu_memory_sync_persistence_warning`)/prompt index near cap(`tengu_team_mem_prompt_index_near_cap`) | 198→204 | **默认关(teams 实验面)**:整族在 teammate 模式 `il()` 面内 | LOW | 198 无这三门;204 @byte 13894876-13895600 |
|
|
39
|
-
| Δ6 | **失败 MCP server 显面**:开门时 `deferred_tools_delta` attachment 与 ToolSearch 空结果携带 failed MCP server 列表(新尾参 `s2r()?_3r(mcpClients):void 0`) | 204→206 | **默认关(实验)**:`Ze("tengu_surface_failed_mcp_servers",!1)`,无 env | LOW(WATCH,deferred_tools 族=我们 ToolSearch parity 面) | 204 门名零命中;206:s2r 定义 @byte 11168959、deferred_tools_delta 注册 @18017001、ToolSearch 两用点 @13763146/13763909 |
|
|
40
|
-
| Δ7 | **/doctor AI 化审计 prompt**(邻维度,记档):206 把 `/doctor` 做成大 prompt 的 setup-checkup skill(Check 0-7:安装/settings/agents/skills/plugins/MCP/hooks 扫描);其数据源章节**权威文档化了 hook attachment 的 transcript 形态**(`hook_success\|hook_non_blocking_error\|hook_error_during_execution\|hook_cancelled` + `hook_cancelled` 带 `timedOut:true`/`timeoutMs`);CLI `claude doctor` 保留只读版并指路 /doctor | 204→206 | GA(内建 skill) | LOW(维度=workflow/skills,但 hook attachment 形态文档可作我们 hooks parity 的二手锚) | 206 @byte ~22645022(timedOut 文档句)、cli_doctor @20959385 |
|
|
41
|
-
| Δ8 | **hook 引擎管道扩展**:hook_* token 计数漂移(hook_blocking_error 11→14、hook_cancelled 206 +3 等)全部归因于 hook 执行引擎新增分支(`type:"function"` SDK hooks 错误臂、URL hooks 取消臂、`Qzt` blocking→non-blocking 转换 helper、cancelled outcome 遥测);**四条 hook 反馈 reminder 文案本体(hook success/blocking error from command/additional context/stopped continuation)三版本计数与文本零漂移** | both-stages-evolved | GA(引擎内部) | LOW(SR-4 判决不变:cosmetic) | 198 :599137-:600248/:586861;204/206 上下文 diff 见 §3 方法记录 |
|
|
42
|
-
| Δ9 | **fleet needs-input nudge**(UI 面,非模型 reminder):终端焦点/闪烁 nudge | 204→206 | **默认关(实验)**:`Ze("tengu_fleet_needs_input_nudge",!1)` | LOW(非模型面) | 206 @byte 21403118 |
|
|
43
|
-
|
|
44
|
-
另记(邻维度,一行):206 新增 `tengu_cc_memory_tag_stripped` 遥测(model 输出 text/thinking 块中 memory tag 剥离计数,@byte 24065750,memory 维度);204 新增 `tengu_structured_output_strict`(StructuredOutput 工具维度);`ScheduleWakeup` 5→9 全为工具面(loop stop 语义+InputError 类),gh rate-limit reminder 内的 ScheduleWakeup 措辞未变。
|
|
45
|
-
|
|
46
|
-
## 2. 无漂移锚清单(逐条核过,25 锚)
|
|
47
|
-
|
|
48
|
-
cadence 族(task#51 主战场,全绿):
|
|
49
|
-
1. todo_reminder 文案 verbatim("The TodoWrite tool hasn't been used recently…")三版本 1 命中同文
|
|
50
|
-
2. task_reminder 文案 verbatim(TaskCreate/TaskUpdate 模板)同
|
|
51
|
-
3. `TURNS_SINCE_WRITE:10`/`TURNS_BETWEEN_REMINDERS:10`(RXt,198:480563)常量同(仅 pretty 空格差)
|
|
52
|
-
4. 计数器倒扫循环(198 BFm:480205/qFm:480241 vs 204 mwy/gwy @17890757 vs 206 BPy/qPy @18042833)逐结构同构
|
|
53
|
-
5. **`_or` 逐块跳过谓词(口径⑤ 判定核,198:599513)vs 204 Bgo @20550213 vs 206 pbo @20680116:逐字同**(`content.every(t=>t.type==="thinking"||t.type==="redacted_thinking")`)
|
|
54
|
-
6. task/todo 互斥分发+memoize(iv() 默认 task 分支)+`CLAUDE_CODE_ENABLE_TASKS` 反转门(计数 2/2/2)
|
|
55
|
-
7. kill-switch r2o(env `CLAUDE_CODE_TODO_REMINDER_MODE`+`tengu_soft_slate_nudge` 默认 "baseline",198:479167)同
|
|
56
|
-
8. `task_reminder_same_turn` 跨 reminder 同轮去重(1/1/1)同
|
|
57
|
-
9. engagement 复位口径仍只认 TaskCreate/TaskUpdate tool_use(计数器 some() 条件同)
|
|
58
|
-
|
|
59
|
-
tool_search reminder 族:
|
|
60
|
-
10. 文案 verbatim("Some available tools' schemas are not loaded…")同
|
|
61
|
-
11. `toolSearchReminder: null` 静态默认(=默认不挂)同;`juniper_shoal.marsh_lantern` 解析(true/{stride,span})198 已有,未变
|
|
62
|
-
12. `!=="tst"` 短路+`tengu_juniper_shoal_shown` 遥测结构同
|
|
63
|
-
|
|
64
|
-
token/budget lane(任务点名核验项):
|
|
65
|
-
13. `token_usage`:env `CLAUDE_CODE_ENABLE_TOKEN_USAGE_ATTACHMENT` 门(计数 2/2/2),默认关未翻转
|
|
66
|
-
14. `total_tokens_reminder` 主门 `tengu_lapis_anchor` 默认 "off" 未翻转;`<total_tokens>… tokens left</total_tokens>` 文案同;mode 表 ["off","infinite","fixed","countdown","padded-countdown"] 同;budget 子门 15M 同(198 已有)
|
|
67
|
-
15. `output_token_usage` 仍死代码(204 `Awy(){return[]}`)
|
|
68
|
-
16. `budget_usd` 仍唯一 opt-in 活 lane(`maxBudgetUsd` 计数 14/14/14,producer 逻辑同)
|
|
69
|
-
|
|
70
|
-
其余注入位:
|
|
71
|
-
17. `<system-reminder>` 包裹函数 _v(转义+`\n${e}\n` 形态)与 isMeta user 消息注入形态同
|
|
72
|
-
18. gh rate-limit reminder 全文+`ghRateLimitHint`(3/3/3)+`gh api rate_limit --jq .resources` 同
|
|
73
|
-
19. hook 反馈四文案(hook success/blocking error from command/additional context/stopped continuation)同(Δ8 只动引擎不动文案)
|
|
74
|
-
20. Emr ambient-context 后缀:def+4 注入位=5 refs 三版本同(204=IDo/206=DOo)
|
|
75
|
-
21. 孤儿后台任务 F6c 文案("The container was restarted…Re-create them if still needed.")+`CLAUDE_CODE_RESUME_INTERRUPTED_TURN` 门(11/11/11)同
|
|
76
|
-
22. `compaction_reminder` 仍死(2/2/2 命中,均在过滤/空渲染表;CHECKLIST #55 判决对 204/206 依然成立)
|
|
77
|
-
23. 空文件警告 "Warning: the file exists but the contents are empty."(1/1/1)同(#6 live 锁不受影响)
|
|
78
|
-
24. `critical_system_reminder`/`thinking_reminder`/`verify_plan_reminder`/`notice_reminder_frequency`/`relevant_memories`("Retrieved for possible relevance")计数与结构同
|
|
79
|
-
25. plan_mode 族(plan_mode/plan_mode_exit/plan_mode_reentry,EVERY_N full/sparse 结构)与 changed_files/nested_memory/dynamic_skill/skill_listing/date_change/agent_listing/mcp_instructions/deferred_tools_delta(除 Δ6 尾参)注册面同
|
|
80
|
-
|
|
81
|
-
## 3. 诚实盲区
|
|
82
|
-
|
|
83
|
-
- **静态文本层取证,零活体探针**:204/206 未跑真二进制 wire 对比(task#51 探针 harness `bench/probes/task51-cadence-live/` 可复用于 204/206,cadence 谓词逐字同 → 预期 wire 同,但未实测)。
|
|
84
|
-
- statsig 远程门(`tengu_lapis_anchor*`/`marsh_lantern`/`tengu_surface_failed_mcp_servers`)静态默认关≠生产关;灰度判定基于 bundle 内默认值。
|
|
85
|
-
- Δ8 hook 引擎的 function-type hooks 是否 198 已有部分形态未逐分支考据(只坐实 reminder 文案零漂移);hook 引擎全貌属 hooks 维度另查。
|
|
86
|
-
- `dream`(54→57)/`structured_output`(34→36→41)/`queued_command`(22→25)计数漂移判为邻维度(memory 固化/StructuredOutput 工具/队列管道),未逐条窗口 diff 到底。
|
|
87
|
-
- 204/206 文本层从真二进制抽出,若抽取有洞会漏串;关键锚(reminder 文案/门名)均双向计数命中,未用二进制 grep -a 兜底复核全部。
|
|
88
|
-
- UI 渲染副本表(PZy @19225737 等)只对比了成员集,未 diff 渲染函数体(模型面 wire 不经该表)。
|
|
89
|
-
|
|
90
|
-
## 4. roadmap 建议(优先级序)
|
|
91
|
-
|
|
92
|
-
1. **HIGH|Δ1** seeded-Read 去重 reminder:线上 204 已生效;sema 有 claudeMd/attachWorkingFiles 播种面,对齐可省重读 token 且是模型面行为 parity(文案 verbatim 抄 204 @9396178)。
|
|
93
|
-
2. **MED|Δ3** workflowSizeGuideline:sema workflow 面加规模 guideline 配置+变更 reminder(文案+5/15/50 档位照抄)。
|
|
94
|
-
3. **MED|Δ4** scoped-skill 变体 note:sema skills 若引目录作用域,注入文案照 204 @16035146。
|
|
95
|
-
4. **LOW-WATCH|Δ2/Δ6** 两个默认关门(lapis_anchor_user_turn/surface_failed_mcp_servers)建 WATCH 行,statsig 转正再动。
|
|
96
|
-
5. **零动作**:cadence 族/token lane 默认值——本轮修法(8373f28)与 198/204/206 三版本一致,无返工。
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
# CC 版本漂移合成 Roadmap:2.1.198 → 2.1.204(clay 线上)→ 2.1.206(latest)
|
|
2
|
-
|
|
3
|
-
> 2026-07-10 · 六腿静态调研合成档(roadmap 预调研,不落码)
|
|
4
|
-
> 三方源:198 可读源(主锚)/ 204、206 文本层(scratchpad cc204-bundle.js / cc206-bundle.js,原始二进制兜底)
|
|
5
|
-
> 合成官抽验:6 条 HIGH/重点 delta 亲核源码,**0 条证伪**,2 处微纠偏(见 §0)。
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## 0. 抽验记录(合成官亲核,6 条)
|
|
10
|
-
|
|
11
|
-
| # | 项 | 判定 | 复核证据 |
|
|
12
|
-
|---|---|---|---|
|
|
13
|
-
| 1 | Observer agents 体系(agent-types HIGH) | ✅ 成立 | 198 四锚全 0 命中;204 门函数 `YWn(){if(we.CLAUDE_CODE_DISABLE_BACKGROUND_TASKS)return!1;if(!we.CLAUDE_CODE_EXPERIMENTAL_OBSERVER_AGENTS)return!1;if(!Ze("tengu_observer_agents_enabled",!0))return!1;return!0}` @204:12889139 —— env-only 判定正确(tengu 默认 !0 但 env 必须置位) |
|
|
14
|
-
| 2 | ScheduleWakeup stop 参数(tool-inventory HIGH) | ✅ 成立+微纠偏 | 198 schema 三字段 required(pretty @~16027926);204 schema `delaySeconds:….optional().describe("… Required unless \`stop\` is true.")` @204:17099392,GA 无门。**纠偏:noop 参数+tengu_loop_noop_fold 门 198 已有**(198 pretty :7600073 / :16028589),非 204 新增;204 新增的只有 stop(GA)+三字段转 optional |
|
|
15
|
-
| 3 | Read seeded 去重 reminder(reminders HIGH) | ✅ 成立+计数微偏 | seededFromContext 204=4/206=4(腿报 206 ×6,计数偏差,机制无误);`Ze("tengu_read_dedup_killswitch",!1)` 反向 killswitch 198/204 同在,204 新增 seeded 分支(`m.seededFromContext?"seeded":…`)——「默认开(GA-等效)」判定正确 |
|
|
16
|
-
| 4 | 反再委派 prompt 句(changelog HIGH) | ✅ 成立 | 198=0;204 @16292757 general-purpose persona 常量尾:「You are already the dedicated agent for this task. Do the work directly — do not re-delegate…」,GA 无门 |
|
|
17
|
-
| 5 | CLAUDE_WORKFLOW_NAME_ONLY(workflow 首项) | ✅ 成立 | 198=0;204 `Tkt(){return we.CLAUDE_WORKFLOW_NAME_ONLY}` @16815682 + remote-settings 透传白名单 @14487405 —— env-only 判定正确 |
|
|
18
|
-
| 6 | ObserverReport 常数(usage-constants MED) | ✅ 成立+坐标微偏 | 工具体 @204:17303821(名+description),`maxResultSizeChars:1000` @17304849(腿报 17346731 偏移~4 万字节,实质无误);observer 禁 SendMessage 拒绝文案 @17335402 同步核到 |
|
|
19
|
-
|
|
20
|
-
---
|
|
21
|
-
|
|
22
|
-
## 1. 档一:线上 204 已生效(198→204,clay 线上在跑,roadmap 优先)
|
|
23
|
-
|
|
24
|
-
### HIGH
|
|
25
|
-
|
|
26
|
-
| 项 | 灰度 | 对我方的意义 |
|
|
27
|
-
|---|---|---|
|
|
28
|
-
| **Read seeded 去重 reminder**:CLAUDE.md/nested-memory 装载时预播 readFileState(seededFromContext),重读命中未变更文件不回内容、回 already-in-context system-reminder;at-mention 映射 already_read_file attachment | **默认开**(唯一门=反向 killswitch tengu_read_dedup_killswitch 默认 !1) | clay 线上已生效的 token 经济优化,**建议本轮对齐落码**(我方 CLAUDE.md 装载面+Read 去重分支扩 seeded 语义) |
|
|
29
|
-
| **ScheduleWakeup schema 改版**:delaySeconds/reason/prompt 转 optional("Required unless `stop` is true")+新增 stop:boolean 立即终止 dynamic loop | **GA**(schema 直改;noop 参数系 198 已有,勿混入) | CC-trained 模型会发 stop:true / 省略必填三字段——我方 loop/wakeup 面 schema 需同步放宽,否则新模型行为撞校验 |
|
|
30
|
-
| **反再委派 prompt 句**(2.1.203):general-purpose persona+fork 侧各加一句禁止把整个任务再委派给单个 subagent | **GA** | 逐字可抄进 sema 委派 prompt,治「套娃委派」浪费,**最低成本高收益项** |
|
|
31
|
-
| **Observer agents 体系**:AgentDefinition 新字段 observer/observerMessage+ObserverReport 工具(maxResultSizeChars:1000)+自动后台 spawn 配对+观察者禁 SendMessage/禁链式+read-only activity digest | **env-only 实验**(CLAUDE_CODE_EXPERIMENTAL_OBSERVER_AGENTS 必须+tengu_observer_agents_enabled 默认 !0+未禁 bg tasks) | **与 design/80 supervisor 撞路线=CC 官方方向确认**;暂不抄(实验期),建议开 observer 机制专项调研,对齐我方 supervisor 的观察者语义(静默为常态/只递报告不夺权) |
|
|
32
|
-
|
|
33
|
-
### MED
|
|
34
|
-
|
|
35
|
-
| 项 | 灰度 | 对我方的意义 |
|
|
36
|
-
|---|---|---|
|
|
37
|
-
| AskUserQuestion 不再默认 auto-continue(2.1.200):settings askUserQuestionTimeout enum 默认 never | GA(默认行为变更) | 我方 ask-bubbling/HITL 面若有倒计时 auto-continue 需对齐「默认永等」口径 |
|
|
38
|
-
| Sonnet 5 reminder 载体改道(2.1.201):模型谓词穿报文组装,reminder 进 api_system 批前先 <system-reminder> 包裹 | GA(模型条件化) | wire 语义与 changelog 措辞有张力,**升锚/接 sonnet-5 前先跑活体探针定谳**(task#51 harness 可复用) |
|
|
39
|
-
| Workflow 管控四件套:name-only 限制(env)+__remote-workflow headless 入口(env+CCR)+尺寸 guideline(/config,默认 unrestricted)+ochre gantry 尺寸告警(statsig 默认开,25 agents/1.5M tokens)+workflow_size_guideline_change attachment+OTel workflow.run_id/name | 混合(见观察名单) | **CC 把具名 workflow 注册表当 TOB 管控原语**(env 投递+name-only 白名单化)——我方 PARITY-SPOT B5 权重上调;尺寸 guideline/告警属 advisory 可缓 |
|
|
40
|
-
| ListAgents 一等描述:列 in-process+本机+云端+bridge sessions,name=SendMessage 地址 | 形态门(tengu_slate_harbor 默认 !1) | 198 仅名字常量的专项问题已定谳;fleet 形态才挂,不急;206 升锚时补 wire 探针 |
|
|
41
|
-
| strict structured-output schema 派生(Ajv 校验+strict 转换+失败 fallback),为 2.1.205 --json-schema 修复群打底 | GA(自动跑带 fallback) | 我方 StructuredOutput/--json-schema parity 直接相关,列入下轮 parity 核对 |
|
|
42
|
-
| EnterWorktree path 放宽:可指 launch 目录下嵌套仓 worktree(multi-repo workspace) | GA | 我方 worktree 面如做 multi-repo 需对齐语义 |
|
|
43
|
-
| scoped-skill 变体 note reminder:bare 名调用且存在 directory-scoped variants 时注入限定名指引 | GA(无活门) | 我方 skill 目录作用域若引入 variants 需配套 |
|
|
44
|
-
| 2.1.199 subagent 修复双条(限流静默失败/API error 误报成功) | bugfix,静态未定位 | **待坐实**,归活体对照;我方 subagent 错误上抛路径可自查同类 |
|
|
45
|
-
|
|
46
|
-
### LOW(记档)
|
|
47
|
-
|
|
48
|
-
- guide persona 扩 Claude Tag(GA)· Agent 工具 toAutoClassifierInput(GA)· isBackgroundAgent/workflowRunId plumbing(GA)· 脚本 parse error code-frame(GA)· workflow 发射链遥测 span(GA)· auto-mode workflow 派发分类器(入口条件门)· Artifact 预算 1000→16000(GA/载体)· connector/plugin 发现簇 7 工具+50000 档×6+300K ceiling×1(env-only:CLAUDE_CODE_REMOTE+一方 auth,本地恒不挂)· ClaudeDesign(默认关 tengu_omelette_fouet)· TodoWrite 按模型 kill-list(默认关 tengu_vellum_ash,我方无 TodoWrite)· lapis user-turn 重锚腿(双默认关)· team-memory 同步警告族(teams 实验面)· 门面翻涌 +52/−4(全量清单在 scratchpad cc*.tengu.txt)
|
|
49
|
-
|
|
50
|
-
---
|
|
51
|
-
|
|
52
|
-
## 2. 档二:206 即将到来(204→206)
|
|
53
|
-
|
|
54
|
-
| 项 | 灰度 | roadmap | 对我方的意义 |
|
|
55
|
-
|---|---|---|---|
|
|
56
|
-
| **ExitPlanMode allowedPrompts 弃用**:schema 改 'Deprecated: no longer used.',消费代码 12→1;plan 审批转 plan-artifact/review-step | GA | MED | **行动项:我方 backlog M23 就地失效,勿 port**;plan-review 新形态(tengu_plan_review_step)列观察 |
|
|
57
|
-
| auto-mode 新规则×2(2.1.205):session transcript 防篡改+rm -rf 未解析变量 fail-closed 必须显式批准 | GA(auto-mode 入口) | MED | sema shellGate/safetyAxis 可直接对齐这两条规则文本 |
|
|
58
|
-
| ScheduleWakeup 输出加 cancelledWakeups+短 description(cron 不受 stop 影响,指路 CronDelete) | GA | MED | 与档一 stop 参数同族,升 206 锚时一并对齐 |
|
|
59
|
-
| staged mcp_call/PTC:mcp_call 新 input_files/output_files/expires_at/timeout_ms → runStagedMcpCall | **默认开**(kill-switch tengu_ptc_enabled !0) | MED | programmatic tool calling 苗头(bridge/CCR 面),持续跟踪 |
|
|
60
|
-
| EndConversation 新工具(sustained abuse 挂断,反射式双确认,1e4 预算) | 默认关(tengu_umber_kestrel+模型下限表) | LOW | welfare 面,观察即可 |
|
|
61
|
-
| /doctor AI 化(内建大 prompt skill,Check 0-7)+hook attachment transcript 形态文档化 | GA | LOW | 诊断面思路可借鉴 |
|
|
62
|
-
| 失败 MCP server 显面(deferred_tools_delta+ToolSearch 空结果携带) | 默认关(tengu_surface_failed_mcp_servers !1) | LOW | 我方 MCP fail-open 已有类似,门开后对齐文案 |
|
|
63
|
-
| 净删除:agent_descriptions>15K/claudemd 体检警告、auto-mode environment wizard(含 Dispatch Explore 段) | n/a | LOW | 我方若曾抄体检警告需同步撤 |
|
|
64
|
-
| fleet needs-input nudge / bg prewarm/notification 门 | 默认关/遥测 | LOW | daemon 面,不涉 |
|
|
65
|
-
|
|
66
|
-
**204→206 大盘:workflow 面/agent 类型面/reminder cadence/usage 常数全部零实质漂移**——206 升锚成本低,窗口期由 M23 弃用与 auto-mode 新规驱动。
|
|
67
|
-
|
|
68
|
-
---
|
|
69
|
-
|
|
70
|
-
## 3. 档三:灰度观察名单(门 key + 当前默认,翻转即触发重估)
|
|
71
|
-
|
|
72
|
-
| 门 key | 默认 | 版本 | 管什么 |
|
|
73
|
-
|---|---|---|---|
|
|
74
|
-
| tengu_observer_agents_enabled | !0(但 env CLAUDE_CODE_EXPERIMENTAL_OBSERVER_AGENTS 必须) | 204+ | observer agents 体系;**env 进白名单/门转 GA=立即重估 supervisor 对齐** |
|
|
75
|
-
| tengu_read_dedup_killswitch | !1(反向,=功能开) | 198+(204 扩 seeded) | Read 去重;翻 !0=CC 撤功能 |
|
|
76
|
-
| tengu_loop_noop_fold | !1 | 198+(非新) | noop 折叠;开=loop 上下文经济变化 |
|
|
77
|
-
| tengu_ochre_gantry | 动态配置,enabled!==false=开 | 204+ | workflow 尺寸告警阈值(25 agents/1.5M tokens) |
|
|
78
|
-
| tengu_lapis_anchor / _user_turn | off / !1(双关) | 198 / 204+ | total-tokens reminder user-turn 重锚 |
|
|
79
|
-
| tengu_slate_harbor | !1 | 198+ | REPL/fleet 形态(ListAgents 描述随之);**开=roster 面重估** |
|
|
80
|
-
| tengu_slate_harbor_experiment | !1 | 198+ | /init 升级流(与 REPL 无关,198 已有——腿三纠偏定谳) |
|
|
81
|
-
| tengu_omelette_fouet | !1 | 204+ | ClaudeDesign(前身 tengu_slate_quill) |
|
|
82
|
-
| tengu_vellum_ash | [](空=不杀) | 204+ | TodoWrite 按模型 kill-list |
|
|
83
|
-
| tengu_umber_kestrel | !1 | 206 | EndConversation |
|
|
84
|
-
| tengu_ptc_enabled | **!0(默认开,kill-switch)** | 206 | staged mcp_call/PTC |
|
|
85
|
-
| tengu_surface_failed_mcp_servers | !1 | 206 | 失败 MCP server 显面 |
|
|
86
|
-
| tengu_fleet_needs_input_nudge | !1 | 206 | fleet UI nudge |
|
|
87
|
-
| env-only(无 tengu):CLAUDE_WORKFLOW_NAME_ONLY / CLAUDE_REMOTE_WORKFLOW_SCRIPT|ARGS / CLAUDE_CODE_REMOTE+一方 auth(connector 簇) | 未设=同 198 | 204+ | TOB 管控/发现面 |
|
|
88
|
-
|
|
89
|
-
---
|
|
90
|
-
|
|
91
|
-
## 4. 零漂移定心丸(PARITY-SPOT 锚有效性)
|
|
92
|
-
|
|
93
|
-
- **cadence 机器 198→204→206 零漂移**(task/todo 块级谓词逐字同)——口径⑤修法(8373f28)对 204/206 依然正确,**零返工**。
|
|
94
|
-
- usage 常数零数值漂移:GIa 框架+七元常数+全部既有 per-tool 值+三 env 闸+Read 双闸+WebFetch 九常数簇逐值同。
|
|
95
|
-
- 49 件工具锚一件不少,45/49 schema 面零漂移;workflow 26 锚+工具卡 19047 chars 三版字节级同;agent 类型面 15 组锚零漂移。
|
|
96
|
-
- **PARITY-SPOT backlog 全部继续成立、落码不必等 206——唯一例外 M23(ExitPlanMode allowedPrompts)就地失效勿 port**。
|
|
97
|
-
- 206 code-review 毗邻疑点、tengu_slate_harbor_experiment≠REPL 两处疑点均已证伪归位。
|
|
98
|
-
|
|
99
|
-
## 5. 六腿档索引
|
|
100
|
-
|
|
101
|
-
| 维度 | 档 |
|
|
102
|
-
|---|---|
|
|
103
|
-
| agent 类型面 | docs/CC-DRIFT-198-206-AGENT-TYPES-2026-07-10.md |
|
|
104
|
-
| workflow/编排面 | docs/CC-DRIFT-198-206-WORKFLOW-2026-07-10.md |
|
|
105
|
-
| 工具清单 | docs/CC-DRIFT-198-206-TOOL-INVENTORY-2026-07-10.md |
|
|
106
|
-
| system-reminder 族 | docs/CC-DRIFT-198-206-REMINDERS-2026-07-10.md |
|
|
107
|
-
| 使用面常数/限额 | docs/CC-DRIFT-198-206-USAGE-CONSTANTS-2026-07-10.md |
|
|
108
|
-
| 官方 changelog 对照 | docs/CC-DRIFT-198-206-CHANGELOG-2026-07-10.md |
|
|
109
|
-
|
|
110
|
-
共同盲区:纯静态取证,statsig 运行时覆写不可见;sonnet-5 reminder 载体/2.1.199 subagent 修复/ListAgents 消费点建议活体探针定谳(task#51 harness 可复用)。
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
# CC 版本漂移调研 · 工具清单维度:2.1.198(我方锚)→ 2.1.204(clay 线上)→ 2.1.206(latest)
|
|
2
|
-
|
|
3
|
-
- **日期**:2026-07-10 · 调研官:fable(roadmap 预调研,不落码)
|
|
4
|
-
- **三方源**:198 = `/Users/clay/开发/gittea/claude-198/cc-2.1.198/package/claude-cli-2.1.198.pretty.js`(行号锚)+ 同目录 `.min.js`(串计数);204/206 = scratchpad `cc204-bundle.js` / `cc206-bundle.js`(从真二进制抽出的文本层,坐标=字节偏移)
|
|
5
|
-
- **锚清单**:`docs/PARITY-SPOT-TOOL-INVENTORY-2026-07-10.md` 全 49 件 + `docs/cc-probe-198/tools-array.json`(27 挂载)
|
|
6
|
-
- **方法**:①49 件逐件 `"Name"` 串计数三版对比 ②双结构扫描找新工具(userFacingName 窗口式 name: 解析 + searchHint 全集 diff)③27 挂载件 description/schema 逐行锚核(198 静态在册的行,查 204/206 存续)④tengu\_ 门全集 diff(198→204 新增 52 / 204→206 新增 36)后按工具相关性收窄取证 ⑤每个 delta 亲读门函数定灰度。
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
## 一、判决先行
|
|
11
|
-
|
|
12
|
-
**49 件 198 名单在 204 与 206 里一件不少**(逐件串计数全非零,含 7 产品簇/REPL/PowerShell/LSP/ToolSearch/TestingPermission/UserPromptExpansion)。漂移集中在四个老件 + 九个新件:
|
|
13
|
-
|
|
14
|
-
1. **198→204(clay 线上已生效)**:新增 **ClaudeDesign**(默认关,`tengu_omelette_fouet`)+ **connector/plugin 发现簇 7 件**(SearchMcpRegistry/ListConnectors/SuggestConnectors/SearchPlugins/SearchSkills/SuggestPluginInstall/ListPlugins,全部 env-only:`CLAUDE_CODE_REMOTE`+一方 auth,本地 CLI 面永不挂);**ScheduleWakeup 大改**(stop 参数 GA + 三字段转 optional + noop 参数默认关);**EnterWorktree path 语义放宽 GA**(首次进入可指嵌套仓=multi-repo workspace);**Workflow 尺寸告警护栏**(`tengu_ochre_gantry` 默认开);**TodoWrite 获得按模型 kill-list**(`tengu_vellum_ash` 默认空=不杀)。
|
|
15
|
-
2. **204→206(即将到来)**:新增 **EndConversation**(默认关,`tengu_umber_kestrel`+模型下限表,双次调用确认式"挂断"工具);**ExitPlanMode allowedPrompts 正式弃用 GA**(schema 改注 "Deprecated: no longer used.",12 处消费代码删到 1 处)——**我方 backlog M23(缺 allowedPrompts)就地失效,勿 port**;ScheduleWakeup 输出加 `cancelledWakeups` GA。
|
|
16
|
-
3. **REPL 内层 204→206 无机制演化**(gate/变体面三版逐字同:`tengu_slate_harbor` 默认关 + `CLAUDE_CODE_REPL` env 强开/强关 + `CLAUDE_REPL_VARIANT` 变体键;206 少的 1 处 "REPL" 字面量=摘要代码改用变量引用,纯 cosmetic)。
|
|
17
|
-
4. **纠偏派单前提**:`tengu_slate_harbor_experiment` **不是新逮到的,也与 REPL 无关**——198 就在(pretty.js:17921783),门的是 **新版 /init 流**(`CLAUDE_CODE_NEW_INIT` env ∨ 该门,默认关;/init 从"生成单个 CLAUDE.md"升级为"CLAUDE.md(s)+可选 skills/hooks");三版一字未动。命名撞 REPL 门(`tengu_slate_harbor`)家族纯属 Anthropic 代号复用。
|
|
18
|
-
|
|
19
|
-
roadmap 总判:**对 sema 当下最有肉的是 ScheduleWakeup stop/optional 化(204 GA,CC-trained 模型会发 stop:true)与 allowedPrompts 弃用(206,直接销我方 M23)**;新工具九件全在灰度/env 门后或产品绑定面,记档为主。
|
|
20
|
-
|
|
21
|
-
## 二、Delta 表
|
|
22
|
-
|
|
23
|
-
| # | 项 | 版本段 | 变化 | 灰度判定 | 坐标(双) | roadmap |
|
|
24
|
-
|---|----|--------|------|----------|-----------|---------|
|
|
25
|
-
| D1 | **ScheduleWakeup schema 改版** | 198→204 | `delaySeconds/reason/prompt` 全转 optional(描述加 "Required unless `stop` is true.");新增 `stop:boolean`(立即终止 dynamic loop,无视其余字段);输出加 `stopped`;searchHint 改为 "…stop/end/cancel the loop with stop:true" | **stop=GA(schema 内无门)**;`noop:boolean` 参数=默认关(实验),门 `Ze("tengu_loop_noop_fold",!1)`(204 `EMr()`/206 `o2r()` 同门) | 198 min:10850154(旧三字段 required);204:17099239(新 schema)+16017353 旁 | **HIGH**(我方 scheduler 对应面;CC-trained 模型会发 stop:true / 省略三字段,strict 校验会拒) |
|
|
26
|
-
| D2 | **ExitPlanMode allowedPrompts 弃用** | 204→206 | schema 字段保留但描述改 "Deprecated: no longer used.";消费代码 12 处(198=204)删剩 1 处(仅 schema);plan 审批流转向 plan-artifact/review-step(`tengu_plan_review_step` 遥测,206) | **GA**(schema 级直改,无门) | 204:16017353(原描述"Prompt-based permissions needed…")/206:16081134("Deprecated: no longer used.");allowedPrompts 计数 198=12/204=12/206=1 | **MED**(动作=把我方 CHECKLIST M23 改判 obsolete,零落码) |
|
|
27
|
-
| D3 | **EnterWorktree path 语义放宽** | 198→204 | `path` 可指"launch directory 首次进入时嵌套在其下的另一仓的 worktree"(multi-repo workspace);198 仅限当前仓 | **GA**(schema 描述直改,无门) | 198 min:"Path to an existing worktree of the current repository to switch into…for the current repo."/204:同串改为 "…or, on first entry from the launch directory, for a repo nested inside it (multi-repo workspace)."(grep 命中于 refine(name&&path) 前) | **MED**(worktree.ts 对应面;与 F6/M19 同族,一并处置) |
|
|
28
|
-
| D4 | **EndConversation 新工具** | 204→206 | 空入参、输出 {ended,message};searchHint "end the conversation — only for sustained user abuse, or when the user explicitly asks to see it demonstrated";反射式双确认(首个调用回 REFLECTION_PROMPT,上一 assistant 轮已调过才真挂断);print 模式走 gracefulShutdown,交互模式置 endedByModel;shouldDefer:!0(走 ToolSearch 延迟面);遥测 `tengu_end_conversation_tool_call` | **默认关(实验)**:`isEndConversationToolEnabled` = 模型下限表(opus≥4.8 / sonnet≥5 / fable≥5 / mythos≥5)&& `Ze("tengu_umber_kestrel",!1)` | 206:11191756(名+门常量 `SN="EndConversation",JUi="tengu_umber_kestrel"`)+11425292(门函数)+17369757(工具对象);198/204 计数=0 | **LOW**(滥用防护面,与 sema 部署形态弱相关;记档) |
|
|
29
|
-
| D5 | **ClaudeDesign 新工具** | 198→204(206 同) | claude.ai/design 画布协作面:operation+arguments 动态派发(先 `{operation:"list"}` 发现操作集);读写设计工程文件/渲染预览;finalize_plan 15 分钟路径级免提示授权;明确拒 Bedrock/Vertex | **默认关(实验)**:`Gkt()` = policy `allow_design_sync` && 非 essential-traffic-only && 一方 claude.ai auth && `Ze("tengu_omelette_fouet",!1)`(206 同门同默认) | 204:17255715(`rst="ClaudeDesign"`+描述)+17271598(工具对象 isEnabled:Gkt)+门函数于 "tengu_omelette_fouet" 唯一命中处;198 计数=0 | **LOW**(产品绑定簇第 8 件;并入 F4 簇清单扩条 B2,防每轮重复再发现) |
|
|
30
|
-
| D6 | **connector/plugin 发现簇 7 件** | 198→204(206 同) | SearchMcpRegistry(按关键词搜 MCP connector 目录)/ListConnectors(列已装)/SuggestConnectors(按 directoryUuid 解析)/SearchPlugins/SearchSkills(搜 claude.ai 插件与技能目录)/SuggestPluginInstall(渲染安装卡)/ListPlugins(列已启用);全 shouldDefer:!0 只读并发安全 | **env-only**:共用一门 `xee()`/206 `ite()` = `ut(process.env.CLAUDE_CODE_REMOTE)` && 一方 auth(qc/Du)→ 仅 claude.ai 远程面,本地 CLI 恒不挂;无 tengu 门 | 204:14061901(SearchMcpRegistry+门 `isConnectorSuggestToolEnabled`)/17207900(ListConnectors)/17206171(SuggestConnectors)/14068297(SuggestPluginInstall)/14069445(SuggestSkills)/14066028(SearchPlugins/SearchSkills 工厂)/ListPlugins 于同区;206:`isConnectorSuggestToolEnabled` 命中同形;198 七名全 0 | **LOW**(对 core;**对 cc-parity 飞轮 marketplace 侧=信号**:CC 把"工具/技能市场发现"做成了模型可调工具面,与我方 find-skills 同向) |
|
|
31
|
-
| D7 | **Workflow 尺寸告警护栏** | 198→204(206 同) | workflow 运行面按 scheduledAgents/totalTokens 阈值出告警(遥测 `tengu_workflow_size_warning_shown`);阈值可被 env `CLAUDE_CODE_WORKFLOW_SIZE_WARNING_AGENTS/_TOKENS` 或门载荷覆写;Workflow 工具 schema 本身零漂移(78 锚行全存续) | **默认开**:`Ze("tengu_ochre_gantry",{})`,仅当载荷 `enabled===!1` 才关(载荷可带 agents/tokens 阈值) | 204:21279818(门+env 读取);198 无此门 | **MED-LOW**(我方 workflow 家族的 UX 护栏 gap;设计参考) |
|
|
32
|
-
| D8 | **TodoWrite 按模型 kill-list + 短 prompt 变体** | 198→204(206 同) | TodoWrite(iU)`isEnabled(){return !nH()&&!zY()}`:`zY()` 读门载荷(模型名子串数组)命中即禁;另按模型切换短版 prompt('Create and update a task list…rendered to the user as your working plan') | **默认关(实验)**:`Ze("tengu_vellum_ash",[])` 默认空数组=不杀任何模型 | 204:17124399(zY+门)+17134881(isEnabled+G_d prompt 切换);198 无此门 | **LOW**(我方无 TodoWrite=已收敛 TaskCreate 族;记档) |
|
|
33
|
-
| D9 | **ScheduleWakeup 输出加 cancelledWakeups + hint 再修** | 204→206 | 输出 schema 加 `cancelledWakeups:number`("stop:true 取消了几个 pending wakeup;0=无 pending——recurring /loop cron 不被 stop:true 取消");searchHint 改指路 CronDelete;description 换短版 | **GA**(schema 直加) | 206:17171900(schema)+11153512(新短 description `bzc`);204 无 cancelledWakeups(计数 0→3) | **MED**(与 D1 同族一并处置) |
|
|
34
|
-
| D10 | **staged mcp_call kill-switch** | 204→206 | 远控通道 staged mcp_call(带 input_files/output_files/expires_at/timeout_ms 的请求)走 `runStagedMcpCall`,受总开关控;关时回 "staged mcp_call is disabled" | **默认开**:`Ze("tengu_ptc_enabled",!0)`(kill-switch 形态) | 206:24628412;204 无此门 | **LOW**(remote-control 执行面,非模型工具清单) |
|
|
35
|
-
| D11 | **CLAUDE_REMOTE_WORKFLOW_SCRIPT/_ARGS env 新增** | 198→204 | env 注册表新增两键(远程 workflow 启动注入脚本与参数) | **env-only** | 204:6848183(env 注册表);198 同表无此二键 | LOW(记档) |
|
|
36
|
-
| D12 | **/init 升级流(纠偏项,非新 delta)** | 三版同(198 已有) | `tengu_slate_harbor_experiment` ∨ env `CLAUDE_CODE_NEW_INIT` → /init 描述与产物升级为 "CLAUDE.md file(s) and optional skills/hooks";与 REPL 工具无关 | **默认关(实验)**(env 可强开) | 198 pretty:17921783;204:18684036;206:18784954(逐字同) | —(修正派单前提,防误记 206 新增) |
|
|
37
|
-
|
|
38
|
-
## 三、无漂移锚清单(核过)
|
|
39
|
-
|
|
40
|
-
- **49/49 件存在性全保留**:27 挂载件 + Glob/Grep/TodoWrite/LSP/Monitor/PushNotification/RemoteTrigger/DesignSync/REPL/PowerShell/Artifact/Projects/SendUserMessage/SendUserFile/ShareOnboardingGuide/ShowOnboardingRolePicker/WaitForMcpServers/ListMcpResourcesTool/ReadMcpResourceTool/ToolSearch/TestingPermission/UserPromptExpansion,三版 `"Name"` 计数全非零、产品簇件恒 1。
|
|
41
|
-
- **description/schema 锚行核验**:27 挂载件逐行锚(198 静态在册共 ~380 行)查 204/206,**45/49 件零漂移**,仅 EnterWorktree(D3)与 ExitPlanMode(D2)有真漂移;ExitPlanMode 206 的四行"缺失"里三行为 `AskUserQuestion` 字面量改 `${Lm}` 模板插值=渲染后逐字不变,cosmetic 不计 delta。Agent(10 锚)/Workflow(78 锚)/TaskCreate 族/Read/Bash/Edit/Write/WebFetch/WebSearch/Skill/Cron 三件套/SendMessage/Monitor 等全绿。
|
|
42
|
-
- **REPL 门面三版逐字同**:`tengu_slate_harbor`(!1,entrypoint cli/remote)、`CLAUDE_CODE_REPL` 双向 env、`CLAUDE_REPL_VARIANT`、PowerShell 门 `tengu_cobalt_ridge` 三版各恒 1 计数。
|
|
43
|
-
- **别名兼容映射稳定**:Task→Agent、KillShell/KillBash→TaskStop、BashOutput→TaskOutput、ListPeers→ListAgents、ReadMcpResourceDir→ReadMcpResourceDirTool 等 198 表在 204/206 原样(204 起该表所在模块微移,内容同)。
|
|
44
|
-
- **ListAgents 仍非真工具**:三版都只有名常量+prompt 引述+挂载探测(`tools.some(...)`);204 起多了一段完整工具 description 文案(204:11162609)但 bundle 内无消费它的工具对象——判 in-flight groundwork,下轮盯。
|
|
45
|
-
|
|
46
|
-
## 四、诚实盲区
|
|
47
|
-
|
|
48
|
-
1. **新工具扫描的两条腿都有形态盲区**:userFacingName-窗口法在三版一致漏 Agent/Skill/Cron 族(name 与 userFacingName 距离超窗),searchHint-diff 法漏无 searchHint 的工具;两法交叉后互补,但"既无 searchHint 又距 userFacingName 远"的新工具形态若存在则同漏。
|
|
49
|
-
2. 锚行核验只验"198 在册行是否存续",**检不出 204/206 对老工具描述的纯新增句**(驼式追加);Bash/Agent 等高频件的新增句面未穷举(占位计数 Bash 16→17→19、Agent 11→13 的增量窗口口径查过 D6/别名面,余量未逐条归因)。
|
|
50
|
-
3. 灰度判定基于静态门读数(`Ze(key,default)`);**statsig 服务端实际放量比例不可见**——"默认关"只表示无服务端配置时的兜底,clay 线上 204 是否被推了 tengu_omelette_fouet 等灰度需活体探针才知。
|
|
51
|
-
4. `qc()`/`Du()`(一方 auth 判定)未逐层解剖,按 ClaudeDesign 错误文案("only available with claude.ai authentication…not Bedrock, Vertex")定性。
|
|
52
|
-
5. tengu\_ diff 里 88 个新增键只对工具相关候选(~10 个)做了窗口取证,其余(fleet/bg/daemon/dead_probe 族)按命名归遥测/其他维度,未逐个开窗——属别的维度的调研面。
|
|
53
|
-
6. 204/206 文本层从二进制抽出,若有工具定义驻留在延迟下载的 sidecar(非主 bundle)则本法不可见;原始二进制 grep -a 兜底仅用于 205/206 版本确认,未全量重扫。
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
# CC 版本漂移调研:2.1.198 → 2.1.204 → 2.1.206 · 维度=使用面常数/限额 — 2026-07-10
|
|
2
|
-
|
|
3
|
-
**判决先行:本维度 198→206 零数值漂移。** GIa 落盘框架、七元框架常数、全部既有 per-tool 截断值、三条 env 闸(BASH/TASK/MCP)、Read 双闸、WebFetch 九常数簇——逐值核过,204/206 与 198 完全一致。所有 delta 均为**新工具携带新常数档**(50000 中间档 ×6、300000+ceiling ×1、观察者 1000 ×1、206 新 1e4 ×1)或**单工具常数上调**(claude.ai Artifact 1000→16000),没有任何既有工具的截断/落盘/预算常数被改。**结论:PARITY-SPOT-USAGE-CONSTANTS 档的 198 锚对 clay 线上 204 与 latest 206 继续成立,B1-B5 落码 backlog 优先级不受影响。**
|
|
4
|
-
|
|
5
|
-
- 主锚:`/Users/clay/开发/gittea/claude-198/cc-2.1.198/package/claude-cli-2.1.198.pretty.js`(行号)
|
|
6
|
-
- 204/206 文本层:scratchpad `cc204-bundle.js` / `cc206-bundle.js`(**字节偏移**,`@N` 记法;python bytes.find 定位,非 names.py 字符偏移)
|
|
7
|
-
- 锚清单来源:`docs/PARITY-SPOT-USAGE-CONSTANTS-2026-07-10.md`
|
|
8
|
-
- 灰度判定口径:门形态=`Ze("tengu_xxx",!0|!1)`(206 帮手名 `Ze` 同 204)+ env + 入口条件;缺门=GA
|
|
9
|
-
|
|
10
|
-
## 1. Delta 表
|
|
11
|
-
|
|
12
|
-
| # | 项 | 变化 | 版本段 | 灰度判定 | 坐标 | roadmap |
|
|
13
|
-
|---|---|---|---|---|---|---|
|
|
14
|
-
| D1 | claude.ai Artifact(web-render 工具)结果预算 | maxResultSizeChars **1000→16000**(preserveToolUseResultInSubagents:!0 两侧都有,非新增) | **198→204(线上已生效)** | GA(无 tengu 门;工具本身=claude.ai 载体条件) | 198:465694 / 204@17399889 / 206@17545245 | LOW(载体专属工具,core 无对应物;但注意 CC 对"回给用户的渲染物"预算 16 倍放宽的方向) |
|
|
15
|
-
| D2 | 新 **50000 中间档**工具族 ×6:SearchMcpRegistryTool("discover MCP connectors by keyword")、list/discover claude.ai {noun}s(生成器 ×2)、SuggestPluginInstall、SuggestSkills、"resolve MCP connector payloads by directoryUuid" | 198 无任何 50000 档;204 起 +6 成员 | 198→204 | env 条件门:`isConnectorSuggestToolEnabled(){CLAUDE_CODE_REMOTE && qc()}` → **本地 CLI 默认关**(remote 载体开) | 204@14062090(win.py 字节@14104035 族)/204@14103999(门定义)/206@14144080 同构 | LOW |
|
|
16
|
-
| D3 | 新工具 "list the user's installed MCP connectors":maxResultSizeChars:**300000 + persistenceThresholdCeiling:300000**(300K ceiling 第 3 成员;198 仅 2 个 300K、1 个显式 ceiling) | 198→204 | 同 D2 门(isEnabled:xee) | 204@17249998 / 206@17324804 | LOW(但 per-tool ceiling 覆写用法=B2 分表设计时的参考形态) |
|
|
17
|
-
| D4 | 新工具 **ObserverReport**(observer agent 向被观察 agent 递报告),maxResultSizeChars:1000 | 198→204(198 grep "observed agent"=0) | GA(isEnabled ()=>!0;功能上仅 observer 配对 agentId 时可用,主会话调用直接拒) | 204@17346731 / 206@17424653 | **MED**(非常数漂移,但 observer/监督机制与我方 supervisor 主线同域,建议另开维度调研 observer 配对机制本体) |
|
|
18
|
-
| D5 | loop 工具 searchHint 改写+stop:true 语义(常数 1000 不变) | 198→204 | GA | 198:457957 域 / 204@17143070(win.py) | LOW(cosmetic) |
|
|
19
|
-
| D6 | DesignSync 门形态改:`tengu_slate_quill`→`tengu_omelette_fouet`(默认 !1),198 的 `xc()` 短路真分支移除(常数 300000 不变) | 198→204 | 默认关(实验):settings `allow_design_sync` && 条件 && `Ze("tengu_omelette_fouet",!1)` | 198:462655-462659 / 206@17369763 后窗(Ggo/FAy);204 grep 1 hit | LOW |
|
|
20
|
-
| D7 | 新工具 **SN "end the conversation"**(sustained user abuse 终止/演示),maxResultSizeChars:**1e4**,shouldDefer,只读,subagent 内调用拒 | **204→206(即将到来)**;204 grep "sustained user abuse"=0 | 默认关(**模型条件门**,非 statsig/env):`isEnabled(){let e=vDn();return e!==void 0&&NWn(e)}`;遥测 `tengu_end_conversation_tool_call` | 206@17412185(searchHint)/@17412264(定义) | LOW-MED(CC 完全体 parity 视角的新工具面;模型福利机制,core 无对应诉求) |
|
|
21
|
-
|
|
22
|
-
**204→206 增量仅 D7 一项**(1e4 档 5→6);其余 delta 全部在 198→204 段=clay 线上已生效。
|
|
23
|
-
|
|
24
|
-
## 2. 无漂移锚清单(逐值核过,18 组)
|
|
25
|
-
|
|
26
|
-
| 锚 | 198 | 204 | 206 |
|
|
27
|
-
|---|---|---|---|
|
|
28
|
-
| 落盘框架 GIa≡y8c≡o7c(非有限直返/statsig 覆写图优先/min(t,ceiling)) | :286716 | @11112705 `y8c` | @11134507 `o7c` |
|
|
29
|
-
| 七元常数块 50000(ceiling)/500000(MCP _meta cap)/4(chars-per-token)/400000(兜底)/200000(聚合)/50/1e4 | :281521-281527 w6t/Nfo/x6t/$xa/qxa/EO/jxa | @11112712 Z1r/SFi/eMr/f8c/m8c/nq/h8c | @11134507 LNr/GBi/MNr/e7c/t7c/Hq/r7c |
|
|
30
|
-
| statsig 覆写图 key `tengu_velvet_ibis` + persisted preview 2000 + `<persisted-output>` 帧 | :287025-287026 xHp/Cmt | @11119948 A5h/tGt=2000 | @11141750 P7h/dVt=2000 |
|
|
31
|
-
| per-tool 表核心:Bash **30000**/PowerShell 30000/Grep **20000**/Glob 1e5/Edit·Write 1e5/NotebookEdit 1e5/Agent 1e5/TaskOutput 1e5/TodoWrite 1e5/Monitor **1e4**/Read **1/0**(Infinity 豁免) | §0 分表(:335231 等) | @14032995/@13536941/@13678841/@13673709/@13647259+13662316/@13691954/@17032424/@17151102/@17176883/@16966764/@17886414(win.py 字节) | 值分布逐项同(dist.py) |
|
|
32
|
-
| 非有限 Set(Read 豁免聚合面同构) | :472636 | @17597873 `!Number.isFinite(xt.maxResultSizeChars)` | 同构 |
|
|
33
|
-
| `BASH_MAX_OUTPUT_LENGTH` 默认 30000/上限 150000(capped-env 帮手) | :284078 _ho/gho | @10867552 WMi=30000/jMi=150000 | @10889250 mFi/fFi |
|
|
34
|
-
| Bash timeout 默认 120000/`BASH_MAX_TIMEOUT_MS` max(r,default) | :286692-286703 | @13383832 `return 120000` | @13417199 |
|
|
35
|
-
| `TASK_MAX_OUTPUT_LENGTH` 32000/160000 + **保尾** slice(-i) + `[Truncated. Full output: …]` 指针 | :458010-458023 dFo/uFo | @17145312 yvs=32000/gvs=160000 | @17219389 _As/yAs |
|
|
36
|
-
| MCP token 闸:env `MAX_MCP_OUTPUT_TOKENS` → `tengu_velvet_ibis.mcp_tool` → 默认 **25000**(伴随 0.5/1600 常数) | :300537-300648 NMp | @11617749 h8n→u7h=25000 | @11648087 bGn→CZh=25000 |
|
|
37
|
-
| MCP `_meta["anthropic/maxResultSizeChars"]` 消费:min(T,500000)+ceiling | :320015-320062 | @17741807-17743089 min(T,SFi) | persistCeiling 'v' 同构 |
|
|
38
|
-
| `MCP_TRUNCATION_PROMPT_OVERRIDE` env + `tengu_mcp_subagent_prompt` 门 | 198 已有(2 hits) | @12860596 bWn | @12891687 wVn |
|
|
39
|
-
| Read 首页闸:`CLAUDE_CODE_FILE_READ_MAX_OUTPUT_TOKENS` env → 默认 **25000** | :280562-280569 | @12859382 leg=25000 | @12890453 Tag=25000 |
|
|
40
|
-
| Read 256KB(262144)+ .cc-writes 簇(256) | :48192 WOr | @7001628 qJo=262144 | @7011744 dZo=262144 |
|
|
41
|
-
| WebFetch 九常数簇:900000(cache TTL)/52428800(cache 50MB)/2000(URL len)/**10485760**(10MB)/60000(timeout)/1e4/10(redirects)/1e5/1048576 | :438269-438278 | @16693351 逐值同序 | @16758585 逐值同序 |
|
|
42
|
-
| maxTurns:内置 fork agent **200**;compact/reactive-compact/away_summary **1** | :225067/:487184 | @11235768/@13806874/@13815503/@14506551 | @11259207 等 |
|
|
43
|
-
| Grep head_limit 文案(默认 250 口径)/--max-columns 口径 | :333194 | 文案逐字同 | 文案逐字同 |
|
|
44
|
-
| REPL 工具动态预算:`trim(\d+)k` 解析,默认 1e5 | :457501 IHl | @17132512 f_d | 同构 |
|
|
45
|
-
| doctor env 校验 UI(BASH/TASK/`CLAUDE_CODE_MAX_OUTPUT_TOKENS` 三件套) | :509373-509375(198 已有) | @18674956 | @21000641 |
|
|
46
|
-
|
|
47
|
-
另顺核(邻接维度):MEMORY.md 常数簇 `("MEMORY.md",200,25000)` 三版本同(198:148639 / 204@9390058 / 206@9408488)。
|
|
48
|
-
|
|
49
|
-
## 3. 对 roadmap 的净影响
|
|
50
|
-
|
|
51
|
-
1. **B1(Read offload 豁免)/B2(per-tool 分表)/B3(TaskOutput 32K 保尾)/B4(MCP 双闸)/B5(措辞修)全部维持原判**——204/206 没有动这些常数,198 锚照抄即追平线上与 latest。
|
|
52
|
-
2. B2 落码时可参考 D3 形态:CC 的 per-tool `persistenceThresholdCeiling` 覆写(300K)是既有 seam 的合法用法,我方 ToolSpec 已有对应位。
|
|
53
|
-
3. 新 50000 中间档(D2)与 16000(D1)说明 CC 的分表在**持续长出新档位**,坐实"每工具一档"结构判决(锚档 F2),反对一刀切。
|
|
54
|
-
4. D4 ObserverReport 建议后续开 observer 机制专项调研(非本维度)。
|
|
55
|
-
|
|
56
|
-
## 4. 诚实盲区
|
|
57
|
-
|
|
58
|
-
- **Glob 100 文件上限的具体常数在 198 侧本就未逐字定位**(GGB 记档沿用);本次以 glob 截断文案+工具定义结构三版本逐字同作间接判定,未落到数字字面量。
|
|
59
|
-
- statsig 运行时覆写(`tengu_velvet_ibis` 图)可不改 bundle 改任何工具阈值——静态锚只保默认值;活体见异常先查 statsig(锚档同款盲区,承继)。
|
|
60
|
-
- 204/206 为 minified 文本层,变量名映射靠字符串字面量+结构模式;**未跑活体探针**(宪法第二闸未走,本档定位=roadmap 预调研非落码依据)。
|
|
61
|
-
- 门帮手 `qc()`/`Du()`/`NWn()`/`vDn()` 语义未逐个下钻(按调用面判读:qc/Du≈账号/载体条件,vDn/NWn≈当前模型+模型允许表)。
|
|
62
|
-
- Monitor 批窗/频控、Skill/图像 resizer 阶梯、PowerShell 细部:锚档声明不在维度,未复核。
|
|
63
|
-
- maxTurns 只核到内置 agent 200 与 compact 族 1,未穷举全部 querySource 调用点。
|
|
64
|
-
- 早期两轮 grep 教训已内化:`maxn=3` 截断曾误报 262144/10485760 缺失(vendor 命中占满窗口),已用全量 find 纠正——本档所列"无漂移"均为全量定位后判定。
|