pomaster 0.6.1 → 0.7.0

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.
Files changed (3) hide show
  1. package/README.md +224 -8
  2. package/dist/bin.js +40403 -30108
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -63,6 +63,210 @@ corepack pnpm studio:react:dev # React sidecar(antd 对照浏览,端口 600
63
63
 
64
64
  gate 运行结果走 `record gate-run` 产 **GRN 回执**入 evidence 平面;claim 必须显式绑定 GRN 分母;`record verification` 把 claim 推到 VERIFIED;closeout 判卷「claims × GRN 硬绑」——证据缺失伪装完成会被**阻断码**硬拦。读侧字节级核验:判卷字节 == 落盘字节 == GRN 引用字节,失配即判红。
65
65
 
66
+ ## 架构总览:点线面
67
+
68
+ > 面=组成块;线=块之间的数据/控制流;块内是工作流(SOP);工作流由节点组成;节点上挂着工具与功能。本节是全景地图——每个节点都能在下方《命令全景》里找到对应命令。
69
+
70
+ ### 一、面:九大组成块
71
+
72
+ ```mermaid
73
+ graph TB
74
+ subgraph CORPUS["📜 Corpus 文档真理面"]
75
+ C1["PRD 语料 + Owner 裁决台账<br/>owner-adjudications.md"]
76
+ C2["派生 views(构建期生成,--check 防漂移)"]
77
+ end
78
+
79
+ subgraph KERNEL["🏛️ Kernel 治理内核"]
80
+ K1["store:applyTransaction 唯一写入权威"]
81
+ K2["五原语:Object · State · Authority<br/>· Transition · Projection"]
82
+ K3["决策图 / 许可 / 锁 / 执行台账"]
83
+ K4["投影编译 / 计划编译器 / 证据资格链"]
84
+ K5["Steering · Checkpoint · Telemetry"]
85
+ end
86
+
87
+ subgraph SCHEMAS["📐 Schemas 契约面"]
88
+ S1["23 份 JSON Schema 资产 + 词表"]
89
+ end
90
+
91
+ subgraph CLI["🎛️ CLI 命令面"]
92
+ L1["八拍命令链"]
93
+ L2["横切命令:audit · doctor · view<br/>· diagnose · telemetry · tools · provider"]
94
+ end
95
+
96
+ subgraph GAUNTLET["⚔️ Gauntlet-lite 验证工具面"]
97
+ G1["四段 Adapter:detect→prepare→run→normalize"]
98
+ G2["ToolBinding 注册面:六分态"]
99
+ G3["TYPECHECK / LINT / CONTRACT / BUILD 腿"]
100
+ end
101
+
102
+ subgraph HOOKS["🪝 Hooks 宿主拦截面"]
103
+ H1["exec-guard(PreToolUse 写前拦截)"]
104
+ end
105
+
106
+ subgraph STUDIO["🖼️ Studio 双画廊"]
107
+ D1["packages/studio(Vue3 主实例)"]
108
+ D2["packages/studio-react(React18 sidecar)"]
109
+ end
110
+
111
+ subgraph STATE["💾 .pomaster 状态面(自托管)"]
112
+ T1["truth-index + objects(治理事实)"]
113
+ T2["evidence:CLM / GRN / blob / OBS"]
114
+ T3["state:permits / sessions / contexts<br/>/ steering-log / authority"]
115
+ T4["discovery / traces / checkpoints"]
116
+ end
117
+
118
+ CORPUS -->|"裁定与语料(构建期灌装)"| KERNEL
119
+ SCHEMAS -->|"契约校验(ajv)"| KERNEL
120
+ KERNEL -->|"类型与判卷函数"| CLI
121
+ GAUNTLET -->|"GateResult 归一形态"| CLI
122
+ CLI -->|"唯一写入:applyTransaction"| STATE
123
+ HOOKS -->|"PreToolUse 判卷 checkPermit"| STATE
124
+ CLI -->|"命令编排"| GAUNTLET
125
+ STATE -->|"seed 只读装载 origin=preset"| STUDIO
126
+ ```
127
+
128
+ 九块一句话:**Corpus** 说"为什么这样设计、Owner 裁了什么";**Kernel** 是唯一能改治理事实的地方;**Schemas** 是一切落盘物的契约;**CLI** 是人机接口;**Gauntlet-lite** 是"跑工具、算证据"的手;**Hooks** 是宿主(Claude Code 等)每次写文件前的机器关卡;**Studio** 是可视化画廊(只读呈现,非规范);**.pomaster** 是项目自己的治理状态库。
129
+
130
+ ### 二、线:治理主循环(Expected → Observed → Reconcile → Accepted)
131
+
132
+ 一切工作都在这条主循环上,八拍是它的命令化表达:
133
+
134
+ ```mermaid
135
+ flowchart LR
136
+ A["Ground<br/>需求拷问<br/>brainstorm"] --> B["Expect<br/>合同与验收<br/>promote"]
137
+ B --> C["Act<br/>受控写入<br/>maintain / exec-guard"]
138
+ C --> D["Verify<br/>计划+执行<br/>plan compile / check"]
139
+ D --> E["Reconcile<br/>delta 对账<br/>reconcile"]
140
+ E --> F["Audit<br/>越界/弱化审计<br/>audit test-weakening"]
141
+ F --> G["Carry<br/>DoD 五闸收口<br/>closeout"]
142
+ G --> H["Learn<br/>知识/记忆候选<br/>memory / knowledge"]
143
+ H -.->|"经验反哺下一轮"| A
144
+ ```
145
+
146
+ 三条铁律贯穿全循环(fail-closed):
147
+
148
+ 1. **一切落库必经 `applyTransaction`**——CLI 没有任何旁路写。
149
+ 2. **声称方不可自填 VERIFIED**——claim 恒 UNVERIFIED 起步,独立验证流回写。
150
+ 3. **机器验证 ≠ 成果接受**——closeout 前必须有绑定 task 的 Human ACCEPT 决议(裁决 20②)。
151
+
152
+ ### 三、线:一次写入的完整旅程(写路径时序)
153
+
154
+ ```mermaid
155
+ sequenceDiagram
156
+ participant Agent as AI/人
157
+ participant Hook as exec-guard hook
158
+ participant CLI as CLI 命令
159
+ participant Kernel as Kernel 判卷
160
+ participant Disk as .pomaster
161
+
162
+ Agent->>Hook: Edit/Write/Bash 写前
163
+ Hook->>Kernel: checkPermit(KEYBINDING→映射→scope)
164
+ alt 无绑定/无活跃 execution
165
+ Hook-->>Agent: 透传(条件激活,非授权)
166
+ else 越界(跨目标全称判卷)
167
+ Hook-->>Agent: DENY exit 2 + 枚举越界目标
168
+ else 许可覆盖
169
+ Hook-->>Agent: ALLOW(留痕)
170
+ end
171
+ Agent->>CLI: pomaster maintain --ops(显式事务)
172
+ CLI->>Kernel: applyTransaction(D-4 权威闸 + source_refs 判卷)
173
+ Kernel->>Disk: 原子落库 + journal TX_APPLIED
174
+ Note over Disk: 事后 execution-audit 逐路径 scope 审计<br/>(越界 exit 1 + OBS 回执 → view review 呈现)
175
+ ```
176
+
177
+ ### 四、线:证据链(从工具跑到成果接受)
178
+
179
+ ```mermaid
180
+ flowchart TB
181
+ T["真实工具执行<br/>ToolBinding:registered→validated<br/>→available→selected"] -->|"run→normalize"| GRN["GRN GateRun 台账<br/>verdict 七态,假绿封死"]
182
+ GRN --> V["record verification<br/>独立 verifier,自批拒绝"]
183
+ A["Acceptance 验收行"] -->|"record claim"| CLM["CLM Claim<br/>UNVERIFIED 起步"]
184
+ V --> CLM
185
+ CLM -->|"verification=VERIFIED"| CO["closeout 五闸"]
186
+ subgraph 五闸["closeout 判卷五闸(全绿才施断)"]
187
+ G1["① DoD 分母<br/>悬空/自批/资格链拒绝"]
188
+ G2["② Evidence Spec 资格"]
189
+ G3["③ Gate 记录 passed"]
190
+ G4["④ Baseline 确认态"]
191
+ G5["⑤ ACCEPT 回执闸<br/>绑定 task 的 Human 决议"]
192
+ end
193
+ CO -->|"全绿"| DONE["evidence=VERIFIED(成果施断)"]
194
+ CO -->|"任一不过"| BLOCK["显式失败码 + 零写入<br/>REWORK/REJECT 天然阻断"]
195
+ ```
196
+
197
+ ### 五、面内工作流 × 节点 × 点
198
+
199
+ 每行=一个 SOP;节点是工作流步骤;点是步骤上的命令/闸/功能。
200
+
201
+ | 面 | 工作流(SOP) | 节点 → 点 |
202
+ |---|---|---|
203
+ | **Kernel 治理内核** | 受控写入 SOP | `applyTransaction`(唯一写权威)→ D-4 权威维度闸 → source_refs 判卷 → 幂等短路/冲突拒绝 → journal |
204
+ | | 生命周期 SOP | `transition_object`:PROPOSED→CURRENT(authority_approval)→ SUPERSEDED(successor_ref 必填) |
205
+ | | 投影编译 SOP | projection 确定性 applicability(lanes→capabilities→change_class→object_kinds;governance_profile 解除判卷力)→ must/advisory 分区 |
206
+ | | 决策 SOP | decision-graph:候选图 build→grounding→READY_FOR_DECISION→resolveDecision(ACCEPT/CHANGE/UNKNOWN/DEFER + outcome_binding 成果绑定键) |
207
+ | **CLI 八拍** | Discovery | `brainstorm start / question-gate / decide --set --answer --ready / promote` |
208
+ | | Framework | `permit issue/check/steal`、`baseline set/confirm/--ack-drifted` |
209
+ | | Projection | `context compile`(must/advisory 分区 + Steering/negative-history 投影 + 指纹) |
210
+ | | Execute | `maintain --ops`、`new-entity`、exec-guard 拦截 |
211
+ | | Verify | `plan compile`(Evidence Plan)、`check --fast/--gates`、`record gate-run` |
212
+ | | Reconcile | `reconcile --permit`(八拍 delta)、`session attach --reconcile`(恢复对账闸) |
213
+ | | Compact | `compact`、`knowledge record/validate/promote`、`memory capture/harvest/review --actor/promote` |
214
+ | | Carry | `record claim/verification`、`closeout`(五闸)、`view review`(八分区终审包) |
215
+ | **横切命令** | 诊断 | `diagnose`(六失败域判定核)、`production diagnose`(同核,breach 前置) |
216
+ | | 审计 | `audit blueprint/task/test-weakening`、`execution audit`(事后 scope)、`ledger record` |
217
+ | | 观测 | `telemetry task`(六指标,零分母显式 NOT_COMPUTABLE)、`view`(status/attention/decision/review)、`alerts` |
218
+ | | 运行时 | `session attach(--reconcile)`、`checkpoint save/show`、execution 查询(在途 recorded/none 分态) |
219
+ | | Provider | `provider capabilities`(四维度×三值探针报告 + 降级语义) |
220
+ | **Gauntlet-lite 验证** | 工具接入 SOP | ToolBinding 六分态:detect→registered→validated→available→selected→executed(`tools list/validate`) |
221
+ | | 验证执行 SOP | 四段 adapter:detect→prepare→run→normalize(BUILD/TYPECHECK/LINT/CONTRACT 受信闭包) |
222
+ | | 浏览器双腿 | playwright 确定性腿 + chrome-devtools MCP 交互腿(环境回执九项门) |
223
+ | | 报告判卷 SOP | 逐断言重算(自报 vs recomputed 孪生)、零分母 cap、截断披露、not_run 诚实缺席 |
224
+ | **Hooks 拦截** | 写前判定 SOP | 词形粗筛→KEYBINDING 映射→permit 判卷→跨目标全称汇总(DENY 枚举全部越界)→ALLOW/透传/fail-open 三态如实 |
225
+ | **Studio 双画廊** | 生成 SOP | seed 单一源(origin=preset)→ 生成器(KNOWN_HINTS fail-closed)→ generated stories → 钉测(58 叶/133 分母对账) |
226
+ | | 呈现 | archetype 41 卡 / 71 组件 story / design-tokens 组筛选页(组筛选=seed 派生真值分母) |
227
+ | **Corpus 真理** | 裁定 SOP | Owner 裁决 → owner-adjudications.md 台账 → 派生 views(--check 防漂移) |
228
+ | **.pomaster 自托管** | 恢复 SOP | `checkpoint save`(引用快照)→ 中断 → `session attach --reconcile`(新鲜度判定)→ `checkpoint show`(引用面可见) |
229
+ | | 学习 SOP | negative-history record/search(已否定方案)、steering record/search(约束事件) |
230
+
231
+ ### 六、点:fail-closed 错误码家族(闸的语言)
232
+
233
+ 每个闸失败都给**稳定错误码**(机器可断言)+ 人读 hint(含确切可用命令词形)。代表性家族:
234
+
235
+ | 家族 | 码 | 语义 |
236
+ |---|---|---|
237
+ | 权威 | `AUTHORITY_BOUNDARY_DENY` / `GHOST_AUTHORITY_OWNER` | 非权威来源驱动写入 / owner 未登记(FATAL) |
238
+ | 许可 | `PERMIT_SCOPE_DENIED` / `PERMIT_EXPIRED_OBSERVED` / `PERMIT_UNKNOWN` | 越界 / 到期 / 引用不存在 |
239
+ | 证据 | `EVIDENCE_ALREADY_EXISTS` / `EVIDENCE_MALFORMED` / `EVIDENCE_BINDING_INCOMPLETE` | 同号异内容 / 损坏 / 绑定不全 |
240
+ | 判卷 | `CLAIM_ALREADY_ADJUDICATED` / `CLAIM_SELF_APPROVAL` / `DOD_CLAIM_SELF_APPROVED` / `DOD_CLAIM_EVIDENCE_UNQUALIFIED` | 已判定禁改判 / 自批警告 / closeout 拒自批 / 证据资格否决 |
241
+ | 收口 | `CLOSEOUT_ACCEPT_MISSING` / `CLOSEOUT_ACCEPT_STALE` / `CLOSEOUT_ACCEPT_DAMAGED` / `GATE_EVIDENCE_MISSING` / `BASELINE_NOT_CONFIRMED` | 无回执 / 内容漂移 / 图损坏 / 缺 gate / 基线未确认 |
242
+ | 投影 | `STALE_GROUNDING` / `RECONCILE_DIRTY` / `BASELINE_MISSING` / `SCHEMA_INVALID` | 指纹漂移 / 对象漂移 / 基线缺席 / 结构非法 |
243
+ | 执行 | `EXECUTION_ALREADY_EXISTS` / `EXECUTION_INTERRUPTED` / `CHECKPOINT_ALREADY_EXISTS` / `TOOLBINDING_REGISTRY_ABSENT` | 重试须新 id / 被接管封口 / checkpoint 冲突 / 注册面缺席 |
244
+
245
+ ### 七、长时程运行面(Durable Runtime)
246
+
247
+ ```mermaid
248
+ graph LR
249
+ subgraph SAVE["保存时点"]
250
+ CP["checkpoint save<br/>11 键引用快照"]
251
+ end
252
+ subgraph INTERRUPT["中断"]
253
+ INT["在途 execution<br/>recorded / none 分态"]
254
+ end
255
+ subgraph RESUME["恢复时点"]
256
+ R["session attach --reconcile<br/>新鲜度判定"]
257
+ R1["clean → 放行"]
258
+ R2["dirty → 阻断<br/>force 显式越权留痕"]
259
+ end
260
+ CP --> INTERRUPT --> RESUME
261
+ STE["steering record<br/>约束事件 declared 申报面"] -.->|"下一编译边界生效"| R
262
+ TEL["telemetry task<br/>六指标派生评估"] -.->|"只读聚合"| STATE2[(".pomaster")]
263
+ ```
264
+
265
+ Provider 无原生 async/steering/取消时的降级语义是**声明面**(`provider capabilities`):同步步骤+持久记录 / 下一派发边界应用约束 / 在途状态明确+冲突隔离 / 预编译较小工具集——全部映射到仓内已就位载体,不是假想 API。
266
+
267
+ ---
268
+
269
+
66
270
  ## 快速上手
67
271
 
68
272
  POMaster 的全部能力收敛在一条 CLI(`pomaster`)——八拍 Change Loop 的每一拍都有对应命令面。先上**命令全景**(与 `pomaster --help` 对账零漂移;`#` 分节注释仅人读)。第一次使用?直接看 [安装 → init → 第一个 Change](#1-安装) 的全流程。
@@ -83,27 +287,34 @@ pomaster brainstorm start/question-gate/status/decide/promote
83
287
  # ② FRAMEWORK —— 许可签发/判卷/显式接管/台账
84
288
  pomaster permit issue/check/steal/list
85
289
 
86
- # ③ PROJECTION —— 最小充分上下文投影
290
+ # ③ PROJECTION —— 最小充分上下文投影(消费 confirmed baseline/tokens:确认态三态 + 25 资产 digest 摘要 +
291
+ # design-tokens 九组三态进 AUTHORITATIVE/ADVISORY 分区;baseline 漂移/改型 → --check STALE_GROUNDING 呈现)
87
292
  pomaster context compile/explain
88
293
 
89
294
  # ④ EXECUTE —— 写路径机器执行点 / 受控变更
90
295
  pomaster exec-guard --attempt <file|->
91
296
  pomaster maintain <change-or-task> --ops <tx>
92
297
 
93
- # ⑤ VERIFY —— FAST gate / gate recipes 派发 / 证据入账
298
+ # ⑤ VERIFY —— Verification Plan 编译 / FAST gate / gate recipes 派发 / 证据入账
299
+ pomaster plan compile # 证据计划编译(W1-R1-3):--task(payload.acceptance 纯读)或 --input 契约直传(互斥)→ 逐验收义务计划(applicability 三值各带依据;缺工具≠N/A 保持 REQUIRED+tool_gap;无法判断保留 unknown 禁默认 N/A;informational 档位零参与——A1 裁定;变更面 --face "kind=present|absent:<依据>" 显式申报禁猜测;词形=SP 提案待追认)
300
+ pomaster tools list/validate # ToolBinding 统一注册面六分态(W1-R1-4;SP 提案待追认):.pomaster/tools/bindings.json 在座即唯一工具事实源(detect/registered/validated/available/selected/executed 分态不可跃迁、缺口逐条显式;--plan 回喂计划工件对账 selected;executed 唯一事实源=GRN 真实回执——工具发现≠调用授权;registry 缺席时 plan compile 回退 legacy 探测)
94
301
  pomaster check --fast/--gates
95
302
  pomaster record gate-run/claim/verification
96
303
 
97
304
  # ⑥ RECONCILE —— delta 三方对账 / 投影视图 / 审计 / 例外台账
98
305
  pomaster reconcile --permit <PERMIT.*>
99
- pomaster view blueprint/task/attention/decision
100
- pomaster audit blueprint/task
306
+ pomaster view blueprint/task/attention/decision/review
307
+ pomaster audit blueprint/task/test-weakening
101
308
  pomaster ledger record/list
102
309
 
103
310
  # ⑦ COMPACT —— 折叠入账 / 知识生命周期 / 记忆收割
104
311
  pomaster compact
105
312
  pomaster knowledge search/inspect/record/review-candidates/promote/demote
106
313
  pomaster memory capture/inspect/harvest/review/promote/audit
314
+ pomaster negative-history record/search # 任务内已否定方案(W1-R1-7;REQ-03/AC-02):record 绑定 TASK.*(--approach/--reason 必填 + --evidence-ref 可选,数据住 task payload.negative_history——不建第二库);search 词级精确检索、未命中显式「无记录」;context compile 经 [ADVISORY KNOWLEDGE] 分区可见(重编译/rollover 仍可检索,不进 gate 判卷输入)
315
+ pomaster steering record/search # Steering 事件(W4-S3;REQ-08/AC-07;词形 SP 提案待追认):record = 有来源约束登记(--constraint/--source-ref 必填——无来源的纠偏不构成事件;--scope 可重复申报受影响对象/能力词形,缺席=全 task 显式申报;数据住 state/steering-log.json append-only 台账 + journal STEERING_RECORDED 词形——零 TransactionOp 零 canonical kind);search 词级精确检索、未命中显式「无记录」;constraint/affected_scope 是申报面(declared——机器不验证遵守,遵守判定归 exec-guard/audit);context compile 经 [ADVISORY] 分区 [STEERING] 词形可见、plan compile 经 changeSurface unknown 呈现——受影响工作下次编译带上约束(REQ-08 最小形态,不进 gate 判卷输入)
316
+ pomaster provider capabilities # Provider 能力映射(W4-S4;REQ-11/R §5.2;词形 SP 提案待追认):--runtime <名>(claude-code|codex|script——EXECUTION_RUNTIME_VALUES 闭包)出声明式能力报告——原生 async/steering/取消/工具发现四维支持度如实报告(三值词形 native|absent|unknown——探针结果驱动禁猜,零 Provider 型号断言)+ absent/unknown 逐维声明式降级语义(同步步骤+持久记录 / 下一派发边界应用约束 / 明确状态+隔离冲突结果 / 预编译较小工具集——锚定仓内已就位载体);未接入真实 Provider 时全部 unknown 是诚实缺省(report_source 显式区分 injected_probe/declarative_default);不把某 Provider API 叙述当跨 Provider 保证;纯报告零 store 依赖零写入
317
+ pomaster telemetry task # 任务级 reasoning/cost/Horizon 派生评估(W4-S5;REQ-11/§9;词形 SP 提案待追认):<task-id>(TASK.* 在册 task_object)出六指标只读聚合——verified_transition_rate(锚定本任务 claims 判定面 VERIFIED 施断/判定流转总数,转移时点 evidence 轴不可机算如实披露)/ rework_signal(negative_history+REJECTED claims 信号计数非评分)/ steering_count(declared 申报面计数)/ resume_reconcile_signals(checkpoint+执行中断载体强度计数——RECONCILE_DIRTY 阻断判卷零 journal 事件不可从 journal 计数)/ horizon(journal seq 跨度,open 执行 horizon_open 显式)/ cost_face(恒 NOT_MEASURABLE_YET——本仓无 token/费用计量源不虚构,Provider 接入后填充);每指标带分母与可计算性(MEASURED|NOT_COMPUTABLE|NOT_MEASURABLE_YET——零分母显式不冒充数值);诚实红线:无综合评分 / 不持久化私有思维链(输入面无思维链通道)/ 零阈值零阻断(预算不削弱证据/权限)/ 无跨 session 基线平面不输出提升百分比;纯读零写零落盘(inputs_fingerprint=快照等价物)
107
318
 
108
319
  # ⑧ CARRY —— DoD 判卷收口
109
320
  pomaster closeout <task-id>
@@ -112,8 +323,9 @@ pomaster closeout <task-id>
112
323
  pomaster resolve "<need>" [--hints ...]
113
324
  pomaster new-entity check <governed-id> [--need ...]
114
325
  pomaster inspect <governed-id>
326
+ pomaster preset preview/drift/applicability # 预设只读探测器三件套(W5;裁决 20⑥;词形 SP 提案待追认):--family <id>(wired 闭包 design-tokens | baseline-framework + 5 扩展位登记)——preview = 预设→项目状态差异预览(create/fill/overwrite/none 动作预告 + 确认链效果预告,不应用);drift = 当前值 vs 预设基准逐项对账(VALUE_DRIFT + verdict aligned|drifted|no_comparison——空分母显式,blindspot 纪律禁「没查就报干净」;漂移≠违规——Owner 定制合法);applicability = 适用 lane/栈/对象面声明(native|mismatch|unresolved 只读匹配,不改 ADR-4 判卷);预设值 governed 原地、ToolBinding 受信 adapter 执行表零注册;纯读零写入(探测≠写授权——写入唯一通路 = baseline set --change + confirm 确认链)
115
327
  pomaster graph <governed-id> [--view impact]
116
- pomaster recon import-graph|migrations|sbom # 宿主代码 recon(三子命令均必持 --execution-id <AGX-n>——execution begin 登记的执行身份锚,观察回执的身份证明):import 图静态扫描 → 17 观察回执 sidecar(unmapped 清单/externalImports/confidence)/ migration 目录五栈词形盘点(prisma/flyway/liquibase/alembic/django_style 纯读盘零工具执行 → ENVREC 回执)/ SBOM 依赖清单采集(cdxgen 腿——工具缺席 NOT_INSTALLED 显式缺席、解析失败 INCONCLUSIVE 兜底,components/dependencies 计数)——产物只落 evidence sidecar 平面零权威写口
328
+ pomaster recon import-graph|migrations|sbom|architecture-snapshot|token-sources|scripts|openapi # 宿主代码 recon(七子命令均必持 --execution-id <AGX-n>——execution begin 登记的执行身份锚,观察回执的身份证明):import 图静态扫描(unmapped 清单/externalImports/confidence → OBS 回执)/ migration 目录五栈词形盘点(prisma/flyway/liquibase/alembic/django_style 纯读盘零工具执行 → ENVREC 回执)/ SBOM 依赖清单采集(cdxgen 腿——工具缺席 NOT_INSTALLED、解析失败 INCONCLUSIVE 兜底)/ 架构快照(dependency-cruiser 巡报告落盘 + 官方 --baseline 存量底账增量 diff 三态 new/same/resolved;依赖边只计数零落盘提案)/ token 源词形枚举(DTCG/style-dictionary $value JSON + Tailwind v4 @theme/:root CSS 词法扫描 → readDesignTokens 权威面状态复用呈现;零值摘录零写口)/ package.json scripts 词面枚举(只枚举不执行 → ENVREC 回执)/ OpenAPI 运行时抓取(--url 探活 GET 落 blob——探活失败 NOT_INSTALLED 不降级;静态抽取保持 UNKNOWN)——全链 fail-closed(缺席 NOT_INSTALLED/NOT_RUN、解析失败 INCONCLUSIVE 负值兜底不伪造绿),产物只落 evidence sidecar 平面零权威写口
117
329
  pomaster research list/inspect/request/handoff
118
330
  pomaster eval --suite behavioral
119
331
  pomaster catalog status/explain/relock
@@ -126,6 +338,8 @@ pomaster session attach/refresh/list
126
338
  pomaster lock acquire/heartbeat/release/steal/list
127
339
  pomaster execution begin/end/list/audit # audit = 变更越界审计(--execution-id + --diff-base:git diff 起始锚变更集 → KEYBINDING 解析 → permit scope 判 in/out → OBS 回执 sidecar + 越界明细;越界 exit 1——Detection 半边,纯读零权威写口)
128
340
  pomaster trace show/list
341
+ pomaster checkpoint save/show # Checkpoint 恢复引用快照(W4-S2;词形 SP 提案待追认):save = 组装恢复所需引用集落盘(task 锚/--permit 对账判卷引用/--execution 在途清单/negative_history·unknowns 引用/封存 trace 引用/workspace git 锚——每项都是引用,引用逐项存在性校验 fail-closed;state/checkpoints/ 分区档案面,零新 canonical kind 零 journal 事件,不自动创建;--ckpt 同号重放同内容幂等零写入/异内容显式冲突;非 git 工区 anchor absent 显式申报)+ show = 引用面纯读呈现;与 session attach --reconcile 分层组合——checkpoint=引用快照(保存时点),reconcile=新鲜度判定(恢复时点)
342
+ pomaster diagnose "<症状>" # 通用 Diagnose 入口(W3-S3;C §26/§53-56 + Case H;SP 提案待追认):症状申报(位置 <report> ∥ --symptom 二选一)+ 可选 --evidence GRN-*/OBS-*/AGX-* 逐条实读证据平面(引用不存在 fail-closed 零写)→ 失败域六词闭包(tool_environment/product_assertion/fixture_data/environment_instance/dependency_external/unknown_insufficient_evidence)+ confidence_basis=evidence_chain|declaration_only(零百分比置信——§21 守护栏;申报与信号冲突呈报非改判;证据缺席 declaration_only 不虚构关联)→ 诊断计划建议(复用 plan-compiler 能力词位,§54 安全/只读先行);纯读零写不裁决不自动修复;与 production diagnose 共用同一判定核(BREACHED band 前置只是产线准入——单一判定事实源)
129
343
  # pomaster session(不带子命令)= 治理速览投影(SessionStart 注入源;≤10k 字符,恒 exit 0;尾部带首答确认协议指令段)
130
344
  # pomaster alerts(重入口 UserPromptSubmit 源)= 可行动项过滤器 + workflow 路由段(干净=非空但极简,恒 exit 0)
131
345
  ```
@@ -149,6 +363,8 @@ pomaster init
149
363
 
150
364
  一条命令,幂等(重复执行 NO_CHANGE,人类文件一律不覆盖):铺出 `.pomaster/` 治理目录树、登记 19 份 SPEC 预植对象、生成 `AGENTS.md` 重入口(14 份 skills 命令卡 + hooks 注入——Agent 开会话即自动看到治理状态)。init 还会**自动观察宿主 `package.json`**:框架/router/状态/Grid/UI 库/测试栈等可观察事实登记为**观察候选**(问卷题面标注 `[Observed: package.json]`)——候选只是题面参考注记,权威 stack.yaml 保持 UNKNOWN,直到 Owner 经问卷或 `pomaster baseline set` 逐键采纳;TTY 下技术栈问卷 14 键逐项必答(中断 = 零写入)。
151
365
 
366
+ **接手已有项目?init 自带 Brownfield 路径**:init 启动时检测宿主形态——干净目录(Greenfield)静默直入、已初始化重入口行为不变;检测到**已有项目**(worktree 非空且无 `.pomaster`)时呈现检测摘要(源文件数 / migration 词形面 / SBOM 工具在位性),并在 TTY 问卷首题**显式确认**是否走 Brownfield 路径(禁静默分叉;非交互通道不分支)。确认后 init 自动运行 **recon 三腿**采集宿主事实——`import-graph`(import 图静态扫描)/ `migrations`(五栈词形盘点)/ `sbom`(依赖清单,cdxgen 缺席时显式跳过)——产物落 `.pomaster/evidence/` 观察回执 sidecar(零权威写口;腿失败不阻塞 init),并在完成输出与问卷候选**合并呈现差距报告**:Owner 就地裁剪后照常走 `pomaster baseline confirm` 确认链。
367
+
152
368
  **组件画廊**:[river-singer.github.io/POMaster_VNext](https://river-singer.github.io/POMaster_VNext/)(在线版)· POMaster 仓库内 `corepack pnpm studio:dev`(Vue 主实例)/ `corepack pnpm studio:react:dev`(React sidecar 对照)——baseline 确认后按栈选择性参考(如 baseline.ui=ant-design-vue → antdv 组件真渲染对照);未确认前仅作了解,不作为动手前置。
153
369
 
154
370
  > 产物全表 / 目录宪法 / 播种语义 / 重入口细节 / 问卷与 confirm 机制 / doctor 探针矩阵:详见 [docs/init-reference.md](docs/init-reference.md)。
@@ -188,8 +404,8 @@ pomaster brainstorm promote idea-export-btn --to TASK --basis msd_reached --appl
188
404
  # —— 八拍推进:next-action 会逐拍给唯一建议命令 ——
189
405
  pomaster status # R_PERMIT_MISSING(--subject 为 affected_objects 派生建议)
190
406
  pomaster permit issue --subject PAGE.USER_LIST --actor human:owner --change-ref TASK.IDEA_EXPORT_BTN
191
- pomaster baseline confirm # R_BASELINE_NOT_READY(阻塞集清零后的一次性收口账)
192
- pomaster context compile --role frontend --change TASK.IDEA_EXPORT_BTN # ③ 投影
407
+ pomaster baseline confirm # R_BASELINE_NOT_READY(阻塞集清零后的一次性收口账;确认态随后进 ③ 投影)
408
+ pomaster context compile --role frontend --change TASK.IDEA_EXPORT_BTN # ③ 投影(含 baseline grounding:指纹绑定确认态,漂移即 STALE_GROUNDING)
193
409
  pomaster execution begin --role implementer --runtime script --identity-kind script --task-id TASK.IDEA_EXPORT_BTN # ④ 执行身份
194
410
  # ……在你的 Agent harness(Claude Code 等)里实现代码……
195
411
  pomaster check --fast # ⑤ FAST gate(BUILD 腿)
@@ -320,7 +536,7 @@ POMaster 的开发仓自己吃自己的治理:仓库根本机台账 `.pomaster
320
536
 
321
537
  ## 深入阅读
322
538
 
323
- - [`docs/init-reference.md`](docs/init-reference.md) — `pomaster init` 全机制:产物表 / 目录宪法全树 / 播种语义 / 重入口三件套 / 技术栈问卷 / 基线确认 gate / 预置草案 / doctor 探针矩阵
539
+ - [`docs/init-reference.md`](docs/init-reference.md) — `pomaster init` 全机制:产物表 / 目录宪法全树 / 播种语义 / 重入口三件套 / 模式分叉(Greenfield / Brownfield recon 编排)/ 技术栈问卷 / 基线确认 gate / 预置草案 / doctor 探针矩阵
324
540
  - [`docs/kernel-api.md`](docs/kernel-api.md) — kernel API 参考
325
541
  - [组件画廊(在线版)](https://river-singer.github.io/POMaster_VNext/) — GitHub Pages;仓库源在 [`packages/studio`](packages/studio/)(Vue 主实例)与 [`packages/studio-react`](packages/studio-react/)(React sidecar,private 对照实例)
326
542
  - [`catalog/`](catalog/) — 随包分发的工程策展物料(policies / knowledge / gates / sensors / archetypes / tools)