@warpgogol/forge 5.2.4 → 5.3.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 (568) hide show
  1. package/AGENTS.md +32 -2
  2. package/README.md +1 -1
  3. package/README.uk.md +8 -8
  4. package/bin/cli.ts +1 -0
  5. package/dist/bin/cli.js +1 -0
  6. package/dist/bin/cli.js.map +1 -1
  7. package/dist/os/adr/adr.module.d.ts.map +1 -1
  8. package/dist/os/adr/adr.module.js +8 -3
  9. package/dist/os/adr/adr.module.js.map +1 -1
  10. package/dist/os/adr/frontmatter-io.js +5 -5
  11. package/dist/os/adr/frontmatter-io.js.map +1 -1
  12. package/dist/os/adr/handlers/archive.d.ts.map +1 -1
  13. package/dist/os/adr/handlers/archive.js +10 -4
  14. package/dist/os/adr/handlers/archive.js.map +1 -1
  15. package/dist/os/adr/handlers/implement-stamp.d.ts.map +1 -1
  16. package/dist/os/adr/handlers/implement-stamp.js +10 -9
  17. package/dist/os/adr/handlers/implement-stamp.js.map +1 -1
  18. package/dist/os/adr/handlers/list-create.js +5 -5
  19. package/dist/os/adr/handlers/list-create.js.map +1 -1
  20. package/dist/os/adr/handlers/validate.js +1 -1
  21. package/dist/os/adr/handlers/validate.js.map +1 -1
  22. package/dist/os/audit/audit.module.js +3 -3
  23. package/dist/os/audit/audit.module.js.map +1 -1
  24. package/dist/os/audit/frontmatter-io.js +5 -5
  25. package/dist/os/audit/frontmatter-io.js.map +1 -1
  26. package/dist/os/audit/handlers/archive.d.ts.map +1 -1
  27. package/dist/os/audit/handlers/archive.js +10 -4
  28. package/dist/os/audit/handlers/archive.js.map +1 -1
  29. package/dist/os/compass/compass.module.d.ts.map +1 -1
  30. package/dist/os/compass/compass.module.js +17 -1
  31. package/dist/os/compass/compass.module.js.map +1 -1
  32. package/dist/os/compass/handlers/compass-audit-handler.d.ts.map +1 -1
  33. package/dist/os/compass/handlers/compass-audit-handler.js +12 -5
  34. package/dist/os/compass/handlers/compass-audit-handler.js.map +1 -1
  35. package/dist/os/compass/handlers/compass-change-summary-handler.d.ts.map +1 -1
  36. package/dist/os/compass/handlers/compass-change-summary-handler.js +3 -2
  37. package/dist/os/compass/handlers/compass-change-summary-handler.js.map +1 -1
  38. package/dist/os/compass/handlers/compass-inventory-handler.d.ts.map +1 -1
  39. package/dist/os/compass/handlers/compass-inventory-handler.js +6 -4
  40. package/dist/os/compass/handlers/compass-inventory-handler.js.map +1 -1
  41. package/dist/os/compass/handlers/compass-inventory.d.ts.map +1 -1
  42. package/dist/os/compass/handlers/compass-inventory.js +10 -8
  43. package/dist/os/compass/handlers/compass-inventory.js.map +1 -1
  44. package/dist/os/compass/handlers/compass-migrate-handler.js +1 -1
  45. package/dist/os/compass/handlers/compass-migrate-handler.js.map +1 -1
  46. package/dist/os/compass/handlers/compass-migrate.d.ts.map +1 -1
  47. package/dist/os/compass/handlers/compass-migrate.js +6 -3
  48. package/dist/os/compass/handlers/compass-migrate.js.map +1 -1
  49. package/dist/os/compass/handlers/git-revision.d.ts.map +1 -1
  50. package/dist/os/compass/handlers/git-revision.js +9 -6
  51. package/dist/os/compass/handlers/git-revision.js.map +1 -1
  52. package/dist/os/compass/handlers/resolve-scan-root.js +1 -1
  53. package/dist/os/compass/handlers/resolve-scan-root.js.map +1 -1
  54. package/dist/os/compass/handlers/summary-record.d.ts.map +1 -1
  55. package/dist/os/compass/handlers/summary-record.js +8 -4
  56. package/dist/os/compass/handlers/summary-record.js.map +1 -1
  57. package/dist/os/core/core.module.d.ts.map +1 -1
  58. package/dist/os/core/core.module.js +43 -4
  59. package/dist/os/core/core.module.js.map +1 -1
  60. package/dist/os/core/handlers/assets-helpers.d.ts.map +1 -1
  61. package/dist/os/core/handlers/assets-helpers.js +6 -3
  62. package/dist/os/core/handlers/assets-helpers.js.map +1 -1
  63. package/dist/os/core/handlers/build.js +1 -1
  64. package/dist/os/core/handlers/build.js.map +1 -1
  65. package/dist/os/core/handlers/determinism-check.d.ts.map +1 -1
  66. package/dist/os/core/handlers/determinism-check.js +10 -6
  67. package/dist/os/core/handlers/determinism-check.js.map +1 -1
  68. package/dist/os/core/handlers/dev.js +1 -1
  69. package/dist/os/core/handlers/dev.js.map +1 -1
  70. package/dist/os/core/handlers/file-size-lint.d.ts.map +1 -1
  71. package/dist/os/core/handlers/file-size-lint.js +11 -7
  72. package/dist/os/core/handlers/file-size-lint.js.map +1 -1
  73. package/dist/os/core/handlers/forge-autonomy-validate.d.ts.map +1 -1
  74. package/dist/os/core/handlers/forge-autonomy-validate.js +9 -5
  75. package/dist/os/core/handlers/forge-autonomy-validate.js.map +1 -1
  76. package/dist/os/core/handlers/knowledge-compact.js +1 -1
  77. package/dist/os/core/handlers/knowledge-compact.js.map +1 -1
  78. package/dist/os/core/handlers/package-health.js +1 -1
  79. package/dist/os/core/handlers/package-health.js.map +1 -1
  80. package/dist/os/core/handlers/pinned-check.js +2 -2
  81. package/dist/os/core/handlers/pinned-check.js.map +1 -1
  82. package/dist/os/core/handlers/pinned-init.d.ts.map +1 -1
  83. package/dist/os/core/handlers/pinned-init.js +9 -8
  84. package/dist/os/core/handlers/pinned-init.js.map +1 -1
  85. package/dist/os/core/handlers/pinned-validate.js +3 -3
  86. package/dist/os/core/handlers/pinned-validate.js.map +1 -1
  87. package/dist/os/core/handlers/profile-resolve.js +1 -1
  88. package/dist/os/core/handlers/profile-resolve.js.map +1 -1
  89. package/dist/os/core/handlers/public-surface.js +1 -1
  90. package/dist/os/core/handlers/public-surface.js.map +1 -1
  91. package/dist/os/core/handlers/release-prepare.d.ts.map +1 -1
  92. package/dist/os/core/handlers/release-prepare.js +10 -6
  93. package/dist/os/core/handlers/release-prepare.js.map +1 -1
  94. package/dist/os/core/handlers/release-publish.js +6 -6
  95. package/dist/os/core/handlers/release-publish.js.map +1 -1
  96. package/dist/os/core/handlers/validate.js +1 -1
  97. package/dist/os/core/handlers/validate.js.map +1 -1
  98. package/dist/os/exploration/exploration.module.d.ts.map +1 -1
  99. package/dist/os/exploration/exploration.module.js +1 -0
  100. package/dist/os/exploration/exploration.module.js.map +1 -1
  101. package/dist/os/exploration/frontmatter-io.js +4 -4
  102. package/dist/os/exploration/frontmatter-io.js.map +1 -1
  103. package/dist/os/exploration/handlers/archive.js +3 -3
  104. package/dist/os/exploration/handlers/archive.js.map +1 -1
  105. package/dist/os/mission/handlers/archive.d.ts.map +1 -1
  106. package/dist/os/mission/handlers/archive.js +22 -19
  107. package/dist/os/mission/handlers/archive.js.map +1 -1
  108. package/dist/os/mission/mission.module.js +3 -3
  109. package/dist/os/mission/mission.module.js.map +1 -1
  110. package/dist/os/naming/naming-convention.d.ts.map +1 -1
  111. package/dist/os/naming/naming-convention.js +7 -3
  112. package/dist/os/naming/naming-convention.js.map +1 -1
  113. package/dist/os/naming/naming.module.d.ts.map +1 -1
  114. package/dist/os/naming/naming.module.js +4 -3
  115. package/dist/os/naming/naming.module.js.map +1 -1
  116. package/dist/os/notes/notes.module.d.ts.map +1 -1
  117. package/dist/os/notes/notes.module.js +6 -3
  118. package/dist/os/notes/notes.module.js.map +1 -1
  119. package/dist/os/plan/frontmatter-io.js +5 -5
  120. package/dist/os/plan/frontmatter-io.js.map +1 -1
  121. package/dist/os/plan/handlers/archive.d.ts.map +1 -1
  122. package/dist/os/plan/handlers/archive.js +10 -4
  123. package/dist/os/plan/handlers/archive.js.map +1 -1
  124. package/dist/os/plan/plan.module.js +3 -3
  125. package/dist/os/plan/plan.module.js.map +1 -1
  126. package/dist/os/plugin/plugin.module.d.ts.map +1 -1
  127. package/dist/os/plugin/plugin.module.js +6 -3
  128. package/dist/os/plugin/plugin.module.js.map +1 -1
  129. package/dist/os/program/discovery.js +2 -2
  130. package/dist/os/program/discovery.js.map +1 -1
  131. package/dist/os/program/handlers/complete.js +1 -1
  132. package/dist/os/program/handlers/complete.js.map +1 -1
  133. package/dist/os/program/handlers/lease.js +1 -1
  134. package/dist/os/program/handlers/lease.js.map +1 -1
  135. package/dist/os/program/handlers/seal.js +1 -1
  136. package/dist/os/program/handlers/seal.js.map +1 -1
  137. package/dist/os/program/lease.js +1 -1
  138. package/dist/os/program/lease.js.map +1 -1
  139. package/dist/os/program/program.module.d.ts.map +1 -1
  140. package/dist/os/program/program.module.js +9 -3
  141. package/dist/os/program/program.module.js.map +1 -1
  142. package/dist/os/queue/index.js +1 -1
  143. package/dist/os/queue/manifest.d.ts.map +1 -1
  144. package/dist/os/queue/manifest.js +4 -8
  145. package/dist/os/queue/manifest.js.map +1 -1
  146. package/dist/os/rfc/acceptance.d.ts.map +1 -1
  147. package/dist/os/rfc/acceptance.js +10 -6
  148. package/dist/os/rfc/acceptance.js.map +1 -1
  149. package/dist/os/rfc/decision-log.d.ts.map +1 -1
  150. package/dist/os/rfc/decision-log.js +4 -3
  151. package/dist/os/rfc/decision-log.js.map +1 -1
  152. package/dist/os/rfc/dna-trace.d.ts.map +1 -1
  153. package/dist/os/rfc/dna-trace.js +7 -2
  154. package/dist/os/rfc/dna-trace.js.map +1 -1
  155. package/dist/os/rfc/frontmatter-io.js +5 -5
  156. package/dist/os/rfc/frontmatter-io.js.map +1 -1
  157. package/dist/os/rfc/handlers/archive.d.ts.map +1 -1
  158. package/dist/os/rfc/handlers/archive.js +11 -5
  159. package/dist/os/rfc/handlers/archive.js.map +1 -1
  160. package/dist/os/rfc/handlers/check.d.ts.map +1 -1
  161. package/dist/os/rfc/handlers/check.js +6 -3
  162. package/dist/os/rfc/handlers/check.js.map +1 -1
  163. package/dist/os/rfc/handlers/implement-stamp.d.ts.map +1 -1
  164. package/dist/os/rfc/handlers/implement-stamp.js +11 -10
  165. package/dist/os/rfc/handlers/implement-stamp.js.map +1 -1
  166. package/dist/os/rfc/handlers/index-graph.js +3 -3
  167. package/dist/os/rfc/handlers/index-graph.js.map +1 -1
  168. package/dist/os/rfc/handlers/lifecycle.d.ts.map +1 -1
  169. package/dist/os/rfc/handlers/lifecycle.js +6 -2
  170. package/dist/os/rfc/handlers/lifecycle.js.map +1 -1
  171. package/dist/os/rfc/handlers/list-create.d.ts.map +1 -1
  172. package/dist/os/rfc/handlers/list-create.js +7 -6
  173. package/dist/os/rfc/handlers/list-create.js.map +1 -1
  174. package/dist/os/rfc/handlers/shared.js +3 -3
  175. package/dist/os/rfc/handlers/shared.js.map +1 -1
  176. package/dist/os/rfc/handlers/supersede-propose.d.ts.map +1 -1
  177. package/dist/os/rfc/handlers/supersede-propose.js +7 -3
  178. package/dist/os/rfc/handlers/supersede-propose.js.map +1 -1
  179. package/dist/os/rfc/handlers/validate-rules.d.ts.map +1 -1
  180. package/dist/os/rfc/handlers/validate-rules.js +8 -5
  181. package/dist/os/rfc/handlers/validate-rules.js.map +1 -1
  182. package/dist/os/rfc/rfc.module.d.ts.map +1 -1
  183. package/dist/os/rfc/rfc.module.js +44 -4
  184. package/dist/os/rfc/rfc.module.js.map +1 -1
  185. package/dist/os/rfc/verification-evidence.d.ts.map +1 -1
  186. package/dist/os/rfc/verification-evidence.js +9 -5
  187. package/dist/os/rfc/verification-evidence.js.map +1 -1
  188. package/dist/os/rfc/verification-refresh.d.ts.map +1 -1
  189. package/dist/os/rfc/verification-refresh.js +4 -3
  190. package/dist/os/rfc/verification-refresh.js.map +1 -1
  191. package/dist/os/session/frontmatter-io.js +12 -12
  192. package/dist/os/session/frontmatter-io.js.map +1 -1
  193. package/dist/os/session/handlers/archive.d.ts.map +1 -1
  194. package/dist/os/session/handlers/archive.js +10 -4
  195. package/dist/os/session/handlers/archive.js.map +1 -1
  196. package/dist/os/session/handlers/metrics-aggregate.d.ts.map +1 -1
  197. package/dist/os/session/handlers/metrics-aggregate.js +9 -5
  198. package/dist/os/session/handlers/metrics-aggregate.js.map +1 -1
  199. package/dist/os/session/handlers/metrics-rfc.d.ts.map +1 -1
  200. package/dist/os/session/handlers/metrics-rfc.js +11 -8
  201. package/dist/os/session/handlers/metrics-rfc.js.map +1 -1
  202. package/dist/os/session/handlers/metrics-session.d.ts.map +1 -1
  203. package/dist/os/session/handlers/metrics-session.js +6 -3
  204. package/dist/os/session/handlers/metrics-session.js.map +1 -1
  205. package/dist/os/session/handlers/save.d.ts.map +1 -1
  206. package/dist/os/session/handlers/save.js +14 -8
  207. package/dist/os/session/handlers/save.js.map +1 -1
  208. package/dist/os/session/session.module.d.ts.map +1 -1
  209. package/dist/os/session/session.module.js +6 -0
  210. package/dist/os/session/session.module.js.map +1 -1
  211. package/dist/os/spec/live-spec-list.js +4 -4
  212. package/dist/os/spec/live-spec-list.js.map +1 -1
  213. package/dist/os/spec/live-spec-merge.js +5 -5
  214. package/dist/os/spec/live-spec-merge.js.map +1 -1
  215. package/dist/os/spec/live-spec-show.js +3 -3
  216. package/dist/os/spec/live-spec-show.js.map +1 -1
  217. package/dist/os/spec/live-spec-validate.js +4 -4
  218. package/dist/os/spec/live-spec-validate.js.map +1 -1
  219. package/dist/os/spec/spec-materialize.js +9 -9
  220. package/dist/os/spec/spec-materialize.js.map +1 -1
  221. package/dist/os/spec/spec-status.js +9 -9
  222. package/dist/os/spec/spec-status.js.map +1 -1
  223. package/dist/os/spec/spec-validate.js +7 -7
  224. package/dist/os/spec/spec-validate.js.map +1 -1
  225. package/dist/os/spec/spec.module.d.ts.map +1 -1
  226. package/dist/os/spec/spec.module.js +8 -0
  227. package/dist/os/spec/spec.module.js.map +1 -1
  228. package/dist/os/werkstatt/handlers/lock.js +16 -16
  229. package/dist/os/werkstatt/handlers/lock.js.map +1 -1
  230. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.js +3 -3
  231. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.js.map +1 -1
  232. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.d.ts.map +1 -1
  233. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.js +3 -2
  234. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.js.map +1 -1
  235. package/dist/os/werkstatt/werkstatt.module.d.ts.map +1 -1
  236. package/dist/os/werkstatt/werkstatt.module.js +6 -2
  237. package/dist/os/werkstatt/werkstatt.module.js.map +1 -1
  238. package/dist/os/workflow/handlers.d.ts.map +1 -1
  239. package/dist/os/workflow/handlers.js +8 -5
  240. package/dist/os/workflow/handlers.js.map +1 -1
  241. package/dist/os/workflow/workflow.module.d.ts.map +1 -1
  242. package/dist/os/workflow/workflow.module.js +6 -3
  243. package/dist/os/workflow/workflow.module.js.map +1 -1
  244. package/dist/src/compass/contract-registry.js +1 -1
  245. package/dist/src/compass/contract-registry.js.map +1 -1
  246. package/dist/src/config/forge-config.d.ts +1 -1
  247. package/dist/src/config/forge-config.js +1 -1
  248. package/dist/src/config/forge-config.js.map +1 -1
  249. package/dist/src/knowledge/budgets.js +1 -1
  250. package/dist/src/knowledge/budgets.js.map +1 -1
  251. package/dist/src/knowledge/compact.js +1 -1
  252. package/dist/src/knowledge/compact.js.map +1 -1
  253. package/dist/src/knowledge/parse.js +1 -1
  254. package/dist/src/knowledge/parse.js.map +1 -1
  255. package/dist/src/knowledge/sync.d.ts.map +1 -1
  256. package/dist/src/knowledge/sync.js +3 -5
  257. package/dist/src/knowledge/sync.js.map +1 -1
  258. package/dist/src/migration-adapters/git-utils.js +2 -2
  259. package/dist/src/migration-adapters/git-utils.js.map +1 -1
  260. package/dist/src/migration-adapters/ignored-files.js +2 -2
  261. package/dist/src/migration-adapters/ignored-files.js.map +1 -1
  262. package/dist/src/migration-adapters/node-typescript-pnpm/index.js +1 -1
  263. package/dist/src/migration-adapters/node-typescript-pnpm/index.js.map +1 -1
  264. package/dist/src/migration-adapters/phaser-pnpm/index.js +1 -1
  265. package/dist/src/migration-adapters/phaser-pnpm/index.js.map +1 -1
  266. package/dist/src/onboarding/agents-generate.d.ts.map +1 -1
  267. package/dist/src/onboarding/agents-generate.js +60 -31
  268. package/dist/src/onboarding/agents-generate.js.map +1 -1
  269. package/dist/src/onboarding/create.d.ts.map +1 -1
  270. package/dist/src/onboarding/create.js +10 -10
  271. package/dist/src/onboarding/create.js.map +1 -1
  272. package/dist/src/onboarding/doctor.d.ts.map +1 -1
  273. package/dist/src/onboarding/doctor.js +68 -59
  274. package/dist/src/onboarding/doctor.js.map +1 -1
  275. package/dist/src/onboarding/init.d.ts.map +1 -1
  276. package/dist/src/onboarding/init.js +30 -1
  277. package/dist/src/onboarding/init.js.map +1 -1
  278. package/dist/src/onboarding/invariant-engine.js +1 -1
  279. package/dist/src/onboarding/invariant-engine.js.map +1 -1
  280. package/dist/src/onboarding/memory-compact.d.ts.map +1 -1
  281. package/dist/src/onboarding/memory-compact.js +5 -4
  282. package/dist/src/onboarding/memory-compact.js.map +1 -1
  283. package/dist/src/onboarding/memory-scaffold.js +1 -1
  284. package/dist/src/onboarding/memory-scaffold.js.map +1 -1
  285. package/dist/src/onboarding/nested-agents-generate.d.ts +4 -1
  286. package/dist/src/onboarding/nested-agents-generate.d.ts.map +1 -1
  287. package/dist/src/onboarding/nested-agents-generate.js +34 -5
  288. package/dist/src/onboarding/nested-agents-generate.js.map +1 -1
  289. package/dist/src/onboarding/nested-agents-templates.d.ts.map +1 -1
  290. package/dist/src/onboarding/nested-agents-templates.js +8 -12
  291. package/dist/src/onboarding/nested-agents-templates.js.map +1 -1
  292. package/dist/src/onboarding/npm-token-check.js +2 -2
  293. package/dist/src/onboarding/npm-token-check.js.map +1 -1
  294. package/dist/src/onboarding/prettierignore.d.ts +29 -0
  295. package/dist/src/onboarding/prettierignore.d.ts.map +1 -0
  296. package/dist/src/onboarding/prettierignore.js +231 -0
  297. package/dist/src/onboarding/prettierignore.js.map +1 -0
  298. package/dist/src/onboarding/profile-validate.d.ts.map +1 -1
  299. package/dist/src/onboarding/profile-validate.js +5 -4
  300. package/dist/src/onboarding/profile-validate.js.map +1 -1
  301. package/dist/src/onboarding/scaffold-project.d.ts.map +1 -1
  302. package/dist/src/onboarding/scaffold-project.js +35 -27
  303. package/dist/src/onboarding/scaffold-project.js.map +1 -1
  304. package/dist/src/onboarding/scaffold.js +1 -1
  305. package/dist/src/onboarding/scaffold.js.map +1 -1
  306. package/dist/src/onboarding/skill-markers.d.ts +27 -0
  307. package/dist/src/onboarding/skill-markers.d.ts.map +1 -0
  308. package/dist/src/onboarding/skill-markers.js +131 -0
  309. package/dist/src/onboarding/skill-markers.js.map +1 -0
  310. package/dist/src/onboarding/upgrade.d.ts +10 -0
  311. package/dist/src/onboarding/upgrade.d.ts.map +1 -1
  312. package/dist/src/onboarding/upgrade.js +215 -74
  313. package/dist/src/onboarding/upgrade.js.map +1 -1
  314. package/dist/src/onboarding/workspace-discovery.js +1 -1
  315. package/dist/src/onboarding/workspace-discovery.js.map +1 -1
  316. package/dist/src/pipeline-status.d.ts +6 -5
  317. package/dist/src/pipeline-status.d.ts.map +1 -1
  318. package/dist/src/pipeline-status.js +24 -19
  319. package/dist/src/pipeline-status.js.map +1 -1
  320. package/dist/src/profiles/stack-profile.js +1 -1
  321. package/dist/src/profiles/stack-profile.js.map +1 -1
  322. package/dist/src/registry.d.ts +1 -1
  323. package/dist/src/registry.d.ts.map +1 -1
  324. package/dist/src/registry.js +3 -3
  325. package/dist/src/registry.js.map +1 -1
  326. package/dist/src/skill-schema.d.ts +1 -1
  327. package/dist/src/skill-schema.d.ts.map +1 -1
  328. package/dist/src/skill-schema.js +4 -1
  329. package/dist/src/skill-schema.js.map +1 -1
  330. package/dist/src/types.d.ts +116 -0
  331. package/dist/src/types.d.ts.map +1 -1
  332. package/dist/src/utils/editable-region.d.ts +46 -0
  333. package/dist/src/utils/editable-region.d.ts.map +1 -0
  334. package/dist/src/utils/editable-region.js +125 -0
  335. package/dist/src/utils/editable-region.js.map +1 -0
  336. package/dist/src/utils/fs-idempotent.d.ts +2 -1
  337. package/dist/src/utils/fs-idempotent.d.ts.map +1 -1
  338. package/dist/src/utils/fs-idempotent.js +11 -7
  339. package/dist/src/utils/fs-idempotent.js.map +1 -1
  340. package/dist/src/utils/generated-marker.d.ts +17 -0
  341. package/dist/src/utils/generated-marker.d.ts.map +1 -1
  342. package/dist/src/utils/generated-marker.js +29 -1
  343. package/dist/src/utils/generated-marker.js.map +1 -1
  344. package/dist/src/utils/index.d.ts +3 -1
  345. package/dist/src/utils/index.d.ts.map +1 -1
  346. package/dist/src/utils/index.js +3 -1
  347. package/dist/src/utils/index.js.map +1 -1
  348. package/dist/src/utils/io.d.ts +9 -0
  349. package/dist/src/utils/io.d.ts.map +1 -0
  350. package/dist/src/utils/io.js +130 -0
  351. package/dist/src/utils/io.js.map +1 -0
  352. package/dist/src/utils/markdown-table.d.ts +21 -0
  353. package/dist/src/utils/markdown-table.d.ts.map +1 -0
  354. package/dist/src/utils/markdown-table.js +116 -0
  355. package/dist/src/utils/markdown-table.js.map +1 -0
  356. package/dist/src/utils/sync-fs.d.ts +5 -0
  357. package/dist/src/utils/sync-fs.d.ts.map +1 -0
  358. package/dist/src/utils/sync-fs.js +26 -0
  359. package/dist/src/utils/sync-fs.js.map +1 -0
  360. package/dist/src/validators/note-frontmatter-validate.js +1 -1
  361. package/dist/src/validators/note-frontmatter-validate.js.map +1 -1
  362. package/dist/src/validators/note-link-validate.js +1 -1
  363. package/dist/src/validators/note-link-validate.js.map +1 -1
  364. package/dist/src/validators/note-orphan-detect.js +1 -1
  365. package/dist/src/validators/note-orphan-detect.js.map +1 -1
  366. package/dist/src/validators/port-validate.js +1 -1
  367. package/dist/src/validators/port-validate.js.map +1 -1
  368. package/dist/src/validators/skill-validate.d.ts.map +1 -1
  369. package/dist/src/validators/skill-validate.js +34 -13
  370. package/dist/src/validators/skill-validate.js.map +1 -1
  371. package/os/adr/adr.module.ts +136 -132
  372. package/os/adr/frontmatter-io.ts +5 -5
  373. package/os/adr/handlers/archive.ts +8 -4
  374. package/os/adr/handlers/implement-stamp.ts +14 -9
  375. package/os/adr/handlers/list-create.ts +5 -5
  376. package/os/adr/handlers/validate.ts +1 -1
  377. package/os/audit/audit.module.ts +33 -34
  378. package/os/audit/frontmatter-io.ts +5 -5
  379. package/os/audit/handlers/archive.ts +8 -4
  380. package/os/compass/compass.module.ts +17 -1
  381. package/os/compass/handlers/compass-audit-handler.ts +13 -5
  382. package/os/compass/handlers/compass-change-summary-handler.ts +4 -2
  383. package/os/compass/handlers/compass-inventory-handler.ts +7 -4
  384. package/os/compass/handlers/compass-inventory.ts +11 -8
  385. package/os/compass/handlers/compass-migrate-handler.ts +1 -1
  386. package/os/compass/handlers/compass-migrate.ts +7 -3
  387. package/os/compass/handlers/git-revision.ts +11 -6
  388. package/os/compass/handlers/resolve-scan-root.ts +1 -1
  389. package/os/compass/handlers/summary-record.ts +10 -4
  390. package/os/compass/handlers/tests/compass-audit-plan.test.ts +2 -1
  391. package/os/core/core.module.ts +43 -4
  392. package/os/core/handlers/assets-helpers.ts +7 -3
  393. package/os/core/handlers/build.ts +1 -1
  394. package/os/core/handlers/determinism-check.ts +12 -6
  395. package/os/core/handlers/dev.ts +1 -1
  396. package/os/core/handlers/file-size-lint.ts +16 -9
  397. package/os/core/handlers/forge-autonomy-validate.ts +10 -5
  398. package/os/core/handlers/knowledge-compact.ts +1 -1
  399. package/os/core/handlers/package-health.ts +1 -1
  400. package/os/core/handlers/pinned-check.ts +2 -2
  401. package/os/core/handlers/pinned-init.ts +9 -8
  402. package/os/core/handlers/pinned-validate.ts +3 -3
  403. package/os/core/handlers/profile-resolve.ts +1 -1
  404. package/os/core/handlers/public-surface.ts +1 -1
  405. package/os/core/handlers/release-prepare.ts +11 -6
  406. package/os/core/handlers/release-publish.ts +6 -6
  407. package/os/core/handlers/validate.ts +1 -1
  408. package/os/exploration/exploration.module.ts +1 -0
  409. package/os/exploration/frontmatter-io.ts +4 -4
  410. package/os/exploration/handlers/archive.ts +3 -3
  411. package/os/mission/handlers/archive.ts +27 -19
  412. package/os/mission/mission.module.ts +38 -39
  413. package/os/naming/naming-convention.ts +9 -3
  414. package/os/naming/naming.module.ts +25 -25
  415. package/os/notes/notes.module.ts +87 -85
  416. package/os/plan/frontmatter-io.ts +5 -5
  417. package/os/plan/handlers/archive.ts +8 -4
  418. package/os/plan/plan.module.ts +33 -34
  419. package/os/plugin/plugin.module.ts +8 -6
  420. package/os/program/discovery.ts +2 -2
  421. package/os/program/handlers/complete.ts +1 -1
  422. package/os/program/handlers/lease.ts +1 -1
  423. package/os/program/handlers/seal.ts +1 -1
  424. package/os/program/lease.ts +1 -1
  425. package/os/program/program.module.ts +198 -193
  426. package/os/queue/index.ts +1 -1
  427. package/os/queue/manifest.ts +10 -9
  428. package/os/queue/queue-validate.test.ts +6 -15
  429. package/os/rfc/acceptance.ts +12 -6
  430. package/os/rfc/decision-log.ts +4 -3
  431. package/os/rfc/dna-trace.ts +8 -2
  432. package/os/rfc/frontmatter-io.ts +5 -5
  433. package/os/rfc/handlers/archive.ts +9 -5
  434. package/os/rfc/handlers/check.ts +5 -3
  435. package/os/rfc/handlers/implement-stamp.ts +15 -10
  436. package/os/rfc/handlers/index-graph.ts +3 -3
  437. package/os/rfc/handlers/lifecycle.ts +7 -2
  438. package/os/rfc/handlers/list-create.ts +7 -6
  439. package/os/rfc/handlers/shared.ts +3 -3
  440. package/os/rfc/handlers/supersede-propose.ts +8 -3
  441. package/os/rfc/handlers/validate-rules-rfc1006.test.ts +18 -6
  442. package/os/rfc/handlers/validate-rules.ts +10 -5
  443. package/os/rfc/rfc-create-concurrent.test.ts +11 -3
  444. package/os/rfc/rfc.module.ts +413 -374
  445. package/os/rfc/verification-evidence.ts +11 -5
  446. package/os/rfc/verification-refresh.ts +4 -3
  447. package/os/session/frontmatter-io.ts +14 -14
  448. package/os/session/handlers/archive.ts +8 -4
  449. package/os/session/handlers/metrics-aggregate.ts +34 -13
  450. package/os/session/handlers/metrics-rfc.ts +13 -8
  451. package/os/session/handlers/metrics-session.ts +7 -3
  452. package/os/session/handlers/save.ts +12 -8
  453. package/os/session/session.module.ts +6 -0
  454. package/os/spec/live-spec-list.ts +4 -4
  455. package/os/spec/live-spec-merge.ts +5 -5
  456. package/os/spec/live-spec-show.ts +3 -3
  457. package/os/spec/live-spec-validate.ts +4 -4
  458. package/os/spec/spec-materialize.ts +9 -9
  459. package/os/spec/spec-status.ts +9 -9
  460. package/os/spec/spec-validate.ts +7 -7
  461. package/os/spec/spec.module.ts +8 -0
  462. package/os/werkstatt/handlers/lock.ts +16 -16
  463. package/os/werkstatt/handlers/werkstatt-lock-recover.ts +3 -3
  464. package/os/werkstatt/handlers/werkstatt-operation-validate.ts +4 -2
  465. package/os/werkstatt/werkstatt.module.ts +8 -5
  466. package/os/workflow/handlers.ts +7 -5
  467. package/os/workflow/workflow.module.ts +45 -44
  468. package/package.json +1 -1
  469. package/skills/fo/fo-add-tests/SKILL.md +2 -2
  470. package/skills/fo/fo-architecture/SKILL.md +2 -2
  471. package/skills/fo/fo-compass-annotate/SKILL.md +2 -2
  472. package/skills/fo/fo-design-summit/SKILL.md +2 -2
  473. package/skills/fo/fo-doc-audit/SKILL.md +2 -2
  474. package/skills/fo/fo-explore/SKILL.md +2 -2
  475. package/skills/fo/fo-extract-dna/SKILL.md +2 -2
  476. package/skills/fo/fo-fix/SKILL.md +2 -2
  477. package/skills/fo/fo-handoff/SKILL.md +2 -2
  478. package/skills/fo/fo-harvest/SKILL.md +2 -2
  479. package/skills/fo/fo-idea/SKILL.md +2 -2
  480. package/skills/fo/fo-idea-audit/SKILL.md +2 -2
  481. package/skills/fo/fo-idea-create-adr/SKILL.md +3 -3
  482. package/skills/fo/fo-idea-create-rfc/SKILL.md +3 -3
  483. package/skills/fo/fo-idea-enhance/SKILL.md +2 -2
  484. package/skills/fo/fo-idea-i-just-want-to-see-the-plan/SKILL.md +2 -2
  485. package/skills/fo/fo-idea-i-just-want-to-see-the-result/SKILL.md +1 -1
  486. package/skills/fo/fo-idea-implement/SKILL.md +2 -2
  487. package/skills/fo/fo-idea-plan/SKILL.md +2 -2
  488. package/skills/fo/fo-idea-status/SKILL.md +2 -2
  489. package/skills/fo/fo-knowledge-distill/SKILL.md +2 -2
  490. package/skills/fo/fo-memory-sync/SKILL.md +2 -2
  491. package/skills/fo/fo-qa/SKILL.md +2 -2
  492. package/skills/fo/fo-review/SKILL.md +2 -2
  493. package/skills/fo/fo-session-retro/SKILL.md +2 -2
  494. package/skills/fo/fo-session-save/SKILL.md +2 -2
  495. package/skills/fo/fo-spec-ingest/SKILL.md +2 -2
  496. package/skills/fo/fo-step-commit/SKILL.md +1 -1
  497. package/skills/fo/fo-triage/SKILL.md +2 -2
  498. package/skills/meta/forge-bootstrap/SKILL.md +1 -1
  499. package/skills/meta/port-to-forge/SKILL.md +1 -1
  500. package/skills/meta/skill-create/SKILL.md +1 -1
  501. package/skills/shared/grilling/SKILL.md +1 -1
  502. package/skills/shared/grilling/learned-principles.archive.md +17 -0
  503. package/skills/shared/grilling/learned-principles.md +0 -1
  504. package/skills/shared/knowledge/learned-principles.md +6 -0
  505. package/skills/shared/my-preferences/SKILL.md +1 -1
  506. package/skills/shared/windows-ai-tooling/SKILL.md +1 -1
  507. package/skills/shared/writing-great-skills/SKILL.md +1 -1
  508. package/src/compass/contract-registry.ts +1 -1
  509. package/src/config/forge-config.ts +1 -1
  510. package/src/knowledge/__tests__/sync.test.ts +2 -7
  511. package/src/knowledge/budgets.ts +1 -1
  512. package/src/knowledge/compact.ts +1 -1
  513. package/src/knowledge/parse.ts +1 -1
  514. package/src/knowledge/sync.ts +3 -5
  515. package/src/migration-adapters/git-utils.ts +2 -2
  516. package/src/migration-adapters/ignored-files.ts +2 -2
  517. package/src/migration-adapters/node-typescript-pnpm/index.ts +1 -1
  518. package/src/migration-adapters/phaser-pnpm/index.ts +1 -1
  519. package/src/onboarding/agents-generate.ts +74 -33
  520. package/src/onboarding/create.ts +10 -10
  521. package/src/onboarding/doctor.ts +70 -55
  522. package/src/onboarding/init.ts +38 -1
  523. package/src/onboarding/invariant-engine.ts +1 -1
  524. package/src/onboarding/memory-compact.ts +5 -4
  525. package/src/onboarding/memory-scaffold.ts +1 -1
  526. package/src/onboarding/nested-agents-generate.ts +45 -4
  527. package/src/onboarding/nested-agents-templates.ts +19 -13
  528. package/src/onboarding/npm-token-check.ts +2 -2
  529. package/src/onboarding/prettierignore.ts +263 -0
  530. package/src/onboarding/profile-validate.ts +5 -4
  531. package/src/onboarding/scaffold-project.ts +38 -27
  532. package/src/onboarding/scaffold.ts +1 -1
  533. package/src/onboarding/skill-markers.ts +162 -0
  534. package/src/onboarding/templates/behavioral-layer-core.md +2 -4
  535. package/src/onboarding/upgrade.ts +285 -89
  536. package/src/onboarding/workspace-discovery.ts +1 -1
  537. package/src/pipeline-status.test.ts +1 -4
  538. package/src/pipeline-status.ts +30 -13
  539. package/src/profiles/stack-profile.ts +1 -1
  540. package/src/registry.ts +4 -4
  541. package/src/skill-schema.ts +4 -1
  542. package/src/tests/acceptance-probe-kinds.test.ts +5 -15
  543. package/src/tests/agents-generate.test.ts +6 -4
  544. package/src/tests/contract-registry.test.ts +12 -6
  545. package/src/tests/doctor-fix.test.ts +1 -4
  546. package/src/tests/doctor-nested-agents.test.ts +53 -1
  547. package/src/tests/editable-generated-region.test.ts +231 -0
  548. package/src/tests/file-size-lint.test.ts +8 -12
  549. package/src/tests/fixtures/agents-generate-business-before.txt +54 -54
  550. package/src/tests/markdown-table.test.ts +107 -0
  551. package/src/tests/prettierignore-manage.test.ts +134 -0
  552. package/src/tests/skill-agents-sync.test.ts +168 -0
  553. package/src/tests/skill-sync-marker.test.ts +134 -0
  554. package/src/tests/skill-validate.test.ts +12 -5
  555. package/src/tests/upgrade.test.ts +87 -41
  556. package/src/types.ts +123 -0
  557. package/src/utils/editable-region.ts +156 -0
  558. package/src/utils/fs-idempotent.ts +12 -6
  559. package/src/utils/generated-marker.ts +36 -2
  560. package/src/utils/index.ts +17 -0
  561. package/src/utils/io.ts +143 -0
  562. package/src/utils/markdown-table.ts +121 -0
  563. package/src/utils/sync-fs.ts +43 -0
  564. package/src/validators/note-frontmatter-validate.ts +1 -1
  565. package/src/validators/note-link-validate.ts +1 -1
  566. package/src/validators/note-orphan-detect.ts +1 -1
  567. package/src/validators/port-validate.ts +1 -1
  568. package/src/validators/skill-validate.ts +38 -13
package/AGENTS.md CHANGED
@@ -6,6 +6,7 @@ Portable governance skills and command modules extracted from the engine (RFC-03
6
6
 
7
7
  - `src/` — portable, no kernel imports. Contains skill schema, registry, validators, onboarding handlers, config module, canonical types, and utilities.
8
8
  - `os/` — ForgeModule registrations. RFC-0556: `os/compass/` and `os/werkstatt/` are fully autonomous — all command handlers are inlined in `os/*/handlers/` and no longer dynamically import `@warpgogol/*` packages. Other `os/` modules may still use dynamic imports where kernel integration is needed. RFC-0940: all `os/*.module.ts` files declare a required `runtime` field (`"autonomous"` or `"werkstatt-adapter"`). Only `os/werkstatt/` may import `@warpgogol/werkstatt-engine` — all other `os/` directories are autonomous. ADR-0019: `@warpgogol/werkstatt-shared` is no longer a dependency — `scanDirectoryForImports` is inlined in `os/core/handlers/forge-autonomy-validate.ts`. `forge.autonomy.validate` enforces FORGE-AUTONOMY-01. Type-only imports (`import type`) are exempt. 2026-09-22: the `@warpgogol/werkstatt-engine` devDependency was removed from `package.json` to break the turbo-reported forge↔engine package cycle — `os/werkstatt/handlers/workspace-deps.ts` now bridges fingerprinting via `@warpgogol/werkstatt-shared/fingerprint` (canonical home since RFC-1104). Do not re-add an engine dependency; new bridge needs go through `werkstatt-shared` subpaths.
9
+ - **Forge helpers accept `io?: WorkspaceIO` as an OPTIONAL type-only parameter** (`import type { WorkspaceIO } from "@warpgogol/werkstatt-shared/kernel/workspace-io"`). Agents MUST NOT import `createDefaultIO` or any runtime binding from `@warpgogol/werkstatt-shared` into `packages/forge/src` — FORGE-AUTONOMY-01 (ADR-0019) exempts `import type` only. The ambient path stays the default for the standalone CLI; kernel callers pass `context.io` explicitly so operations flow through the recording adapter. First application: `writeFileIfChanged` in `src/utils/fs-idempotent.ts` (RFC-1149 follow-up, 2026-09-25).
9
10
  - `bin/` — CLI entrypoint (`forge` command) for autonomous usage without `@warpgogol/werkstatt-engine`. **New `os/` modules MUST be registered manually in `bin/cli.ts` `buildRegistry()`** — the standalone CLI has no module auto-discovery. A module exported via `package.json` and wired in `tools/kernel.config.ts` profiles is still invisible to `forge <cmd>` until added to the registry array. Discovered 2026-09-16: `forge-adr` (and 6 other modules) existed in source but were unreachable via the CLI.
10
11
  - `skills/` — forge-managed skill definitions (29 fo skills + 5 shared + 3 meta = 37 skills). Project-declared skill packs (RFC-0539) live outside forge and are discovered via `discoverPackSkills` from `forge.yaml` `skillPacks` config.
11
12
 
@@ -63,6 +64,7 @@ Exclusion, layer, and risk globs match `relativePathWithinWorkspace`, not the re
63
64
  ## Commit and config loading rules
64
65
 
65
66
  - **Verify `ecosystem.commit` output.** `ecosystem.commit` commits whatever is in the git index (staged files). If another agent staged files before your call, those files will be included in your commit instead of your own. After every `ecosystem.commit`, run `git show --stat HEAD` to verify the correct files were committed. If wrong files were committed, the missing files remain untracked/unstaged and must be committed separately.
67
+ - **The git index is shared mutable state across parallel agent sessions.** `ecosystem.commit` commits the whole index — a parallel session's commit can sweep YOUR staged files into their commit (wrong message), and their `git reset` can silently drop your stage. Stage immediately before `ecosystem.commit` inside the same shell command, then verify `git show --stat HEAD`. Discovered during RFC-1153: implementation files were swept into a parallel RFC-1154 commit — content landed correctly, commit boundaries were dirty.
66
68
  - **Wrap `loadForgeConfig` in try/catch in handlers that run in test workspaces.** `loadForgeConfig` throws when `forge.yaml` does not exist at the workspace root. Handlers that may be called from test workspaces without a `forge.yaml` (e.g. `runCompassValidation`) must guard the call with try/catch and skip pack-dependent logic when config is unavailable.
67
69
  - **`listStackProfiles` returns `[]` for a missing `profiles/` dir — it does not throw.** Distinguishing "catalog unavailable" from "catalog present but empty/unknown id" requires an explicit `existsSync` on the profiles directory. Discovered during RFC-1118: without the check, an unreadable catalog produced a spurious "unknown profile id" fail instead of "catalog-unavailable" warn.
68
70
  - **Fail-closed recovery of corrupted config fields requires the Zod schema to accept the corrupted shape.** Strict validation runs before any recovery logic — a schema that rejects the corrupted form makes recovery unreachable. Widen the field schema (e.g. `z.union([string, object])`), recover in `loadForgeConfig`, and heal on the next `serializeForgeConfig` write. Discovered during RFC-1118.
@@ -78,6 +80,18 @@ Exclusion, layer, and risk globs match `relativePathWithinWorkspace`, not the re
78
80
  - **AC evidence annotations must be bare file paths without em-dash suffixes.** `rfc.validate` (V-27) requires `(evidence: <file:line>)` or `(evidence: test: <path>)` annotations. The evidence parser treats everything after the prefix as a literal file path — adding descriptive text after an em-dash (e.g. `(evidence: test: packages/forge/src/tests/public-surface.test.ts — SURFACE-02 tests)`) causes "evidence references a file that does not exist" errors. Keep evidence annotations to `evidence: file: <path>` or `evidence: test: <path>` only. Discovered during RFC-1080 stamping.
79
81
  - **`compass.validate` is workspace-scoped — in mission pipelines it scans `packages/*`, not just the workpiece.** `execute-pipeline` injects `--site` for workspace-scoped commands, but `resolveCompassScanRoot` still resolves the platform scan root (`scanRoots`/`packages/`) — so platform compass debt blocks site missions even when the workpiece itself is clean. To scan only the workpiece, run `compass.validate --workpiece <path>` directly. When a mission fails on compass errors in `packages/*`, fix the platform files — the workpiece is not the problem. Discovered during warpgogol-m000142: 170 platform violations blocked a 1-file workpiece mission.
80
82
  - **`COMPASS-PURPOSE-02` requires a whole-word token match.** `deriveFileTokens` produces filename-stem segments, exported-symbol words, and (for generic stems like `index`/`helpers`) the parent directory name. The `<purpose>` text must contain at least one token as a standalone lowercase word — a camelCase symbol does not satisfy its own segments (`AuditService` does not satisfy `audit`). Write the token as a separate word in the purpose sentence. See `compass-inventory.ts` `deriveFileTokens` + the PURPOSE-02 check.
83
+ - **Always close `</MODULE_CONTRACT>`.** `extractBlockContent` matches `<TAG>...</TAG>` — without the closing tag the whole block is invisible to the validator, and `compass.validate` reports `COMPASS-CONTRACT-02`/`03` as if `purpose`/`non-goals` were missing. The diagnostic message does not mention the tag, so the missing closer is easy to overlook. When a sweep reports CONTRACT-02/03 on files whose `purpose`/`non-goals` visibly exist, check the `</MODULE_CONTRACT>` closer BEFORE editing content — one missing tag produces a cluster of phantom violations. Discovered during RFC-1154 (new files failed CONTRACT-02/03 until the closer was added); batch pattern confirmed during the 2026-09-27 sweep (8 files, 1 missing tag each).
84
+ - **`compass.validate` has no `--files` flag.** The narrowest scope is `--package <name>` (leaf scans: `--workpiece <path>`, `--site <id>`). For post-edit checks use `--package forge --mode error` to skip debt the fix didn't touch. Discovered during RFC-1154.
85
+ - **Re-run `compass.validate` AFTER `ecosystem.commit`, not only before.** `compass.summary.record` (RFC-1095) appends a governance-ID item to every touched file's `CHANGE_SUMMARY` at commit time — a file collapsed to exactly the 5-item cap (CS-05) can be pushed back over the cap by the commit itself. Verify post-commit before declaring a sweep clean. Discovered during the 2026-09-27 compass sweep.
86
+
87
+ ## Prettier compatibility and skill markers (RFC-1154)
88
+
89
+ Forge emitters produce prettier-normal output so consumer `prettier --check` passes without forge depending on prettier.
90
+
91
+ - **All markdown tables go through `alignMarkdownTable`** (`src/utils/markdown-table.ts`) — cells padded so `|` delimiters align per column, separator row is dashes repeated to column width (min 3). Never hand-emit `| --- |` literals; a regression guard test scans `src/**/*.ts`. `parseMarkdownTable` + re-emit is byte-stable (idempotency probe). Prettier's own table normalization differs in one detail: it inserts empty cells for missing trailing cells — our emitter does the same, so `align(parse(emit))` holds.
92
+ - **Managed `.prettierignore` block**: `applyPrettierignore`/`planPrettierignore` (`src/onboarding/prettierignore.ts`) reconcile a delimited block between `# forge-managed generated paths (RFC-1154)` and `# end forge-managed`. Content outside the markers is operator-owned and never touched. Unbalanced markers → the whole file is operator-owned (fresh block appended, no merge into a corrupt region). Detection is **root-only** (`prettier` in package.json deps or config key, a `.prettierrc*`/`prettier.config.*` at root, or an existing `.prettierignore`); nested-only configs are out of scope. Entries: per-skill `.agents/skills/<name>/` dirs carrying a `.forge-managed` marker, `**/*.generated.yaml`, `docs/sessions/`, `docs/metrics/`, `docs/queues/session-*.yaml`.
93
+ - **`.forge-managed` marker manifests** (`src/onboarding/skill-markers.ts`): every skill-sync site writes a JSON `{ files: string[] }` marker into each synced `.agents/skills/<name>/` dir, listing exactly what forge wrote (SKILL.md + knowledge files that stayed purely forge-content — merged/skipped files are excluded since they hold consumer entries). `pruneStaleSkillDirs` deletes a stale dir only when it carries a marker AND its on-disk contents are a subset of `manifest.files ∪ {marker}` — extra consumer files or a corrupt marker keep the dir and surface a warning. **Unmarked dirs are never pruned** (pre-1154 syncs, consumer-authored skills). Prune runs inside `reconcileGeneratedSurface` on every `forge upgrade` — including the same-version noop path — so stale syncs from deleted skills get cleaned.
94
+ - **`runInit` is sync; `runUpgrade` is async/io** — both paths wire the same contract via sync twins (`applyPrettierignoreSync`, `writeSkillMarkerSync`) vs the WorkspaceIO variants.
81
95
 
82
96
  ## Program packet control plane (RFC-0856)
83
97
 
@@ -194,6 +208,10 @@ YAML plain scalar values that **start with a backtick** (`` ` ``) must be double
194
208
 
195
209
  `rfc.implement.stamp` is the **exclusive atomic path** for accepted → implemented transitions. It atomically sets `status: implemented`, `implementedAt`, and `updatedAt` together. **NEVER** manually edit RFC frontmatter to set `implementedAt` or change `status` to `implemented` — this bypasses the atomic guarantee and risks leaving `status` and `implementedAt` out of sync. V-16 enforces this as an error: `status: accepted/draft` with `implementedAt` set, or `status: implemented` with empty `implementedAt`, both fail `rfc.validate`. After implementing an RFC, run `rfc.implement.stamp --id RFC-XXXX` to stamp it (auto-detects the implementation commit via `git log --grep` when `--implementation-commit` is omitted, RFC-0756; pass `--implementation-commit <sha>` to override). **`--implementation-commit` takes a git SHA, not the version printed by `ecosystem.commit`** — passing `6.316.121` fails RFC-IMP-03 ("not reachable from HEAD"). Resolve the SHA via `git log --oneline --grep="<message>"`. Discovered during RFC-1139 stamping.
196
210
 
211
+ ## ADR status transitions: adr.implement.stamp commit reference (ADR-IMP-03)
212
+
213
+ `adr.implement.stamp --implementation-commit <sha>` requires the commit to reference the ADR id — satisfied when the commit message contains the id **or** its changed-file list contains the `adr-xxxx-*` slug (`commitReferencesAdr`, `os/adr/handlers/implement-stamp.ts`). For **post-hoc ADRs** (decision already implemented before the ADR was written), the historic implementation commit does not mention the id — pass the `adr: accept` or `trace:` commit instead; both qualify. Discovered during ADR-0103 stamping.
214
+
197
215
  ## RFC acceptance criteria: evidence annotation (RFC-IMP-02)
198
216
 
199
217
  `rfc.implement.stamp` enforces RFC-IMP-02: every checked acceptance criterion (`- [x]`) MUST have an inline `(evidence: ...)` annotation. Parenthetical references without the `evidence:` keyword (e.g. `(promote.ts, 13 tests)`) do NOT satisfy the rule — the stamp fails with "checked criteria lack inline (evidence: ...) annotation". Always format as: `- [x] <criterion text> (evidence: <file paths, commands, or test counts>)`. Commit the annotated criteria before running `rfc.implement.stamp`.
@@ -346,13 +364,13 @@ The `forge-bootstrap` skill step 0 silently checks `forge.syncedVersion` against
346
364
 
347
365
  `forge.agents.generate` now includes a **Core behavioral layer** section in generated `AGENTS.md` files. This section is wrapped in `<!-- forge:begin behavioral-layer -->` / `<!-- forge:end behavioral-layer -->` markers and contains:
348
366
 
349
- - **Intent-to-skill routing table** — generated from `triggers` fields in fo-skill frontmatter. Each row maps natural-language trigger phrases to the corresponding skill.
367
+ - **Intent-to-skill routing table** — generated from `triggerPhrases` fields in fo-skill frontmatter. Each row maps natural-language trigger phrases to the corresponding skill.
350
368
  - **Fixed policy text** for 20 core behavioral areas: auto-grilling, auto-session-save, auto-review, context awareness, creator-facing communication, adaptive learning, proactive guidance, live operator feedback, register parameter, pushback policy, external capabilities (MCP), safety net, invisible quality, first creation moment, creative health, sharing and feedback, cultural awareness, indirect teaching, ownership, and commit policy (RFC-0551).
351
369
  - **Conditional extended behavioral layer** (RFC-0549) — included only when the register is `creative` (read from `PREFERENCES.md` `register` field). Contains ten sections: personal connection, creative memory, emotional rhythm (questions not declarations), gentle accountability, creative partnership, visual thinking, audience empathy, creative companion (companion mode, `saveCompanionSessions` flag, pull-only inspiration feed), creative confidence (outcome-based praise, never refuse creative direction), and always-next-step (RFC-0551, supersedes the "at most one per session" anticipatory suggestion limit). Content is loaded from `src/onboarding/templates/behavioral-layer-extended.md`.
352
370
 
353
371
  `create` auto-runs `forge.agents.generate` after `forge.init`, so newly created projects get the behavioral layer from day one. If generation fails, a warning is logged but the create command continues.
354
372
 
355
- The `triggers` field in skill frontmatter is validated by SKILL-16: optional array of 1-5 natural-language strings (each 5-100 characters), only allowed on fo-category skills. Pack skills may not declare triggers.
373
+ The `triggerPhrases` field in skill frontmatter is validated by SKILL-16: optional array of 1-5 natural-language strings (each 5-100 characters), only allowed on fo-category skills. Pack skills may not declare triggerPhrases. The field is named `triggerPhrases`, not `triggers` — agent-IDE skill loaders (Devin CLI, Windsurf) reserve `triggers` for invocation modes (`user`/`model`), and a phrase list there silently drops the skill from discovery. SKILL-22 rejects a raw `triggers` key on both forge and pack skills.
356
374
 
357
375
  ## Nested AGENTS.md generation (RFC-0611)
358
376
 
@@ -371,6 +389,18 @@ The edit guard skips hand-written nested `AGENTS.md` files (no generated marker)
371
389
 
372
390
  - **Doctor stale check MUST use the same rendering pipeline as `forge agents generate`.** The stale check in `checkNestedAgentsMd` (`src/onboarding/doctor.ts`) must call `readPackageInfo` → `buildNestedAgentsMd(ws, config, packageInfo)` → `selectNestedTemplate(wsType, profile, terminology, fallback)` — exactly matching `generateNestedAgentsMd` in `src/onboarding/nested-agents-generate.ts`. Any divergence (missing `packageInfo`, missing `selectNestedTemplate`, missing `resolveAllTerminology`) causes false-positive stale reports for all generated nested `AGENTS.md` files. When modifying either function, verify the other stays in sync.
373
391
 
392
+ ## Editable generated files: `forge:custom` boundary (RFC-1153)
393
+
394
+ Editable generated files (root `AGENTS.md`, nested workspace `AGENTS.md`) are split by a preservation boundary. The generated head above the boundary is regenerated on every run; the custom tail below it is carried over verbatim.
395
+
396
+ - **Marker** — a `forge:custom` line in the file's comment style (`<!-- forge:custom -->` for `.md`). The marker line belongs to the generated head; only the **first** occurrence splits the file. It is emitted by the merge — operators may place it deliberately, but emitters MUST NOT write `forge:custom` inside generated content itself.
397
+ - **Hint line** — the generator emits `<!-- Add workspace-specific guidance below this line. Everything below is preserved on regeneration. -->` directly beneath the marker.
398
+ - **Footer fallback** — legacy files without the marker resolve the boundary at the canonical template footer (the last non-empty line of the render). The fallback fires at most once per file; the merged output gains the explicit marker.
399
+ - **Fail-closed** — when no boundary resolves and content diverges, the write is skipped (`unmapped-customization`), never overwritten. `doctor` reports the same diagnostic; the operator adds the marker to set the boundary.
400
+ - **Restrictive-marker files are never unmapped** — a file bearing only `GENERATED_MARKER` (no "Safe to edit") is fully generator-owned (RFC-0081): the merge path overwrites it with the editable boundary contract (fallback to a fresh merge) and `doctor` reports divergence as `stale`, never `unmapped-customization`. Fail-closed skip applies only to `EDITABLE_GENERATED_MARKER` files.
401
+ - **Merge rules** — `splitEditableGenerated` / `mergeEditableGenerated` live in `src/utils/editable-region.ts` (pure, no I/O); boundary matching normalizes `\r\n` → `\n` (DNA-58 rule). Existing-file reads MUST go through `WorkspaceIO` (`io.readFile`), not bare `fs`.
402
+ - **Upgrade visibility** — `forge upgrade --dry-run` reports `nestedAgentsPlanned` (merged output differs from disk) and `nestedAgentsSkipped`; the executing path reports `nestedAgentsGenerated`/`nestedAgentsPreserved`/`nestedAgentsSkipped`.
403
+
374
404
  ## Extended behavioral layer (RFC-0549)
375
405
 
376
406
  The extended behavioral layer is conditionally included in generated `AGENTS.md` files when the operator's register is `creative`. It adds ten behavioral policies additive to the core layer:
package/README.md CHANGED
@@ -258,7 +258,7 @@ pnpm exec forge upgrade
258
258
  pnpm exec forge doctor
259
259
  ```
260
260
 
261
- `forge upgrade` is additive — it never overwrites operator-set bindings, never deletes files, and is idempotent. Use `--dry-run` to preview changes.
261
+ `forge upgrade` is additive — it never overwrites operator-set bindings, is idempotent, and reconciles the generated surface on every run (including same-version noop): synced skill dirs get a `.forge-managed` manifest, stale marked dirs are pruned only when their contents match the manifest, and prettier consumers get a delimited forge-managed block in `.prettierignore` (RFC-1154). Use `--dry-run` to preview changes. Editable generated guides (`AGENTS.md`) are merged, not overwritten: content below the `<!-- forge:custom -->` boundary is preserved verbatim on regeneration (RFC-1153), and `--dry-run` reports `nestedAgentsPlanned` / `nestedAgentsPreserved` / `nestedAgentsSkipped`.
262
262
 
263
263
  ---
264
264
 
package/README.uk.md CHANGED
@@ -50,13 +50,13 @@ pnpm dlx @warpgogol/forge@latest create --in-place --profile typescript
50
50
 
51
51
  Forge не залежить від типу проєкту. Профілі стеку — готові стартові точки.
52
52
 
53
- | Профіль | Призначення |
54
- | -------------------------------- | ------------------------------------------- |
55
- | `forge-shell` | Лише управління, бібліотеки, не-веб проєкти |
56
- | `typescript` | TypeScript монорепозиторій з валідаторами |
57
- | `phaser-game` | Браузерні ігри, інтерактивні досвіди |
58
- | `godot-game` | Десктопні/мобільні ігри на Godot 4.x + C# |
59
- | `knowledge` | Бази знань з підтримкою доказів |
53
+ | Профіль | Призначення |
54
+ | ------------- | ------------------------------------------- |
55
+ | `forge-shell` | Лише управління, бібліотеки, не-веб проєкти |
56
+ | `typescript` | TypeScript монорепозиторій з валідаторами |
57
+ | `phaser-game` | Браузерні ігри, інтерактивні досвіди |
58
+ | `godot-game` | Десктопні/мобільні ігри на Godot 4.x + C# |
59
+ | `knowledge` | Бази знань з підтримкою доказів |
60
60
 
61
61
  ```sh
62
62
  # Перелічити доступні профілі
@@ -258,7 +258,7 @@ pnpm exec forge upgrade
258
258
  pnpm exec forge doctor
259
259
  ```
260
260
 
261
- `forge upgrade` — адитивний: ніколи не перезаписує прив'язки, встановлені оператором, ніколи не видаляє файли, ідемпотентний. Використовуйте `--dry-run` для попереднього перегляду.
261
+ `forge upgrade` — адитивний: ніколи не перезаписує прив'язки, встановлені оператором, ідемпотентний, і при кожному запуску (включно з noop тієї ж версії) узгоджує згенеровану поверхню: синхронізовані каталоги скілів отримують маніфест `.forge-managed`, застарілі позначені каталоги видаляються лише коли їхній вміст відповідає маніфесту, а споживачі prettier отримують делімітований forge-managed блок у `.prettierignore` (RFC-1154). Використовуйте `--dry-run` для попереднього перегляду. Редаговані згенеровані гайди (`AGENTS.md`) об'єднуються, а не перезаписуються: вміст нижче межі `<!-- forge:custom -->` зберігається без змін при регенерації (RFC-1153), а `--dry-run` звітує `nestedAgentsPlanned` / `nestedAgentsPreserved` / `nestedAgentsSkipped`.
262
262
 
263
263
  ---
264
264
 
package/bin/cli.ts CHANGED
@@ -100,6 +100,7 @@ class ForgeCliRegistry implements ForgeModuleRegistry, CommandRegistry {
100
100
  flags: c.flags,
101
101
  reads: c.reads,
102
102
  writes: c.writes,
103
+ generates: c.generates,
103
104
  }));
104
105
  }
105
106
 
package/dist/bin/cli.js CHANGED
@@ -81,6 +81,7 @@ class ForgeCliRegistry {
81
81
  flags: c.flags,
82
82
  reads: c.reads,
83
83
  writes: c.writes,
84
+ generates: c.generates,
84
85
  }));
85
86
  }
86
87
  getCommand(name) {
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../bin/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../bin/cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"adr.module.d.ts","sourceRoot":"","sources":["../../../os/adr/adr.module.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAE7D,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,WAAW,CAAC,CAgJjE"}
1
+ {"version":3,"file":"adr.module.d.ts","sourceRoot":"","sources":["../../../os/adr/adr.module.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAE7D,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,WAAW,CAAC,CAoJjE"}
@@ -9,6 +9,7 @@
9
9
  <item>RFC-0366: register adr.create, adr.validate, and adr.list commands.</item>
10
10
  <item>RFC-0521: migrated from packages/os/site-kernel/src/adr/ to packages/forge/os/adr/ as forgeAdrModule.</item>
11
11
  <item>RFC-0727: register adr.implement.stamp command for atomic ADR status transition.</item>
12
+ <item>RFC-1173: declare mutatesState on all kernel commands — collectDeclarationDiagnostics emits error-severity MUTATES-STATE-DECLARED, command.manifest.validate is the blocking consumer in packages.check, sweep declares the flag on every command definition (factories hardcode false for read-only check specs)</item>
12
13
  </CHANGE_SUMMARY>
13
14
  */
14
15
  export async function createForgeAdrModule() {
@@ -24,6 +25,7 @@ export async function createForgeAdrModule() {
24
25
  commands: [
25
26
  {
26
27
  name: "adr.list",
28
+ mutatesState: false,
27
29
  description: "List all ADRs. Filter with --status, --scope, --decider flags. " +
28
30
  "Use --json for machine-readable output. " +
29
31
  "Parses frontmatter on the fly — no index file needed.",
@@ -52,6 +54,7 @@ export async function createForgeAdrModule() {
52
54
  scope: "workspace",
53
55
  mutatesState: true,
54
56
  writes: ["docs/adrs/adr-*.md"],
57
+ generates: [],
55
58
  reads: ["docs/adrs/**/*.md"],
56
59
  cacheable: false,
57
60
  flags: {
@@ -80,6 +83,7 @@ export async function createForgeAdrModule() {
80
83
  },
81
84
  {
82
85
  name: "adr.validate",
86
+ mutatesState: false,
83
87
  contract: "adr",
84
88
  rules: [],
85
89
  description: "Validate ADR frontmatter schema, required markdown sections, " +
@@ -102,6 +106,7 @@ export async function createForgeAdrModule() {
102
106
  scope: "workspace",
103
107
  mutatesState: true,
104
108
  writes: ["docs/adrs/*.md", "docs/adrs/archive/**"],
109
+ generates: [],
105
110
  reads: ["docs/adrs/**/*.md"],
106
111
  cacheable: false,
107
112
  flags: {
@@ -125,6 +130,7 @@ export async function createForgeAdrModule() {
125
130
  scope: "workspace",
126
131
  mutatesState: true,
127
132
  writes: ["docs/adrs/*.md"],
133
+ generates: [],
128
134
  reads: ["docs/adrs/**/*.md"],
129
135
  cacheable: false,
130
136
  flags: {
@@ -144,10 +150,9 @@ export async function createForgeAdrModule() {
144
150
  },
145
151
  },
146
152
  execute: runAdrImplementStamp,
147
- }
153
+ },
148
154
  ],
149
- pipelines: []
155
+ pipelines: [],
150
156
  };
151
157
  }
152
- ;
153
158
  //# sourceMappingURL=adr.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"adr.module.js","sourceRoot":"","sources":["../../../os/adr/adr.module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adr.module.js","sourceRoot":"","sources":["../../../os/adr/adr.module.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ without validating the shape.
13
13
  <item>RFC-0521: migrated from packages/os/site-kernel/src/adr/ to packages/forge/os/adr/.</item>
14
14
  </CHANGE_SUMMARY>
15
15
  */
16
- import fs from "node:fs/promises";
16
+ import { ambientIo as fs } from "../../src/utils/io.js";
17
17
  import path from "node:path";
18
18
  import YAML from "yaml";
19
19
  export function parseAdrFile(source) {
@@ -30,13 +30,13 @@ export async function listAdrFiles(adrDirPath) {
30
30
  const results = [];
31
31
  async function scanDir(dirPath, relativePrefix) {
32
32
  try {
33
- const entries = await fs.readdir(dirPath, { withFileTypes: true });
33
+ const entries = await fs.readdir(dirPath);
34
34
  for (const entry of entries) {
35
35
  const relativePath = relativePrefix ? `${relativePrefix}/${entry.name}` : entry.name;
36
- if (entry.isDirectory()) {
36
+ if (entry.isDirectory) {
37
37
  await scanDir(path.join(dirPath, entry.name), relativePath);
38
38
  }
39
- else if (entry.isFile() &&
39
+ else if (entry.isFile &&
40
40
  entry.name.endsWith(".md") &&
41
41
  !entry.name.startsWith("adr-0000") &&
42
42
  entry.name !== "README.md") {
@@ -57,7 +57,7 @@ export function adrFileMatchesId(fileName, targetId) {
57
57
  export async function readAndParseAdr(adrDirPath, fileName) {
58
58
  try {
59
59
  const filePath = path.join(adrDirPath, fileName);
60
- const content = await fs.readFile(filePath, "utf-8");
60
+ const content = await fs.readFile(filePath);
61
61
  return { fileName, parsed: parseAdrFile(content) };
62
62
  }
63
63
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"frontmatter-io.js","sourceRoot":"","sources":["../../../os/adr/frontmatter-io.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;EAcE;AAEF,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,IAAI,MAAM,MAAM,CAAC;AAOxB,MAAM,UAAU,YAAY,CAAC,MAAc;IACzC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;IAC1E,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC3C,CAAC;IACD,OAAO;QACL,WAAW,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,CAA4B;QACrE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;KACrB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,UAAkB;IACnD,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,KAAK,UAAU,OAAO,CAAC,OAAe,EAAE,cAAsB;QAC5D,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;YACnE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC5B,MAAM,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,cAAc,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;gBACrF,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;oBACxB,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;gBAC9D,CAAC;qBAAM,IACL,KAAK,CAAC,MAAM,EAAE;oBACd,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;oBAC1B,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;oBAClC,KAAK,CAAC,IAAI,KAAK,WAAW,EAC1B,CAAC;oBACD,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,0DAA0D;QAC5D,CAAC;IACH,CAAC;IAED,MAAM,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAC9B,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,QAAgB,EAAE,QAAgB;IACjE,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;AAClF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,UAAkB,EAClB,QAAgB;IAEhB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;IACrD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"frontmatter-io.js","sourceRoot":"","sources":["../../../os/adr/frontmatter-io.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;EAcE;AAEF,OAAO,EAAE,SAAS,IAAI,EAAE,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,IAAI,MAAM,MAAM,CAAC;AAOxB,MAAM,UAAU,YAAY,CAAC,MAAc;IACzC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;IAC1E,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC3C,CAAC;IACD,OAAO;QACL,WAAW,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,CAA4B;QACrE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;KACrB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,UAAkB;IACnD,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,KAAK,UAAU,OAAO,CAAC,OAAe,EAAE,cAAsB;QAC5D,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC1C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC5B,MAAM,YAAY,GAAG,cAAc,CAAC,CAAC,CAAC,GAAG,cAAc,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;gBACrF,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;oBACtB,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC,CAAC;gBAC9D,CAAC;qBAAM,IACL,KAAK,CAAC,MAAM;oBACZ,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;oBAC1B,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;oBAClC,KAAK,CAAC,IAAI,KAAK,WAAW,EAC1B,CAAC;oBACD,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,0DAA0D;QAC5D,CAAC;IACH,CAAC;IAED,MAAM,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAC9B,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,QAAgB,EAAE,QAAgB;IACjE,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;AAClF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,UAAkB,EAClB,QAAgB;IAEhB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;IACrD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"archive.d.ts","sourceRoot":"","sources":["../../../../os/adr/handlers/archive.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAI/B,eAAO,MAAM,qBAAqB,oDAAqD,CAAC;AAExF,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,cAAc,GAAG,gBAAgB,CAAC;CAC9C;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,aAAa,CAAC;IACvB,MAAM,EAAE,IAAI,CAAC;IACb,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,wBAAsB,aAAa,CACjC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CAyL/C"}
1
+ {"version":3,"file":"archive.d.ts","sourceRoot":"","sources":["../../../../os/adr/handlers/archive.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAI/B,eAAO,MAAM,qBAAqB,oDAAqD,CAAC;AAExF,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,cAAc,GAAG,gBAAgB,CAAC;CAC9C;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,aAAa,CAAC;IACvB,MAAM,EAAE,IAAI,CAAC;IACb,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,wBAAsB,aAAa,CACjC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CA6L/C"}
@@ -16,7 +16,7 @@ in subdirectories back to the root.
16
16
  <item>RFC-0733: add pinned-files pre-check — skip pinned files with warning instead of moving them.</item>
17
17
  </CHANGE_SUMMARY>
18
18
  */
19
- import fs from "node:fs/promises";
19
+ import { ambientIo as fs } from "../../../src/utils/io.js";
20
20
  import path from "node:path";
21
21
  import { listAdrFiles, readAndParseAdr } from "../frontmatter-io.js";
22
22
  import { ADR_DIR } from "../types.js";
@@ -82,7 +82,10 @@ export async function runAdrArchive(input, context) {
82
82
  continue;
83
83
  }
84
84
  try {
85
- await fs.access(targetPath);
85
+ await fs.exists(targetPath).then((ok) => {
86
+ if (!ok)
87
+ throw Object.assign(new Error("ENOENT"), { code: "ENOENT" });
88
+ });
86
89
  skipped.push({ id, file: relFile, reason: "destination exists" });
87
90
  continue;
88
91
  }
@@ -90,7 +93,7 @@ export async function runAdrArchive(input, context) {
90
93
  // destination doesn't exist — proceed
91
94
  }
92
95
  if (!dryRun) {
93
- await fs.mkdir(targetDir, { recursive: true });
96
+ await fs.mkdir(targetDir);
94
97
  try {
95
98
  await fs.rename(path.join(adrDirPath, fileName), targetPath);
96
99
  }
@@ -126,7 +129,10 @@ export async function runAdrArchive(input, context) {
126
129
  continue;
127
130
  }
128
131
  try {
129
- await fs.access(targetPath);
132
+ await fs.exists(targetPath).then((ok) => {
133
+ if (!ok)
134
+ throw Object.assign(new Error("ENOENT"), { code: "ENOENT" });
135
+ });
130
136
  skipped.push({ id, file: relFile, reason: "destination exists" });
131
137
  continue;
132
138
  }
@@ -1 +1 @@
1
- {"version":3,"file":"archive.js","sourceRoot":"","sources":["../../../../os/adr/handlers/archive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"archive.js","sourceRoot":"","sources":["../../../../os/adr/handlers/archive.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"implement-stamp.d.ts","sourceRoot":"","sources":["../../../../os/adr/handlers/implement-stamp.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAyC,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAClG,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AA0H/B,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,CAAC,CA2LtD"}
1
+ {"version":3,"file":"implement-stamp.d.ts","sourceRoot":"","sources":["../../../../os/adr/handlers/implement-stamp.ts"],"names":[],"mappings":"AA6BA,OAAO,KAAK,EAAyC,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAKlG,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAyH/B,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,CAAC,CA4LtD"}
@@ -16,13 +16,16 @@ and atomically mutates ADR frontmatter.
16
16
  <item>fix: add ADR-IMP-02 acceptance-criteria gate — block stamping post-cutoff ADRs with unchecked or evidence-less criteria (parity with rfc.implement.stamp RFC-IMP-02; prevents late adr.validate AV-17 failures).</item>
17
17
  </CHANGE_SUMMARY>
18
18
  */
19
- import { execFile } from "node:child_process";
20
- import { readFile, unlink, mkdir } from "node:fs/promises";
19
+ import { execFile, writeFileSync } from "../../../src/utils/sync-fs.js";
20
+ import { ambientIo, resolveIo } from "../../../src/utils/io.js";
21
21
  import { join, dirname } from "node:path";
22
22
  import { writeFileAtomic } from "../../../src/utils/fs-atomic.js";
23
23
  import { listAdrFiles, readAndParseAdr, adrFileMatchesId } from "../frontmatter-io.js";
24
24
  import { evaluateAcceptanceCriteria } from "../../rfc/handlers/validate-rules.js";
25
25
  import { ADR_DIR, ADR_ACCEPTANCE_CRITERIA_CUTOFF } from "../types.js";
26
+ // Ambient default for helper fns without a context param — handlers override
27
+ // with `const io = resolveIo(context.io)` inside their own scope.
28
+ const io = ambientIo;
26
29
  // ─── Git helpers ─────────────────────────────────────────────────────────────
27
30
  function execGit(workspaceRoot, args) {
28
31
  return new Promise((resolve) => {
@@ -69,12 +72,9 @@ function lockFilePath(workspaceRoot, adrId) {
69
72
  async function acquireAdrLock(workspaceRoot, adrId) {
70
73
  const lockPath = lockFilePath(workspaceRoot, adrId);
71
74
  const lockDir = dirname(lockPath);
72
- await mkdir(lockDir, { recursive: true });
73
- const { open } = await import("node:fs/promises");
75
+ await io.mkdir(lockDir);
74
76
  try {
75
- const handle = await open(lockPath, "wx");
76
- await handle.writeFile(JSON.stringify({ pid: process.pid, acquiredAt: new Date().toISOString() }));
77
- await handle.close();
77
+ writeFileSync(lockPath, JSON.stringify({ pid: process.pid, acquiredAt: new Date().toISOString() }), { flag: "wx" });
78
78
  return { acquired: true, lockPath };
79
79
  }
80
80
  catch {
@@ -83,7 +83,7 @@ async function acquireAdrLock(workspaceRoot, adrId) {
83
83
  }
84
84
  async function releaseAdrLock(lockPath) {
85
85
  try {
86
- await unlink(lockPath);
86
+ await io.rm(lockPath);
87
87
  }
88
88
  catch {
89
89
  // Lock file already removed — safe
@@ -107,6 +107,7 @@ function toIsoDate(date) {
107
107
  }
108
108
  // ─── Main handler ────────────────────────────────────────────────────────────
109
109
  export async function runAdrImplementStamp(input, context) {
110
+ const io = resolveIo(context.io);
110
111
  const { workspaceRoot, logger, outputFormat, dryRun } = context;
111
112
  const adrDirPath = join(workspaceRoot, ADR_DIR);
112
113
  const targetId = input.flags["id"];
@@ -210,7 +211,7 @@ export async function runAdrImplementStamp(input, context) {
210
211
  try {
211
212
  // ── Atomic mutation ──────────────────────────────────────────────────────
212
213
  const adrFilePath = join(adrDirPath, targetFile);
213
- const adrSource = await readFile(adrFilePath, "utf-8");
214
+ const adrSource = await io.readFile(adrFilePath);
214
215
  const today = toIsoDate(new Date());
215
216
  const stampedAt = new Date().toISOString();
216
217
  const mutatedSource = mutateAdrFrontmatter(adrSource, "implemented", today, today);
@@ -1 +1 @@
1
- {"version":3,"file":"implement-stamp.js","sourceRoot":"","sources":["../../../../os/adr/handlers/implement-stamp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"implement-stamp.js","sourceRoot":"","sources":["../../../../os/adr/handlers/implement-stamp.ts"],"names":[],"mappings":"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"}
@@ -13,8 +13,8 @@
13
13
  Sweep batch 2: real KEY_DECISIONS on 10 files, expanded purposes (CONTRACT-02/PURPOSE-02), headers on mission/index + gen-upstreams, sanitizeItemText in summary.record (literal Compass tags corrupted history), excludedPaths for wrangler types, test-fixtures testPattern. forge+services now 0 diagnostics under --mode error.</item>
14
14
  </CHANGE_SUMMARY>
15
15
  */
16
- import fs from "node:fs/promises";
17
- import { existsSync } from "node:fs";
16
+ import { ambientIo as fs } from "../../../src/utils/io.js";
17
+ import { existsSync } from "../../../src/utils/sync-fs.js";
18
18
  import path from "node:path";
19
19
  import { fileURLToPath } from "node:url";
20
20
  import { toKebabCase } from "../../../src/utils/string-utils.js";
@@ -113,7 +113,7 @@ export async function runAdrCreate(input, context) {
113
113
  const templatePath = resolveAdrTemplate(workspaceRoot);
114
114
  let templateContent;
115
115
  try {
116
- templateContent = await fs.readFile(templatePath, "utf-8");
116
+ templateContent = await fs.readFile(templatePath);
117
117
  }
118
118
  catch {
119
119
  throw new Error(`ADR template not found at ${templatePath}. Ensure docs/adrs/ contains the template.`);
@@ -144,13 +144,13 @@ export async function runAdrCreate(input, context) {
144
144
  content = content.replace(/^related:\s*\n\s*- RFC-0001\s*$/m, `related: []`);
145
145
  }
146
146
  try {
147
- await fs.mkdir(adrDirPath, { recursive: true });
147
+ await fs.mkdir(adrDirPath);
148
148
  }
149
149
  catch {
150
150
  // ignore
151
151
  }
152
152
  const targetPath = path.join(adrDirPath, fileName);
153
- await fs.writeFile(targetPath, content, "utf-8");
153
+ await fs.writeFile(targetPath, content);
154
154
  const relativeFile = path.join(ADR_DIR, fileName);
155
155
  if (outputFormat === "pretty") {
156
156
  logger.success(`Created ${nextId}: ${title}`);