## Covers `alpha-work#49` AC4/AC5:把 secret/workspace MCP 的 secret version作为封闭 `mcp-secret-version` prepared resource纳入 journal/recovery,并为 mixed Bundle提供 可组合 planning item;不扩大普通文件事务删除权限。 ## Solution baseline [REQ-128 accepted baseline](https://github.com/jinjunnn/alpha-code/blob/f923f286290d8d14fe496fa2b2886580abefb666/docs/design/2026-07-30-req128-extension-package-baseline.md) §2.8。 ## Ground truth and boundary - `alpha-mcp-secrets.ts` 使用 append-only version目录与0600/0700权限。 - secret root位于普通 transaction root之外;`TxFileAction` 只允许 root内相对路径。 - 现有 cleanup已经有 main+retained legacy merged reference、路径规范化与 filesystem identity逻辑,必须复用。 ## Development plan 1. 未授权 preview不写 secret;admission确认后 populate受限 version。 2. journal只记录类型化 secret version identity,不记录value或任意绝对删除路径。 3. config switch前prepared version不可达;switch失败/崩溃由 recovery判断保留/清理。 4. cleanup复用 merged reference resolver;任一来源不可读或 identity不确定时不删。 5. workspace空目录是非权威 provisioning,可由受控GC清理;config/receipt/reference才是 atomic authority。 6. `buildMcpTxItems` 返回 prepared descriptor,单装与Bundle共用。 ## Acceptance and named gates - populate/config/probe/receipt/crash全点 fault matrix,全旧或全新。 - journal/log/receipt/preload无 secret value/value digest/absolute delete path。 - retained legacy、relative/`~/`/`./`、symlink alias、unreadable source均不误删 live secret。 - required MCP失败零 reachable secret orphan;workspace空目录不被误报为半安装。 ## Dependencies Blocked by `alpha-code#696` 与 Bundle builder/probe enabling issue。 ## Out of scope 通用 prepared-resource framework、credential manager/rotation UI、任意绝对路径事务。 ## Exit condition Merged PR + fault/recovery/security evidence + canonical secret docs同步。
Activity
Merge origin/alpha (#712 prepared-resource journal) into feat/704-alp…