add-coder 0.3.26 → 0.3.27

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 (132) hide show
  1. package/README.md +36 -10
  2. package/dist/index.js +481 -209
  3. package/package.json +14 -4
  4. package/templates/.add-coder-src-hash.json +129 -106
  5. package/templates/adapters/claude/hooks/doc-format-guard.sh +112 -31
  6. package/templates/adapters/claude/hooks/lib/common.sh +46 -87
  7. package/templates/adapters/claude/hooks/lib/context-inject.sh +2 -2
  8. package/templates/adapters/claude/hooks/lib/notify.sh +6 -4
  9. package/templates/adapters/claude/hooks/lib/preload-templates.sh +27 -2
  10. package/templates/adapters/claude/hooks/lib/state-detect.sh +8 -112
  11. package/templates/adapters/claude/hooks/lib/vocabulary.sh +13 -7
  12. package/templates/adapters/claude/hooks/prompt-submit.sh +1 -1
  13. package/templates/adapters/claude/hooks/stop-check.sh +9 -0
  14. package/templates/adapters/codex/config.toml.example +12 -0
  15. package/templates/adapters/codex/hooks/doc-format-guard.sh +121 -39
  16. package/templates/adapters/codex/hooks/lib/common.sh +47 -99
  17. package/templates/adapters/codex/hooks/lib/context-inject.sh +4 -4
  18. package/templates/adapters/codex/hooks/lib/notify.sh +6 -4
  19. package/templates/adapters/codex/hooks/lib/preload-templates.sh +27 -6
  20. package/templates/adapters/codex/hooks/lib/state-detect.sh +5 -114
  21. package/templates/adapters/codex/hooks/lib/vocabulary.sh +3 -8
  22. package/templates/adapters/codex/hooks/notification.sh +3 -18
  23. package/templates/adapters/codex/hooks/post-tool-use.sh +24 -119
  24. package/templates/adapters/codex/hooks/pre-tool-use.sh +97 -184
  25. package/templates/adapters/codex/hooks/prompt-submit.sh +8 -3
  26. package/templates/adapters/codex/hooks/session-start.sh +19 -9
  27. package/templates/adapters/codex/hooks/stop-check.sh +44 -18
  28. package/templates/adapters/codex/hooks.json +67 -1
  29. package/templates/adapters/qoder/hooks/doc-format-guard.sh +119 -38
  30. package/templates/adapters/qoder/hooks/lib/common.sh +49 -87
  31. package/templates/adapters/qoder/hooks/lib/context-inject.sh +2 -2
  32. package/templates/adapters/qoder/hooks/lib/notify.sh +6 -4
  33. package/templates/adapters/qoder/hooks/lib/preload-templates.sh +27 -2
  34. package/templates/adapters/qoder/hooks/lib/state-detect.sh +8 -112
  35. package/templates/adapters/qoder/hooks/lib/vocabulary.sh +13 -7
  36. package/templates/adapters/qoder/hooks/prompt-submit.sh +1 -1
  37. package/templates/adapters/qoder/hooks/session-start.sh +1 -1
  38. package/templates/adapters/qoder/hooks/stop-check.sh +11 -0
  39. package/templates/adapters/trae/hooks/doc-format-guard.sh +120 -38
  40. package/templates/adapters/trae/hooks/lib/common.sh +46 -87
  41. package/templates/adapters/trae/hooks/lib/context-inject.sh +2 -2
  42. package/templates/adapters/trae/hooks/lib/notify.sh +5 -3
  43. package/templates/adapters/trae/hooks/lib/preload-templates.sh +27 -2
  44. package/templates/adapters/trae/hooks/lib/state-detect.sh +8 -115
  45. package/templates/adapters/trae/hooks/lib/vocabulary.sh +13 -7
  46. package/templates/adapters/trae/hooks/pre-tool-use.sh +14 -8
  47. package/templates/adapters/trae/hooks/stop-check.sh +9 -0
  48. package/templates/adapters/vscode/hooks/doc-format-guard.sh +112 -31
  49. package/templates/adapters/vscode/hooks/lib/common.sh +46 -87
  50. package/templates/adapters/vscode/hooks/lib/context-inject.sh +2 -2
  51. package/templates/adapters/vscode/hooks/lib/notify.sh +6 -4
  52. package/templates/adapters/vscode/hooks/lib/preload-templates.sh +27 -2
  53. package/templates/adapters/vscode/hooks/lib/state-detect.sh +8 -112
  54. package/templates/adapters/vscode/hooks/lib/vocabulary.sh +13 -7
  55. package/templates/adapters/vscode/hooks/notification.sh +3 -5
  56. package/templates/adapters/vscode/hooks/prompt-submit.sh +1 -1
  57. package/templates/adapters/vscode/hooks/stop-check.sh +9 -0
  58. package/templates/core/docs/ADD-governance-claude-code.md +1 -1
  59. package/templates/core/docs/ADD-governance-codex.md +1 -1
  60. package/templates/core/docs/ADD-governance-qoder-cn.md +1 -1
  61. package/templates/core/docs/ADD-governance-trae.md +1 -1
  62. package/templates/core/docs/ADD-governance-vscode-copilot.md +1 -1
  63. package/templates/core/hooks/doc-format-guard.sh +120 -38
  64. package/templates/core/hooks/lib/common.sh +46 -87
  65. package/templates/core/hooks/lib/context-inject.sh +2 -2
  66. package/templates/core/hooks/lib/notify.sh +5 -3
  67. package/templates/core/hooks/lib/preload-templates.sh +27 -2
  68. package/templates/core/hooks/lib/state-detect.sh +8 -115
  69. package/templates/core/hooks/lib/vocabulary.sh +13 -7
  70. package/templates/core/hooks/pre-tool-use.sh +14 -8
  71. package/templates/core/hooks/stop-check.sh +9 -0
  72. package/templates/core/prisma/add.prisma +140 -82
  73. package/templates/core/rules/project_rules.md +27 -24
  74. package/templates/core/scripts/db-ensure.sh +8 -0
  75. package/templates/core/scripts/gen-plan-index.sh +4 -15
  76. package/templates/core/scripts/mcp-server/notifications/hitl.ts +9 -1
  77. package/templates/core/scripts/mcp-server/notifications/hook.ts +25 -9
  78. package/templates/core/scripts/mcp-server/resources/hitl-approval-widget.ts +34 -0
  79. package/templates/core/scripts/mcp-server/resources/hook-events-report.ts +14 -2
  80. package/templates/core/scripts/mcp-server/resources/index.ts +2 -0
  81. package/templates/core/scripts/mcp-server/sampling/review.ts +25 -10
  82. package/templates/core/scripts/mcp-server/shared/db-types.ts +33 -8
  83. package/templates/core/scripts/mcp-server/shared/dps-scoring.strategy.ts +1 -1
  84. package/templates/core/scripts/mcp-server/shared/env.ts +28 -8
  85. package/templates/core/scripts/mcp-server/shared/fs.ts +3 -0
  86. package/templates/core/scripts/mcp-server/shared/hitl-interaction.strategy.ts +2 -3
  87. package/templates/core/scripts/mcp-server/shared/hitl-lifecycle-mutation.ts +129 -0
  88. package/templates/core/scripts/mcp-server/shared/hitl-proposal-mutation.ts +98 -0
  89. package/templates/core/scripts/mcp-server/shared/hitl-ui.ts +3 -0
  90. package/templates/core/scripts/mcp-server/shared/plan-lifecycle-events.ts +62 -0
  91. package/templates/core/scripts/mcp-server/shared/plan-lifecycle-mutation.ts +78 -0
  92. package/templates/core/scripts/mcp-server/shared/plan-lifecycle-subscriber.ts +145 -0
  93. package/templates/core/scripts/mcp-server/shared/plan-lifecycle.ts +153 -0
  94. package/templates/core/scripts/mcp-server/shared/plan-round-events.ts +56 -0
  95. package/templates/core/scripts/mcp-server/shared/plan-round-mutation.ts +143 -0
  96. package/templates/core/scripts/mcp-server/shared/plan-round-store.ts +47 -0
  97. package/templates/core/scripts/mcp-server/shared/plan-round-subscriber.ts +99 -0
  98. package/templates/core/scripts/mcp-server/shared/plan-status-store.ts +37 -0
  99. package/templates/core/scripts/mcp-server/shared/plan-tracking-mutation.ts +71 -0
  100. package/templates/core/scripts/mcp-server/shared/prisma.ts +12 -6
  101. package/templates/core/scripts/mcp-server/shared/project-root-strategy.ts +1 -2
  102. package/templates/core/scripts/mcp-server/shared/quant-recheck.strategy.ts +16 -0
  103. package/templates/core/scripts/mcp-server/shared/redact.ts +28 -0
  104. package/templates/core/scripts/mcp-server/shared/response.ts +3 -2
  105. package/templates/core/scripts/mcp-server/shared/runtime-context.ts +77 -0
  106. package/templates/core/scripts/mcp-server/shared/schema-topology.ts +159 -0
  107. package/templates/core/scripts/mcp-server/tools/audit.ts +49 -7
  108. package/templates/core/scripts/mcp-server/tools/context.ts +117 -121
  109. package/templates/core/scripts/mcp-server/tools/contract.ts +34 -9
  110. package/templates/core/scripts/mcp-server/tools/gateway/check_add_route_status.ts +50 -3
  111. package/templates/core/scripts/mcp-server/tools/gateway/check_doc_similarity.ts +218 -0
  112. package/templates/core/scripts/mcp-server/tools/gateway/check_dps.ts +22 -7
  113. package/templates/core/scripts/mcp-server/tools/gateway/check_rahs.ts +75 -4
  114. package/templates/core/scripts/mcp-server/tools/gateway/check_spec_sync.ts +19 -6
  115. package/templates/core/scripts/mcp-server/tools/gateway/index.ts +2 -0
  116. package/templates/core/scripts/mcp-server/tools/hitl.ts +160 -75
  117. package/templates/core/scripts/mcp-server/tools/hook-event-report.ts +9 -2
  118. package/templates/core/scripts/mcp-server/tools/index.ts +69 -3
  119. package/templates/core/scripts/mcp-server/tools/plan.ts +140 -15
  120. package/templates/core/scripts/mcp-server/tools/review.ts +44 -15
  121. package/templates/core/scripts/mcp-server.ts +60 -1
  122. package/templates/core/scripts/plan-status-bridge.ts +26 -0
  123. package/templates/core/skills/add-paradigm/SKILL.md +2 -2
  124. package/templates/core/templates/add-route-template.schema.json +24 -56
  125. package/templates/core/templates/collab-contract-template.md +1 -1
  126. package/templates/core/templates/handoff-multi-round-template.schema.json +48 -0
  127. package/templates/core/templates/handoff-single-round-template.schema.json +92 -0
  128. package/templates/core/templates/handoff-single-round.schema.json +1 -1
  129. package/templates/core/templates/hitl-approval-widget.html +222 -37
  130. package/templates/core/templates/spec-template.schema.json +9 -46
  131. package/templates/core/templates/standard-plan-template.schema.json +1 -1
  132. package/templates/core/templates/tasks-template.schema.json +13 -54
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "add-coder",
3
- "version": "0.3.26",
3
+ "version": "0.3.27",
4
4
  "private": false,
5
5
  "description": "[codein2027](https://github.com/xiaomingming92/codein2027) - A complete scaffolding for building the ADD programming paradigm, the implementation layer for AI code governance. Core principle: Audit as Infrastructure. Breaks the black-box programming process and cross-session amnesia, evolving programming paradigms into an auditable, traceable, and convergent new era. npx-ready.\n\n[codein2027](https://github.com/xiaomingming92/codein2027) 快速构建 ADD 编程范式的完整脚手架——AI 代码治理的落地方案。以「审计即基础设施」为核心,彻底打破编程过程黑盒与跨轮失忆,让编程范式进化为可审计、可追溯、可收敛的新时代。npx 即用,人人可体验。",
6
6
  "repository": {
@@ -40,10 +40,10 @@
40
40
  "email": "wujixmm@gmail.com",
41
41
  "license": "AGPL-3.0-only",
42
42
  "dependencies": {
43
- "@ariga/atlas": "^1.3.0",
44
43
  "@huggingface/transformers": "^3.8.1",
45
44
  "@modelcontextprotocol/server": "2.0.0",
46
45
  "commander": "^13.1.0",
46
+ "find-up": "^8.0.0",
47
47
  "smol-toml": "^1.7.0",
48
48
  "vector-cosine-similarity": "^1.8.0",
49
49
  "zod": "^4.4.3"
@@ -54,6 +54,7 @@
54
54
  "@prisma/client": "^7.0.0",
55
55
  "dotenv": "*",
56
56
  "prisma": "^7.0.0",
57
+ "pg": "^8.16.0",
57
58
  "tsx": ">=4",
58
59
  "vector-cosine-similarity": "^1.8.0"
59
60
  },
@@ -73,6 +74,9 @@
73
74
  "@prisma/adapter-pg": {
74
75
  "optional": false
75
76
  },
77
+ "pg": {
78
+ "optional": true
79
+ },
76
80
  "@huggingface/transformers": {
77
81
  "optional": false
78
82
  }
@@ -80,12 +84,17 @@
80
84
  "devDependencies": {
81
85
  "@eslint/js": "^9.39.4",
82
86
  "@types/node": "^22.20.1",
87
+ "@types/pg": "^8.20.4",
83
88
  "eslint": "^9.39.4",
89
+ "pg": "^8.22.0",
84
90
  "tsup": "^8.4.0",
85
91
  "typescript": "^6.0.3",
86
92
  "typescript-eslint": "^8.62.1",
87
93
  "vitest": "^4.1.10"
88
94
  },
95
+ "optionalDependencies": {
96
+ "@ariga/atlas": "^1.3.0"
97
+ },
89
98
  "scripts": {
90
99
  "build": "tsup",
91
100
  "predev": "npm run db:ensure",
@@ -96,9 +105,10 @@
96
105
  "benchmark": "tsx scripts/benchmark/benchmark-sync.ts",
97
106
  "lint": "eslint src/",
98
107
  "lint:fix": "eslint src/ --fix",
99
- "generate": "tsx src/caijuehub/transcribe.ts",
108
+ "generate": "tsx src/caijuehub/transcribe/index.ts",
100
109
  "podman-add-coder-up": "podman-compose --env-file .env.development -f podman-compose.add.yml up -d",
101
110
  "podman-add-coder-down": "podman-compose --env-file .env.development -f podman-compose.add.yml down",
102
- "test": "vitest run"
111
+ "test": "vitest run",
112
+ "generate:check": "tsx scripts/generate-idempotency-check.ts"
103
113
  }
104
114
  }
@@ -1,14 +1,14 @@
1
1
  {
2
- "_version": "0.3.26",
3
- "adapters/claude/hooks/doc-format-guard.sh": "73f36a12",
4
- "adapters/claude/hooks/lib/common.sh": "4f3e64ad",
5
- "adapters/claude/hooks/lib/context-inject.sh": "cfc8c65e",
6
- "adapters/claude/hooks/lib/notify.sh": "e0033e53",
7
- "adapters/claude/hooks/lib/preload-templates.sh": "96dd67fe",
2
+ "_version": "0.3.27",
3
+ "adapters/claude/hooks/doc-format-guard.sh": "cde3e3cf",
4
+ "adapters/claude/hooks/lib/common.sh": "6b6e875f",
5
+ "adapters/claude/hooks/lib/context-inject.sh": "177d3651",
6
+ "adapters/claude/hooks/lib/notify.sh": "914739e3",
7
+ "adapters/claude/hooks/lib/preload-templates.sh": "d6f5a818",
8
8
  "adapters/claude/hooks/lib/session-end.sh": "29813cbc",
9
- "adapters/claude/hooks/lib/state-detect.sh": "b87dd85a",
9
+ "adapters/claude/hooks/lib/state-detect.sh": "4ccd5304",
10
10
  "adapters/claude/hooks/lib/subagent-stop.sh": "4cc1d446",
11
- "adapters/claude/hooks/lib/vocabulary.sh": "d5a92ac3",
11
+ "adapters/claude/hooks/lib/vocabulary.sh": "3fa4f4a7",
12
12
  "adapters/claude/hooks/notification.sh": "60bf9b01",
13
13
  "adapters/claude/hooks/permission-denied.sh": "0a0605df",
14
14
  "adapters/claude/hooks/permission-gate.sh": "bcca7732",
@@ -16,85 +16,86 @@
16
16
  "adapters/claude/hooks/post-tool-use.sh": "f54dd009",
17
17
  "adapters/claude/hooks/pre-compact.sh": "4248f84f",
18
18
  "adapters/claude/hooks/pre-tool-use.sh": "080f8979",
19
- "adapters/claude/hooks/prompt-submit.sh": "2fe9e42c",
19
+ "adapters/claude/hooks/prompt-submit.sh": "7b9d52a7",
20
20
  "adapters/claude/hooks/review-checklist.sh": "b383a983",
21
21
  "adapters/claude/hooks/session-end.sh": "777ae808",
22
22
  "adapters/claude/hooks/session-start.sh": "fd1d5e4f",
23
- "adapters/claude/hooks/stop-check.sh": "41bc519a",
23
+ "adapters/claude/hooks/stop-check.sh": "2733e4f6",
24
24
  "adapters/claude/hooks/stop-failure.sh": "e3d6c335",
25
25
  "adapters/claude/hooks/subagent-guard.sh": "5922efba",
26
26
  "adapters/claude/hooks/subagent-stop.sh": "0f89e28c",
27
27
  "adapters/claude/mcp.json": "4ddc5120",
28
28
  "adapters/claude/settings.json": "067ccc45",
29
- "adapters/codex/hooks/doc-format-guard.sh": "aea5f606",
30
- "adapters/codex/hooks/lib/common.sh": "4f3e64ad",
31
- "adapters/codex/hooks/lib/context-inject.sh": "cfc8c65e",
32
- "adapters/codex/hooks/lib/notify.sh": "e0033e53",
33
- "adapters/codex/hooks/lib/preload-templates.sh": "96dd67fe",
29
+ "adapters/codex/config.toml.example": "62c03d71",
30
+ "adapters/codex/hooks/doc-format-guard.sh": "b4bfdc53",
31
+ "adapters/codex/hooks/lib/common.sh": "1452227a",
32
+ "adapters/codex/hooks/lib/context-inject.sh": "c650d3ad",
33
+ "adapters/codex/hooks/lib/notify.sh": "6138e686",
34
+ "adapters/codex/hooks/lib/preload-templates.sh": "921448e8",
34
35
  "adapters/codex/hooks/lib/session-end.sh": "29813cbc",
35
- "adapters/codex/hooks/lib/state-detect.sh": "135bde23",
36
+ "adapters/codex/hooks/lib/state-detect.sh": "9e33aa27",
36
37
  "adapters/codex/hooks/lib/subagent-stop.sh": "4cc1d446",
37
- "adapters/codex/hooks/lib/vocabulary.sh": "d5a92ac3",
38
- "adapters/codex/hooks/notification.sh": "f7aed25d",
38
+ "adapters/codex/hooks/lib/vocabulary.sh": "16b6bf8b",
39
+ "adapters/codex/hooks/notification.sh": "ab9c9d99",
39
40
  "adapters/codex/hooks/permission-gate.sh": "bcca7732",
40
41
  "adapters/codex/hooks/post-tool-failure.sh": "669b1b65",
41
- "adapters/codex/hooks/post-tool-use.sh": "27123aee",
42
+ "adapters/codex/hooks/post-tool-use.sh": "d2d5824d",
42
43
  "adapters/codex/hooks/pre-compact.sh": "6164c007",
43
- "adapters/codex/hooks/pre-tool-use.sh": "797664b8",
44
- "adapters/codex/hooks/prompt-submit.sh": "a41371ea",
44
+ "adapters/codex/hooks/pre-tool-use.sh": "14384656",
45
+ "adapters/codex/hooks/prompt-submit.sh": "bc6616c0",
45
46
  "adapters/codex/hooks/review-checklist.sh": "b383a983",
46
47
  "adapters/codex/hooks/session-end.sh": "3cc8c346",
47
- "adapters/codex/hooks/session-start.sh": "aa8faa0f",
48
- "adapters/codex/hooks/stop-check.sh": "dc4829be",
48
+ "adapters/codex/hooks/session-start.sh": "caf87b67",
49
+ "adapters/codex/hooks/stop-check.sh": "b00352dd",
49
50
  "adapters/codex/hooks/subagent-guard.sh": "47d04662",
50
51
  "adapters/codex/hooks/subagent-stop.sh": "0a34648b",
51
- "adapters/codex/hooks.json": "d9c99f6b",
52
+ "adapters/codex/hooks.json": "dcfa21dc",
52
53
  "adapters/codex/settings.json": "44136fa3",
53
- "adapters/qoder/hooks/doc-format-guard.sh": "6f8aa245",
54
- "adapters/qoder/hooks/lib/common.sh": "4f3e64ad",
55
- "adapters/qoder/hooks/lib/context-inject.sh": "cfc8c65e",
56
- "adapters/qoder/hooks/lib/notify.sh": "e0033e53",
57
- "adapters/qoder/hooks/lib/preload-templates.sh": "96dd67fe",
54
+ "adapters/qoder/hooks/doc-format-guard.sh": "64ce5ba8",
55
+ "adapters/qoder/hooks/lib/common.sh": "afbc44c8",
56
+ "adapters/qoder/hooks/lib/context-inject.sh": "177d3651",
57
+ "adapters/qoder/hooks/lib/notify.sh": "914739e3",
58
+ "adapters/qoder/hooks/lib/preload-templates.sh": "d6f5a818",
58
59
  "adapters/qoder/hooks/lib/session-end.sh": "29813cbc",
59
- "adapters/qoder/hooks/lib/state-detect.sh": "b87dd85a",
60
+ "adapters/qoder/hooks/lib/state-detect.sh": "4ccd5304",
60
61
  "adapters/qoder/hooks/lib/subagent-stop.sh": "4cc1d446",
61
- "adapters/qoder/hooks/lib/vocabulary.sh": "d5a92ac3",
62
+ "adapters/qoder/hooks/lib/vocabulary.sh": "3fa4f4a7",
62
63
  "adapters/qoder/hooks/notification.sh": "7d4efea6",
63
64
  "adapters/qoder/hooks/permission-gate.sh": "3bf27b1a",
64
65
  "adapters/qoder/hooks/post-tool-failure.sh": "8bc7a0e4",
65
66
  "adapters/qoder/hooks/post-tool-use.sh": "051cb6ed",
66
67
  "adapters/qoder/hooks/pre-compact.sh": "092fa6cf",
67
68
  "adapters/qoder/hooks/pre-tool-use.sh": "565cff92",
68
- "adapters/qoder/hooks/prompt-submit.sh": "336f262e",
69
+ "adapters/qoder/hooks/prompt-submit.sh": "c96d0823",
69
70
  "adapters/qoder/hooks/review-checklist.sh": "666831c8",
70
71
  "adapters/qoder/hooks/session-end.sh": "c50339df",
71
- "adapters/qoder/hooks/session-start.sh": "a4307a78",
72
- "adapters/qoder/hooks/stop-check.sh": "974db988",
72
+ "adapters/qoder/hooks/session-start.sh": "29a3e29a",
73
+ "adapters/qoder/hooks/stop-check.sh": "69fa9e50",
73
74
  "adapters/qoder/hooks/subagent-guard.sh": "ce60eaac",
74
75
  "adapters/qoder/hooks/subagent-stop.sh": "5a2c78c6",
75
76
  "adapters/qoder/mcp.json": "b2075957",
76
77
  "adapters/qoder/settings.json": "4bae3c9a",
77
78
  "adapters/qoder/sync-policy.json": "9cb6ff90",
78
- "adapters/trae/hooks/doc-format-guard.sh": "5f528aff",
79
- "adapters/trae/hooks/lib/common.sh": "4f3e64ad",
80
- "adapters/trae/hooks/lib/context-inject.sh": "cfc8c65e",
81
- "adapters/trae/hooks/lib/notify.sh": "e0033e53",
82
- "adapters/trae/hooks/lib/preload-templates.sh": "96dd67fe",
79
+ "adapters/trae/hooks/doc-format-guard.sh": "81f2adc9",
80
+ "adapters/trae/hooks/lib/common.sh": "6b6e875f",
81
+ "adapters/trae/hooks/lib/context-inject.sh": "177d3651",
82
+ "adapters/trae/hooks/lib/notify.sh": "45811b53",
83
+ "adapters/trae/hooks/lib/preload-templates.sh": "d6f5a818",
83
84
  "adapters/trae/hooks/lib/session-end.sh": "29813cbc",
84
- "adapters/trae/hooks/lib/state-detect.sh": "135bde23",
85
+ "adapters/trae/hooks/lib/state-detect.sh": "172b332c",
85
86
  "adapters/trae/hooks/lib/subagent-stop.sh": "4cc1d446",
86
- "adapters/trae/hooks/lib/vocabulary.sh": "d5a92ac3",
87
+ "adapters/trae/hooks/lib/vocabulary.sh": "3fa4f4a7",
87
88
  "adapters/trae/hooks/notification.sh": "f7aed25d",
88
89
  "adapters/trae/hooks/permission-gate.sh": "bcca7732",
89
90
  "adapters/trae/hooks/post-tool-failure.sh": "669b1b65",
90
91
  "adapters/trae/hooks/post-tool-use.sh": "27123aee",
91
92
  "adapters/trae/hooks/pre-compact.sh": "6164c007",
92
- "adapters/trae/hooks/pre-tool-use.sh": "2d7fc7a7",
93
+ "adapters/trae/hooks/pre-tool-use.sh": "9265b8ac",
93
94
  "adapters/trae/hooks/prompt-submit.sh": "a41371ea",
94
95
  "adapters/trae/hooks/review-checklist.sh": "b383a983",
95
96
  "adapters/trae/hooks/session-end.sh": "3cc8c346",
96
97
  "adapters/trae/hooks/session-start.sh": "aa8faa0f",
97
- "adapters/trae/hooks/stop-check.sh": "dc4829be",
98
+ "adapters/trae/hooks/stop-check.sh": "6190438c",
98
99
  "adapters/trae/hooks/subagent-guard.sh": "47d04662",
99
100
  "adapters/trae/hooks/subagent-stop.sh": "0a34648b",
100
101
  "adapters/trae/hooks.json": "e5045c2c",
@@ -110,60 +111,60 @@
110
111
  "adapters/vscode/.github/hooks/subagent-stop.json": "47dbdd8d",
111
112
  "adapters/vscode/.github/hooks/user-prompt-submit.json": "3a608d62",
112
113
  "adapters/vscode/extensions.json": "0f4024c1",
113
- "adapters/vscode/hooks/doc-format-guard.sh": "97a7370e",
114
- "adapters/vscode/hooks/lib/common.sh": "4f3e64ad",
115
- "adapters/vscode/hooks/lib/context-inject.sh": "cfc8c65e",
116
- "adapters/vscode/hooks/lib/notify.sh": "e0033e53",
117
- "adapters/vscode/hooks/lib/preload-templates.sh": "96dd67fe",
114
+ "adapters/vscode/hooks/doc-format-guard.sh": "80d26470",
115
+ "adapters/vscode/hooks/lib/common.sh": "6b6e875f",
116
+ "adapters/vscode/hooks/lib/context-inject.sh": "177d3651",
117
+ "adapters/vscode/hooks/lib/notify.sh": "914739e3",
118
+ "adapters/vscode/hooks/lib/preload-templates.sh": "d6f5a818",
118
119
  "adapters/vscode/hooks/lib/session-end.sh": "29813cbc",
119
- "adapters/vscode/hooks/lib/state-detect.sh": "b87dd85a",
120
+ "adapters/vscode/hooks/lib/state-detect.sh": "10b7e404",
120
121
  "adapters/vscode/hooks/lib/subagent-stop.sh": "4cc1d446",
121
- "adapters/vscode/hooks/lib/vocabulary.sh": "d5a92ac3",
122
- "adapters/vscode/hooks/notification.sh": "f7aed25d",
122
+ "adapters/vscode/hooks/lib/vocabulary.sh": "3fa4f4a7",
123
+ "adapters/vscode/hooks/notification.sh": "f90b62b5",
123
124
  "adapters/vscode/hooks/permission-gate.sh": "bcca7732",
124
125
  "adapters/vscode/hooks/post-tool-failure.sh": "355cfab1",
125
126
  "adapters/vscode/hooks/post-tool-use.sh": "5f188718",
126
127
  "adapters/vscode/hooks/pre-compact.sh": "a0908f0e",
127
128
  "adapters/vscode/hooks/pre-tool-use.sh": "4bf878e7",
128
- "adapters/vscode/hooks/prompt-submit.sh": "3e56d1a9",
129
+ "adapters/vscode/hooks/prompt-submit.sh": "38d19373",
129
130
  "adapters/vscode/hooks/review-checklist.sh": "b383a983",
130
131
  "adapters/vscode/hooks/session-end.sh": "7b407b9f",
131
132
  "adapters/vscode/hooks/session-start.sh": "ad724a3e",
132
- "adapters/vscode/hooks/stop-check.sh": "df1ad9dd",
133
+ "adapters/vscode/hooks/stop-check.sh": "382328b6",
133
134
  "adapters/vscode/hooks/subagent-guard.sh": "5d0ea685",
134
135
  "adapters/vscode/hooks/subagent-stop.sh": "dd19f712",
135
136
  "adapters/vscode/launch.json": "f2b79855",
136
137
  "adapters/vscode/settings.json": "7cabd00e",
137
138
  "adapters/vscode/tasks.json": "654d7fbd",
138
139
  "core/agents/add-flow-guardian.md": "c3e650d2",
139
- "core/docs/ADD-governance-claude-code.md": "0f582a7e",
140
- "core/docs/ADD-governance-codex.md": "289e8b71",
141
- "core/docs/ADD-governance-qoder-cn.md": "332a7253",
142
- "core/docs/ADD-governance-trae.md": "ffb29a0e",
143
- "core/docs/ADD-governance-vscode-copilot.md": "74062e88",
144
- "core/hooks/doc-format-guard.sh": "3a1beea8",
145
- "core/hooks/lib/common.sh": "4f3e64ad",
146
- "core/hooks/lib/context-inject.sh": "cfc8c65e",
147
- "core/hooks/lib/notify.sh": "e0033e53",
148
- "core/hooks/lib/preload-templates.sh": "96dd67fe",
140
+ "core/docs/ADD-governance-claude-code.md": "56c9a3de",
141
+ "core/docs/ADD-governance-codex.md": "3ac11e63",
142
+ "core/docs/ADD-governance-qoder-cn.md": "1624a93a",
143
+ "core/docs/ADD-governance-trae.md": "cbad6b2d",
144
+ "core/docs/ADD-governance-vscode-copilot.md": "2c26c14c",
145
+ "core/hooks/doc-format-guard.sh": "922732c0",
146
+ "core/hooks/lib/common.sh": "6b6e875f",
147
+ "core/hooks/lib/context-inject.sh": "177d3651",
148
+ "core/hooks/lib/notify.sh": "45811b53",
149
+ "core/hooks/lib/preload-templates.sh": "d6f5a818",
149
150
  "core/hooks/lib/session-end.sh": "29813cbc",
150
- "core/hooks/lib/state-detect.sh": "135bde23",
151
+ "core/hooks/lib/state-detect.sh": "172b332c",
151
152
  "core/hooks/lib/subagent-stop.sh": "4cc1d446",
152
- "core/hooks/lib/vocabulary.sh": "d5a92ac3",
153
+ "core/hooks/lib/vocabulary.sh": "3fa4f4a7",
153
154
  "core/hooks/notification.sh": "f7aed25d",
154
155
  "core/hooks/permission-gate.sh": "bcca7732",
155
156
  "core/hooks/post-tool-failure.sh": "669b1b65",
156
157
  "core/hooks/post-tool-use.sh": "27123aee",
157
158
  "core/hooks/pre-compact.sh": "6164c007",
158
- "core/hooks/pre-tool-use.sh": "f967ab24",
159
+ "core/hooks/pre-tool-use.sh": "e0c5376a",
159
160
  "core/hooks/prompt-submit.sh": "a41371ea",
160
161
  "core/hooks/review-checklist.sh": "b383a983",
161
162
  "core/hooks/session-end.sh": "3cc8c346",
162
163
  "core/hooks/session-start.sh": "aa8faa0f",
163
- "core/hooks/stop-check.sh": "dc4829be",
164
+ "core/hooks/stop-check.sh": "6190438c",
164
165
  "core/hooks/subagent-guard.sh": "47d04662",
165
166
  "core/hooks/subagent-stop.sh": "0a34648b",
166
- "core/prisma/add.prisma": "037bd7e9",
167
+ "core/prisma/add.prisma": "a543cd84",
167
168
  "core/reports/REPORT-WORKFLOW.md": "03d39b21",
168
169
  "core/reports/boundary-runtime-report.md": "6fd8053f",
169
170
  "core/reports/code-review-combined-report.md": "195d52aa",
@@ -175,58 +176,78 @@
175
176
  "core/rules/profiles/index.toml": "b83332d4",
176
177
  "core/rules/profiles/machineserver-profile.md": "8a36cf39",
177
178
  "core/rules/profiles/webapp-profile.md": "e493ae7b",
178
- "core/rules/project_rules.md": "82b25e08",
179
+ "core/rules/project_rules.md": "094821ad",
179
180
  "core/rules/theory-practice-map.toml": "b1db99fd",
180
- "core/scripts/db-ensure.sh": "1ef7a9f3",
181
- "core/scripts/gen-plan-index.sh": "bfc6ad3e",
181
+ "core/scripts/db-ensure.sh": "94a5ff92",
182
+ "core/scripts/gen-plan-index.sh": "47836bec",
182
183
  "core/scripts/mcp-server/elicitation/confirm.ts": "924857b8",
183
184
  "core/scripts/mcp-server/elicitation/index.ts": "44c5dc3f",
184
185
  "core/scripts/mcp-server/index.ts": "3483ec45",
185
- "core/scripts/mcp-server/notifications/hitl.ts": "96eb7c5d",
186
- "core/scripts/mcp-server/notifications/hook.ts": "a6cb861f",
186
+ "core/scripts/mcp-server/notifications/hitl.ts": "7b71338a",
187
+ "core/scripts/mcp-server/notifications/hook.ts": "31bc0ffb",
187
188
  "core/scripts/mcp-server/notifications/index.ts": "b6615afa",
188
189
  "core/scripts/mcp-server/resources/add-coder-version.ts": "2384fa40",
189
190
  "core/scripts/mcp-server/resources/add-state.ts": "1c1cc3a2",
190
- "core/scripts/mcp-server/resources/hook-events-report.ts": "1d4b5996",
191
- "core/scripts/mcp-server/resources/index.ts": "50e19629",
191
+ "core/scripts/mcp-server/resources/hitl-approval-widget.ts": "f663610e",
192
+ "core/scripts/mcp-server/resources/hook-events-report.ts": "9b62bacd",
193
+ "core/scripts/mcp-server/resources/index.ts": "d2d723f3",
192
194
  "core/scripts/mcp-server/resources/round-task.ts": "104a0d74",
193
195
  "core/scripts/mcp-server/sampling/index.ts": "7ee26d92",
194
- "core/scripts/mcp-server/sampling/review.ts": "5db7a8df",
195
- "core/scripts/mcp-server/shared/db-types.ts": "299915ee",
196
- "core/scripts/mcp-server/shared/dps-scoring.strategy.ts": "f1c901dc",
197
- "core/scripts/mcp-server/shared/env.ts": "57f4c2f2",
198
- "core/scripts/mcp-server/shared/fs.ts": "0e66a214",
199
- "core/scripts/mcp-server/shared/hitl-interaction.strategy.ts": "7c5c26f5",
196
+ "core/scripts/mcp-server/sampling/review.ts": "dd6e22ff",
197
+ "core/scripts/mcp-server/shared/db-types.ts": "bd97e8b6",
198
+ "core/scripts/mcp-server/shared/dps-scoring.strategy.ts": "92ecf32b",
199
+ "core/scripts/mcp-server/shared/env.ts": "f79ab09c",
200
+ "core/scripts/mcp-server/shared/fs.ts": "be216ce3",
201
+ "core/scripts/mcp-server/shared/hitl-interaction.strategy.ts": "dcfe946f",
202
+ "core/scripts/mcp-server/shared/hitl-lifecycle-mutation.ts": "06952c62",
203
+ "core/scripts/mcp-server/shared/hitl-proposal-mutation.ts": "87a7a372",
204
+ "core/scripts/mcp-server/shared/hitl-ui.ts": "51d574f2",
200
205
  "core/scripts/mcp-server/shared/package.json": "e3d5a4a2",
201
- "core/scripts/mcp-server/shared/prisma.ts": "a9618f99",
202
- "core/scripts/mcp-server/shared/project-root-strategy.ts": "1a5bdc57",
203
- "core/scripts/mcp-server/shared/response.ts": "f7806b67",
206
+ "core/scripts/mcp-server/shared/plan-lifecycle-events.ts": "ae99b9a0",
207
+ "core/scripts/mcp-server/shared/plan-lifecycle-mutation.ts": "303d9674",
208
+ "core/scripts/mcp-server/shared/plan-lifecycle-subscriber.ts": "1b1c2b84",
209
+ "core/scripts/mcp-server/shared/plan-lifecycle.ts": "6a49ff4d",
210
+ "core/scripts/mcp-server/shared/plan-round-events.ts": "86b6ba3f",
211
+ "core/scripts/mcp-server/shared/plan-round-mutation.ts": "c058e930",
212
+ "core/scripts/mcp-server/shared/plan-round-store.ts": "bc28bd09",
213
+ "core/scripts/mcp-server/shared/plan-round-subscriber.ts": "43fcf257",
214
+ "core/scripts/mcp-server/shared/plan-status-store.ts": "5b7bcfd2",
215
+ "core/scripts/mcp-server/shared/plan-tracking-mutation.ts": "2fd19676",
216
+ "core/scripts/mcp-server/shared/prisma.ts": "9be3b5bf",
217
+ "core/scripts/mcp-server/shared/project-root-strategy.ts": "8dde9bf3",
218
+ "core/scripts/mcp-server/shared/quant-recheck.strategy.ts": "12211d20",
219
+ "core/scripts/mcp-server/shared/redact.ts": "22e008aa",
220
+ "core/scripts/mcp-server/shared/response.ts": "0d1539a8",
204
221
  "core/scripts/mcp-server/shared/run-command.ts": "42caf972",
222
+ "core/scripts/mcp-server/shared/runtime-context.ts": "51d0b45f",
223
+ "core/scripts/mcp-server/shared/schema-topology.ts": "a680b738",
205
224
  "core/scripts/mcp-server/tasks/index.ts": "c040eb75",
206
225
  "core/scripts/mcp-server/tasks/runner.ts": "d84bd35d",
207
226
  "core/scripts/mcp-server/tasks/store.ts": "2fce1a92",
208
- "core/scripts/mcp-server/tools/audit.ts": "8564e46f",
209
- "core/scripts/mcp-server/tools/context.ts": "99a2ac03",
210
- "core/scripts/mcp-server/tools/contract.ts": "93dea040",
227
+ "core/scripts/mcp-server/tools/audit.ts": "705292b3",
228
+ "core/scripts/mcp-server/tools/context.ts": "d7d4e546",
229
+ "core/scripts/mcp-server/tools/contract.ts": "14b6ab8f",
211
230
  "core/scripts/mcp-server/tools/docs.ts": "034e473c",
212
231
  "core/scripts/mcp-server/tools/gateway/check_add_route_completeness.ts": "b58e76ee",
213
- "core/scripts/mcp-server/tools/gateway/check_add_route_status.ts": "23fbbb6b",
214
- "core/scripts/mcp-server/tools/gateway/check_dps.ts": "4d599b38",
215
- "core/scripts/mcp-server/tools/gateway/check_rahs.ts": "4078b0f1",
216
- "core/scripts/mcp-server/tools/gateway/check_spec_sync.ts": "486df441",
232
+ "core/scripts/mcp-server/tools/gateway/check_add_route_status.ts": "4caf552c",
233
+ "core/scripts/mcp-server/tools/gateway/check_doc_similarity.ts": "2cba51c5",
234
+ "core/scripts/mcp-server/tools/gateway/check_dps.ts": "92020f8e",
235
+ "core/scripts/mcp-server/tools/gateway/check_rahs.ts": "71f74ba6",
236
+ "core/scripts/mcp-server/tools/gateway/check_spec_sync.ts": "560a88ad",
217
237
  "core/scripts/mcp-server/tools/gateway/helpers.ts": "f8794a92",
218
- "core/scripts/mcp-server/tools/gateway/index.ts": "559acb75",
238
+ "core/scripts/mcp-server/tools/gateway/index.ts": "cffe9783",
219
239
  "core/scripts/mcp-server/tools/gateway.backup": "65eae393",
220
- "core/scripts/mcp-server/tools/hitl.ts": "d61277f5",
221
- "core/scripts/mcp-server/tools/hook-event-report.ts": "3f21836e",
222
- "core/scripts/mcp-server/tools/index.ts": "884172ba",
223
- "core/scripts/mcp-server/tools/plan.ts": "8ce5a7ab",
240
+ "core/scripts/mcp-server/tools/hitl.ts": "04b6b807",
241
+ "core/scripts/mcp-server/tools/hook-event-report.ts": "1d825b3f",
242
+ "core/scripts/mcp-server/tools/index.ts": "443128c8",
243
+ "core/scripts/mcp-server/tools/plan.ts": "b38bbccc",
224
244
  "core/scripts/mcp-server/tools/quality.ts": "c4634453",
225
245
  "core/scripts/mcp-server/tools/registrar.ts": "efd81b3a",
226
- "core/scripts/mcp-server/tools/review.ts": "52d78450",
246
+ "core/scripts/mcp-server/tools/review.ts": "65c35e31",
227
247
  "core/scripts/mcp-server/types.ts": "6c5e60bc",
228
- "core/scripts/mcp-server.ts": "99cc6833",
229
- "core/skills/add-paradigm/SKILL.md": "5d4fa389",
248
+ "core/scripts/mcp-server.ts": "0c9b0666",
249
+ "core/scripts/plan-status-bridge.ts": "70c5d8b7",
250
+ "core/skills/add-paradigm/SKILL.md": "55df369a",
230
251
  "core/skills/session-init/SKILL.md": "bb1205b0",
231
252
  "core/specs/add-coder-npm-package/checklist.md": "ed92032c",
232
253
  "core/specs/add-coder-npm-package/spec.md": "c7d0f235",
@@ -235,18 +256,20 @@
235
256
  "core/templates/TERMINOLOGY.md": "e9f4f781",
236
257
  "core/templates/add-route-template-heavyweight.md": "0e107ac0",
237
258
  "core/templates/add-route-template.md": "da7022df",
238
- "core/templates/add-route-template.schema.json": "867a45c1",
259
+ "core/templates/add-route-template.schema.json": "cca77a6e",
239
260
  "core/templates/checklist-template.md": "d6b73a5c",
240
261
  "core/templates/checklist-template.schema.json": "fb3a73e8",
241
- "core/templates/collab-contract-template.md": "bccba0fd",
262
+ "core/templates/collab-contract-template.md": "b8a52503",
242
263
  "core/templates/collab-contract-template.schema.json": "ae0f482c",
243
264
  "core/templates/fix-verification-template.md": "9c9ed175",
244
265
  "core/templates/fix-verification-template.schema.json": "a18bc6a5",
245
266
  "core/templates/handoff-multi-round-template.md": "d3a2375d",
267
+ "core/templates/handoff-multi-round-template.schema.json": "c752a9dc",
246
268
  "core/templates/handoff-multi-round.schema.json": "abed4220",
247
269
  "core/templates/handoff-single-round-template.md": "dceb7c86",
248
- "core/templates/handoff-single-round.schema.json": "0627cda2",
249
- "core/templates/hitl-approval-widget.html": "b31f3d0f",
270
+ "core/templates/handoff-single-round-template.schema.json": "201f8b5c",
271
+ "core/templates/handoff-single-round.schema.json": "19486507",
272
+ "core/templates/hitl-approval-widget.html": "7045227d",
250
273
  "core/templates/hitl-template.md": "44989804",
251
274
  "core/templates/hitl-template.schema.json": "e7ecc53e",
252
275
  "core/templates/index.md": "0fb42ea5",
@@ -268,11 +291,11 @@
268
291
  "core/templates/simple-plan-template.md": "5b2d8dd6",
269
292
  "core/templates/simple-plan-template.schema.json": "02718806",
270
293
  "core/templates/spec-template.md": "619b01cc",
271
- "core/templates/spec-template.schema.json": "051b6e5d",
294
+ "core/templates/spec-template.schema.json": "9e5d530b",
272
295
  "core/templates/standard-plan-template.md": "7beafc59",
273
- "core/templates/standard-plan-template.schema.json": "ca2bbb11",
296
+ "core/templates/standard-plan-template.schema.json": "95dc6e03",
274
297
  "core/templates/tasks-template.md": "2b9d0d52",
275
- "core/templates/tasks-template.schema.json": "fff6eb47",
298
+ "core/templates/tasks-template.schema.json": "2e691c8a",
276
299
  "core/tools/README.md": "26a63460",
277
300
  "core/vocabulary/add-governance-vocabulary.md": "ee9e2bd2",
278
301
  "shared/hooks-lib/common.sh": "441eee52"