Files
deepseek-harness/docs/experimental-persistence-catalog.zh.md
T
Yichen Jiang 691ebd7b6c refactor(worktrees): move archive cleanup into the worktree service
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.
2026-11-05 12:28:50 +08:00

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