pomaster 0.4.0 → 0.5.1

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 (229) hide show
  1. package/README.md +102 -183
  2. package/catalog/catalog-lock.draft.json +117 -117
  3. package/catalog/policies/policy.ai.change_plan_first.json +1 -1
  4. package/catalog/policies/policy.ai.fact_inference_separation.json +1 -1
  5. package/catalog/policies/policy.ai.read_search_verify_before_write.json +1 -1
  6. package/catalog/policies/policy.ai.rule_relaxation_approval.json +1 -1
  7. package/catalog/policies/policy.arch.adr_immutable_history.json +1 -1
  8. package/catalog/policies/policy.arch.no_convenience_over_boundary.json +1 -1
  9. package/catalog/policies/policy.arch.prefer_verifiable_option.json +2 -2
  10. package/catalog/policies/policy.authz.no_gating_proxy_trust.json +1 -1
  11. package/catalog/policies/policy.authz.permission_scope_expansion_gate.json +1 -1
  12. package/catalog/policies/policy.authz.server_five_factor_verification.json +1 -1
  13. package/catalog/policies/policy.be.conc.prefer_db_constraints.json +1 -1
  14. package/catalog/policies/policy.be.db.expand_migrate_contract.json +1 -1
  15. package/catalog/policies/policy.be.idem.key_payload_conflict.json +1 -1
  16. package/catalog/policies/policy.be.model.single_boundary_conversion.json +1 -1
  17. package/catalog/policies/policy.be.sql.index_for_known_queries.json +1 -1
  18. package/catalog/policies/policy.be.state.single_rule_source.json +1 -1
  19. package/catalog/policies/policy.be.txn.short_locks_compensation.json +1 -1
  20. package/catalog/policies/policy.bound.search_first_entry_only.json +1 -1
  21. package/catalog/policies/policy.boundary.validate_in_encode_out.json +1 -1
  22. package/catalog/policies/policy.cache.failure_mode_guards.json +1 -1
  23. package/catalog/policies/policy.cache.schema_versioning.json +1 -1
  24. package/catalog/policies/policy.cfg.config_attribute_completeness.json +1 -1
  25. package/catalog/policies/policy.cfg.key_rename_dual_read.json +1 -1
  26. package/catalog/policies/policy.cfg.no_secret_dispersal.json +1 -1
  27. package/catalog/policies/policy.cfg.production_safe_defaults.json +1 -1
  28. package/catalog/policies/policy.cfg.schema_backed_config.json +1 -1
  29. package/catalog/policies/policy.chg.no_unrelated_changes.json +1 -1
  30. package/catalog/policies/policy.contract.no_invented_facts.json +1 -1
  31. package/catalog/policies/policy.dep.build_path_supply_chain.json +1 -1
  32. package/catalog/policies/policy.dep.no_untrusted_source_no_lock_bypass.json +1 -1
  33. package/catalog/policies/policy.dep.time_boxed_urgent_exception.json +1 -1
  34. package/catalog/policies/policy.deploy.no_dev_env_as_production_fact.json +1 -1
  35. package/catalog/policies/policy.deploy.operational_capabilities.json +1 -1
  36. package/catalog/policies/policy.deploy.runtime_fact_record.json +1 -1
  37. package/catalog/policies/policy.err.failure_five_part_mapping.json +1 -1
  38. package/catalog/policies/policy.err.no_internal_detail_exposure.json +1 -1
  39. package/catalog/policies/policy.err.published_code_immutable.json +1 -1
  40. package/catalog/policies/policy.evid.acceptance_binds_verifiable_evidence.json +1 -1
  41. package/catalog/policies/policy.evid.no_silent_gate_removal.json +1 -1
  42. package/catalog/policies/policy.evid.no_unverifiable_pass.json +1 -1
  43. package/catalog/policies/policy.flag.cleanup_after_full_rollout.json +1 -1
  44. package/catalog/policies/policy.flag.consistent_off_state.json +1 -1
  45. package/catalog/policies/policy.flag.kill_switch.json +1 -1
  46. package/catalog/policies/policy.flag.lifecycle_metadata.json +1 -1
  47. package/catalog/policies/policy.flag.not_a_permission.json +1 -1
  48. package/catalog/policies/policy.gate.p0_non_bypassable.json +1 -1
  49. package/catalog/policies/policy.gate.risk_factors_confirmed.json +1 -1
  50. package/catalog/policies/policy.guard.no_check_weakening.json +2 -2
  51. package/catalog/policies/policy.integration.call_definition_minimum.json +1 -1
  52. package/catalog/policies/policy.integration.fault_containment.json +1 -1
  53. package/catalog/policies/policy.job.lifecycle_definition.json +1 -1
  54. package/catalog/policies/policy.job.no_unmanaged_execution.json +1 -1
  55. package/catalog/policies/policy.job.operational_features.json +1 -1
  56. package/catalog/policies/policy.obs.actionable_signals.json +1 -1
  57. package/catalog/policies/policy.obs.alert_with_owner.json +1 -1
  58. package/catalog/policies/policy.obs.context_field_baseline.json +1 -1
  59. package/catalog/policies/policy.obs.no_sensitive_or_unbounded_logging.json +1 -1
  60. package/catalog/policies/policy.obs.no_sensitive_raw_values.json +1 -1
  61. package/catalog/policies/policy.obs.signal_change_impact.json +1 -1
  62. package/catalog/policies/policy.obs.source_map_access_control.json +1 -1
  63. package/catalog/policies/policy.obs.telemetry_lifecycle_declared.json +1 -1
  64. package/catalog/policies/policy.obs.trace_correlation.json +1 -1
  65. package/catalog/policies/policy.perf.budget_change_retest.json +1 -1
  66. package/catalog/policies/policy.perf.evidence_binding.json +1 -1
  67. package/catalog/policies/policy.perf.observation_dimensions.json +1 -1
  68. package/catalog/policies/policy.proc.checklist_change_policy.json +2 -2
  69. package/catalog/policies/policy.proc.scope_drift_reclassify.json +1 -1
  70. package/catalog/policies/policy.prv.processing_scope_re_review.json +1 -1
  71. package/catalog/policies/policy.prv.sensitive_data_six_facts.json +1 -1
  72. package/catalog/policies/policy.registry.human_fields_validated_decorrelated.json +1 -1
  73. package/catalog/policies/policy.rel.no_irreversible_unmonitored_full_release.json +1 -1
  74. package/catalog/policies/policy.rel.observability_before_ship.json +1 -1
  75. package/catalog/policies/policy.rel.process_change_needs_drill_audit.json +1 -1
  76. package/catalog/policies/policy.rel.traceable_build.json +1 -1
  77. package/catalog/policies/policy.role.human_signs_for_ai.json +1 -1
  78. package/catalog/policies/policy.sec.authn_policy_unified.json +1 -1
  79. package/catalog/policies/policy.sec.no_client_side_trust.json +4 -1
  80. package/catalog/policies/policy.sec.no_longterm_security_disable.json +1 -1
  81. package/catalog/policies/policy.sec.no_script_readable_credentials.json +1 -1
  82. package/catalog/policies/policy.sec.no_secrets_in_client_surface.json +2 -2
  83. package/catalog/policies/policy.sec.relaxation_approval.json +1 -1
  84. package/catalog/policies/policy.sec.security_relaxation_gate.json +4 -1
  85. package/catalog/policies/policy.sec.trust_boundary_enforcement.json +4 -1
  86. package/catalog/policies/policy.sec.upload_download_server_recheck.json +1 -1
  87. package/catalog/policies/policy.sec.url_source_allowlist.json +1 -1
  88. package/catalog/policies/policy.spec.family_conflict_precedence.json +1 -1
  89. package/catalog/policies/policy.spec.freeze_before_use.json +1 -1
  90. package/catalog/policies/policy.spec.primary_source_basis.json +1 -1
  91. package/catalog/policies/policy.struct.module_entry_dependency_declared.json +1 -1
  92. package/catalog/policies/policy.struct.no_unexplained_top_level_dir.json +1 -1
  93. package/catalog/policies/policy.struct.reuse_proven_structure.json +1 -1
  94. package/catalog/policies/policy.test.control_nondeterminism_keep_diagnosis.json +1 -1
  95. package/catalog/policies/policy.test.isolation_and_cleanup.json +1 -1
  96. package/catalog/policies/policy.test.no_synthetic_stability.json +1 -1
  97. package/catalog/policies/policy.test.pyramid_and_ci_matrix.json +1 -1
  98. package/catalog/policies/policy.test.removal_justification.json +1 -1
  99. package/catalog/policies/policy.test.removal_needs_substitute_evidence.json +1 -1
  100. package/catalog/policies/policy.test.risk_driven_plan.json +1 -1
  101. package/catalog/policies/policy.test.stable_observable_assertions.json +1 -1
  102. package/catalog/policies/policy.tool.discoverable_toolchain.json +1 -1
  103. package/catalog/policies/policy.tool.no_hand_edit_generated_no_ci_drift.json +1 -1
  104. package/catalog/policies/policy.tool.no_vendored_body_edits.json +1 -1
  105. package/catalog/policies/policy.tool.upgrade_verify_lock_rollback.json +1 -1
  106. package/catalog/policies/policy.web.comp.no_trivial_or_god_component.json +1 -1
  107. package/catalog/policies/policy.web.comp.public_contract_completeness.json +1 -1
  108. package/catalog/policies/policy.web.copy.action_object_clarity.json +1 -1
  109. package/catalog/policies/policy.web.copy.enumerable_placement.json +1 -1
  110. package/catalog/policies/policy.web.copy.error_next_step.json +1 -1
  111. package/catalog/policies/policy.web.handoff.state_matrix_full.json +1 -1
  112. package/catalog/policies/policy.web.i18n.copy_key_discipline.json +1 -1
  113. package/catalog/policies/policy.web.i18n.raw_value_for_compute.json +1 -1
  114. package/catalog/policies/policy.web.page.region_consistency.json +1 -1
  115. package/catalog/policies/policy.web.track.attempt_result_correlation.json +1 -1
  116. package/catalog/policies/policy.web.track.no_synthetic_actions.json +1 -1
  117. package/catalog/policies/policy.web.track.typed_client_validation.json +1 -1
  118. package/catalog/policies/policy.wf.no_planned_as_verified.json +1 -1
  119. package/catalog/policies/policy.wf.task_facts_preconfirm.json +1 -1
  120. package/dist/bin.js +11233 -7336
  121. package/legal/THIRD_PARTY_NOTICES.md +461 -35
  122. package/package.json +1 -1
  123. package/seeds/aggregation-manifest.json +691 -0
  124. package/seeds/manifest.json +466 -1043
  125. package/seeds/specs/hard/stacks/antdesign/antdesign-ui-overlay.md +48 -0
  126. package/seeds/specs/hard/stacks/antdesign/index.md +20 -0
  127. package/seeds/specs/hard/stacks/css/css-system-overlay.md +52 -0
  128. package/seeds/specs/hard/stacks/css/index.md +20 -0
  129. package/seeds/specs/hard/stacks/geist/geist-design-system-overlay.md +48 -0
  130. package/seeds/specs/hard/stacks/geist/index.md +20 -0
  131. package/seeds/specs/hard/stacks/vue3/index.md +20 -0
  132. package/seeds/specs/hard/stacks/vue3/vue3-framework-overlay.md +71 -0
  133. package/seeds/specs/hard/themes/ai-generated-code.md +171 -0
  134. package/seeds/specs/hard/themes/api-contract-and-error-semantics.md +532 -0
  135. package/seeds/specs/hard/themes/architecture-and-module-boundaries.md +323 -0
  136. package/seeds/specs/hard/themes/data-and-transactions.md +582 -0
  137. package/seeds/specs/hard/themes/engineering-toolchain-and-dependencies.md +333 -0
  138. package/seeds/specs/hard/themes/environment-and-configuration.md +196 -0
  139. package/seeds/specs/hard/themes/frontend-state-and-client-data.md +342 -0
  140. package/seeds/specs/hard/themes/index.md +374 -0
  141. package/seeds/specs/hard/themes/integration-and-async-runtime.md +331 -0
  142. package/seeds/specs/hard/{frontend/38-internationalization-protocol.md → themes/internationalization-and-copywriting.md} +112 -5
  143. package/seeds/specs/hard/themes/observability-and-analytics.md +305 -0
  144. package/seeds/specs/hard/themes/page-composition-and-browser-environment.md +554 -0
  145. package/seeds/specs/hard/{frontend/31-performance-protocol.md → themes/performance-and-capacity.md} +95 -6
  146. package/seeds/specs/hard/themes/permission-and-authorization.md +168 -0
  147. package/seeds/specs/hard/themes/privacy-and-data-lifecycle.md +176 -0
  148. package/seeds/specs/hard/themes/release-and-feature-flags.md +237 -0
  149. package/seeds/specs/hard/{frontend/04-security-protocol.md → themes/security.md} +95 -6
  150. package/seeds/specs/hard/themes/task-governance-and-acceptance.md +554 -0
  151. package/seeds/specs/hard/themes/testing-and-verification.md +266 -0
  152. package/seeds/specs/hard/themes/ui-presentation-and-design.md +670 -0
  153. package/seeds/specs/hard/themes/value-semantics-and-domain-data.md +339 -0
  154. package/seeds/specs/hard/backend/01-architecture-governance-protocol.md +0 -68
  155. package/seeds/specs/hard/backend/02-project-structure-governance-protocol.md +0 -68
  156. package/seeds/specs/hard/backend/03-directory-boundary-protocol.md +0 -68
  157. package/seeds/specs/hard/backend/04-layering-architecture-protocol.md +0 -68
  158. package/seeds/specs/hard/backend/05-task-workflow-protocol.md +0 -68
  159. package/seeds/specs/hard/backend/06-ai-generated-code-protocol.md +0 -68
  160. package/seeds/specs/hard/backend/07-evidence-acceptance-protocol.md +0 -68
  161. package/seeds/specs/hard/backend/08-contract-change-protocol.md +0 -68
  162. package/seeds/specs/hard/backend/09-role-responsibility-protocol.md +0 -68
  163. package/seeds/specs/hard/backend/10-security-protocol.md +0 -68
  164. package/seeds/specs/hard/backend/11-environment-configuration-protocol.md +0 -67
  165. package/seeds/specs/hard/backend/12-api-contract-protocol.md +0 -68
  166. package/seeds/specs/hard/backend/13-privacy-data-lifecycle-protocol.md +0 -68
  167. package/seeds/specs/hard/backend/14-business-rules-state-protocol.md +0 -68
  168. package/seeds/specs/hard/backend/15-data-model-protocol.md +0 -68
  169. package/seeds/specs/hard/backend/16-error-code-protocol.md +0 -68
  170. package/seeds/specs/hard/backend/17-permission-authorization-protocol.md +0 -68
  171. package/seeds/specs/hard/backend/18-database-schema-migration-protocol.md +0 -68
  172. package/seeds/specs/hard/backend/19-query-index-sql-protocol.md +0 -68
  173. package/seeds/specs/hard/backend/20-transaction-boundary-protocol.md +0 -68
  174. package/seeds/specs/hard/backend/21-concurrency-locking-protocol.md +0 -68
  175. package/seeds/specs/hard/backend/22-idempotency-protocol.md +0 -68
  176. package/seeds/specs/hard/backend/23-cache-redis-consistency-protocol.md +0 -68
  177. package/seeds/specs/hard/backend/24-external-integration-resilience-protocol.md +0 -68
  178. package/seeds/specs/hard/backend/25-async-job-scheduler-protocol.md +0 -68
  179. package/seeds/specs/hard/backend/26-engineering-tooling-protocol.md +0 -68
  180. package/seeds/specs/hard/backend/27-dependency-supply-chain-protocol.md +0 -68
  181. package/seeds/specs/hard/backend/28-testing-protocol.md +0 -68
  182. package/seeds/specs/hard/backend/29-observability-logging-tracing-protocol.md +0 -68
  183. package/seeds/specs/hard/backend/30-performance-capacity-protocol.md +0 -68
  184. package/seeds/specs/hard/backend/31-runtime-deployment-protocol.md +0 -68
  185. package/seeds/specs/hard/backend/32-release-versioning-rollback-protocol.md +0 -68
  186. package/seeds/specs/hard/backend/index.md +0 -177
  187. package/seeds/specs/hard/frontend/01-development-checklist-protocol.md +0 -86
  188. package/seeds/specs/hard/frontend/02-ai-generated-code-protocol.md +0 -82
  189. package/seeds/specs/hard/frontend/03-acceptance-gate-protocol.md +0 -86
  190. package/seeds/specs/hard/frontend/05-environment-configuration-protocol.md +0 -80
  191. package/seeds/specs/hard/frontend/06-change-governance-protocol.md +0 -90
  192. package/seeds/specs/hard/frontend/07-frontend-backend-communication-protocol.md +0 -219
  193. package/seeds/specs/hard/frontend/08-role-responsibility-protocol.md +0 -80
  194. package/seeds/specs/hard/frontend/09-module-boundary-protocol.md +0 -81
  195. package/seeds/specs/hard/frontend/10-engineering-tooling-protocol.md +0 -89
  196. package/seeds/specs/hard/frontend/11-dependency-package-management-protocol.md +0 -87
  197. package/seeds/specs/hard/frontend/12-business-rules-protocol.md +0 -79
  198. package/seeds/specs/hard/frontend/13-monetary-precision-protocol.md +0 -81
  199. package/seeds/specs/hard/frontend/14-data-model-protocol.md +0 -85
  200. package/seeds/specs/hard/frontend/15-request-api-protocol.md +0 -87
  201. package/seeds/specs/hard/frontend/16-error-handling-protocol.md +0 -79
  202. package/seeds/specs/hard/frontend/17-permission-protocol.md +0 -79
  203. package/seeds/specs/hard/frontend/18-state-management-protocol.md +0 -88
  204. package/seeds/specs/hard/frontend/19-cache-protocol.md +0 -79
  205. package/seeds/specs/hard/frontend/20-testing-protocol.md +0 -88
  206. package/seeds/specs/hard/frontend/21-design-system-protocol.md +0 -79
  207. package/seeds/specs/hard/frontend/22-theme-protocol.md +0 -79
  208. package/seeds/specs/hard/frontend/23-accessibility-protocol.md +0 -189
  209. package/seeds/specs/hard/frontend/24-component-protocol.md +0 -80
  210. package/seeds/specs/hard/frontend/25-page-structure-protocol.md +0 -79
  211. package/seeds/specs/hard/frontend/26-style-layout-protocol.md +0 -80
  212. package/seeds/specs/hard/frontend/27-rendering-state-protocol.md +0 -81
  213. package/seeds/specs/hard/frontend/28-form-protocol.md +0 -88
  214. package/seeds/specs/hard/frontend/29-routing-url-protocol.md +0 -79
  215. package/seeds/specs/hard/frontend/30-data-grid-protocol.md +0 -83
  216. package/seeds/specs/hard/frontend/32-file-import-export-protocol.md +0 -80
  217. package/seeds/specs/hard/frontend/33-release-versioning-protocol.md +0 -79
  218. package/seeds/specs/hard/frontend/34-monitoring-logging-protocol.md +0 -128
  219. package/seeds/specs/hard/frontend/35-mock-protocol.md +0 -97
  220. package/seeds/specs/hard/frontend/36-feature-flag-protocol.md +0 -79
  221. package/seeds/specs/hard/frontend/37-browser-device-compatibility-protocol.md +0 -83
  222. package/seeds/specs/hard/frontend/39-copywriting-protocol.md +0 -79
  223. package/seeds/specs/hard/frontend/40-analytics-protocol.md +0 -98
  224. package/seeds/specs/hard/frontend/41-design-handoff-protocol.md +0 -80
  225. package/seeds/specs/hard/frontend/42-browser-runtime-lifecycle-protocol.md +0 -86
  226. package/seeds/specs/hard/frontend/43-time-temporal-protocol.md +0 -86
  227. package/seeds/specs/hard/frontend/44-privacy-data-lifecycle-protocol.md +0 -87
  228. package/seeds/specs/hard/frontend/45-browser-storage-protocol.md +0 -87
  229. package/seeds/specs/hard/frontend/index.md +0 -308
package/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # POMaster
2
2
 
3
- > **AI 软件工程的 Governed Software State Control Plane。**
4
- > 管理系统当前可信状态、为每个 Agent 投影最小充分上下文、控制允许发生的变化、并要求一切变化被证据证明。
3
+ > **AI 软件工程的 Governed State Control Plane。**
4
+ > **Agent 写下的每一行变化,都被证据证明。**
5
5
 
6
6
  [![CI](https://github.com/River-Singer/POMaster_VNext/actions/workflows/ci.yml/badge.svg)](https://github.com/River-Singer/POMaster_VNext/actions/workflows/ci.yml)
7
7
  [![License: PolyForm NC 1.0.0](https://img.shields.io/badge/License-PolyForm--NC--1.0.0-blue)](./LICENSE)
@@ -10,9 +10,62 @@
10
10
  POMaster = State + Context + Transition + Evidence,在 Authority 与 Adaptive Governance 下运行
11
11
  ```
12
12
 
13
+ POMaster 把「软件项目当前可信的状态」当作一等公民来管理:为每个 Agent 投影最小充分上下文、控制允许发生的变化、并要求一切变化被证据证明。它不是又一层 prompt 工程或 skill 包,而是一个**状态控制平面**。
14
+
15
+ ## 为什么存在(三行读完的来历)
16
+
17
+ 1. **旧模式治理的是文档**:把几百份 Markdown 规范播进项目、靠 Agent 自觉遵守——结果错误事实被继承放大(上个会话说"27 页开发完了",实际半数是脚手架)、技术基线静默漂移、规范越堆越多直到没人看。
18
+ 2. **血泪换来的第一定律**:*报绿的治理工具比没有工具更危险——它把「未知」转换成「已验证干净」。* 所以本项目的核心不是"更多门禁",而是**可信的证据**。
19
+ 3. **POMaster 换掉治理对象**:不再治理文档,改为治理**状态本身**。文档只是状态的投影;事实必须带 Authority、Evidence 与完整生命周期。
20
+
21
+ ## 核心亮点
22
+
23
+ ### ① 组件画廊(Storybook):Vue 主实例 + React sidecar 可视化资产目录
24
+
25
+ 「有哪些组件、长什么样、该写什么」一页可览——**41 张 archetype 语义卡**(页面/组件/后端/数据/运行时的标准件:职责、何时用、组合方式、研究锚,附「建议组件组合」逐条溯源映射)+ **71 个 ant-design-vue 组件真渲染(178 个 stories:默认形态 + disabled/loading/size/变体交互态矩阵)** + **18 页 overlay 能力清单** + foundations 边界页 + **Database Struct 占位分区**(该写什么:数据与事务主题 MUST/Checklist + baseline data 面导航——业务实体走 New Entity Gate,画廊不预置)。画廊全部由生成器从既有锚定物料**只读渲染**:不新增规范物料、不预置业务实体,页头自带 NON-AUTHORITATIVE 声明。
26
+
27
+ 另有 **React sidecar**(`packages/studio-react`,`corepack pnpm studio:react:dev`,端口 6007):`antd@5.x` 真渲染,与 antdv 同设计系统两端逐族对齐、标注「Vue 对应件」对照浏览;geist 官方包零可渲染组件(诚实说明页在座)——「React 大件」由同设计系统活跃端承担。
28
+
29
+ ![POMaster 组件画廊总览:五类页面构成与生成器纪律](docs/assets/studio/overview.png)
30
+
31
+ ![Archetype 语义卡:标准企业 CRUD 资源——身份/语义/组合/建议组件组合](docs/assets/studio/archetype-card.png)
32
+
33
+ ![Ant Design Vue 组件真渲染:Button story 与侧栏组件树](docs/assets/studio/antdv-button.png)
34
+
35
+ 怎么看:
36
+
37
+ ```bash
38
+ corepack pnpm studio:dev # Vue 主实例(生成产物自动重建)
39
+ corepack pnpm studio:react:dev # React sidecar(antd 对照浏览,端口 6007)
40
+ ```
41
+
42
+ - **在线版**:[river-singer.github.io/POMaster_VNext](https://river-singer.github.io/POMaster_VNext/)(GitHub Pages,push 到 main 自动发布)
43
+ - 写治理产出(baseline / outputs 内容)之前,先逛画廊:有哪些组件、长什么样、该写什么——`pomaster init` 完成横幅里也有画廊入口。
44
+
45
+ <!-- Owner 注意(一次性):Pages 首次启用需在仓库 Settings → Pages 把 Source 设为「GitHub Actions」,之后 studio-pages 工作流自动发布。 -->
46
+
47
+ ### ② 任务驱动工作流:brainstorm → promote → 八拍
48
+
49
+ 从一句话需求到证据化完成,只有一条公开通路:
50
+
51
+ - **brainstorm(Grill 拷问)**:Grounded Brainstorm 方法论——先 Ground 后 Grill、九类拷问动作、每轮只打当前 frontier;拷问产出 **Decision Graph**(不是聊天记录里的一串问题),收敛由机器判卷,火候不够就 fail-closed 列出全部缺口。
52
+ - **promote 即建任务**:讨论收敛 → `promote --apply`,TASK.*/CHANGE.* 治理对象落库——想法进状态平面的唯一入口。
53
+ - **八拍 Change Loop 机器判卷收口**:triage 判档 → permit 签发 → context 投影 → maintain 受控写 → check 判卷 → reconcile 对账 → compact 折叠 → closeout 收口。每一拍都有对应 CLI 命令、机器判卷、落账留痕。
54
+
55
+ ### ③ 基线:14 键问卷 → 预置草案 → confirm 烙印 → 漂移检出
56
+
57
+ - init 的**技术栈问卷** 14 键逐项必答(前端 9 + 后端 5),答完写回 `baseline/<lane>/stack.yaml`;
58
+ - 选型落定后自动生成 **PRESET-DRAFT 预置草案**——逐条溯源到主题文档与 overlay,Owner 可改;业务实体/接口/数据模型零预置;
59
+ - `pomaster baseline confirm` 以 **sha256 快照烙印**基线;
60
+ - closeout 双重阻断:未确认 → `BASELINE_NOT_CONFIRMED`;确认后改动 → `BASELINE_DRIFT`(检出谁改了架构);确认后的修改走 `--change` 治理通路。
61
+
62
+ ### ④ 证据链:一切结论带收据
63
+
64
+ gate 运行结果走 `record gate-run` 产 **GRN 回执**入 evidence 平面;claim 必须显式绑定 GRN 分母;`record verification` 把 claim 推到 VERIFIED;closeout 判卷「claims × GRN 硬绑」——证据缺失伪装完成会被**阻断码**硬拦。读侧字节级核验:判卷字节 == 落盘字节 == GRN 引用字节,失配即判红。
65
+
13
66
  ## 快速上手
14
67
 
15
- POMaster 的全部能力收敛在一条 CLI(`pomaster`)——八拍 Change Loop 的每一拍都有对应命令面。先给一张**命令全景**(机器钉版,与 `pomaster --help` 零漂移;`#` 分节注释仅人读)。第一次使用?直接看下面 [install → init → 第一个 Change](#1-安装) 的全流程。
68
+ POMaster 的全部能力收敛在一条 CLI(`pomaster`)——八拍 Change Loop 的每一拍都有对应命令面。先上**命令全景**(与 `pomaster --help` 对账零漂移;`#` 分节注释仅人读)。第一次使用?直接看 [安装 → init → 第一个 Change](#1-安装) 的全流程。
16
69
 
17
70
  ```text
18
71
  # 0 BOOTSTRAP —— 建基线 / 速览 / 可行动项 / 装眼睛 / 可移植性 / 自更新
@@ -22,6 +75,7 @@ pomaster alerts
22
75
  pomaster doctor
23
76
  pomaster portability bootstrap/check
24
77
  pomaster update --check/--yes
78
+ pomaster baseline set/confirm # set = 单键后补销账;confirm = 基线确认 gate(14 unknowns 销账后 digest 快照——closeout 阻断码与 doctor/status 确认态的消费源)
25
79
 
26
80
  # ① TRIAGE —— 秒级判档(MINIMAL/LIGHT/STANDARD;NO-OP 合法)
27
81
  pomaster triage "<request>"
@@ -38,7 +92,7 @@ pomaster maintain <change-or-task> --ops <tx>
38
92
 
39
93
  # ⑤ VERIFY —— FAST gate / gate recipes 派发 / 证据入账
40
94
  pomaster check --fast/--gates
41
- pomaster record gate-run/claim
95
+ pomaster record gate-run/claim/verification
42
96
 
43
97
  # ⑥ RECONCILE —— delta 三方对账 / 投影视图 / 审计 / 例外台账
44
98
  pomaster reconcile --permit <PERMIT.*>
@@ -59,8 +113,8 @@ pomaster resolve "<need>" [--hints ...]
59
113
  pomaster new-entity check <governed-id> [--need ...]
60
114
  pomaster inspect <governed-id>
61
115
  pomaster graph <governed-id> [--view impact]
62
- pomaster brainstorm start/question-gate/status/promote
63
- pomaster research list/inspect
116
+ pomaster brainstorm start/question-gate/status/decide/promote
117
+ pomaster research list/inspect/request/handoff
64
118
  pomaster eval --suite behavioral
65
119
  pomaster catalog status/explain/relock
66
120
  pomaster migrate trellis-spec --analyze --spec-root <dir>
@@ -72,8 +126,8 @@ pomaster session attach/refresh/list
72
126
  pomaster lock acquire/heartbeat/release/steal/list
73
127
  pomaster execution begin/end/list
74
128
  pomaster trace show/list
75
- # pomaster session(不带子命令)= 治理速览投影(SessionStart 注入源;≤10k 字符,恒 exit 0)
76
- # pomaster alerts(重入口轻提醒源)= 可行动项过滤器(干净=空输出,恒 exit 0)
129
+ # pomaster session(不带子命令)= 治理速览投影(SessionStart 注入源;≤10k 字符,恒 exit 0;尾部带首答确认协议指令段)
130
+ # pomaster alerts(重入口 UserPromptSubmit 源)= 可行动项过滤器 + workflow 路由段(干净=非空但极简,恒 exit 0)
77
131
  ```
78
132
 
79
133
  ### 1. 安装
@@ -86,54 +140,35 @@ npm install --save-dev pomaster
86
140
  npx pomaster --help
87
141
  ```
88
142
 
89
- ### 2. 初始化治理基线:`pomaster init`
90
-
91
- 在项目根执行(幂等——重复执行第二次起 NO_CHANGE,零字节写入;已存在的人类文件一律不覆盖):
143
+ ### 2. 初始化:`pomaster init`
92
144
 
93
145
  ```bash
94
146
  cd your-project
95
147
  pomaster init
96
148
  ```
97
149
 
98
- 它做四件事:
99
-
100
- | 产物 | 作用 | 会被覆盖吗 |
101
- |---|---|---|
102
- | `.pomaster/state/truth-index.json` | Canonical State 的唯一 root index(空账本起点;受其引用的 `truth/objects/**` 是 Canonical Truth 正文) | 否(存在即跳过;损坏显式报错,绝不静默重建) |
103
- | `.pomaster/state/authority.json` | Authority Map 骨架(默认登记 `BOOTSTRAP_OWNER`) | 否(人类加注的 owner 一律不动) |
104
- | `.pomaster/config.yaml` | 治理配置(人类可编辑) | 否(只在缺失时创建) |
105
- | `AGENTS.md` / `CLAUDE.md` | Agent 重入口(profile + 状态速览 + 常用命令 + 重入口安装物锚点) | 仅带生成标记的(`CLAUDE.md` 通过 `@AGENTS.md` 导入共享) |
106
-
107
- **目录宪法全树预铺**(Owner 裁定 2026-09-04,不分档级):init 一次性建出 `.pomaster/` 目录宪法 §2 全树(state / truth/objects / evidence 三区 / executions / traces / runtime 四区 / discovery/scratchpads / memory/inbox / production 六区,41 目录 × 各带 README——含 09-04 Batch 1 增量 sources/ 来源权威边界平面 + Batch 2 增量 state/contexts/(Task Context Manifest 落盘位)与 evidence/observations/(感知回执 sidecar 分区)+ Batch 6 增量 baseline/(Project Engineering Baseline 四 lane 分区)与 specs/(Spec Workspace:hard/frontend、hard/backend、hard/stacks、acceptance、evidence)两棵播种子树)+ `.pomaster/layout.json` 机器清单(全目录 status=wired + activation_hint——什么样的项目/需求激活该平面由 AI 按项目复杂度自行判断,目录存在 ≠ 已激活)。目录树与入口形态/平台选择**完全无关**(B7 裁定:init 单一重入口,无模式旗标);canonical 正文层为 `.pomaster/truth/objects/`,legacy `.pomaster/objects/` 在场会被显式告警(禁静默 merge/覆盖/迁移)。播种面语义(Batch 6):`baseline/**` 与 `specs/**` 下的内容文件由 init 按种子清单 **seed-once-missing-only** 落盘——缺失才写、在座零触碰、播种件不带生成标记(项目自有可编辑,重跑 init 永不覆盖你的修改;AI 禁静默覆盖)。完整规范见 `.pomaster/layout.json` 与目录宪法文档。
108
-
109
- **重入口默认**(D13 修订,2026-09-03):init 缺省生成重入口全套,让 Agent 一开会话就自动看到治理状态、按需自动触发命令卡——
110
-
111
- - **skills 命令卡库**:`/pomaster` 路由全景 + `pomaster-bootstrap` … `pomaster-runtime` 等 15 份命令卡,双镜像安装到 `.agents/skills/`(通用层——Codex / Cursor / Gemini CLI / GitHub Copilot / VS Code / Amp / Warp / OpenCode / Droid 等原生读取)与 `.claude/skills/`(Claude Code 必需位),两份逐字节一致、同指 `pomaster --help` 单一事实源;
112
- - **hooks 注入(claude)**:`.claude/settings.json` 合并式注册 SessionStart → `pomaster session`(治理速览投影,≤10,000 字符硬上限)与 UserPromptSubmit → `pomaster alerts`(可行动项过滤器,干净=空输出恒 exit 0);既有 hooks(人类/Trellis 条目)一律保留,坏 JSON fail-closed 不覆盖;
113
- - **cursor/qoder**:加厚版 rules(命令卡 + Browser Eyes 展开进 `.cursor/rules/pomaster.mdc` / `.qoder/rules/pomaster.md`)。
150
+ 一条命令,幂等(重复执行 NO_CHANGE,人类文件一律不覆盖):铺出 `.pomaster/` 治理目录树、登记 19 份 SPEC 预植对象、生成 `AGENTS.md` 重入口(15 份 skills 命令卡 + hooks 注入——Agent 开会话即自动看到治理状态)。TTY 下还有一轮 14 键技术栈问卷(中断 = 零写入;后补用 `pomaster baseline set`)。
114
151
 
115
- **多平台适配器**:`AGENTS.md` 恒为唯一事实源;`--platforms claude,codex,cursor,qoder` 追加各平台的适配器(`CLAUDE.md` / 根 `AGENTS.md` 即 codex 原生入口 / `.cursor/rules/pomaster.mdc` / `.qoder/rules/pomaster.md`,本包产物形态升级自动重写,人类异形内容一律不覆盖);`--platforms none` 只建 AGENTS.md + 状态骨架。TTY 交互终端直接 `pomaster init` 会出复选清单(◉/◯ 空格勾选 / ↑↓ 移动 / 回车确认;raw 模式不可用时降级为编号输入);`--json` 恒走确定性缺省(claude,重入口)。
152
+ **组件画廊**:[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 对照)——治理产出前先看有哪些组件、长什么样、该写什么。
116
153
 
117
- 装好后 `pomaster session`(无子命令)就是 hook 看到的治理速览;`pomaster doctor` 会用 `heavy_entry_hooks` / `heavy_entry_skills` 探针核对重入口安装物(hooks 注册态 + 双镜像逐字节一致;未安装 → MISSING_CONFIGURATION 并指路重跑 `pomaster init`)。
154
+ > 产物全表 / 目录宪法 / 播种语义 / 重入口细节 / 问卷与 confirm 机制 / doctor 探针矩阵:详见 [docs/init-reference.md](docs/init-reference.md)。
118
155
 
119
156
  ### 3. init 之后该配置什么(config.yaml)
120
157
 
121
158
  ```yaml
122
159
  version: 1
123
- profile: LIGHT # 治理档位(信息性人类偏好,A1 裁定:不进判卷):MINIMAL | LIGHT | STANDARD
160
+ profile: LIGHT # 治理档位(信息性人类偏好):MINIMAL | LIGHT | STANDARD
124
161
  triage:
125
162
  ttl_hours: 168 # triage 结果有效期,过期必须 re-triage
126
163
  ```
127
164
 
128
- **profile 三档怎么选**(信息性人类偏好——A1 裁定 2026-09-04:档位只影响呈现与偏好记录,不进任何 gate/permit 判卷、不决定激活;激活由 context compile 的 lane/role/capability 机制承担):
129
-
130
165
  | 档位 | 适合 | 体感 |
131
166
  |---|---|---|
132
167
  | `MINIMAL` | 脚手架/原型/个人实验 | 几乎感觉不到 POMaster(文案改动→一行 gate) |
133
168
  | `LIGHT`(默认) | 正常业务迭代 | 秒级判档 + FAST gate 内循环 + delta 审查 |
134
169
  | `STANDARD` | 核心链路/多角色协作 | 全 gate 矩阵 + 浏览器双通道证据 + 抽样复核 |
135
170
 
136
- **Authority(谁说了算)**:`.pomaster/state/authority.json` 默认单人形态(一切 authority 位置由项目 Owner 应答);多人协作出现信号后再演化细粒度 owner——`owner_registry` 数组逐个登记即可,kernel 零配置变更。
171
+ Authority(谁说了算):`.pomaster/state/authority.json` 默认单人形态(一切 authority 位置由项目 Owner 应答);多人协作出现信号后再演化细粒度 owner——`owner_registry` 数组逐个登记即可。
137
172
 
138
173
  ### 4. 第一个 Change:走一遍八拍
139
174
 
@@ -151,42 +186,25 @@ pomaster closeout <task-id> # ⑧ DoD 判卷收口
151
186
  pomaster doctor # 工具/MCP 探测:缺什么提示装什么
152
187
  ```
153
188
 
154
- doctor 探针覆盖:内核 / BUILD(tsc·eslint)/ CONTRACT(oasdiff·schemathesis)/ ARCHITECTURE(depcruise·import-linter)/ COVERAGE(c8·pytest-cov)/ MUTATION(mutmut·StrykerJS)/ SECURITY(gitleaks·pip-audit·semgrep)/ BROWSER(playwright·chrome-devtools MCP)/ PERFORMANCE(lighthouse·web-vitals)/ portability。**工具缺席=显式 NOT_RUN(非绿非红),绝不假绿**。
155
-
156
- **浏览器双眼(Browser Eyes)**:`chrome-devtools` MCP 是观测诊断面——页面慢/报错/卡住时直接读真实浏览器(性能 trace / 网络瀑布 / console),禁只看代码推断;`playwright` MCP 是确定性 E2E smoke 与交互验证面。两边产物都是证据链输入(perception receipt / BROWSER gate GRN)。`pomaster doctor` 对两个 MCP 各自出四态探针(未配置 → MISSING_CONFIGURATION + 一键安装路标);`init` 生成的 AGENTS.md 已内置该分工引导。
157
-
158
- ---
159
-
160
- ## 为什么存在(三行读完的来历)
161
-
162
- 1. **旧模式治理的是文档**:把几百份 Markdown 规范播进项目、靠 Agent 自觉遵守——结果错误事实被继承放大(上个会话说"27 页开发完了",实际半数是脚手架)、技术基线静默漂移、规范越堆越多直到没人看。
163
- 2. **血泪换来的第一定律**:*报绿的治理工具比没有工具更危险——它把「未知」转换成「已验证干净」。* 所以本项目的核心不是"更多门禁",而是**可信的证据**。
164
- 3. **vNext 换掉治理对象**:不再治理文档,改为治理**状态本身**。文档只是状态的投影;事实必须带 Authority、Evidence 与完整生命周期。
189
+ 工具缺席 = 显式 NOT_RUN(非绿非红),绝不假绿。浏览器双眼分工:`chrome-devtools` MCP 是观测诊断面(页面慢/报错/卡住必须实测真实浏览器),`playwright` MCP 是确定性 E2E 验证面——两边产物都进证据链。
165
190
 
166
191
  ## 运行机制:State Control Plane
167
192
 
168
- POMaster 不是又一层 prompt 工程或 skill 包,而是一个**状态控制平面**——它把「软件项目当前可信的状态」作为一等公民管理起来:
169
-
170
193
  ```mermaid
171
194
  flowchart TB
172
195
  subgraph PLANE["POMaster State Control Plane(.pomaster/ store)"]
173
196
  STATE["Canonical State<br/>truth-index + objects<br/>四轴状态"]:::core
174
197
  PERMIT["Permit / Transition<br/>谁有权改什么"]:::core
175
198
  EVI["Evidence 平面<br/>GRN / blobs / claims"]:::core
176
- PROJ["Context Projection<br/>MUST/ADVISORY/KNOWLEDGE/<br/>CATALOG/LAZY TOOLS"]:::core
199
+ PROJ["Context Projection<br/>最小充分上下文投影"]:::core
177
200
  end
178
- subgraph CAT["Engineering Catalog(随包分发)"]
179
- POL["policies 79"]:::cat
180
- KN["knowledge 11"]:::cat
181
- GT["gates 6"]:::cat
182
- SEN["sensors 6"]:::cat
183
- ARC["archetypes 41"]:::cat
184
- TOO["tools 8"]:::cat
201
+ subgraph CAT["Engineering Catalog(随包分发,catalog-lock 对账)"]
202
+ MAT["policies · knowledge · gates · sensors<br/>archetypes · tools"]:::cat
185
203
  end
186
204
  AGENT["Agent Harness<br/>(Claude Code / Codex / …)"]:::ext
187
205
  HUMAN["Human Authority<br/>(Owner)"]:::ext
188
206
 
189
- HUMAN -- Authority 决议 --> PLANE
207
+ HUMAN -- Authority 决策 --> PLANE
190
208
  PLANE -- compile --> AGENT
191
209
  AGENT -- maintain/record --> PLANE
192
210
  CAT -- applicability 筛选 --> PROJ
@@ -196,24 +214,13 @@ flowchart TB
196
214
  classDef ext fill:#e6f4ea,stroke:#188038
197
215
  ```
198
216
 
199
- 三个关键设计:
217
+ 关键设计:
200
218
 
201
219
  - **Canonical State 是唯一事实源**:一切对象(PAGE/CAPABILITY/CHANGE/TASK…)带四轴状态(lifecycle/confidence/evidence/change)+ Authority + 完整生命周期。Markdown 文档只是它的投影。
202
- - **Agent 不直接写状态**:一切写经 `maintain <id> --ops <tx>` 显式事务 → kernel `applyTransaction` 判卷(写路径机器执行点 `exec-guard` 判卷器非写入器)。
220
+ - **Agent 不直接写状态**:一切写经 `maintain <id> --ops <tx>` 显式事务 → kernel 判卷(写路径机器执行点 `exec-guard` 是判卷器非写入器)。
203
221
  - **证据先于结论**:gate 运行结果走 `record gate-run` 产 GRN 收据入 evidence 平面;claim 必须显式绑定 GRN 分母——「证据缺失伪装完成」会被 closeout 硬阻断。
204
- - **先画靶子,再射箭(v0.6)**:随包分发 41 份 archetype 标准件(页面/组件/后端/数据/运行时,语义全部锚定官方文档实抓)——`pomaster resolve` 先在标准件与已有对象里选/配/组(EXACT/CONFIGURABLE/COMPOSABLE/EXTENSIBLE 确定性分类),真没有才设计新的,且新建必过 New Entity Gate 五否机判;`pomaster graph` 把对象图(采纳边/依赖/影响闭包)变成人看得见的投影。
205
-
206
- ## SOP 编排:项目生命周期五段式
207
-
208
- ```text
209
- 0 BOOTSTRAP ──── init 扫描 / Authority Map / catalog-lock / 重入口生成(skills/hooks)
210
- (有原型→活体走查提五件套;存量项目→纳管已有 registry/spec/记忆)
211
- 1 主循环 ─────── N 次 Change,每次跑下面的八拍 Loop(项目的日常形态)
212
- 2 周期事件 ────── 全量对账 / 紧缩 / 经验入库 / catalog 升级 diff / 自托管基准
213
- 3 架构演化 ────── Challenge → ACR → 受控迁移 → Deviation 到期清算
214
- 4 生产反馈 ────── SLO 击穿 → State Challenge → 新 Change(闭环)
215
- 5 退役归档 ────── deprecation → retirement → history
216
- ```
222
+ - **先画靶子,再射箭**:随包分发 41 份 archetype 标准件(语义全部锚定官方文档实抓)——`pomaster resolve` 先在标准件与已有对象里选/配/组,真没有才设计新的,且新建必过 New Entity Gate;`pomaster graph` 把对象图(采纳边/依赖/影响闭包)变成人看得见的投影。
223
+ - **Gatekeeper 防分身**:同一执行既提 proposal 又放行 → 漂移观测器亮灯——「系统永不自我批准」的机器面。
217
224
 
218
225
  ### THE LOOP:每一次 Change 的八拍
219
226
 
@@ -233,125 +240,29 @@ flowchart TB
233
240
  ⑧ → 下一轮 携带更准的 Truth 重进①——开局一次比一次便宜
234
241
  ```
235
242
 
236
- ### 八拍时序图(Agent 交互序列)
243
+ ## 实战:一个需求的完整旅程
237
244
 
238
- ```mermaid
239
- sequenceDiagram
240
- autonumber
241
- actor Owner
242
- participant Agent as Agent (harness)
243
- participant CLI as pomaster CLI
244
- participant Kernel as kernel (store)
245
- participant Gate as gauntlet legs
246
- participant Ev as evidence 平面
247
-
248
- Owner->>Agent: 描述意图 / task delta
249
- Agent->>CLI: triage "<request>"
250
- CLI->>Kernel: Router 判档(词表闭包)
251
- Kernel-->>Agent: triage envelope(profile + TTL)
252
- Agent->>CLI: maintain --phase pre-dev
253
- CLI->>Kernel: permit issue + context compile
254
- Kernel-->>Agent: PERMIT.* + 五分区 markdown(MUST/ADVISORY/…)
255
- Note over Agent: Permit 范围内实现(免检)+ FAST gate 内循环
256
- Agent->>CLI: check --fast / check --gates
257
- CLI->>Gate: 派发 gate recipes
258
- Gate->>Ev: GRN 收据逐条入账(四态判定)
259
- Gate-->>Agent: verdict(passed/failed/not_run + 盲区计数)
260
- Agent->>CLI: maintain --ops <tx> / compact
261
- CLI->>Kernel: applyTransaction(判卷权威)
262
- Agent->>CLI: closeout <task-id>
263
- CLI->>Ev: DoD 判卷(claims×GRN 硬绑)
264
- CLI-->>Owner: delta 审查面(人只看差异)
265
- ```
245
+ > 以下案例来自一个真实的企业级业务系统前端项目(下称「项目 M」),已脱敏;摄于 POMaster 前代工作流,按现行八拍通路重排叙述——个别拍以近邻机制代证,逐处标注【示意】/【近似】。真实感优先于宣传感,这也是本项目对「证据」二字的基本态度。
266
246
 
267
- ### 证据入账时序(防假绿的核心通路)
247
+ **需求**:「把原型里的条目清单计算页照搬落地——33 列可编辑大表 + 2 个公式列 + 保存/快照/回滚等 9 类操作」。同一模块后来长出第二章:把 58 条业务公式(需求简报误记 42 条,拷问阶段实测纠正)从「散写各实体、部分零实现」改为「数据驱动注册进独立公式引擎,业务页只调引擎 API」。
268
248
 
269
- ```mermaid
270
- sequenceDiagram
271
- autonumber
272
- participant Runner as gate runner
273
- participant Adapter as 腿 adapter
274
- participant Store as kernel store
275
- participant Blob as evidence blobs
276
- Runner->>Adapter: gate recipe 派发
277
- Adapter-->>Runner: 原始报告(官方词形)
278
- Adapter->>Blob: persistEvidenceArtifact(内容寻址 sha256)
279
- Blob-->>Adapter: artifact_ref
280
- Adapter->>Store: record gate-run(GRN + artifact_refs)
281
- Store->>Store: journal TX_APPLIED(ran_at_seq 锚)
282
- Note over Store,Blob: 读侧 verifyEvidenceBinding:<br/>判卷字节 == 落盘字节 == GRN 引用字节<br/>失配 = EVIDENCE_BINDING_INCOMPLETE 判红
283
- ```
249
+ **判档(triage)**【示意拍,以任务元数据代证】:一句话需求进来,`pomaster triage` 秒级定档,任务带一句话标题与优先级落库——治理成本从第一拍起就与变更风险成比例。
284
250
 
285
- ### 生产反馈时序(SLO 击穿闭环)
251
+ **拷问(brainstorm → promote)**:不接受需求转述——先提取原型线框,再拷问出 5 个决策点(组件逐个配对、API 缺口清单抛给 Owner 二选一……),收敛为 Decision Graph 后 `promote --apply` 建任务。最有立场的一条:「列配置要不要持久化」被协议的六项强制要求拦成「先不做,仅会话内记忆,并给出未来纯增量路径」——治理机制替需求做减法。
286
252
 
287
- ```mermaid
288
- sequenceDiagram
289
- autonumber
290
- participant Prod as 生产监控
291
- participant P as pomaster production
292
- participant K as kernel store
293
- Prod->>P: ControlBand 定义(谓词机校验,自由文本不存在)
294
- P->>P: evaluate(三态:OK/BREACHED/NOT_EVALUABLE)
295
- alt BREACHED
296
- P->>K: evidence(detected_by=tool_signal)
297
- P->>K: challenge → change 轴 CHALLENGED
298
- P->>P: diagnose(三分类,必须引用 breach evidence)
299
- P-->>Prod: 新 Change 进入主循环(闭环)
300
- end
301
- ```
253
+ **许可与投影(permit → context)**【近似拍:前代以 planner gate + 协议绑定代行 permit】:开工前,「这个任务允许碰哪些协议面」已被机器记录为 12 项 gate 全通过 + 11 条协议绑定;`pomaster context compile` 向 implement 与 check 两侧注入同一组规格(各 20 条),每条带字节级哈希锚定——写的人与验的人拿同一份事实。第二章拆出的 4 个子任务,投影条目连上游 research 文件都带理由逐条注入:调研不靠会话记忆传导,靠文件传导。
302
254
 
303
- ### Memory Harvest 时序(COMPATIBILITY 路线)
255
+ **实现与判卷(maintain → check)**:代码在许可范围内受控写入;`pomaster check` 判了 **FAIL——尽管 9 条验收标准全部通过**(交付物缺四态渲染)。证据链不允许「单测绿」冒充「已验证」,三种假绿各被不同的对账机制钉出:
304
256
 
305
- ```mermaid
306
- sequenceDiagram
307
- autonumber
308
- participant H as harness 自动记忆
309
- participant M as pomaster memory
310
- participant Inbox as inbox(PENDING)
311
- participant Owner2 as Owner(batch review)
312
- H->>M: harvest claude --harness-dir <dir>
313
- M->>Inbox: 四桶初筛(TRUTH/KNOWLEDGE/EPISODE/PREFERENCE)
314
- Owner2->>M: review --decide <id> --promote|--reject --note <必填>
315
- M->>M: 分桶路由(KNOWLEDGE→恒 CANDIDATE+ADVISORY;TRUTH/DECISION/EVIDENCE→OWNER_ESCALATION)
316
- M->>M: audit(MEMORY_DRIFT 探测 fail-closed)
317
- ```
257
+ - **测试空转断言**(本案例):测试在跑,失败路径上却零断言——引擎全挂时照样报绿。判卷问的不只是「绿不绿」,还有「绿得有没有内容」,修复清单点名补无条件断言。
258
+ - **查询失败伪装空态**(同项目另一次审计驱动的三页治理修复):try-catch 吞错返回空列表,把「查询失败」演成「没有数据」——两者在界面上长一样,在蓝图↔实现↔原型↔协议四方对账、逐处 file:line 取证里不一样:失败必须走可恢复渲染态。
259
+ - **mock 同引用致数据不刷新**(同次修复):mock 返回与缓存同引用,框架结构共享把「新数据」判成「没变化」——测试绿、界面旧数据。check 追加复验现形,修复为深拷贝快照;验收全是实测数字:权限弹窗切角色 82 框 26 勾 → 61 框 21 勾、脏勾选零泄漏。
318
260
 
319
- ## 类 Agent 架构
261
+ **修复与回写(reconcile → compact)**:判卷产出不是「过/不过」一个字,而是六项修复、两项有理由的拒绝修复、九处文档漂移回写。三个细节最见性格:复验抓出「修复自身引入的回归」——派生列改返回字符串后,大表数值排序退化成字典序(`'1234.56'` 排到 `'888.88'` 前面);性能实测 4.17ms 远低于帧预算,明确拒绝加缓存;事实源自打脸——事实源里写着指南明令禁止的运算符优先级,回写改正并附理由。
320
262
 
321
- POMaster 不内置 daemon,也不托管 Agent——它给「在 harness 里跑的主 Agent」提供状态平面 + 执行身份 + 观测器:
263
+ **收口(closeout)**:现行 `pomaster closeout` 判卷 claims × GRN 硬绑定,证据不齐即 BLOCKED。本案例的收口留痕:任务状态机走完归档;同批会话实录——单日 45 commits、四门禁 + 273 测试全绿、11 个任务归档。
322
264
 
323
- ```mermaid
324
- flowchart LR
325
- subgraph HARNESS["Agent Harness(Claude Code / Codex / …)"]
326
- MAIN["Main Agent<br/>(solo 直连形态)"]:::agent
327
- SUB["Sub-agent / Role"]:::agent
328
- end
329
- subgraph POM["POMaster kernel"]
330
- SESS["sessions(liveness 侧车)"]:::k
331
- LOCK["locks(change/task/unit 三粒度互斥)"]:::k
332
- AGX["Execution Identity(AGX-n)"]:::k
333
- RT["AgentRuntime 契约<br/>(§58 四方法三探针)"]:::k
334
- end
335
- subgraph OBS["观测器(fail-closed 信号)"]
336
- GK["DEF-GATEKEEPER<br/>分身漂移检测"]:::obs
337
- SUP["DEF-SUP<br/>SOP 链触发观测"]:::obs
338
- end
339
- MAIN -- "begin/end execution" --> AGX
340
- MAIN -- "attach/refresh" --> SESS
341
- MAIN -- "acquire/heartbeat/steal" --> LOCK
342
- SUB -- run/handoff(DEF-SUP 触发制,deferred) --> RT
343
- AGX --> GK
344
- SESS --> SUP
345
- classDef agent fill:#e8f0fe,stroke:#1a73e8
346
- classDef k fill:#fce8e6,stroke:#d93025
347
- classDef obs fill:#fef7e0,stroke:#f9ab00
348
- ```
349
-
350
- 要点:
351
-
352
- - **Execution Identity ≠ Execution Trace ≠ Evidence**:AGX-n 是短小稳定的执行身份(runtime/model/permit 快照);Trace 是行为侧车(writes/tool_receipts/evidence_refs,retention 四档);Evidence 是可验证证明。三者分离(A19 美学)。
353
- - **Gatekeeper 防分身**:同一 execution 既提 proposal 又 ALLOW → drift 观测器亮灯——「系统永不自我批准」的机器面。
354
- - **托管编排受 DEF-SUP 触发制门槛**:solo 直连是默认形态;run/handoff 等 SOP 编排在触发条件(重复链/第二贡献者/headless-CI)出现前显式 deferred——治理开销与风险成比例(Minimum Sufficient Governance)。
265
+ **换任何项目,这条通路不变——变化的是被治理的内容,不变的是「每一行变化都被证据证明」。**
355
266
 
356
267
  ## 五原语:一切能力的唯一来源
357
268
 
@@ -369,16 +280,24 @@ Spec、Task、Gate、Knowledge、Brainstorm……全部是这五个原语的派
369
280
  ## 哲学宪法(违者即是 bug)
370
281
 
371
282
  - Small Constitution:硬约束极少而精——不伪造事实、不越权、不静默冲突、不无证据宣称完成
372
- - Heavy Entry by Default(D13 修订 2026-09-03 + B7 裁定 2026-09-04):入口即治理——init 默认安装 skills 库 + hooks 注入,Agent 开会话即见状态;单一重入口、无模式旗标;hook 注入内容永远是 Canonical State 的投影,不是第二事实源
283
+ - Heavy Entry by Default:入口即治理——init 默认安装 skills 命令卡库 + hooks 注入,Agent 开会话即见状态;hook 注入内容永远是 Canonical State 的投影,不是第二事实源
373
284
  - No-op is elegant:没有必要的治理动作,零变化就是成功
374
- - Framework as Review Surface:框架约束好了的人,不需要读 AI 写的每一行代码——但前提是判卷器诚实,所以我们用对抗性用例持续攻击自己的 gate
285
+ - Framework as Review Surface:框架约束好了的人,不需要读 AI 写的每一行代码——但前提是判卷器诚实,所以我们用对抗性用例持续攻击自己的 gate(8 个宪法回归 Case 组成永久套件,守护「一句话需求必须过 grounding、原型实现无权威、agent 不得自批、观察失败≠不存在、截图≠payload」等核心不变式)
375
286
  - Minimum Sufficient Governance:治理开销必须与变更风险成比例;小改动的体验是"几乎感觉不到 POMaster"
376
287
  - Memory Sovereignty:删掉本机缓存 + fresh clone + bootstrap ≈ 项目认知完全恢复
377
288
 
289
+ ## 深入阅读
290
+
291
+ - [`docs/init-reference.md`](docs/init-reference.md) — `pomaster init` 全机制:产物表 / 目录宪法全树 / 播种语义 / 重入口三件套 / 技术栈问卷 / 基线确认 gate / 预置草案 / doctor 探针矩阵
292
+ - [`docs/kernel-api.md`](docs/kernel-api.md) — kernel API 参考
293
+ - [组件画廊(在线版)](https://river-singer.github.io/POMaster_VNext/) — GitHub Pages;仓库源在 [`packages/studio`](packages/studio/)(Vue 主实例)与 [`packages/studio-react`](packages/studio-react/)(React sidecar,private 对照实例)
294
+ - [`catalog/`](catalog/) — 随包分发的工程策展物料(policies / knowledge / gates / sensors / archetypes / tools)
295
+ - [`references/`](references/) — concept-ledger(治理概念账本)· external-sites-index(外部参照站点索引)
296
+
378
297
  ## 项目结构
379
298
 
380
299
  ```text
381
- packages/ kernel(状态与判卷权威)· cli(命令面)· gauntlet-lite(确定性 gate 腿)· schemas(FROZEN 词表 schema)
300
+ packages/ kernel(状态与判卷权威)· cli(命令面)· gauntlet-lite(确定性 gate 腿)· schemas(FROZEN 词表 schema)· studio(组件画廊 Storybook 实例——private,不入 npm 发布面)
382
301
  catalog/ policies · knowledge · gates · sensors · archetypes · tools——随包分发的工程策展物料(catalog-lock 逐字节对账;手补物料后 `pomaster catalog relock` 一键重锁)
383
302
  references/ concept-ledger(治理概念账本)· external-sites-index(外部参照站点索引)
384
303
  tests/ 单元 / 集成 / Golden / 对抗 / 行为 / 自托管基准(数量下限进 CI 棘轮,只升不降)
@@ -390,7 +309,7 @@ legal/ THIRD_PARTY_NOTICES · PROVENANCE
390
309
 
391
310
  ## License
392
311
 
393
- POMaster 采用**双许可**发布(Owner 决议 2026-09-01):
312
+ POMaster 采用**双许可**发布:
394
313
 
395
314
  - **PolyForm Noncommercial 1.0.0**(默认公共许可,仅授权非商业使用):全文见 [`LICENSE`](./LICENSE),官方标准文本逐字落盘;
396
315
  - **Commercial**(独立商业授权):任何商业使用(含企业内部商用、小企业商用)均不在公共许可范围内、不豁免,需另行签署书面商业授权——说明见 [`COMMERCIAL_LICENSE.md`](./COMMERCIAL_LICENSE.md)。