@warpgogol/forge 5.3.3 → 6.0.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 (282) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/bin/cli.ts +7 -2
  3. package/dist/bin/cli.js +7 -2
  4. package/dist/bin/cli.js.map +1 -1
  5. package/dist/os/adr/adr.module.d.ts.map +1 -1
  6. package/dist/os/adr/adr.module.js +2 -0
  7. package/dist/os/adr/adr.module.js.map +1 -1
  8. package/dist/os/audit/audit.module.d.ts.map +1 -1
  9. package/dist/os/audit/audit.module.js +2 -0
  10. package/dist/os/audit/audit.module.js.map +1 -1
  11. package/dist/os/compass/compass.module.d.ts.map +1 -1
  12. package/dist/os/compass/compass.module.js +48 -16
  13. package/dist/os/compass/compass.module.js.map +1 -1
  14. package/dist/os/compass/handlers/compass-audit-handler.d.ts +2 -0
  15. package/dist/os/compass/handlers/compass-audit-handler.d.ts.map +1 -1
  16. package/dist/os/compass/handlers/compass-audit-handler.js +39 -9
  17. package/dist/os/compass/handlers/compass-audit-handler.js.map +1 -1
  18. package/dist/os/compass/handlers/compass-docs-validate.d.ts +13 -0
  19. package/dist/os/compass/handlers/compass-docs-validate.d.ts.map +1 -0
  20. package/dist/os/compass/handlers/compass-docs-validate.js +326 -0
  21. package/dist/os/compass/handlers/compass-docs-validate.js.map +1 -0
  22. package/dist/os/compass/handlers/compass-inventory.d.ts.map +1 -1
  23. package/dist/os/compass/handlers/compass-inventory.js +5 -2
  24. package/dist/os/compass/handlers/compass-inventory.js.map +1 -1
  25. package/dist/os/compass/handlers/summary-record.d.ts +17 -3
  26. package/dist/os/compass/handlers/summary-record.d.ts.map +1 -1
  27. package/dist/os/compass/handlers/summary-record.js +107 -10
  28. package/dist/os/compass/handlers/summary-record.js.map +1 -1
  29. package/dist/os/compass/handlers/tests/forge-yaml-fixture.d.ts +18 -0
  30. package/dist/os/compass/handlers/tests/forge-yaml-fixture.d.ts.map +1 -0
  31. package/dist/os/compass/handlers/tests/forge-yaml-fixture.js +64 -0
  32. package/dist/os/compass/handlers/tests/forge-yaml-fixture.js.map +1 -0
  33. package/dist/os/compass/policy.d.ts +6 -1
  34. package/dist/os/compass/policy.d.ts.map +1 -1
  35. package/dist/os/compass/policy.js +8 -2
  36. package/dist/os/compass/policy.js.map +1 -1
  37. package/dist/os/core/core.module.d.ts.map +1 -1
  38. package/dist/os/core/core.module.js +124 -73
  39. package/dist/os/core/core.module.js.map +1 -1
  40. package/dist/os/exploration/exploration.module.d.ts.map +1 -1
  41. package/dist/os/exploration/exploration.module.js +3 -0
  42. package/dist/os/exploration/exploration.module.js.map +1 -1
  43. package/dist/os/mission/handlers/archive.d.ts.map +1 -1
  44. package/dist/os/mission/handlers/archive.js +1 -2
  45. package/dist/os/mission/handlers/archive.js.map +1 -1
  46. package/dist/os/naming/naming.module.d.ts.map +1 -1
  47. package/dist/os/naming/naming.module.js +9 -2
  48. package/dist/os/naming/naming.module.js.map +1 -1
  49. package/dist/os/notes/notes.module.d.ts.map +1 -1
  50. package/dist/os/notes/notes.module.js +17 -6
  51. package/dist/os/notes/notes.module.js.map +1 -1
  52. package/dist/os/plan/plan.module.d.ts.map +1 -1
  53. package/dist/os/plan/plan.module.js +2 -0
  54. package/dist/os/plan/plan.module.js.map +1 -1
  55. package/dist/os/plugin/plugin.module.d.ts.map +1 -1
  56. package/dist/os/plugin/plugin.module.js +9 -2
  57. package/dist/os/plugin/plugin.module.js.map +1 -1
  58. package/dist/os/program/program.module.d.ts.map +1 -1
  59. package/dist/os/program/program.module.js +19 -4
  60. package/dist/os/program/program.module.js.map +1 -1
  61. package/dist/os/queue/handlers/queue-validate.d.ts.map +1 -1
  62. package/dist/os/queue/handlers/queue-validate.js +154 -7
  63. package/dist/os/queue/handlers/queue-validate.js.map +1 -1
  64. package/dist/os/queue/manifest.d.ts +17 -1
  65. package/dist/os/queue/manifest.d.ts.map +1 -1
  66. package/dist/os/queue/manifest.js +127 -6
  67. package/dist/os/queue/manifest.js.map +1 -1
  68. package/dist/os/queue/queue.module.d.ts.map +1 -1
  69. package/dist/os/queue/queue.module.js +32 -4
  70. package/dist/os/queue/queue.module.js.map +1 -1
  71. package/dist/os/queue/types.d.ts +100 -1
  72. package/dist/os/queue/types.d.ts.map +1 -1
  73. package/dist/os/queue/types.js +44 -0
  74. package/dist/os/queue/types.js.map +1 -1
  75. package/dist/os/rfc/handlers/implement-stamp.d.ts.map +1 -1
  76. package/dist/os/rfc/handlers/implement-stamp.js +28 -5
  77. package/dist/os/rfc/handlers/implement-stamp.js.map +1 -1
  78. package/dist/os/rfc/handlers/validate.js +1 -1
  79. package/dist/os/rfc/rfc.module.d.ts.map +1 -1
  80. package/dist/os/rfc/rfc.module.js +27 -3
  81. package/dist/os/rfc/rfc.module.js.map +1 -1
  82. package/dist/os/rfc/types.d.ts +11 -0
  83. package/dist/os/rfc/types.d.ts.map +1 -1
  84. package/dist/os/rfc/types.js +1 -0
  85. package/dist/os/rfc/types.js.map +1 -1
  86. package/dist/os/rfc/verification-evidence.d.ts +21 -0
  87. package/dist/os/rfc/verification-evidence.d.ts.map +1 -1
  88. package/dist/os/rfc/verification-evidence.js +140 -23
  89. package/dist/os/rfc/verification-evidence.js.map +1 -1
  90. package/dist/os/rfc/verification-refresh.d.ts.map +1 -1
  91. package/dist/os/rfc/verification-refresh.js +72 -37
  92. package/dist/os/rfc/verification-refresh.js.map +1 -1
  93. package/dist/os/session/handlers/save.d.ts.map +1 -1
  94. package/dist/os/session/handlers/save.js +46 -5
  95. package/dist/os/session/handlers/save.js.map +1 -1
  96. package/dist/os/session/session.module.d.ts.map +1 -1
  97. package/dist/os/session/session.module.js +5 -0
  98. package/dist/os/session/session.module.js.map +1 -1
  99. package/dist/os/spec/live-spec-merge.d.ts.map +1 -1
  100. package/dist/os/spec/live-spec-merge.js +55 -134
  101. package/dist/os/spec/live-spec-merge.js.map +1 -1
  102. package/dist/os/spec/live-spec-rebuild.d.ts +32 -0
  103. package/dist/os/spec/live-spec-rebuild.d.ts.map +1 -0
  104. package/dist/os/spec/live-spec-rebuild.js +272 -0
  105. package/dist/os/spec/live-spec-rebuild.js.map +1 -0
  106. package/dist/os/spec/live-spec-shared.d.ts +62 -0
  107. package/dist/os/spec/live-spec-shared.d.ts.map +1 -0
  108. package/dist/os/spec/live-spec-shared.js +315 -0
  109. package/dist/os/spec/live-spec-shared.js.map +1 -0
  110. package/dist/os/spec/live-spec-types.d.ts +17 -1
  111. package/dist/os/spec/live-spec-types.d.ts.map +1 -1
  112. package/dist/os/spec/live-spec-types.js +3 -0
  113. package/dist/os/spec/live-spec-types.js.map +1 -1
  114. package/dist/os/spec/live-spec-validate.d.ts.map +1 -1
  115. package/dist/os/spec/live-spec-validate.js +105 -2
  116. package/dist/os/spec/live-spec-validate.js.map +1 -1
  117. package/dist/os/spec/spec-materialize.d.ts +2 -0
  118. package/dist/os/spec/spec-materialize.d.ts.map +1 -1
  119. package/dist/os/spec/spec-materialize.js +45 -5
  120. package/dist/os/spec/spec-materialize.js.map +1 -1
  121. package/dist/os/spec/spec-schema.d.ts +19 -0
  122. package/dist/os/spec/spec-schema.d.ts.map +1 -1
  123. package/dist/os/spec/spec-schema.js +30 -0
  124. package/dist/os/spec/spec-schema.js.map +1 -1
  125. package/dist/os/spec/spec-status.d.ts +4 -0
  126. package/dist/os/spec/spec-status.d.ts.map +1 -1
  127. package/dist/os/spec/spec-status.js +19 -1
  128. package/dist/os/spec/spec-status.js.map +1 -1
  129. package/dist/os/spec/spec-validate.d.ts.map +1 -1
  130. package/dist/os/spec/spec-validate.js +55 -8
  131. package/dist/os/spec/spec-validate.js.map +1 -1
  132. package/dist/os/spec/spec.module.d.ts.map +1 -1
  133. package/dist/os/spec/spec.module.js +84 -8
  134. package/dist/os/spec/spec.module.js.map +1 -1
  135. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.d.ts.map +1 -1
  136. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.js +10 -4
  137. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.js.map +1 -1
  138. package/dist/os/werkstatt/werkstatt.module.d.ts.map +1 -1
  139. package/dist/os/werkstatt/werkstatt.module.js +13 -4
  140. package/dist/os/werkstatt/werkstatt.module.js.map +1 -1
  141. package/dist/os/workflow/workflow.module.d.ts.map +1 -1
  142. package/dist/os/workflow/workflow.module.js +13 -5
  143. package/dist/os/workflow/workflow.module.js.map +1 -1
  144. package/dist/src/cli-flags.d.ts.map +1 -1
  145. package/dist/src/cli-flags.js +25 -5
  146. package/dist/src/cli-flags.js.map +1 -1
  147. package/dist/src/config/forge-config.d.ts +24 -3
  148. package/dist/src/config/forge-config.d.ts.map +1 -1
  149. package/dist/src/config/forge-config.js +38 -7
  150. package/dist/src/config/forge-config.js.map +1 -1
  151. package/dist/src/onboarding/create.d.ts.map +1 -1
  152. package/dist/src/onboarding/create.js +26 -10
  153. package/dist/src/onboarding/create.js.map +1 -1
  154. package/dist/src/onboarding/doctor.d.ts.map +1 -1
  155. package/dist/src/onboarding/doctor.js +49 -2
  156. package/dist/src/onboarding/doctor.js.map +1 -1
  157. package/dist/src/onboarding/init.d.ts.map +1 -1
  158. package/dist/src/onboarding/init.js +8 -3
  159. package/dist/src/onboarding/init.js.map +1 -1
  160. package/dist/src/onboarding/upgrade.d.ts.map +1 -1
  161. package/dist/src/onboarding/upgrade.js +24 -8
  162. package/dist/src/onboarding/upgrade.js.map +1 -1
  163. package/dist/src/pipeline-status.d.ts +14 -1
  164. package/dist/src/pipeline-status.d.ts.map +1 -1
  165. package/dist/src/pipeline-status.js +28 -8
  166. package/dist/src/pipeline-status.js.map +1 -1
  167. package/dist/src/types.d.ts +7 -1
  168. package/dist/src/types.d.ts.map +1 -1
  169. package/dist/src/types.js +6 -0
  170. package/dist/src/types.js.map +1 -1
  171. package/dist/src/utils/generated-marker.d.ts +8 -0
  172. package/dist/src/utils/generated-marker.d.ts.map +1 -1
  173. package/dist/src/utils/generated-marker.js +25 -0
  174. package/dist/src/utils/generated-marker.js.map +1 -1
  175. package/dist/src/validators/skill-validate.d.ts.map +1 -1
  176. package/dist/src/validators/skill-validate.js +42 -15
  177. package/dist/src/validators/skill-validate.js.map +1 -1
  178. package/os/adr/adr.module.ts +2 -0
  179. package/os/audit/audit.module.ts +2 -0
  180. package/os/compass/compass.module.ts +50 -16
  181. package/os/compass/handlers/compass-audit-handler.ts +50 -9
  182. package/os/compass/handlers/compass-docs-validate.ts +359 -0
  183. package/os/compass/handlers/compass-inventory.ts +6 -3
  184. package/os/compass/handlers/summary-record.ts +118 -10
  185. package/os/compass/handlers/tests/compass-audit-record.test.ts +2 -1
  186. package/os/compass/handlers/tests/compass-audit-validate.test.ts +92 -3
  187. package/os/compass/handlers/tests/compass-docs-validate.test.ts +203 -0
  188. package/os/compass/handlers/tests/compass-ledger-scope.test.ts +2 -1
  189. package/os/compass/handlers/tests/compass-policy.test.ts +15 -18
  190. package/os/compass/handlers/tests/compass-v2-contract.test.ts +38 -0
  191. package/os/compass/handlers/tests/forge-yaml-fixture.ts +69 -0
  192. package/os/compass/handlers/tests/summary-record.test.ts +152 -0
  193. package/os/compass/policy.ts +8 -2
  194. package/os/core/core.module.ts +147 -75
  195. package/os/core/docs-archive.test.ts +136 -0
  196. package/os/exploration/exploration.module.ts +3 -0
  197. package/os/mission/handlers/archive.ts +1 -2
  198. package/os/naming/naming.module.ts +9 -2
  199. package/os/notes/notes.module.ts +17 -6
  200. package/os/plan/plan-0000-template.md +150 -0
  201. package/os/plan/plan.module.ts +2 -0
  202. package/os/plugin/plugin.module.ts +9 -2
  203. package/os/program/program.module.ts +19 -4
  204. package/os/queue/decision-ledger.test.ts +163 -0
  205. package/os/queue/handlers/queue-validate.ts +190 -8
  206. package/os/queue/manifest.ts +201 -7
  207. package/os/queue/queue-validate.test.ts +303 -0
  208. package/os/queue/queue.module.ts +32 -4
  209. package/os/queue/types.ts +56 -1
  210. package/os/rfc/handlers/implement-stamp.ts +35 -5
  211. package/os/rfc/handlers/validate.ts +1 -1
  212. package/os/rfc/rfc.module.ts +29 -3
  213. package/os/rfc/types.ts +17 -1
  214. package/os/rfc/verification-emit.test.ts +305 -0
  215. package/os/rfc/verification-evidence.ts +155 -24
  216. package/os/rfc/verification-refresh.test.ts +222 -1
  217. package/os/rfc/verification-refresh.ts +80 -38
  218. package/os/session/handlers/save.ts +41 -5
  219. package/os/session/session.module.ts +5 -0
  220. package/os/spec/live-spec-idempotency.pbt.test.ts +222 -0
  221. package/os/spec/live-spec-list-show-validate.test.ts +10 -6
  222. package/os/spec/live-spec-merge.test.ts +187 -7
  223. package/os/spec/live-spec-merge.ts +71 -155
  224. package/os/spec/live-spec-rebuild.test.ts +317 -0
  225. package/os/spec/live-spec-rebuild.ts +356 -0
  226. package/os/spec/live-spec-shared.ts +378 -0
  227. package/os/spec/live-spec-types.ts +21 -1
  228. package/os/spec/live-spec-validate.test.ts +317 -0
  229. package/os/spec/live-spec-validate.ts +106 -2
  230. package/os/spec/spec-materialize.test.ts +192 -0
  231. package/os/spec/spec-materialize.ts +48 -4
  232. package/os/spec/spec-schema.ts +49 -0
  233. package/os/spec/spec-status.ts +24 -0
  234. package/os/spec/spec-validate.test.ts +66 -0
  235. package/os/spec/spec-validate.ts +62 -8
  236. package/os/spec/spec.module.ts +85 -8
  237. package/os/werkstatt/handlers/werkstatt-operation-validate.ts +10 -4
  238. package/os/werkstatt/werkstatt.module.ts +13 -4
  239. package/os/workflow/workflow.module.ts +13 -5
  240. package/package.json +1 -1
  241. package/skills/_shared/fo-pipeline-conventions.md +126 -1
  242. package/skills/fo/fo-compass-annotate/SKILL.md +1 -1
  243. package/skills/fo/fo-doc-audit/SKILL.md +4 -4
  244. package/skills/fo/fo-explore/SKILL.md +2 -1
  245. package/skills/fo/fo-fix/SKILL.md +11 -3
  246. package/skills/fo/fo-handoff/SKILL.md +6 -8
  247. package/skills/fo/fo-idea-audit/SKILL.md +1 -1
  248. package/skills/fo/fo-idea-create-rfc/SKILL.md +3 -2
  249. package/skills/fo/fo-idea-enhance/SKILL.md +23 -4
  250. package/skills/fo/fo-idea-i-just-want-to-see-the-result/SKILL.md +86 -22
  251. package/skills/fo/fo-idea-implement/SKILL.md +57 -13
  252. package/skills/fo/fo-idea-plan/SKILL.md +28 -6
  253. package/skills/fo/fo-review/SKILL.md +69 -8
  254. package/skills/fo/fo-session-retro/SKILL.md +4 -3
  255. package/skills/fo/fo-session-save/SKILL.md +1 -1
  256. package/skills/fo/fo-step-commit/SKILL.md +2 -0
  257. package/skills/shared/grilling/SKILL.md +12 -0
  258. package/skills/shared/writing-great-skills/GLOSSARY.md +2 -0
  259. package/skills/shared/writing-great-skills/SKILL.md +2 -1
  260. package/src/cli-flags.ts +23 -5
  261. package/src/config/forge-config.ts +106 -57
  262. package/src/onboarding/create.ts +25 -9
  263. package/src/onboarding/doctor.ts +51 -2
  264. package/src/onboarding/init.ts +8 -3
  265. package/src/onboarding/upgrade.ts +36 -6
  266. package/src/pipeline-status.ts +32 -8
  267. package/src/tests/bindings-schema.test.ts +53 -1
  268. package/src/tests/cli-flags.test.ts +20 -0
  269. package/src/tests/cli-output.test.ts +13 -7
  270. package/src/tests/doctor-bindings.test.ts +7 -2
  271. package/src/tests/doctor-skills-unmanaged.test.ts +145 -0
  272. package/src/tests/fixtures/agents-generate-business-before.txt +7 -7
  273. package/src/tests/forge-config.test.ts +106 -2
  274. package/src/tests/implement-stamp.test.ts +38 -0
  275. package/src/tests/session-handlers.test.ts +33 -0
  276. package/src/tests/skill-validate.test.ts +180 -0
  277. package/src/tests/upgrade.test.ts +60 -0
  278. package/src/types.ts +13 -1
  279. package/src/utils/generated-marker.ts +28 -0
  280. package/src/validators/skill-validate.ts +43 -16
  281. package/skills/fo/fo-idea-implement/ADR-FLOW.md +0 -179
  282. package/skills/fo/fo-review/AXES.md +0 -70
@@ -15,7 +15,6 @@ items to CHANGE_SUMMARY blocks per RFC-1095. Collapses the 5-item window into
15
15
  <item>Item text is sanitized on record — literal Compass tags would corrupt history parsing.</item>
16
16
  </KEY_DECISIONS>
17
17
  <CHANGE_SUMMARY>
18
- <item>RFC-1095: header-region guard in summary.record, restore test fixture with dynamic tags</item>
19
18
  <item>RFC-1097: steps 1-4 — compass.migrate codemod
20
19
 
21
20
  Add the v1 to v2 Compass header codemod: migrateFile pure transform (collapse, strip, seed, reorder, purpose-flag actions), migrateWorkspace walker, runCompassMigrate handler with dirty-tree refusal and --force/--files/--dry-run flags, module registration, and 15 unit tests.</item>
@@ -28,10 +27,13 @@ Sweep batch 4: 73 Compass headers on headerless engine files (certification, com
28
27
  <item>RFC-1097: AC-4 banned literal in os/compass handlers
29
28
 
30
29
  compass-migrate-handler hint used a consumer-specific run command — switched to generic 'pnpm exec forge run' convention. Reworded recorded CHANGE_SUMMARY items in 3 handlers to drop the consumer-specific literal. compass-policy AC-4 test green (65/65).</item>
30
+ <item>RFC-1220: step 2 — fail-closed guards in history paths</item>
31
+ <item>RFC-1233: stripGitTrailers at the record point + sanitizeItemText star-slash guard — commit-message trailers (Token: value / Token #value, plus markdown-link attribution lines like "Generated with [X](url)") no longer pollute injected items.</item>
32
+ <item>Session-retro 2026-10-08: id-in-diff dedup — auto-inject skips when the worktree diff already carries a same-ID item (HEAD-vs-worktree via git show HEAD:path), closing the descriptive+generic duplicate class seen on RFC-1237.</item>
31
33
  <history>RFC-1095</history>
32
34
  </CHANGE_SUMMARY>
33
35
  */
34
- import { existsSync } from "../../../src/utils/sync-fs.js";
36
+ import { execFile, existsSync } from "../../../src/utils/sync-fs.js";
35
37
  import { ambientIo, resolveIo } from "../../../src/utils/io.js";
36
38
  import { resolve, relative } from "node:path";
37
39
  import { detectRiskClass, getWorkspaceRelativeSegments } from "./compass-inventory.js";
@@ -73,15 +75,24 @@ function leadingGovernanceId(item, policy) {
73
75
  const match = item.match(policy.idPattern);
74
76
  return match && match.index === 0 ? match[0] : null;
75
77
  }
76
- /** Merge existing + new history IDs: dedupe, per-namespace ascending numeric order. */
78
+ /**
79
+ * Merge existing + new history IDs: dedupe, per-namespace ascending numeric order.
80
+ * Tokens that pass `idPatternFull` yet fail `parseGovernanceIdParts` (policy/parser
81
+ * drift) are kept appended after the sorted parseable tokens in encounter order —
82
+ * provenance is preserved and the next `compass.validate` emits CS-07 (RFC-1220).
83
+ */
77
84
  export function mergeHistoryIds(existing, incoming, policy) {
78
85
  const all = [...new Set([...existing, ...incoming])].filter((id) => policy.idPatternFull.test(id));
79
- return all.sort((a, b) => {
80
- const pa = parseGovernanceIdParts(a);
81
- const pb = parseGovernanceIdParts(b);
86
+ const partsById = new Map(all.map((id) => [id, parseGovernanceIdParts(id)]));
87
+ const parseable = all.filter((id) => partsById.get(id) !== null);
88
+ const unparseable = all.filter((id) => partsById.get(id) === null);
89
+ parseable.sort((a, b) => {
90
+ const pa = partsById.get(a);
91
+ const pb = partsById.get(b);
82
92
  const ns = pa.namespace.localeCompare(pb.namespace);
83
93
  return ns !== 0 ? ns : pa.numeric - pb.numeric;
84
94
  });
95
+ return [...parseable, ...unparseable];
85
96
  }
86
97
  export function getLineCommentPrefix(filePath) {
87
98
  if (filePath.endsWith(".gd"))
@@ -108,12 +119,54 @@ export function buildChangeSummaryBlock(items, historyIds, filePath) {
108
119
  export function stripConventionalPrefix(subject) {
109
120
  return subject.replace(CONVENTIONAL_PREFIX_RE, "").trim();
110
121
  }
122
+ // RFC-1233: git-trailer tail block — strict `Token: value` / `Token #value`
123
+ // lines (interpret-trailers shape, empty value allowed), plus lines ending
124
+ // in a markdown link (the observed "Generated with [X](url)" attribution
125
+ // boilerplate has no separator). A link-shaped line is admitted only when
126
+ // the block also contains at least one strict trailer line — a lone link
127
+ // tail is prose.
128
+ const TRAILER_LINE_RE = /^[A-Za-z0-9-]+(:| #)\s*.*$/;
129
+ const MARKDOWN_LINK_TAIL_RE = /^.*\[[^\]]*\]\([^)]+\)\s*$/;
130
+ /**
131
+ * Remove a trailing git-trailer block: the contiguous tail of strict
132
+ * trailer lines and admitted markdown-link lines. A blank line ends the
133
+ * tail paragraph. Returns the message without the block; when the tail
134
+ * holds no strict trailer line the message is returned unchanged.
135
+ */
136
+ export function stripGitTrailers(message) {
137
+ const lines = message.trimEnd().split("\n");
138
+ let start = lines.length;
139
+ let sawStrict = false;
140
+ while (start > 0) {
141
+ const line = lines[start - 1].trim();
142
+ if (line === "")
143
+ break;
144
+ if (TRAILER_LINE_RE.test(line)) {
145
+ sawStrict = true;
146
+ start--;
147
+ }
148
+ else if (MARKDOWN_LINK_TAIL_RE.test(line)) {
149
+ start--;
150
+ }
151
+ else {
152
+ break;
153
+ }
154
+ }
155
+ if (!sawStrict || start === lines.length)
156
+ return message;
157
+ return lines.slice(0, start).join("\n").trimEnd();
158
+ }
111
159
  // Literal Compass block tags inside an item corrupt block parsing — a commit
112
160
  // message saying "collapsed into history" would be matched by HISTORY_RE and
113
161
  // produce phantom non-ID tokens (CS-07). Strip the angle brackets on record.
114
162
  const COMPASS_TAG_LITERAL_RE = /<\/?(?:CHANGE_SUMMARY|MODULE_CONTRACT|KEY_DECISIONS|history|item|purpose|non-goals)>/g;
115
163
  export function sanitizeItemText(text) {
116
- return text.replace(COMPASS_TAG_LITERAL_RE, (tag) => tag.replace(/[<>]/g, ""));
164
+ return (text
165
+ .replace(COMPASS_TAG_LITERAL_RE, (tag) => tag.replace(/[<>]/g, ""))
166
+ // RFC-1233: a literal star-slash sequence would terminate the
167
+ // surrounding block comment when the item lands in /* ... */ headers.
168
+ // ∕ (U+2215) is visually near-identical, idempotent, and never re-forms.
169
+ .replace(/\*\//g, "*\u2215"));
117
170
  }
118
171
  export function isValidGovernanceId(id, policy) {
119
172
  return policy.idPatternFull.test(id);
@@ -121,8 +174,10 @@ export function isValidGovernanceId(id, policy) {
121
174
  /**
122
175
  * Append `ID: text` to one file's CHANGE_SUMMARY and collapse the window.
123
176
  * Returns the outcome; writes the file only when mutated and not dry-run.
177
+ * `headSource` is the file's content at HEAD (when resolvable) — it enables
178
+ * the id-in-diff dedup; pass undefined outside git workspaces.
124
179
  */
125
- export async function recordSummaryItem(absPath, relPath, id, text, dryRun, policy) {
180
+ export async function recordSummaryItem(absPath, relPath, id, text, dryRun, policy, headSource) {
126
181
  const source = await io.readFile(absPath);
127
182
  const blockMatch = source.match(CHANGE_SUMMARY_BLOCK_RE);
128
183
  // Header-region guard: a CHANGE_SUMMARY is a header only when it sits at the
@@ -149,6 +204,21 @@ export async function recordSummaryItem(absPath, relPath, id, text, dryRun, poli
149
204
  if (items.some((item) => normalizeItemText(item) === normalizedNew)) {
150
205
  return { recorded: false, collapsed: false, skipReason: "duplicate" };
151
206
  }
207
+ // A same-ID item already in the worktree but absent from HEAD means the
208
+ // pending change already carries a hand-authored record for this governance
209
+ // ID — the auto-injected subject-derived item would duplicate it at lower
210
+ // specificity (observed 2026-10-08: 27 files carried descriptive + generic
211
+ // RFC-1237 items). HEAD-resident same-ID items do NOT suppress: consecutive
212
+ // commits under one RFC legitimately stack step items.
213
+ if (headSource !== undefined) {
214
+ const headBlock = headSource.match(CHANGE_SUMMARY_BLOCK_RE);
215
+ const headItems = headBlock ? parseChangeSummary(headBlock[0]).items : [];
216
+ const idInWorktree = items.some((item) => leadingGovernanceId(item, policy) === id);
217
+ const idInHead = headItems.some((item) => leadingGovernanceId(item, policy) === id);
218
+ if (idInWorktree && !idInHead) {
219
+ return { recorded: false, collapsed: false, skipReason: "id-in-diff" };
220
+ }
221
+ }
152
222
  const nextItems = [...items, newItem];
153
223
  const collapsedIds = [];
154
224
  while (nextItems.length > CHANGE_SUMMARY_WINDOW) {
@@ -166,6 +236,27 @@ export async function recordSummaryItem(absPath, relPath, id, text, dryRun, poli
166
236
  }
167
237
  return { recorded: true, collapsed };
168
238
  }
239
+ function execGit(cwd, args) {
240
+ return new Promise((resolve) => {
241
+ execFile("git", args, { cwd, timeout: 5000 }, (err, stdout) => {
242
+ resolve(err ? null : stdout);
243
+ });
244
+ });
245
+ }
246
+ /**
247
+ * Read `path`'s content at HEAD — the baseline for the id-in-diff dedup.
248
+ * Returns undefined when the file is untracked or the workspace is not a git
249
+ * repo (the dedup then falls back to exact-text matching only).
250
+ */
251
+ async function readHeadSource(gitTop, absPath) {
252
+ if (!gitTop)
253
+ return undefined;
254
+ const rel = relative(gitTop, absPath).replace(/\\/g, "/");
255
+ if (rel === "" || rel.startsWith(".."))
256
+ return undefined;
257
+ const source = await execGit(gitTop, ["show", `HEAD:${rel}`]);
258
+ return source ?? undefined;
259
+ }
169
260
  function riskReminderNeeded(relPath, source, policy) {
170
261
  const segments = relPath.split("/").filter(Boolean);
171
262
  const workspaceRel = getWorkspaceRelativeSegments(segments, policy).join("/");
@@ -189,7 +280,10 @@ export async function runCompassSummaryRecord(input, context) {
189
280
  ? rawFiles.split(/\s+/).filter(Boolean)
190
281
  : [];
191
282
  const rawText = input.flags["text"];
192
- const text = typeof rawText === "string" && rawText.trim().length > 0 ? rawText.trim() : id;
283
+ // RFC-1233: strip the git-trailer block at the single injection point —
284
+ // ecosystem.commit and mission.git.commit both pipe the raw message here.
285
+ const stripped = typeof rawText === "string" ? stripGitTrailers(rawText).trim() : "";
286
+ const text = stripped.length > 0 ? stripped : id;
193
287
  const result = {
194
288
  command: "compass.summary.record",
195
289
  status: "pass",
@@ -198,6 +292,8 @@ export async function runCompassSummaryRecord(input, context) {
198
292
  skipped: [],
199
293
  keyDecisionsReminders: [],
200
294
  };
295
+ const gitTopRaw = await execGit(baseRoot, ["rev-parse", "--show-toplevel"]);
296
+ const gitTop = gitTopRaw?.trim() || null;
201
297
  for (const file of files) {
202
298
  const absPath = resolve(baseRoot, file);
203
299
  const relPath = relative(baseRoot, absPath).replace(/\\/g, "/");
@@ -207,7 +303,8 @@ export async function runCompassSummaryRecord(input, context) {
207
303
  continue;
208
304
  }
209
305
  try {
210
- const outcome = await recordSummaryItem(absPath, relPath, id, text, context.dryRun, policy);
306
+ const headSource = await readHeadSource(gitTop, absPath);
307
+ const outcome = await recordSummaryItem(absPath, relPath, id, text, context.dryRun, policy, headSource);
211
308
  if (outcome.skipReason) {
212
309
  result.skipped.push({ file, reason: outcome.skipReason });
213
310
  continue;
@@ -1 +1 @@
1
- {"version":3,"file":"summary-record.js","sourceRoot":"","sources":["../../../../os/compass/handlers/summary-record.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"summary-record.js","sourceRoot":"","sources":["../../../../os/compass/handlers/summary-record.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { type CompassPolicy } from "../../policy.ts";
2
+ /**
3
+ * Minimal schema-valid forge.yaml body. `paths:` is REQUIRED — a fixture
4
+ * without it fails `loadForgeConfig` schema validation and the resolver
5
+ * silently falls back to generic policy.
6
+ */
7
+ export declare function forgeYaml(bindings: string): string;
8
+ /** Write a minimal forge.yaml into `<dir>/forge.yaml`. */
9
+ export declare function writeForgeYaml(dir: string, bindings: string): void;
10
+ /**
11
+ * Resolve a Compass policy for a fresh temp workspace whose
12
+ * `bindings.compass.idPattern` is the given union. The temp root is tracked —
13
+ * call {@link cleanupForgeYamlFixtures} from an `afterEach`.
14
+ */
15
+ export declare function policyWithIdPattern(idPattern: string): CompassPolicy;
16
+ /** Remove every temp root created by {@link policyWithIdPattern}. */
17
+ export declare function cleanupForgeYamlFixtures(): void;
18
+ //# sourceMappingURL=forge-yaml-fixture.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"forge-yaml-fixture.d.ts","sourceRoot":"","sources":["../../../../../os/compass/handlers/tests/forge-yaml-fixture.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAwB,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAE3E;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAmBlD;AAED,0DAA0D;AAC1D,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAElE;AAID;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,CAKpE;AAED,qEAAqE;AACrE,wBAAgB,wBAAwB,IAAI,IAAI,CAI/C"}
@@ -0,0 +1,64 @@
1
+ /*
2
+ <MODULE_CONTRACT>
3
+ <purpose>Shared forge.yaml fixture helpers for compass tests — one schema-valid minimal workspace shape (bindings placeholder), a sync writer, and a temp-dir policy resolver with tracked cleanup so pattern-specific policy tests never fall back silently to generic defaults or leak mkdtemp roots.</purpose>
4
+ <non-goals>
5
+ <item>Do not build full workspace fixtures — only forge.yaml, created on demand in caller-managed temp dirs.</item>
6
+ </non-goals>
7
+ </MODULE_CONTRACT>
8
+ <CHANGE_SUMMARY>
9
+ <item>RFC-1220: extract shared forge.yaml fixture from triplicated test copies — schema-required paths section included; mkdtemp roots tracked for afterEach cleanup.</item>
10
+ <item>RFC-1220: dedupe auto-stamped CHANGE_SUMMARY item in forge-yaml fixture</item>
11
+ </CHANGE_SUMMARY>
12
+ */
13
+ import { mkdtempSync, writeFileSync, rmSync } from "node:fs";
14
+ import { tmpdir } from "node:os";
15
+ import { join } from "node:path";
16
+ import { resolveCompassPolicy } from "../../policy.js";
17
+ /**
18
+ * Minimal schema-valid forge.yaml body. `paths:` is REQUIRED — a fixture
19
+ * without it fails `loadForgeConfig` schema validation and the resolver
20
+ * silently falls back to generic policy.
21
+ */
22
+ export function forgeYaml(bindings) {
23
+ return `
24
+ schema: forge/config@1
25
+ project:
26
+ name: test-ws
27
+ stack: [typescript]
28
+ packageManager: pnpm
29
+ paths:
30
+ rfcsDir: docs/rfcs
31
+ adrsDir: docs/adrs
32
+ plansDir: docs/plans
33
+ auditsDir: docs/audits
34
+ specsDir: docs/specs
35
+ skillsDir: .agents/skills
36
+ bindings:
37
+ schema: forge/bindings@1
38
+ commands: {}
39
+ paths: {}
40
+ ${bindings}`;
41
+ }
42
+ /** Write a minimal forge.yaml into `<dir>/forge.yaml`. */
43
+ export function writeForgeYaml(dir, bindings) {
44
+ writeFileSync(join(dir, "forge.yaml"), forgeYaml(bindings));
45
+ }
46
+ const patternRoots = [];
47
+ /**
48
+ * Resolve a Compass policy for a fresh temp workspace whose
49
+ * `bindings.compass.idPattern` is the given union. The temp root is tracked —
50
+ * call {@link cleanupForgeYamlFixtures} from an `afterEach`.
51
+ */
52
+ export function policyWithIdPattern(idPattern) {
53
+ const root = mkdtempSync(join(tmpdir(), "compass-pattern-"));
54
+ patternRoots.push(root);
55
+ writeForgeYaml(root, ` compass:\n idPattern: '${idPattern}'`);
56
+ return resolveCompassPolicy(root);
57
+ }
58
+ /** Remove every temp root created by {@link policyWithIdPattern}. */
59
+ export function cleanupForgeYamlFixtures() {
60
+ for (const root of patternRoots.splice(0)) {
61
+ rmSync(root, { recursive: true, force: true });
62
+ }
63
+ }
64
+ //# sourceMappingURL=forge-yaml-fixture.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"forge-yaml-fixture.js","sourceRoot":"","sources":["../../../../../os/compass/handlers/tests/forge-yaml-fixture.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AAEF,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,oBAAoB,EAAsB,MAAM,iBAAiB,CAAC;AAE3E;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,QAAgB;IACxC,OAAO;;;;;;;;;;;;;;;;;EAiBP,QAAQ,EAAE,CAAC;AACb,CAAC;AAED,0DAA0D;AAC1D,MAAM,UAAU,cAAc,CAAC,GAAW,EAAE,QAAgB;IAC1D,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,YAAY,GAAa,EAAE,CAAC;AAElC;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,SAAiB;IACnD,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAC7D,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxB,cAAc,CAAC,IAAI,EAAE,+BAA+B,SAAS,GAAG,CAAC,CAAC;IAClE,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC;AACpC,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,wBAAwB;IACtC,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1C,MAAM,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,CAAC;AACH,CAAC"}
@@ -49,7 +49,12 @@ export declare class CompassPolicyConfigError extends Error {
49
49
  readonly key: string;
50
50
  constructor(key: string, detail: string);
51
51
  }
52
- /** Split a `NAMESPACE-NUMBER` governance ID on its last dash. */
52
+ /**
53
+ * Split a `NAMESPACE-NUMBER` governance ID on its last dash.
54
+ * Mission-format tails (`slug-mNNNNNN`) parse as `{ namespace: slug, numeric: N }`.
55
+ * The `m` stays outside the digit capture — `-(m?\d+)$` would capture `m000175`
56
+ * into the numeric group and produce `NaN` (RFC-1220).
57
+ */
53
58
  export declare function parseGovernanceIdParts(id: string): {
54
59
  namespace: string;
55
60
  numeric: number;
@@ -1 +1 @@
1
- {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../../os/compass/policy.ts"],"names":[],"mappings":"AAqBA,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;AACzD,MAAM,MAAM,oBAAoB,GAAG,KAAK,GAAG,SAAS,GAAG,SAAS,CAAC;AAEjE,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,gBAAgB,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,uEAAuE;IACvE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,qDAAqD;IACrD,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa;IAC5B,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,kBAAkB,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,2EAA2E;IAC3E,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,mEAAmE;IACnE,SAAS,EAAE,MAAM,CAAC;IAClB,2DAA2D;IAC3D,aAAa,EAAE,MAAM,CAAC;IACtB,sDAAsD;IACtD,eAAe,EAAE,MAAM,CAAC;IACxB,0BAA0B,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9C,sEAAsE;IACtE,UAAU,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACxC,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAC/D,wEAAwE;IACxE,aAAa,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAC9C,MAAM,EAAE,mBAAmB,CAAC;IAC5B,4DAA4D;IAC5D,UAAU,CAAC,qBAAqB,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAAC;IACxE,wDAAwD;IACxD,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1C,wDAAwD;IACxD,UAAU,CAAC,qBAAqB,EAAE,MAAM,GAAG,OAAO,CAAC;IACnD,8DAA8D;IAC9D,cAAc,CAAC,qBAAqB,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CACnE;AAED,qBAAa,wBAAyB,SAAQ,KAAK;IACjD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;gBACT,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAKxC;AAsID,iEAAiE;AACjE,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,MAAM,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAIhG;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,aAAa,CAyH7F"}
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../../os/compass/policy.ts"],"names":[],"mappings":"AAsBA,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;AACzD,MAAM,MAAM,oBAAoB,GAAG,KAAK,GAAG,SAAS,GAAG,SAAS,CAAC;AAEjE,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,gBAAgB,CAAC;CACxB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,mBAAmB;IAClC,uEAAuE;IACvE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,qDAAqD;IACrD,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa;IAC5B,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACpC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,kBAAkB,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,2EAA2E;IAC3E,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,mEAAmE;IACnE,SAAS,EAAE,MAAM,CAAC;IAClB,2DAA2D;IAC3D,aAAa,EAAE,MAAM,CAAC;IACtB,sDAAsD;IACtD,eAAe,EAAE,MAAM,CAAC;IACxB,0BAA0B,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9C,sEAAsE;IACtE,UAAU,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACxC,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAC/D,wEAAwE;IACxE,aAAa,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAC9C,MAAM,EAAE,mBAAmB,CAAC;IAC5B,4DAA4D;IAC5D,UAAU,CAAC,qBAAqB,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAAC;IACxE,wDAAwD;IACxD,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC;IAC1C,wDAAwD;IACxD,UAAU,CAAC,qBAAqB,EAAE,MAAM,GAAG,OAAO,CAAC;IACnD,8DAA8D;IAC9D,cAAc,CAAC,qBAAqB,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;CACnE;AAED,qBAAa,wBAAyB,SAAQ,KAAK;IACjD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;gBACT,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAKxC;AAsID;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,MAAM,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAIhG;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,aAAa,CAyH7F"}
@@ -12,6 +12,7 @@ are authored, how risky they are, and what counts as a governance ID
12
12
  </MODULE_CONTRACT>
13
13
  <CHANGE_SUMMARY>
14
14
  <item>RFC-1096: initial policy resolver — generic defaults + profile compass section + bindings.compass overrides.</item>
15
+ <item>RFC-1220: step 1 — widen governance-ID tail regex</item>
15
16
  </CHANGE_SUMMARY>
16
17
  */
17
18
  import picomatch from "picomatch";
@@ -140,9 +141,14 @@ function compilePattern(key, pattern, flags) {
140
141
  throw new CompassPolicyConfigError(key, `not a compilable regex: ${pattern}`);
141
142
  }
142
143
  }
143
- /** Split a `NAMESPACE-NUMBER` governance ID on its last dash. */
144
+ /**
145
+ * Split a `NAMESPACE-NUMBER` governance ID on its last dash.
146
+ * Mission-format tails (`slug-mNNNNNN`) parse as `{ namespace: slug, numeric: N }`.
147
+ * The `m` stays outside the digit capture — `-(m?\d+)$` would capture `m000175`
148
+ * into the numeric group and produce `NaN` (RFC-1220).
149
+ */
144
150
  export function parseGovernanceIdParts(id) {
145
- const match = id.match(/^(.*)-(\d+)$/);
151
+ const match = id.match(/^(.*)-m?(\d+)$/);
146
152
  if (!match)
147
153
  return null;
148
154
  return { namespace: match[1], numeric: Number(match[2]) };
@@ -1 +1 @@
1
- {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../../os/compass/policy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../../os/compass/policy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;EAgBE;AAEF,OAAO,SAAS,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAuDnE,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IACxC,GAAG,CAAS;IACrB,YAAY,GAAW,EAAE,MAAc;QACrC,KAAK,CAAC,gDAAgD,GAAG,MAAM,MAAM,EAAE,CAAC,CAAC;QACzE,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;QACvC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;CACF;AAED,8EAA8E;AAC9E,4EAA4E;AAC5E,wEAAwE;AACxE,+BAA+B;AAC/B,8EAA8E;AAE9E,MAAM,uBAAuB,GAAG;IAC9B,KAAK;IACL,MAAM;IACN,QAAQ;IACR,KAAK;IACL,MAAM;IACN,MAAM;IACN,MAAM;IACN,MAAM;IACN,KAAK;IACL,OAAO;IACP,OAAO;IACP,KAAK;IACL,KAAK;CACN,CAAC;AAEF,MAAM,oBAAoB,GAAG;IAC3B,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,WAAW;IACX,SAAS;IACT,QAAQ;IACR,UAAU;IACV,MAAM;IACN,cAAc;CACf,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;AAEnE,MAAM,qBAAqB,GAAG;IAC5B,SAAS;IACT,cAAc;IACd,cAAc;IACd,cAAc;IACd,cAAc;CACf,CAAC;AAEF,MAAM,kBAAkB,GAAG,8BAA8B,CAAC;AAE1D,MAAM,2BAA2B,GAAG;IAClC,sDAAsD;IACtD,6CAA6C;IAC7C,8BAA8B;CAC/B,CAAC;AAEF,MAAM,mBAAmB,GAAuB;IAC9C,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE;IAChD,EAAE,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE;IAClE,EAAE,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE;IACnE,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC1D,EAAE,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE;IACpE,EAAE,OAAO,EAAE,wBAAwB,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE;IACtE,EAAE,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE;IAC5D,EAAE,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE;IACzD,EAAE,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC9D,EAAE,OAAO,EAAE,gBAAgB,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE;IAC5D,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE;IAC7D,EAAE,OAAO,EAAE,kBAAkB,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE;IAC7D,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE;IAClD,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE;IACvD,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE;IACvD,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE;IACvD,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE;IACnD,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE;CACxD,CAAC;AAEF,MAAM,uBAAuB,GAAyC;IACpE,IAAI,EAAE,KAAK;IACX,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,SAAS;CACpB,CAAC;AAEF,8EAA8E;AAC9E,yEAAyE;AACzE,iFAAiF;AACjF,+DAA+D;AAC/D,+EAA+E;AAC/E,kCAAkC;AAClC,8EAA8E;AAE9E,SAAS,eAAe,CACtB,OAA0B,EAC1B,GAAG,SAA+C;IAElD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;IAChC,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,KAAK,MAAM,IAAI,IAAI,IAAI,IAAI,EAAE,EAAE,CAAC;YAC9B,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC;AACrB,CAAC;AAED,SAAS,kBAAkB,CACzB,OAAuC,EACvC,GAAG,SAA4D;IAE/D,MAAM,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC5C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,KAAK,MAAM,KAAK,IAAI,IAAI,IAAI,EAAE,EAAE,CAAC;YAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAClC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3C,CAAC;iBAAM,CAAC;gBACN,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;AACpF,CAAC;AAED,SAAS,cAAc,CAAC,GAAW,EAAE,OAAe,EAAE,KAAc;IAClE,IAAI,CAAC;QACH,OAAO,IAAI,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,wBAAwB,CAAC,GAAG,EAAE,2BAA2B,OAAO,EAAE,CAAC,CAAC;IAChF,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,EAAU;IAC/C,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACzC,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAE,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC7D,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,aAAqB,EAAE,SAAkB;IAC5E,IAAI,cAAkD,CAAC;IACvD,IAAI,eAAmD,CAAC;IACxD,IAAI,SAAS,GAAkB,IAAI,CAAC;IACpC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,eAAe,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;QACzD,cAAc,GAAG,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC;QACzC,eAAe,GAAG,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC;QAC3C,SAAS,GAAG,MAAM,CAAC,OAAO,EAAE,EAAE,IAAI,IAAI,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACP,4DAA4D;IAC9D,CAAC;IAED,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,MAAM,CAC9D,CAAC,GAAG,EAAE,EAAE,CAAE,eAA2C,CAAC,GAAG,CAAC,KAAK,SAAS,CACzE,CAAC;IAEF,MAAM,cAAc,GAAG,eAAe,CACpC,uBAAuB,EACvB,cAAc,EAAE,cAAc,EAC9B,eAAe,EAAE,cAAc,CAChC,CAAC;IACF,MAAM,YAAY,GAAG,eAAe,CAClC,qBAAqB,EACrB,cAAc,EAAE,YAAY,EAC5B,eAAe,EAAE,YAAY,CAC9B,CAAC;IACF,MAAM,WAAW,GAAG,eAAe,CACjC,oBAAoB,EACpB,cAAc,EAAE,WAAW,EAC3B,eAAe,EAAE,WAAW,CAC7B,CAAC;IACF,MAAM,kBAAkB,GAAG,eAAe,CACxC,EAAE,EACF,cAAc,EAAE,kBAAkB,EAClC,eAAe,EAAE,kBAAkB,CACpC,CAAC;IACF,MAAM,aAAa,GAAG,eAAe,CACnC,EAAE,EACF,cAAc,EAAE,aAAa,EAC7B,eAAe,EAAE,aAAa,CAC/B,CAAC;IACF,MAAM,aAAa,GAAG,kBAAkB,CACtC,EAAE,EACF,cAAc,EAAE,aAAa,EAC7B,eAAe,EAAE,aAAa,CAC/B,CAAC;IACF,MAAM,UAAU,GACd,eAAe,EAAE,UAAU,IAAI,cAAc,EAAE,UAAU,IAAI,mBAAmB,CAAC;IACnF,MAAM,cAAc,GAClB,eAAe,EAAE,cAAc,IAAI,cAAc,EAAE,cAAc,IAAI,uBAAuB,CAAC;IAC/F,MAAM,SAAS,GAAG,eAAe,EAAE,SAAS,IAAI,cAAc,EAAE,SAAS,IAAI,kBAAkB,CAAC;IAEhG,MAAM,YAAY,GAChB,eAAe,EAAE,SAAS,IAAI,cAAc,EAAE,SAAS,IAAI,kBAAkB,CAAC;IAChF,MAAM,SAAS,GAAG,cAAc,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IAC5D,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,wBAAwB,CAChC,WAAW,EACX,wEAAwE,YAAY,EAAE,CACvF,CAAC;IACJ,CAAC;IACD,MAAM,aAAa,GAAG,IAAI,MAAM,CAAC,OAAO,SAAS,CAAC,MAAM,IAAI,CAAC,CAAC;IAC9D,MAAM,eAAe,GAAG,IAAI,MAAM,CAAC,OAAO,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;IAE/D,MAAM,cAAc,GAClB,eAAe,EAAE,0BAA0B;QAC3C,cAAc,EAAE,0BAA0B;QAC1C,2BAA2B,CAAC;IAC9B,uEAAuE;IACvE,MAAM,0BAA0B,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAChE,cAAc,CAAC,4BAA4B,EAAE,OAAO,EAAE,GAAG,CAAC,CAC3D,CAAC;IAEF,MAAM,aAAa,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC9C,IAAI;QACJ,EAAE,EAAE,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;KAC3C,CAAC,CAAC,CAAC;IACJ,MAAM,gBAAgB,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3F,MAAM,YAAY,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACtF,MAAM,gBAAgB,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACrD,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,EAAE,EAAE,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;KAC5C,CAAC,CAAC,CAAC;IAEJ,2EAA2E;IAC3E,yDAAyD;IACzD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,cAAc,EAAE,IAAI,GAAG,CAAC,cAAc,CAAC;QACvC,YAAY;QACZ,SAAS;QACT,WAAW,EAAE,IAAI,GAAG,CAAC,WAAW,CAAC;QACjC,kBAAkB;QAClB,aAAa;QACb,SAAS;QACT,aAAa;QACb,eAAe;QACf,0BAA0B;QAC1B,UAAU;QACV,cAAc;QACd,aAAa;QACb,MAAM,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE;QAC9C,UAAU,CAAC,qBAA6B;YACtC,KAAK,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,aAAa,EAAE,CAAC;gBACzC,IAAI,EAAE,CAAC,qBAAqB,CAAC;oBAAE,OAAO,IAAI,CAAC;YAC7C,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,UAAU,CAAC,YAAoB;YAC7B,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;QACzD,CAAC;QACD,UAAU,CAAC,qBAA6B;YACtC,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAC9D,CAAC;QACD,cAAc,CAAC,qBAA6B;YAC1C,KAAK,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,gBAAgB,EAAE,CAAC;gBAC9C,IAAI,EAAE,CAAC,qBAAqB,CAAC;oBAAE,OAAO,MAAM,CAAC;YAC/C,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"core.module.d.ts","sourceRoot":"","sources":["../../../os/core/core.module.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAiB7D,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,WAAW,CAAC,CA8+BlE"}
1
+ {"version":3,"file":"core.module.d.ts","sourceRoot":"","sources":["../../../os/core/core.module.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAiB7D,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,WAAW,CAAC,CAqjClE"}