Skip to content

fix(docs): 第零节前提错了——会话读版本缓存,不是工作树 - #6

Merged
zaurakworks merged 1 commit into
mainfrom
fix-premise
Aug 15, 2026
Merged

zaurakworks merged 1 commit into
mainfrom
fix-premise

Conversation

@zaurakworks

Copy link
Copy Markdown
Owner

前提错了

docs/lifecycle.md 第零节原写作「源码即生产」,说工作树就是加载路径、未合并内容对新 Session 实时生效。

那个结论来自 claude plugin details 的 on-invoke 估算随工作树变化——是拿 CLI 检视命令的显示去推断会话行为。CLI 算的是「装了会是多大」,与会话加载是两条代码路径。

直接测试

2026-08-15 对两个运行端各做一次:在工作树给一个插件的 manifest description 植入未提交标记,起一个真实的新会话问它这个 skill 的 description。

工作树(含未提交标记)  PROBE-MARKER-8F2A 未提交标记。…
新 Claude 会话报出       仅在用户直接要求 grilling/盘问…   ← 缓存里的旧值
新 Codex 会话报出        仅在用户直接要求 grilling/盘问…   ← 缓存里的旧值

结论反过来:合并不等于生效,装了才算数。 在工作树里改动、甚至合并进 main,都不改变任何会话的行为,直到内容被装进缓存。

随之调整的判断

原来 现在
生产检出保持干净是安全要求(脏了会实时污染会话) 是可判定性要求——脏了不影响会话,但漂移检测会失明
sync 第三步是「刷新缓存账目」 那就是部署本身
sync 拒绝的是「不得发布」 「不得部署」
「开发不在生产检出里做」的代价是污染会话 代价是让漂移检测判不出来

错误结论保留在正文里

作为复盘,不删:能被观察到的东西,不一定是正在起作用的东西。

边界

以上是 manifest 层实测。SKILL.md 正文没有单独测——插件作为一个整体装进同一个缓存目录(含 manifest 与 skills/ 全部文件),正文同源是推断,不是实测。已写进正文。

两份符合性测试通过。配套的 plugin_release 改正见 agent-control PR #46。

本节原写作「源码即生产」,说工作树就是加载路径、未合并内容对新 Session 实时生效。
那个结论来自 claude plugin details 的 on-invoke 估算随工作树变化,是拿 CLI 检视
命令的显示去推断会话行为——CLI 算的是「装了会是多大」,与会话加载是两条代码路径。

2026-08-15 对两个运行端各做一次直接测试:在工作树给一个插件的 manifest
description 植入未提交标记,起一个真实的新会话问它这个 skill 的 description。
Claude 与 Codex 报出的都是缓存里的旧值,标记没有出现。

因此结论反过来:合并不等于生效,装了才算数。在工作树里改动、甚至合并进 main,
都不改变任何会话的行为,直到内容被装进缓存。

随之调整的判断:

- 生产检出保持干净不再是安全要求,而是可判定性要求。在它上面编辑不会立刻影响任何
  会话;但漂移检测要回答「装的是不是 origin/main 应有的内容」,工作树停在特性分支
  时它不代表那个内容,检测就失明了。
- sync 的第三步不是账目维护,那就是部署本身。
- 分层表相应改:sync 拒绝的是「不得部署」而非「不得发布」;「开发不在生产检出里做」
  的代价改写为只影响漂移检测能否判定。

错误结论作为复盘保留在正文里,不删:能被观察到的东西,不一定是正在起作用的东西。

边界写明:以上是 manifest 层实测,SKILL.md 正文同源是推断不是实测。

关联 zaurakworks/agent-system#11 (未合并候选进入 Plugin 缓存并被恢复 Session 加载)

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@zaurakworks
zaurakworks merged commit eb10f7f into main Aug 15, 2026
1 check passed
@zaurakworks
zaurakworks deleted the fix-premise branch August 15, 2026 11:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant