pomaster 0.1.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 (115) hide show
  1. package/COMMERCIAL_LICENSE.md +35 -0
  2. package/LICENSE +83 -0
  3. package/README.md +396 -0
  4. package/SECURITY.md +22 -0
  5. package/TRADEMARKS.md +12 -0
  6. package/catalog/candidates/candidates-draft.json +198 -0
  7. package/catalog/candidates/rejected.json +422 -0
  8. package/catalog/catalog-lock.draft.json +822 -0
  9. package/catalog/gates/gate.be.api.contract_checks.json +138 -0
  10. package/catalog/gates/gate.be.chg.contract_change_checks.json +138 -0
  11. package/catalog/gates/gate.chg.prechange_checks.json +155 -0
  12. package/catalog/gates/gate.web.api.request_checks.json +149 -0
  13. package/catalog/gates/gate.web.grid.checks.json +149 -0
  14. package/catalog/knowledge/knowledge.api.example_stable_error_code.json +80 -0
  15. package/catalog/knowledge/knowledge.chg.example_compat_window.json +87 -0
  16. package/catalog/knowledge/knowledge.chg.example_prop_migration.json +87 -0
  17. package/catalog/knowledge/knowledge.fp.api.field_drift_no_contract.json +83 -0
  18. package/catalog/knowledge/knowledge.fp.api.per_page_http_client.json +83 -0
  19. package/catalog/knowledge/knowledge.fp.be.contract_drift.json +87 -0
  20. package/catalog/knowledge/knowledge.fp.chg.page_local_padding.json +88 -0
  21. package/catalog/knowledge/knowledge.fp.grid.global_td_width.json +87 -0
  22. package/catalog/knowledge/knowledge.web.api.example_get_entity_list.json +83 -0
  23. package/catalog/knowledge/knowledge.web.grid.example_column_preset.json +83 -0
  24. package/catalog/policies/authority.be.api_contract_ownership.json +77 -0
  25. package/catalog/policies/authority.be.contract_ownership.json +73 -0
  26. package/catalog/policies/authority.chg.change_owners.json +75 -0
  27. package/catalog/policies/authority.web.api.request_owners.json +82 -0
  28. package/catalog/policies/authority.web.grid.ownership.json +78 -0
  29. package/catalog/policies/policy.api.backward_compat_defaults.json +83 -0
  30. package/catalog/policies/policy.api.contract_impl_consistency.json +81 -0
  31. package/catalog/policies/policy.api.no_informal_contract.json +82 -0
  32. package/catalog/policies/policy.arch.decision_tradeoff_record.json +78 -0
  33. package/catalog/policies/policy.cache.lifecycle_definition.json +79 -0
  34. package/catalog/policies/policy.chg.affect_templates.json +79 -0
  35. package/catalog/policies/policy.chg.breaking_versioning.json +81 -0
  36. package/catalog/policies/policy.chg.compat_migration_rollback.json +82 -0
  37. package/catalog/policies/policy.chg.deprecate_before_delete.json +82 -0
  38. package/catalog/policies/policy.chg.fix_at_root_cause_level.json +78 -0
  39. package/catalog/policies/policy.chg.observable_evolution.json +78 -0
  40. package/catalog/policies/policy.chg.prechange_consumer_scan.json +83 -0
  41. package/catalog/policies/policy.chg.staged_rollout.json +79 -0
  42. package/catalog/policies/policy.chg.sync_contract_docs_tests.json +81 -0
  43. package/catalog/policies/policy.conflict.priority_ladder.json +79 -0
  44. package/catalog/policies/policy.dep.admission_six_dimension_check.json +84 -0
  45. package/catalog/policies/policy.dep.change_surface_review.json +82 -0
  46. package/catalog/policies/policy.dep.introduction_review.json +83 -0
  47. package/catalog/policies/policy.derived.single_implementation.json +77 -0
  48. package/catalog/policies/policy.obs.correlation_context_minimum.json +81 -0
  49. package/catalog/policies/policy.obs.rum_dimension_whitelist.json +77 -0
  50. package/catalog/policies/policy.proc.pre_code_declaration.json +78 -0
  51. package/catalog/policies/policy.rel.pre_release_confirmation.json +77 -0
  52. package/catalog/policies/policy.role.domain_decision_authority.json +77 -0
  53. package/catalog/policies/policy.sec.third_party_execution_register.json +78 -0
  54. package/catalog/policies/policy.spec.admission_criteria.json +79 -0
  55. package/catalog/policies/policy.spec.derived_view_regeneration.json +79 -0
  56. package/catalog/policies/policy.spec.draft_not_baseline.json +77 -0
  57. package/catalog/policies/policy.spec.file_structure_contract.json +76 -0
  58. package/catalog/policies/policy.spec.metadata_required.json +76 -0
  59. package/catalog/policies/policy.spec.post_dev_backfill_classify.json +74 -0
  60. package/catalog/policies/policy.spec.procedural_record_not_surrogate.json +76 -0
  61. package/catalog/policies/policy.spec.semantic_identity.json +77 -0
  62. package/catalog/policies/policy.spec.unresolved_ledger_gate.json +79 -0
  63. package/catalog/policies/policy.stack.no_implicit_selection.json +77 -0
  64. package/catalog/policies/policy.tool.scoped_scan_boundary.json +78 -0
  65. package/catalog/policies/policy.web.api.auth_app_client_split.json +93 -0
  66. package/catalog/policies/policy.web.api.client_change_impact.json +86 -0
  67. package/catalog/policies/policy.web.api.domain_api_only.json +84 -0
  68. package/catalog/policies/policy.web.api.error_normalization.json +82 -0
  69. package/catalog/policies/policy.web.api.generated_client.json +82 -0
  70. package/catalog/policies/policy.web.api.late_result_guard.json +80 -0
  71. package/catalog/policies/policy.web.api.mutation_idempotency.json +84 -0
  72. package/catalog/policies/policy.web.api.no_network_optimism.json +82 -0
  73. package/catalog/policies/policy.web.api.query_cancel_stale_drop.json +80 -0
  74. package/catalog/policies/policy.web.api.request_infrastructure.json +95 -0
  75. package/catalog/policies/policy.web.api.retry_discipline.json +87 -0
  76. package/catalog/policies/policy.web.api.session_recovery_split.json +94 -0
  77. package/catalog/policies/policy.web.api.single_http_client.json +88 -0
  78. package/catalog/policies/policy.web.api.single_loading_source.json +81 -0
  79. package/catalog/policies/policy.web.api.transport_vs_business.json +81 -0
  80. package/catalog/policies/policy.web.api.trusted_endpoint_source.json +82 -0
  81. package/catalog/policies/policy.web.api.typed_domain_naming.json +79 -0
  82. package/catalog/policies/policy.web.arch.layer_isolation.json +376 -0
  83. package/catalog/policies/policy.web.arch.naming_conventions.json +207 -0
  84. package/catalog/policies/policy.web.arch.public_api_barrel.json +134 -0
  85. package/catalog/policies/policy.web.chg.controlled_change_triggers.json +79 -0
  86. package/catalog/policies/policy.web.copy.suppression_ledger_discipline.json +78 -0
  87. package/catalog/policies/policy.web.grid.column_schema_fields.json +78 -0
  88. package/catalog/policies/policy.web.grid.config_isolation.json +78 -0
  89. package/catalog/policies/policy.web.grid.freeze_key_columns.json +77 -0
  90. package/catalog/policies/policy.web.grid.interaction_registry.json +80 -0
  91. package/catalog/policies/policy.web.grid.keyboard_clipboard.json +79 -0
  92. package/catalog/policies/policy.web.grid.schema_driven_shell.json +81 -0
  93. package/catalog/policies/policy.web.grid.schema_versioning.json +78 -0
  94. package/catalog/policies/policy.web.grid.server_ops_virtualization.json +81 -0
  95. package/catalog/policies/policy.web.grid.shell_change_matrix.json +76 -0
  96. package/catalog/policies/policy.web.grid.width_fix_ladder.json +79 -0
  97. package/catalog/policies/policy.web.perf.budget_skeleton.json +110 -0
  98. package/catalog/policies/policy.web.style.ownership_matrix.json +207 -0
  99. package/catalog/policies/policy.web.track.consent_lifecycle.json +78 -0
  100. package/catalog/policies/policy.web.track.privacy_default_deny.json +81 -0
  101. package/catalog/policies/policy.web.track.stable_event_keys.json +78 -0
  102. package/catalog/policies/policy.web.uiux.provider_evidence_not_business_truth.json +86 -0
  103. package/catalog/projection-presets/registry-tree.yaml +307 -0
  104. package/catalog/sensors/sensor.browser.deterministic.json +53 -0
  105. package/catalog/sensors/sensor.browser.interactive.json +58 -0
  106. package/catalog/sensors/sensor.build.static.json +45 -0
  107. package/catalog/sensors/sensor.contract.conformance.json +47 -0
  108. package/catalog/sensors/sensor.performance.budget.json +46 -0
  109. package/catalog/sensors/sensor.production.metric.json +44 -0
  110. package/catalog/tools/apply_human_review_pilot_0001.py +488 -0
  111. package/catalog/tools/materialize_batch4_uplift.py +776 -0
  112. package/catalog/tools/materialize_catalog_pilot.py +784 -0
  113. package/dist/bin.js +52362 -0
  114. package/legal/THIRD_PARTY_NOTICES.md +336 -0
  115. package/package.json +36 -0
@@ -0,0 +1,84 @@
1
+ {
2
+ "x-vocab-pr": {
3
+ "status": "vocab_pr_candidate",
4
+ "finding": "kind='policy' 不在 vocab-lock kinds_registry.truth_bodies(POLICY. 前缀已冻结注册,closed-world);新 id 域段待登记:DEP",
5
+ "proposal": "词汇表 PR 登记 policy kind 及新域段;或 Owner 裁决 policy 条目住 catalog/ 而非 truth/objects 正文层(与前批 45+9 条同因同请,合并进同一 vocab PR)",
6
+ "locked_vocab_untouched": true
7
+ },
8
+ "x-spec-d-materialization": {
9
+ "status": "PROPOSAL",
10
+ "package": "SPEC-D 语义分解汇总(consolidated-pool D5 精选,cap=25)",
11
+ "human_review_required": true,
12
+ "evidence": "PLANNED",
13
+ "provenance": "POMaster_VNext/corpus/spec-knowledge/candidates/consolidated-pool.yaml",
14
+ "group": "BE-G1",
15
+ "candidate_id": "POLICY.DEP.ADMISSION_SIX_DIMENSION_CHECK",
16
+ "density_rank": 4,
17
+ "density_score": 40.25,
18
+ "pool_statement_sha16": "74481bc1684c7bd5",
19
+ "curated_rule": "UNIVERSAL + UNIVERSAL_POLICY + required_when_applicable + 无 uncertainty + 非 project_scope + 非重复 + 与既有 69 条零语义重复;按信息密度排序取前 25"
20
+ },
21
+ "x-applicability-review": {
22
+ "status": "annotated",
23
+ "campaign": "W1-A2 P0.5-1 T3 标注战役(PRD v0.5.2 §5.2/§14;Owner 裁决 8 ②,2026-09-01)",
24
+ "axes": [
25
+ "change_classes",
26
+ "applicability_note"
27
+ ],
28
+ "basis": "condition『新增或升级依赖』——依赖面变更词面逐字"
29
+ },
30
+ "id": "POLICY.DEP.ADMISSION_SIX_DIMENSION_CHECK",
31
+ "kind": "policy",
32
+ "axis_profile": "policy_default",
33
+ "classification": "UNIVERSAL_POLICY",
34
+ "axes": {
35
+ "lifecycle": "PROPOSED",
36
+ "confidence": "UNRESOLVED",
37
+ "evidence": "PLANNED",
38
+ "change": "STABLE"
39
+ },
40
+ "title_zh": "依赖准入六项核验",
41
+ "statement_zh": "引入或升级依赖前必须核验必要性、来源、版本、许可证、漏洞与维护状态六项。",
42
+ "statement_en_keywords": [
43
+ "dependency admission",
44
+ "necessity",
45
+ "license",
46
+ "vulnerability",
47
+ "maintenance"
48
+ ],
49
+ "applies_when": {
50
+ "lane": "any",
51
+ "condition": "新增或升级依赖",
52
+ "change_classes": [
53
+ "DEPENDENCY_CHANGE"
54
+ ],
55
+ "applicability_note": "新增或升级依赖"
56
+ },
57
+ "enforcement": "required_when_applicable",
58
+ "authority": {
59
+ "owner": "HUMAN_OWNER",
60
+ "delegates": [],
61
+ "write_policy": "EVOLUTION_CHANNEL",
62
+ "escalation_hint": "catalog-spec-decomposition"
63
+ },
64
+ "origin": "ingested",
65
+ "origin_note": "SPEC-D 汇总池 D5 精选物化;statement 沿用候选卡独立措辞(clean-room),零逐字拷贝上游源文本",
66
+ "sources": [
67
+ {
68
+ "type": "design_seed",
69
+ "ref": "POMaster_VNext/corpus/spec-knowledge/candidates/BE-G1.yaml",
70
+ "captured_by": "agent:claude/spec-d-consolidation",
71
+ "locator": {
72
+ "candidate": "POLICY.DEP.ADMISSION_SIX_DIMENSION_CHECK",
73
+ "source_protocol": ".trellis/spec/backend/27-dependency-supply-chain-protocol.md",
74
+ "lines": "25",
75
+ "section": "MUST"
76
+ },
77
+ "clean_room_note": "independently rewritten from SPEC-D decomposition candidate cards; zero verbatim copy"
78
+ }
79
+ ],
80
+ "review_notes": [
81
+ "与同批物化的 POLICY.DEP.INTRODUCTION_REVIEW 部分重叠(准入六项与引入评估各有约半数独有维度),按试点 §3.4 先例双正本互指交 Owner 裁决,不合并。",
82
+ "依赖治理在既有 69 条中无对应条目,零语义重复。"
83
+ ]
84
+ }
@@ -0,0 +1,82 @@
1
+ {
2
+ "x-vocab-pr": {
3
+ "status": "vocab_pr_candidate",
4
+ "finding": "kind='policy' 不在 vocab-lock kinds_registry.truth_bodies(POLICY. 前缀已冻结注册,closed-world);新 id 域段待登记:DEP",
5
+ "proposal": "词汇表 PR 登记 policy kind 及新域段;或 Owner 裁决 policy 条目住 catalog/ 而非 truth/objects 正文层(与前批 45+9 条同因同请,合并进同一 vocab PR)",
6
+ "locked_vocab_untouched": true
7
+ },
8
+ "x-spec-d-materialization": {
9
+ "status": "PROPOSAL",
10
+ "package": "SPEC-D 语义分解汇总(consolidated-pool D5 精选,cap=25)",
11
+ "human_review_required": true,
12
+ "evidence": "PLANNED",
13
+ "provenance": "POMaster_VNext/corpus/spec-knowledge/candidates/consolidated-pool.yaml",
14
+ "group": "FE-G1",
15
+ "candidate_id": "POLICY.DEP.CHANGE_SURFACE_REVIEW",
16
+ "density_rank": 15,
17
+ "density_score": 34.06,
18
+ "pool_statement_sha16": "6ba8eed375053bf8",
19
+ "curated_rule": "UNIVERSAL + UNIVERSAL_POLICY + required_when_applicable + 无 uncertainty + 非 project_scope + 非重复 + 与既有 69 条零语义重复;按信息密度排序取前 25"
20
+ },
21
+ "x-applicability-review": {
22
+ "status": "annotated",
23
+ "campaign": "W1-A2 P0.5-1 T3 标注战役(PRD v0.5.2 §5.2/§14;Owner 裁决 8 ②,2026-09-01)",
24
+ "axes": [
25
+ "change_classes",
26
+ "applicability_note"
27
+ ],
28
+ "basis": "condition『依赖变更与升级评审』"
29
+ },
30
+ "id": "POLICY.DEP.CHANGE_SURFACE_REVIEW",
31
+ "kind": "policy",
32
+ "axis_profile": "policy_default",
33
+ "classification": "UNIVERSAL_POLICY",
34
+ "axes": {
35
+ "lifecycle": "PROPOSED",
36
+ "confidence": "UNRESOLVED",
37
+ "evidence": "PLANNED",
38
+ "change": "STABLE"
39
+ },
40
+ "title_zh": "依赖变更审查覆盖面",
41
+ "statement_zh": "依赖变更审查必须覆盖传递依赖、完整性来源、安装脚本、可执行内容、发布产物与锁差异;只看清单文件不算审查,盲跑安装或修复脚本被禁止。",
42
+ "statement_en_keywords": [
43
+ "dependency change review",
44
+ "transitive dependencies",
45
+ "install scripts",
46
+ "lockfile diff",
47
+ "executable content"
48
+ ],
49
+ "applies_when": {
50
+ "lane": "any",
51
+ "condition": "依赖变更与升级评审",
52
+ "change_classes": [
53
+ "DEPENDENCY_CHANGE"
54
+ ],
55
+ "applicability_note": "依赖变更与升级评审"
56
+ },
57
+ "enforcement": "required_when_applicable",
58
+ "authority": {
59
+ "owner": "HUMAN_OWNER",
60
+ "delegates": [],
61
+ "write_policy": "EVOLUTION_CHANNEL",
62
+ "escalation_hint": "catalog-spec-decomposition"
63
+ },
64
+ "origin": "ingested",
65
+ "origin_note": "SPEC-D 汇总池 D5 精选物化;statement 沿用候选卡独立措辞(clean-room),零逐字拷贝上游源文本",
66
+ "sources": [
67
+ {
68
+ "type": "design_seed",
69
+ "ref": "POMaster_VNext/corpus/spec-knowledge/candidates/FE-G1.yaml",
70
+ "captured_by": "agent:claude/spec-d-consolidation",
71
+ "locator": {
72
+ "candidate": "POLICY.DEP.CHANGE_SURFACE_REVIEW",
73
+ "source_protocol": ".trellis/spec/frontend/11-dependency-package-management-protocol.md",
74
+ "lines": "L23, L35-L36"
75
+ },
76
+ "clean_room_note": "independently rewritten from SPEC-D decomposition candidate cards; zero verbatim copy"
77
+ }
78
+ ],
79
+ "review_notes": [
80
+ "依赖变更供应链审查在既有 69 条中无对应条目;与同批两条依赖政策为不同时点(变更时 vs 引入/准入时),互引。"
81
+ ]
82
+ }
@@ -0,0 +1,83 @@
1
+ {
2
+ "x-vocab-pr": {
3
+ "status": "vocab_pr_candidate",
4
+ "finding": "kind='policy' 不在 vocab-lock kinds_registry.truth_bodies(POLICY. 前缀已冻结注册,closed-world);新 id 域段待登记:DEP",
5
+ "proposal": "词汇表 PR 登记 policy kind 及新域段;或 Owner 裁决 policy 条目住 catalog/ 而非 truth/objects 正文层(与前批 45+9 条同因同请,合并进同一 vocab PR)",
6
+ "locked_vocab_untouched": true
7
+ },
8
+ "x-spec-d-materialization": {
9
+ "status": "PROPOSAL",
10
+ "package": "SPEC-D 语义分解汇总(consolidated-pool D5 精选,cap=25)",
11
+ "human_review_required": true,
12
+ "evidence": "PLANNED",
13
+ "provenance": "POMaster_VNext/corpus/spec-knowledge/candidates/consolidated-pool.yaml",
14
+ "group": "FE-G1",
15
+ "candidate_id": "POLICY.DEP.INTRODUCTION_REVIEW",
16
+ "density_rank": 22,
17
+ "density_score": 33.62,
18
+ "pool_statement_sha16": "b71e4059d9628e77",
19
+ "curated_rule": "UNIVERSAL + UNIVERSAL_POLICY + required_when_applicable + 无 uncertainty + 非 project_scope + 非重复 + 与既有 69 条零语义重复;按信息密度排序取前 25"
20
+ },
21
+ "x-applicability-review": {
22
+ "status": "annotated",
23
+ "campaign": "W1-A2 P0.5-1 T3 标注战役(PRD v0.5.2 §5.2/§14;Owner 裁决 8 ②,2026-09-01)",
24
+ "axes": [
25
+ "change_classes",
26
+ "applicability_note"
27
+ ],
28
+ "basis": "condition『引入新依赖』"
29
+ },
30
+ "id": "POLICY.DEP.INTRODUCTION_REVIEW",
31
+ "kind": "policy",
32
+ "axis_profile": "policy_default",
33
+ "classification": "UNIVERSAL_POLICY",
34
+ "axes": {
35
+ "lifecycle": "PROPOSED",
36
+ "confidence": "UNRESOLVED",
37
+ "evidence": "PLANNED",
38
+ "change": "STABLE"
39
+ },
40
+ "title_zh": "依赖引入前置评估",
41
+ "statement_zh": "引入依赖前必须评估既有替代、维护状态、许可证、安全、包体与替换成本;禁止为细小功能引入大型库或并存职责重复的核心库。",
42
+ "statement_en_keywords": [
43
+ "dependency introduction review",
44
+ "alternatives",
45
+ "maintenance license security",
46
+ "bundle cost",
47
+ "no duplicate core libraries"
48
+ ],
49
+ "applies_when": {
50
+ "lane": "any",
51
+ "condition": "引入新依赖",
52
+ "change_classes": [
53
+ "DEPENDENCY_CHANGE"
54
+ ],
55
+ "applicability_note": "引入新依赖"
56
+ },
57
+ "enforcement": "required_when_applicable",
58
+ "authority": {
59
+ "owner": "HUMAN_OWNER",
60
+ "delegates": [],
61
+ "write_policy": "EVOLUTION_CHANNEL",
62
+ "escalation_hint": "catalog-spec-decomposition"
63
+ },
64
+ "origin": "ingested",
65
+ "origin_note": "SPEC-D 汇总池 D5 精选物化;statement 沿用候选卡独立措辞(clean-room),零逐字拷贝上游源文本",
66
+ "sources": [
67
+ {
68
+ "type": "design_seed",
69
+ "ref": "POMaster_VNext/corpus/spec-knowledge/candidates/FE-G1.yaml",
70
+ "captured_by": "agent:claude/spec-d-consolidation",
71
+ "locator": {
72
+ "candidate": "POLICY.DEP.INTRODUCTION_REVIEW",
73
+ "source_protocol": ".trellis/spec/frontend/11-dependency-package-management-protocol.md",
74
+ "lines": "L22, L31-L32, L68"
75
+ },
76
+ "clean_room_note": "independently rewritten from SPEC-D decomposition candidate cards; zero verbatim copy"
77
+ }
78
+ ],
79
+ "review_notes": [
80
+ "与同批物化的 POLICY.DEP.ADMISSION_SIX_DIMENSION_CHECK 部分重叠(引入评估与准入六项各有约半数独有维度),按试点 §3.4 先例双正本互指交 Owner 裁决,不合并。",
81
+ "依赖治理在既有 69 条中无对应条目,零语义重复。"
82
+ ]
83
+ }
@@ -0,0 +1,77 @@
1
+ {
2
+ "x-vocab-pr": {
3
+ "status": "vocab_pr_candidate",
4
+ "finding": "kind='policy' 不在 vocab-lock kinds_registry.truth_bodies(POLICY. 前缀已冻结注册,closed-world);新 id 域段待登记:DERIVED",
5
+ "proposal": "词汇表 PR 登记 policy kind 及新域段;或 Owner 裁决 policy 条目住 catalog/ 而非 truth/objects 正文层(与前批 45+9 条同因同请,合并进同一 vocab PR)",
6
+ "locked_vocab_untouched": true
7
+ },
8
+ "x-spec-d-materialization": {
9
+ "status": "PROPOSAL",
10
+ "package": "SPEC-D 语义分解汇总(consolidated-pool D5 精选,cap=25)",
11
+ "human_review_required": true,
12
+ "evidence": "PLANNED",
13
+ "provenance": "POMaster_VNext/corpus/spec-knowledge/candidates/consolidated-pool.yaml",
14
+ "group": "GUIDES",
15
+ "candidate_id": "POLICY.DERIVED.SINGLE_IMPLEMENTATION",
16
+ "density_rank": 11,
17
+ "density_score": 35.44,
18
+ "pool_statement_sha16": "f7eec156d381503d",
19
+ "curated_rule": "UNIVERSAL + UNIVERSAL_POLICY + required_when_applicable + 无 uncertainty + 非 project_scope + 非重复 + 与既有 69 条零语义重复;按信息密度排序取前 25"
20
+ },
21
+ "x-applicability-review": {
22
+ "status": "human_review_candidate",
23
+ "campaign": "W1-A2 P0.5-1 T3 标注战役(PRD v0.5.2 §5.2/§14;Owner 裁决 8 ②,2026-09-01)",
24
+ "axes": [
25
+ "applicability_note"
26
+ ],
27
+ "note": "T3 保守派生未见明确词面证据——capabilities/change_classes 留空回退 lane 缺省(O7 行为零变化);列 Human Review 复核议程"
28
+ },
29
+ "id": "POLICY.DERIVED.SINGLE_IMPLEMENTATION",
30
+ "kind": "policy",
31
+ "axis_profile": "policy_default",
32
+ "classification": "UNIVERSAL_POLICY",
33
+ "axes": {
34
+ "lifecycle": "PROPOSED",
35
+ "confidence": "UNRESOLVED",
36
+ "evidence": "PLANNED",
37
+ "change": "STABLE"
38
+ },
39
+ "title_zh": "派生计算单实现点",
40
+ "statement_zh": "同一派生值的计算全库只允许一个实现点(计算引擎或等价单点);映射层、状态容器或视图不得另写第二份同名派生逻辑——第二份实现不随事实源表达式变更演进,必然静默漂移且无门禁可查。",
41
+ "statement_en_keywords": [
42
+ "single implementation of derived value",
43
+ "no parallel computation",
44
+ "silent drift of second implementation"
45
+ ],
46
+ "applies_when": {
47
+ "lane": "any",
48
+ "condition": "任何派生值的计算实现",
49
+ "applicability_note": "任何派生值的计算实现"
50
+ },
51
+ "enforcement": "required_when_applicable",
52
+ "authority": {
53
+ "owner": "HUMAN_OWNER",
54
+ "delegates": [],
55
+ "write_policy": "EVOLUTION_CHANNEL",
56
+ "escalation_hint": "catalog-spec-decomposition"
57
+ },
58
+ "origin": "ingested",
59
+ "origin_note": "SPEC-D 汇总池 D5 精选物化;statement 沿用候选卡独立措辞(clean-room),零逐字拷贝上游源文本",
60
+ "sources": [
61
+ {
62
+ "type": "design_seed",
63
+ "ref": "POMaster_VNext/corpus/spec-knowledge/candidates/GUIDES.yaml",
64
+ "captured_by": "agent:claude/spec-d-consolidation",
65
+ "locator": {
66
+ "candidate": "POLICY.DERIVED.SINGLE_IMPLEMENTATION",
67
+ "source_protocol": ".trellis/spec/guides/frontend/formula-engine.md",
68
+ "lines": "L111",
69
+ "section": "Vue 集成(派生列单实现条款)"
70
+ },
71
+ "clean_room_note": "independently rewritten from SPEC-D decomposition candidate cards; zero verbatim copy"
72
+ }
73
+ ],
74
+ "review_notes": [
75
+ "与同批物化的 POLICY.SPEC.DERIVED_VIEW_REGENERATION 义务正交(单实现点 vs 产物只读可再生),双正本互引;与既有复用检索类政策互补。"
76
+ ]
77
+ }
@@ -0,0 +1,81 @@
1
+ {
2
+ "x-vocab-pr": {
3
+ "status": "vocab_pr_candidate",
4
+ "finding": "kind='policy' 不在 vocab-lock kinds_registry.truth_bodies(POLICY. 前缀已冻结注册,closed-world);新 id 域段待登记:OBS",
5
+ "proposal": "词汇表 PR 登记 policy kind 及新域段;或 Owner 裁决 policy 条目住 catalog/ 而非 truth/objects 正文层(与前批 45+9 条同因同请,合并进同一 vocab PR)",
6
+ "locked_vocab_untouched": true
7
+ },
8
+ "x-spec-d-materialization": {
9
+ "status": "PROPOSAL",
10
+ "package": "SPEC-D 语义分解汇总(consolidated-pool D5 精选,cap=25)",
11
+ "human_review_required": true,
12
+ "evidence": "PLANNED",
13
+ "provenance": "POMaster_VNext/corpus/spec-knowledge/candidates/consolidated-pool.yaml",
14
+ "group": "BE-G4",
15
+ "candidate_id": "POLICY.OBS.CORRELATION_CONTEXT_MINIMUM",
16
+ "density_rank": 3,
17
+ "density_score": 40.81,
18
+ "pool_statement_sha16": "58bee8f1fb829f79",
19
+ "curated_rule": "UNIVERSAL + UNIVERSAL_POLICY + required_when_applicable + 无 uncertainty + 非 project_scope + 非重复 + 与既有 69 条零语义重复;按信息密度排序取前 25"
20
+ },
21
+ "x-applicability-review": {
22
+ "status": "human_review_candidate",
23
+ "campaign": "W1-A2 P0.5-1 T3 标注战役(PRD v0.5.2 §5.2/§14;Owner 裁决 8 ②,2026-09-01)",
24
+ "axes": [
25
+ "applicability_note"
26
+ ],
27
+ "note": "T3 保守派生未见明确词面证据——capabilities/change_classes 留空回退 lane 缺省(O7 行为零变化);列 Human Review 复核议程"
28
+ },
29
+ "id": "POLICY.OBS.CORRELATION_CONTEXT_MINIMUM",
30
+ "kind": "policy",
31
+ "axis_profile": "policy_default",
32
+ "classification": "UNIVERSAL_POLICY",
33
+ "axes": {
34
+ "lifecycle": "PROPOSED",
35
+ "confidence": "UNRESOLVED",
36
+ "evidence": "PLANNED",
37
+ "change": "STABLE"
38
+ },
39
+ "title_zh": "观测记录关联上下文最小集",
40
+ "statement_zh": "关键操作的观测记录必须能够关联应用版本、运行环境、操作主体、操作结果与链路标识五类上下文。",
41
+ "statement_en_keywords": [
42
+ "observability correlation",
43
+ "version",
44
+ "environment",
45
+ "actor",
46
+ "outcome",
47
+ "trace id"
48
+ ],
49
+ "applies_when": {
50
+ "lane": "any",
51
+ "condition": "关键操作的观测记录设计",
52
+ "applicability_note": "关键操作的观测记录设计"
53
+ },
54
+ "enforcement": "required_when_applicable",
55
+ "authority": {
56
+ "owner": "HUMAN_OWNER",
57
+ "delegates": [],
58
+ "write_policy": "EVOLUTION_CHANNEL",
59
+ "escalation_hint": "catalog-spec-decomposition"
60
+ },
61
+ "origin": "ingested",
62
+ "origin_note": "SPEC-D 汇总池 D5 精选物化;statement 沿用候选卡独立措辞(clean-room),零逐字拷贝上游源文本",
63
+ "sources": [
64
+ {
65
+ "type": "design_seed",
66
+ "ref": "POMaster_VNext/corpus/spec-knowledge/candidates/BE-G4.yaml",
67
+ "captured_by": "agent:claude/spec-d-consolidation",
68
+ "locator": {
69
+ "candidate": "POLICY.OBS.CORRELATION_CONTEXT_MINIMUM",
70
+ "source_protocol": ".trellis/spec/backend/29-observability-logging-tracing-protocol.md",
71
+ "lines": "## MUST 段(L23-25)",
72
+ "source_sha256": "e871f5d7d1e9fe68956881877baba94f376a5539753441853f8cfa12939f5ebd"
73
+ },
74
+ "clean_room_note": "independently rewritten from SPEC-D decomposition candidate cards; zero verbatim copy"
75
+ }
76
+ ],
77
+ "review_notes": [
78
+ "与既有 KNOWLEDGE.API.EXAMPLE_STABLE_ERROR_CODE(错误码+链路标识知识示例)对象不同(政策义务 vs 知识示例),非重复。",
79
+ "与同批物化的 POLICY.OBS.RUM_DIMENSION_WHITELIST 义务正交(关联上下文最小集 vs 维度白名单),互引不合并。"
80
+ ]
81
+ }
@@ -0,0 +1,77 @@
1
+ {
2
+ "x-vocab-pr": {
3
+ "status": "vocab_pr_candidate",
4
+ "finding": "kind='policy' 不在 vocab-lock kinds_registry.truth_bodies(POLICY. 前缀已冻结注册,closed-world);新 id 域段待登记:OBS",
5
+ "proposal": "词汇表 PR 登记 policy kind 及新域段;或 Owner 裁决 policy 条目住 catalog/ 而非 truth/objects 正文层(与前批 45+9 条同因同请,合并进同一 vocab PR)",
6
+ "locked_vocab_untouched": true
7
+ },
8
+ "x-spec-d-materialization": {
9
+ "status": "PROPOSAL",
10
+ "package": "SPEC-D 语义分解汇总(consolidated-pool D5 精选,cap=25)",
11
+ "human_review_required": true,
12
+ "evidence": "PLANNED",
13
+ "provenance": "POMaster_VNext/corpus/spec-knowledge/candidates/consolidated-pool.yaml",
14
+ "group": "FE-G1",
15
+ "candidate_id": "POLICY.OBS.RUM_DIMENSION_WHITELIST",
16
+ "density_rank": 23,
17
+ "density_score": 33.62,
18
+ "pool_statement_sha16": "1254d20528a90d44",
19
+ "curated_rule": "UNIVERSAL + UNIVERSAL_POLICY + required_when_applicable + 无 uncertainty + 非 project_scope + 非重复 + 与既有 69 条零语义重复;按信息密度排序取前 25"
20
+ },
21
+ "x-applicability-review": {
22
+ "status": "human_review_candidate",
23
+ "campaign": "W1-A2 P0.5-1 T3 标注战役(PRD v0.5.2 §5.2/§14;Owner 裁决 8 ②,2026-09-01)",
24
+ "axes": [
25
+ "applicability_note"
26
+ ],
27
+ "note": "T3 保守派生未见明确词面证据——capabilities/change_classes 留空回退 lane 缺省(O7 行为零变化);列 Human Review 复核议程"
28
+ },
29
+ "id": "POLICY.OBS.RUM_DIMENSION_WHITELIST",
30
+ "kind": "policy",
31
+ "axis_profile": "policy_default",
32
+ "classification": "UNIVERSAL_POLICY",
33
+ "axes": {
34
+ "lifecycle": "PROPOSED",
35
+ "confidence": "UNRESOLVED",
36
+ "evidence": "PLANNED",
37
+ "change": "STABLE"
38
+ },
39
+ "title_zh": "真实用户监测受控维度",
40
+ "statement_zh": "真实用户性能数据只能以受控的页面类别、设备类别、应用版本与指标版本为维度;完整地址、文档结构与用户输入不得作为维度。",
41
+ "statement_en_keywords": [
42
+ "rum dimension whitelist",
43
+ "controlled dimensions",
44
+ "no full url or user input"
45
+ ],
46
+ "applies_when": {
47
+ "lane": "any",
48
+ "condition": "性能监控维度设计",
49
+ "applicability_note": "性能监控维度设计"
50
+ },
51
+ "enforcement": "required_when_applicable",
52
+ "authority": {
53
+ "owner": "HUMAN_OWNER",
54
+ "delegates": [],
55
+ "write_policy": "EVOLUTION_CHANNEL",
56
+ "escalation_hint": "catalog-spec-decomposition"
57
+ },
58
+ "origin": "ingested",
59
+ "origin_note": "SPEC-D 汇总池 D5 精选物化;statement 沿用候选卡独立措辞(clean-room),零逐字拷贝上游源文本",
60
+ "sources": [
61
+ {
62
+ "type": "design_seed",
63
+ "ref": "POMaster_VNext/corpus/spec-knowledge/candidates/FE-G1.yaml",
64
+ "captured_by": "agent:claude/spec-d-consolidation",
65
+ "locator": {
66
+ "candidate": "POLICY.OBS.RUM_DIMENSION_WHITELIST",
67
+ "source_protocol": ".trellis/spec/frontend/34-monitoring-logging-protocol.md",
68
+ "lines": "L25"
69
+ },
70
+ "clean_room_note": "independently rewritten from SPEC-D decomposition candidate cards; zero verbatim copy"
71
+ }
72
+ ],
73
+ "review_notes": [
74
+ "真实用户监测维度在既有 69 条中无对应条目,零语义重复。",
75
+ "与同批物化的 POLICY.OBS.CORRELATION_CONTEXT_MINIMUM 义务正交(维度白名单 vs 关联上下文最小集),互引不合并。"
76
+ ]
77
+ }
@@ -0,0 +1,78 @@
1
+ {
2
+ "x-vocab-pr": {
3
+ "status": "vocab_pr_candidate",
4
+ "finding": "kind='policy' 不在 vocab-lock kinds_registry.truth_bodies(POLICY. 前缀已冻结注册,closed-world);新 id 域段待登记:PROC",
5
+ "proposal": "词汇表 PR 登记 policy kind 及新域段;或 Owner 裁决 policy 条目住 catalog/ 而非 truth/objects 正文层(与前批 45+9 条同因同请,合并进同一 vocab PR)",
6
+ "locked_vocab_untouched": true
7
+ },
8
+ "x-spec-d-materialization": {
9
+ "status": "PROPOSAL",
10
+ "package": "SPEC-D 语义分解汇总(consolidated-pool D5 精选,cap=25)",
11
+ "human_review_required": true,
12
+ "evidence": "PLANNED",
13
+ "provenance": "POMaster_VNext/corpus/spec-knowledge/candidates/consolidated-pool.yaml",
14
+ "group": "FE-G1",
15
+ "candidate_id": "POLICY.PROC.PRE_CODE_DECLARATION",
16
+ "density_rank": 16,
17
+ "density_score": 34.06,
18
+ "pool_statement_sha16": "f6083dd8e4c94520",
19
+ "curated_rule": "UNIVERSAL + UNIVERSAL_POLICY + required_when_applicable + 无 uncertainty + 非 project_scope + 非重复 + 与既有 69 条零语义重复;按信息密度排序取前 25"
20
+ },
21
+ "x-applicability-review": {
22
+ "status": "human_review_candidate",
23
+ "campaign": "W1-A2 P0.5-1 T3 标注战役(PRD v0.5.2 §5.2/§14;Owner 裁决 8 ②,2026-09-01)",
24
+ "axes": [
25
+ "applicability_note"
26
+ ],
27
+ "note": "T3 保守派生未见明确词面证据——capabilities/change_classes 留空回退 lane 缺省(O7 行为零变化);列 Human Review 复核议程"
28
+ },
29
+ "id": "POLICY.PROC.PRE_CODE_DECLARATION",
30
+ "kind": "policy",
31
+ "axis_profile": "policy_default",
32
+ "classification": "UNIVERSAL_POLICY",
33
+ "axes": {
34
+ "lifecycle": "PROPOSED",
35
+ "confidence": "UNRESOLVED",
36
+ "evidence": "PLANNED",
37
+ "change": "STABLE"
38
+ },
39
+ "title_zh": "开工前程序性声明",
40
+ "statement_zh": "任何实现动作开始前,必须先完成变更分类、确认适用协议集合、检索既有可复用能力,并圈定三份边界清单——必须修改、必须同步、禁止触碰。",
41
+ "statement_en_keywords": [
42
+ "pre-code declaration",
43
+ "change classification",
44
+ "applicable protocols",
45
+ "reuse search",
46
+ "boundary lists"
47
+ ],
48
+ "applies_when": {
49
+ "lane": "any",
50
+ "condition": "任何功能、修复、重构、配置或文档驱动变更开工前",
51
+ "applicability_note": "任何功能、修复、重构、配置或文档驱动变更开工前"
52
+ },
53
+ "enforcement": "required_when_applicable",
54
+ "authority": {
55
+ "owner": "HUMAN_OWNER",
56
+ "delegates": [],
57
+ "write_policy": "EVOLUTION_CHANNEL",
58
+ "escalation_hint": "catalog-spec-decomposition"
59
+ },
60
+ "origin": "ingested",
61
+ "origin_note": "SPEC-D 汇总池 D5 精选物化;statement 沿用候选卡独立措辞(clean-room),零逐字拷贝上游源文本",
62
+ "sources": [
63
+ {
64
+ "type": "design_seed",
65
+ "ref": "POMaster_VNext/corpus/spec-knowledge/candidates/FE-G1.yaml",
66
+ "captured_by": "agent:claude/spec-d-consolidation",
67
+ "locator": {
68
+ "candidate": "POLICY.PROC.PRE_CODE_DECLARATION",
69
+ "source_protocol": ".trellis/spec/frontend/01-development-checklist-protocol.md",
70
+ "lines": "L20-L21"
71
+ },
72
+ "clean_room_note": "independently rewritten from SPEC-D decomposition candidate cards; zero verbatim copy"
73
+ }
74
+ ],
75
+ "review_notes": [
76
+ "开工前声明在既有 69 条中无对应条目(变更治理族管已决策变更的执行纪律,不覆盖开工前置清单),零语义重复。"
77
+ ]
78
+ }
@@ -0,0 +1,77 @@
1
+ {
2
+ "x-vocab-pr": {
3
+ "status": "vocab_pr_candidate",
4
+ "finding": "kind='policy' 不在 vocab-lock kinds_registry.truth_bodies(POLICY. 前缀已冻结注册,closed-world);新 id 域段待登记:REL",
5
+ "proposal": "词汇表 PR 登记 policy kind 及新域段;或 Owner 裁决 policy 条目住 catalog/ 而非 truth/objects 正文层(与前批 45+9 条同因同请,合并进同一 vocab PR)",
6
+ "locked_vocab_untouched": true
7
+ },
8
+ "x-spec-d-materialization": {
9
+ "status": "PROPOSAL",
10
+ "package": "SPEC-D 语义分解汇总(consolidated-pool D5 精选,cap=25)",
11
+ "human_review_required": true,
12
+ "evidence": "PLANNED",
13
+ "provenance": "POMaster_VNext/corpus/spec-knowledge/candidates/consolidated-pool.yaml",
14
+ "group": "BE-G1",
15
+ "candidate_id": "POLICY.REL.PRE_RELEASE_CONFIRMATION",
16
+ "density_rank": 5,
17
+ "density_score": 40.25,
18
+ "pool_statement_sha16": "a49198bfa964e78b",
19
+ "curated_rule": "UNIVERSAL + UNIVERSAL_POLICY + required_when_applicable + 无 uncertainty + 非 project_scope + 非重复 + 与既有 69 条零语义重复;按信息密度排序取前 25"
20
+ },
21
+ "x-applicability-review": {
22
+ "status": "human_review_candidate",
23
+ "campaign": "W1-A2 P0.5-1 T3 标注战役(PRD v0.5.2 §5.2/§14;Owner 裁决 8 ②,2026-09-01)",
24
+ "axes": [
25
+ "applicability_note"
26
+ ],
27
+ "note": "T3 保守派生未见明确词面证据——capabilities/change_classes 留空回退 lane 缺省(O7 行为零变化);列 Human Review 复核议程"
28
+ },
29
+ "id": "POLICY.REL.PRE_RELEASE_CONFIRMATION",
30
+ "kind": "policy",
31
+ "axis_profile": "policy_default",
32
+ "classification": "UNIVERSAL_POLICY",
33
+ "axes": {
34
+ "lifecycle": "PROPOSED",
35
+ "confidence": "UNRESOLVED",
36
+ "evidence": "PLANNED",
37
+ "change": "STABLE"
38
+ },
39
+ "title_zh": "发布前六项确认",
40
+ "statement_zh": "发布前必须确认版本、依赖顺序、兼容性、观测就绪、停止条件与恢复路径六项。",
41
+ "statement_en_keywords": [
42
+ "pre release confirmation",
43
+ "stop condition",
44
+ "recovery path"
45
+ ],
46
+ "applies_when": {
47
+ "lane": "any",
48
+ "condition": "任何发布动作前",
49
+ "applicability_note": "任何发布动作前"
50
+ },
51
+ "enforcement": "required_when_applicable",
52
+ "authority": {
53
+ "owner": "HUMAN_OWNER",
54
+ "delegates": [],
55
+ "write_policy": "EVOLUTION_CHANNEL",
56
+ "escalation_hint": "catalog-spec-decomposition"
57
+ },
58
+ "origin": "ingested",
59
+ "origin_note": "SPEC-D 汇总池 D5 精选物化;statement 沿用候选卡独立措辞(clean-room),零逐字拷贝上游源文本",
60
+ "sources": [
61
+ {
62
+ "type": "design_seed",
63
+ "ref": "POMaster_VNext/corpus/spec-knowledge/candidates/BE-G1.yaml",
64
+ "captured_by": "agent:claude/spec-d-consolidation",
65
+ "locator": {
66
+ "candidate": "POLICY.REL.PRE_RELEASE_CONFIRMATION",
67
+ "source_protocol": ".trellis/spec/backend/32-release-versioning-rollback-protocol.md",
68
+ "lines": "25",
69
+ "section": "MUST"
70
+ },
71
+ "clean_room_note": "independently rewritten from SPEC-D decomposition candidate cards; zero verbatim copy"
72
+ }
73
+ ],
74
+ "review_notes": [
75
+ "发布域在既有 69 条中无对应条目(灰度发布条目管发布方式,不覆盖发布前确认清单),零语义重复。"
76
+ ]
77
+ }