The worktree service now records each checkout it creates as a `plugin:worktree/created` record, folds them in its own `worktree` projection with fork-aware ownership, and reclaims a clean, unreferenced checkout when the Session that created it is archived. The Forge panel reads the service's record and forwards its cleanup state; it no longer writes a `created` record, owns a retention projection, or gates every Session's directory access. Admission registers the attempt inside the Workspace write queue and returns; inspection runs afterwards, reading cold Sessions through the projection cache when mounted and from their log otherwise, with subagent children of an archived ancestor counted as archived. Only a path being removed holds `working-directory/access`, whose request now carries the access's `signal`, and listeners withdraw before the drain. Ignored files no longer retain a checkout, matching Git's non-force removal; processes and terminals are not consulted. The Forge bundle mounts one `worktree` service: the `forge-worktree` row and the `optional-forge-panel` group that isolated a second service are gone, and `forge-panel` is a top-level row. `canRemove`, `remove`, the `forgeWorktreeRetention` projection, and `ForgeWorktreeCleanup` are removed; `WorktreeService.cleanupOf`, `WorktreeCleanup`, and the `worktree/cleanup` Host event replace them. The upgrade guide moves to the current version directory and covers the id removals.
2.6 KiB
2.6 KiB
实验性插件记录目录
English | 中文
这些当前源码中的 PluginRecordMap 声明描述实验性包拥有的 ignorable、仅日志记录。载荷类型注解链接到所属源码,不展开引用类型。记录不进入已知事件集合、持久化 schema 指纹或兼容性历史;格式迁移以尽力而为的方式保留它们。
运行 pnpm run gen-persistence-catalog 可重新生成两份持久化目录及其中英配对和关联制品。pnpm run verify-persistence-catalog 检查所有生成文件。
共享 Session 事件声明与解析后的 schema 见会话持久化事件目录。
| 记录 | 所属包 | 用途 | 载荷与源码 |
|---|---|---|---|
plugin:action-cards/decision |
@deepseek-ai/dsh-action-cards |
Dismissals and kind-defined progress of action cards. | ActionCardDecision · packages/experimental/action-cards/src/types.ts |
plugin:client-ui-forge/worktree |
@deepseek-ai/dsh-experimental-client-ui-forge |
A request, withdrawal, or creation of the worktree a Session starts in. | WorktreeRecord · packages/experimental/client-ui-forge/src/types.ts |
plugin:forge-session/binding |
@deepseek-ai/dsh-experimental-forge-session |
A caller or discovery action that binds, restores, or hides one change request. | BindingRecord · packages/experimental/forge-session/src/types.ts |
plugin:translator/request |
@deepseek-ai/dsh-experimental-translator |
Provider-independent translation input, retained before dispatch. | TranslationRequestRecord · packages/experimental/translator/src/types.ts |
plugin:translator/result |
@deepseek-ai/dsh-experimental-translator |
Successful translation, retained before it is returned to the consumer. | TranslationResultRecord · packages/experimental/translator/src/types.ts |
plugin:worktree/created |
@deepseek-ai/dsh-experimental-worktree |
A checkout the worktree service created for the Session, which entered it in the same operation. | CreatedWorktree · packages/experimental/worktree/src/projection.ts |