@warpgogol/forge 2.11.0 → 2.14.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 (713) hide show
  1. package/AGENTS.md +415 -0
  2. package/bin/cli.js +7 -9
  3. package/bin/cli.ts +337 -0
  4. package/package.json +4 -130
  5. package/src/types/werkstatt-shared-shims.d.ts +10 -0
  6. package/dist/bin/cli.d.ts +0 -3
  7. package/dist/bin/cli.d.ts.map +0 -1
  8. package/dist/bin/cli.js +0 -291
  9. package/dist/bin/cli.js.map +0 -1
  10. package/dist/os/adr/adr.module.d.ts +0 -3
  11. package/dist/os/adr/adr.module.d.ts.map +0 -1
  12. package/dist/os/adr/adr.module.js +0 -146
  13. package/dist/os/adr/adr.module.js.map +0 -1
  14. package/dist/os/adr/frontmatter-io.d.ts +0 -12
  15. package/dist/os/adr/frontmatter-io.d.ts.map +0 -1
  16. package/dist/os/adr/frontmatter-io.js +0 -67
  17. package/dist/os/adr/frontmatter-io.js.map +0 -1
  18. package/dist/os/adr/handlers/archive.d.ts +0 -24
  19. package/dist/os/adr/handlers/archive.d.ts.map +0 -1
  20. package/dist/os/adr/handlers/archive.js +0 -194
  21. package/dist/os/adr/handlers/archive.js.map +0 -1
  22. package/dist/os/adr/handlers/implement-stamp.d.ts +0 -4
  23. package/dist/os/adr/handlers/implement-stamp.d.ts.map +0 -1
  24. package/dist/os/adr/handlers/implement-stamp.js +0 -264
  25. package/dist/os/adr/handlers/implement-stamp.js.map +0 -1
  26. package/dist/os/adr/handlers/list-create.d.ts +0 -5
  27. package/dist/os/adr/handlers/list-create.d.ts.map +0 -1
  28. package/dist/os/adr/handlers/list-create.js +0 -201
  29. package/dist/os/adr/handlers/list-create.js.map +0 -1
  30. package/dist/os/adr/handlers/validate.d.ts +0 -4
  31. package/dist/os/adr/handlers/validate.d.ts.map +0 -1
  32. package/dist/os/adr/handlers/validate.js +0 -279
  33. package/dist/os/adr/handlers/validate.js.map +0 -1
  34. package/dist/os/adr/index.d.ts +0 -8
  35. package/dist/os/adr/index.d.ts.map +0 -1
  36. package/dist/os/adr/index.js +0 -18
  37. package/dist/os/adr/index.js.map +0 -1
  38. package/dist/os/adr/types.d.ts +0 -76
  39. package/dist/os/adr/types.d.ts.map +0 -1
  40. package/dist/os/adr/types.js +0 -56
  41. package/dist/os/adr/types.js.map +0 -1
  42. package/dist/os/audit/audit.module.d.ts +0 -3
  43. package/dist/os/audit/audit.module.d.ts.map +0 -1
  44. package/dist/os/audit/audit.module.js +0 -45
  45. package/dist/os/audit/audit.module.js.map +0 -1
  46. package/dist/os/audit/frontmatter-io.d.ts +0 -12
  47. package/dist/os/audit/frontmatter-io.d.ts.map +0 -1
  48. package/dist/os/audit/frontmatter-io.js +0 -71
  49. package/dist/os/audit/frontmatter-io.js.map +0 -1
  50. package/dist/os/audit/handlers/archive.d.ts +0 -4
  51. package/dist/os/audit/handlers/archive.d.ts.map +0 -1
  52. package/dist/os/audit/handlers/archive.js +0 -207
  53. package/dist/os/audit/handlers/archive.js.map +0 -1
  54. package/dist/os/audit/index.d.ts +0 -6
  55. package/dist/os/audit/index.d.ts.map +0 -1
  56. package/dist/os/audit/index.js +0 -16
  57. package/dist/os/audit/index.js.map +0 -1
  58. package/dist/os/audit/types.d.ts +0 -12
  59. package/dist/os/audit/types.d.ts.map +0 -1
  60. package/dist/os/audit/types.js +0 -17
  61. package/dist/os/audit/types.js.map +0 -1
  62. package/dist/os/compass/compass.module.d.ts +0 -3
  63. package/dist/os/compass/compass.module.d.ts.map +0 -1
  64. package/dist/os/compass/compass.module.js +0 -183
  65. package/dist/os/compass/compass.module.js.map +0 -1
  66. package/dist/os/compass/handlers/compass-audit-handler.d.ts +0 -36
  67. package/dist/os/compass/handlers/compass-audit-handler.d.ts.map +0 -1
  68. package/dist/os/compass/handlers/compass-audit-handler.js +0 -260
  69. package/dist/os/compass/handlers/compass-audit-handler.js.map +0 -1
  70. package/dist/os/compass/handlers/compass-change-summary-handler.d.ts +0 -19
  71. package/dist/os/compass/handlers/compass-change-summary-handler.d.ts.map +0 -1
  72. package/dist/os/compass/handlers/compass-change-summary-handler.js +0 -222
  73. package/dist/os/compass/handlers/compass-change-summary-handler.js.map +0 -1
  74. package/dist/os/compass/handlers/compass-inventory-handler.d.ts +0 -28
  75. package/dist/os/compass/handlers/compass-inventory-handler.d.ts.map +0 -1
  76. package/dist/os/compass/handlers/compass-inventory-handler.js +0 -377
  77. package/dist/os/compass/handlers/compass-inventory-handler.js.map +0 -1
  78. package/dist/os/compass/handlers/compass-inventory.d.ts +0 -30
  79. package/dist/os/compass/handlers/compass-inventory.d.ts.map +0 -1
  80. package/dist/os/compass/handlers/compass-inventory.js +0 -462
  81. package/dist/os/compass/handlers/compass-inventory.js.map +0 -1
  82. package/dist/os/compass/handlers/git-revision.d.ts +0 -8
  83. package/dist/os/compass/handlers/git-revision.d.ts.map +0 -1
  84. package/dist/os/compass/handlers/git-revision.js +0 -99
  85. package/dist/os/compass/handlers/git-revision.js.map +0 -1
  86. package/dist/os/compass/handlers/resolve-scan-root.d.ts +0 -3
  87. package/dist/os/compass/handlers/resolve-scan-root.d.ts.map +0 -1
  88. package/dist/os/compass/handlers/resolve-scan-root.js +0 -57
  89. package/dist/os/compass/handlers/resolve-scan-root.js.map +0 -1
  90. package/dist/os/compass/index.d.ts +0 -8
  91. package/dist/os/compass/index.d.ts.map +0 -1
  92. package/dist/os/compass/index.js +0 -19
  93. package/dist/os/compass/index.js.map +0 -1
  94. package/dist/os/core/core.module.d.ts +0 -3
  95. package/dist/os/core/core.module.d.ts.map +0 -1
  96. package/dist/os/core/core.module.js +0 -836
  97. package/dist/os/core/core.module.js.map +0 -1
  98. package/dist/os/core/handlers/assets-check.d.ts +0 -19
  99. package/dist/os/core/handlers/assets-check.d.ts.map +0 -1
  100. package/dist/os/core/handlers/assets-check.js +0 -89
  101. package/dist/os/core/handlers/assets-check.js.map +0 -1
  102. package/dist/os/core/handlers/assets-helpers.d.ts +0 -28
  103. package/dist/os/core/handlers/assets-helpers.d.ts.map +0 -1
  104. package/dist/os/core/handlers/assets-helpers.js +0 -128
  105. package/dist/os/core/handlers/assets-helpers.js.map +0 -1
  106. package/dist/os/core/handlers/assets-list.d.ts +0 -9
  107. package/dist/os/core/handlers/assets-list.d.ts.map +0 -1
  108. package/dist/os/core/handlers/assets-list.js +0 -72
  109. package/dist/os/core/handlers/assets-list.js.map +0 -1
  110. package/dist/os/core/handlers/build.d.ts +0 -16
  111. package/dist/os/core/handlers/build.d.ts.map +0 -1
  112. package/dist/os/core/handlers/build.js +0 -123
  113. package/dist/os/core/handlers/build.js.map +0 -1
  114. package/dist/os/core/handlers/determinism-check.d.ts +0 -20
  115. package/dist/os/core/handlers/determinism-check.d.ts.map +0 -1
  116. package/dist/os/core/handlers/determinism-check.js +0 -289
  117. package/dist/os/core/handlers/determinism-check.js.map +0 -1
  118. package/dist/os/core/handlers/dev.d.ts +0 -10
  119. package/dist/os/core/handlers/dev.d.ts.map +0 -1
  120. package/dist/os/core/handlers/dev.js +0 -102
  121. package/dist/os/core/handlers/dev.js.map +0 -1
  122. package/dist/os/core/handlers/forge-autonomy-validate.d.ts +0 -18
  123. package/dist/os/core/handlers/forge-autonomy-validate.d.ts.map +0 -1
  124. package/dist/os/core/handlers/forge-autonomy-validate.js +0 -115
  125. package/dist/os/core/handlers/forge-autonomy-validate.js.map +0 -1
  126. package/dist/os/core/handlers/knowledge-compact.d.ts +0 -4
  127. package/dist/os/core/handlers/knowledge-compact.d.ts.map +0 -1
  128. package/dist/os/core/handlers/knowledge-compact.js +0 -204
  129. package/dist/os/core/handlers/knowledge-compact.js.map +0 -1
  130. package/dist/os/core/handlers/package-health.d.ts +0 -17
  131. package/dist/os/core/handlers/package-health.d.ts.map +0 -1
  132. package/dist/os/core/handlers/package-health.js +0 -196
  133. package/dist/os/core/handlers/package-health.js.map +0 -1
  134. package/dist/os/core/handlers/pinned-check.d.ts +0 -49
  135. package/dist/os/core/handlers/pinned-check.d.ts.map +0 -1
  136. package/dist/os/core/handlers/pinned-check.js +0 -159
  137. package/dist/os/core/handlers/pinned-check.js.map +0 -1
  138. package/dist/os/core/handlers/pinned-init.d.ts +0 -19
  139. package/dist/os/core/handlers/pinned-init.d.ts.map +0 -1
  140. package/dist/os/core/handlers/pinned-init.js +0 -283
  141. package/dist/os/core/handlers/pinned-init.js.map +0 -1
  142. package/dist/os/core/handlers/pinned-types.d.ts +0 -29
  143. package/dist/os/core/handlers/pinned-types.d.ts.map +0 -1
  144. package/dist/os/core/handlers/pinned-types.js +0 -16
  145. package/dist/os/core/handlers/pinned-types.js.map +0 -1
  146. package/dist/os/core/handlers/pinned-validate.d.ts +0 -4
  147. package/dist/os/core/handlers/pinned-validate.d.ts.map +0 -1
  148. package/dist/os/core/handlers/pinned-validate.js +0 -248
  149. package/dist/os/core/handlers/pinned-validate.js.map +0 -1
  150. package/dist/os/core/handlers/profile-resolve.d.ts +0 -13
  151. package/dist/os/core/handlers/profile-resolve.d.ts.map +0 -1
  152. package/dist/os/core/handlers/profile-resolve.js +0 -65
  153. package/dist/os/core/handlers/profile-resolve.js.map +0 -1
  154. package/dist/os/core/handlers/release-prepare.d.ts +0 -25
  155. package/dist/os/core/handlers/release-prepare.d.ts.map +0 -1
  156. package/dist/os/core/handlers/release-prepare.js +0 -228
  157. package/dist/os/core/handlers/release-prepare.js.map +0 -1
  158. package/dist/os/core/handlers/release-publish.d.ts +0 -13
  159. package/dist/os/core/handlers/release-publish.d.ts.map +0 -1
  160. package/dist/os/core/handlers/release-publish.js +0 -173
  161. package/dist/os/core/handlers/release-publish.js.map +0 -1
  162. package/dist/os/core/handlers/validate.d.ts +0 -26
  163. package/dist/os/core/handlers/validate.d.ts.map +0 -1
  164. package/dist/os/core/handlers/validate.js +0 -208
  165. package/dist/os/core/handlers/validate.js.map +0 -1
  166. package/dist/os/core/index.d.ts +0 -2
  167. package/dist/os/core/index.d.ts.map +0 -1
  168. package/dist/os/core/index.js +0 -13
  169. package/dist/os/core/index.js.map +0 -1
  170. package/dist/os/exploration/exploration.module.d.ts +0 -3
  171. package/dist/os/exploration/exploration.module.d.ts.map +0 -1
  172. package/dist/os/exploration/exploration.module.js +0 -83
  173. package/dist/os/exploration/exploration.module.js.map +0 -1
  174. package/dist/os/exploration/frontmatter-io.d.ts +0 -13
  175. package/dist/os/exploration/frontmatter-io.d.ts.map +0 -1
  176. package/dist/os/exploration/frontmatter-io.js +0 -61
  177. package/dist/os/exploration/frontmatter-io.js.map +0 -1
  178. package/dist/os/exploration/handlers/archive.d.ts +0 -4
  179. package/dist/os/exploration/handlers/archive.d.ts.map +0 -1
  180. package/dist/os/exploration/handlers/archive.js +0 -141
  181. package/dist/os/exploration/handlers/archive.js.map +0 -1
  182. package/dist/os/exploration/handlers/list.d.ts +0 -4
  183. package/dist/os/exploration/handlers/list.d.ts.map +0 -1
  184. package/dist/os/exploration/handlers/list.js +0 -64
  185. package/dist/os/exploration/handlers/list.js.map +0 -1
  186. package/dist/os/exploration/handlers/show.d.ts +0 -4
  187. package/dist/os/exploration/handlers/show.d.ts.map +0 -1
  188. package/dist/os/exploration/handlers/show.js +0 -97
  189. package/dist/os/exploration/handlers/show.js.map +0 -1
  190. package/dist/os/exploration/index.d.ts +0 -7
  191. package/dist/os/exploration/index.d.ts.map +0 -1
  192. package/dist/os/exploration/index.js +0 -17
  193. package/dist/os/exploration/index.js.map +0 -1
  194. package/dist/os/exploration/types.d.ts +0 -38
  195. package/dist/os/exploration/types.d.ts.map +0 -1
  196. package/dist/os/exploration/types.js +0 -23
  197. package/dist/os/exploration/types.js.map +0 -1
  198. package/dist/os/mission/handlers/archive.d.ts +0 -4
  199. package/dist/os/mission/handlers/archive.d.ts.map +0 -1
  200. package/dist/os/mission/handlers/archive.js +0 -356
  201. package/dist/os/mission/handlers/archive.js.map +0 -1
  202. package/dist/os/mission/index.d.ts +0 -2
  203. package/dist/os/mission/index.d.ts.map +0 -1
  204. package/dist/os/mission/index.js +0 -2
  205. package/dist/os/mission/index.js.map +0 -1
  206. package/dist/os/mission/mission.module.d.ts +0 -3
  207. package/dist/os/mission/mission.module.d.ts.map +0 -1
  208. package/dist/os/mission/mission.module.js +0 -45
  209. package/dist/os/mission/mission.module.js.map +0 -1
  210. package/dist/os/mission/types.d.ts +0 -23
  211. package/dist/os/mission/types.d.ts.map +0 -1
  212. package/dist/os/mission/types.js +0 -18
  213. package/dist/os/mission/types.js.map +0 -1
  214. package/dist/os/naming/index.d.ts +0 -3
  215. package/dist/os/naming/index.d.ts.map +0 -1
  216. package/dist/os/naming/index.js +0 -14
  217. package/dist/os/naming/index.js.map +0 -1
  218. package/dist/os/naming/naming-convention.d.ts +0 -25
  219. package/dist/os/naming/naming-convention.d.ts.map +0 -1
  220. package/dist/os/naming/naming-convention.js +0 -324
  221. package/dist/os/naming/naming-convention.js.map +0 -1
  222. package/dist/os/naming/naming.module.d.ts +0 -3
  223. package/dist/os/naming/naming.module.d.ts.map +0 -1
  224. package/dist/os/naming/naming.module.js +0 -34
  225. package/dist/os/naming/naming.module.js.map +0 -1
  226. package/dist/os/notes/index.d.ts +0 -2
  227. package/dist/os/notes/index.d.ts.map +0 -1
  228. package/dist/os/notes/index.js +0 -10
  229. package/dist/os/notes/index.js.map +0 -1
  230. package/dist/os/notes/notes.module.d.ts +0 -3
  231. package/dist/os/notes/notes.module.d.ts.map +0 -1
  232. package/dist/os/notes/notes.module.js +0 -84
  233. package/dist/os/notes/notes.module.js.map +0 -1
  234. package/dist/os/plan/frontmatter-io.d.ts +0 -12
  235. package/dist/os/plan/frontmatter-io.d.ts.map +0 -1
  236. package/dist/os/plan/frontmatter-io.js +0 -69
  237. package/dist/os/plan/frontmatter-io.js.map +0 -1
  238. package/dist/os/plan/handlers/archive.d.ts +0 -4
  239. package/dist/os/plan/handlers/archive.d.ts.map +0 -1
  240. package/dist/os/plan/handlers/archive.js +0 -206
  241. package/dist/os/plan/handlers/archive.js.map +0 -1
  242. package/dist/os/plan/index.d.ts +0 -6
  243. package/dist/os/plan/index.d.ts.map +0 -1
  244. package/dist/os/plan/index.js +0 -16
  245. package/dist/os/plan/index.js.map +0 -1
  246. package/dist/os/plan/plan.module.d.ts +0 -3
  247. package/dist/os/plan/plan.module.d.ts.map +0 -1
  248. package/dist/os/plan/plan.module.js +0 -45
  249. package/dist/os/plan/plan.module.js.map +0 -1
  250. package/dist/os/plan/types.d.ts +0 -12
  251. package/dist/os/plan/types.d.ts.map +0 -1
  252. package/dist/os/plan/types.js +0 -17
  253. package/dist/os/plan/types.js.map +0 -1
  254. package/dist/os/plugin/plugin.module.d.ts +0 -25
  255. package/dist/os/plugin/plugin.module.d.ts.map +0 -1
  256. package/dist/os/plugin/plugin.module.js +0 -208
  257. package/dist/os/plugin/plugin.module.js.map +0 -1
  258. package/dist/os/program/discovery.d.ts +0 -61
  259. package/dist/os/program/discovery.d.ts.map +0 -1
  260. package/dist/os/program/discovery.js +0 -236
  261. package/dist/os/program/discovery.js.map +0 -1
  262. package/dist/os/program/handlers/complete.d.ts +0 -12
  263. package/dist/os/program/handlers/complete.d.ts.map +0 -1
  264. package/dist/os/program/handlers/complete.js +0 -362
  265. package/dist/os/program/handlers/complete.js.map +0 -1
  266. package/dist/os/program/handlers/lease.d.ts +0 -13
  267. package/dist/os/program/handlers/lease.d.ts.map +0 -1
  268. package/dist/os/program/handlers/lease.js +0 -328
  269. package/dist/os/program/handlers/lease.js.map +0 -1
  270. package/dist/os/program/handlers/seal.d.ts +0 -12
  271. package/dist/os/program/handlers/seal.d.ts.map +0 -1
  272. package/dist/os/program/handlers/seal.js +0 -277
  273. package/dist/os/program/handlers/seal.js.map +0 -1
  274. package/dist/os/program/handlers/validate.d.ts +0 -14
  275. package/dist/os/program/handlers/validate.d.ts.map +0 -1
  276. package/dist/os/program/handlers/validate.js +0 -170
  277. package/dist/os/program/handlers/validate.js.map +0 -1
  278. package/dist/os/program/lease.d.ts +0 -39
  279. package/dist/os/program/lease.d.ts.map +0 -1
  280. package/dist/os/program/lease.js +0 -129
  281. package/dist/os/program/lease.js.map +0 -1
  282. package/dist/os/program/program.module.d.ts +0 -3
  283. package/dist/os/program/program.module.d.ts.map +0 -1
  284. package/dist/os/program/program.module.js +0 -202
  285. package/dist/os/program/program.module.js.map +0 -1
  286. package/dist/os/program/schemas.d.ts +0 -225
  287. package/dist/os/program/schemas.d.ts.map +0 -1
  288. package/dist/os/program/schemas.js +0 -174
  289. package/dist/os/program/schemas.js.map +0 -1
  290. package/dist/os/program/state.d.ts +0 -38
  291. package/dist/os/program/state.d.ts.map +0 -1
  292. package/dist/os/program/state.js +0 -189
  293. package/dist/os/program/state.js.map +0 -1
  294. package/dist/os/rfc/acceptance.d.ts +0 -15
  295. package/dist/os/rfc/acceptance.d.ts.map +0 -1
  296. package/dist/os/rfc/acceptance.js +0 -318
  297. package/dist/os/rfc/acceptance.js.map +0 -1
  298. package/dist/os/rfc/decision-log.d.ts +0 -6
  299. package/dist/os/rfc/decision-log.d.ts.map +0 -1
  300. package/dist/os/rfc/decision-log.js +0 -269
  301. package/dist/os/rfc/decision-log.js.map +0 -1
  302. package/dist/os/rfc/dna-trace.d.ts +0 -27
  303. package/dist/os/rfc/dna-trace.d.ts.map +0 -1
  304. package/dist/os/rfc/dna-trace.js +0 -214
  305. package/dist/os/rfc/dna-trace.js.map +0 -1
  306. package/dist/os/rfc/frontmatter-io.d.ts +0 -18
  307. package/dist/os/rfc/frontmatter-io.d.ts.map +0 -1
  308. package/dist/os/rfc/frontmatter-io.js +0 -110
  309. package/dist/os/rfc/frontmatter-io.js.map +0 -1
  310. package/dist/os/rfc/handlers/archive.d.ts +0 -25
  311. package/dist/os/rfc/handlers/archive.d.ts.map +0 -1
  312. package/dist/os/rfc/handlers/archive.js +0 -247
  313. package/dist/os/rfc/handlers/archive.js.map +0 -1
  314. package/dist/os/rfc/handlers/check.d.ts +0 -4
  315. package/dist/os/rfc/handlers/check.d.ts.map +0 -1
  316. package/dist/os/rfc/handlers/check.js +0 -203
  317. package/dist/os/rfc/handlers/check.js.map +0 -1
  318. package/dist/os/rfc/handlers/implement-stamp.d.ts +0 -4
  319. package/dist/os/rfc/handlers/implement-stamp.d.ts.map +0 -1
  320. package/dist/os/rfc/handlers/implement-stamp.js +0 -426
  321. package/dist/os/rfc/handlers/implement-stamp.js.map +0 -1
  322. package/dist/os/rfc/handlers/index-graph.d.ts +0 -13
  323. package/dist/os/rfc/handlers/index-graph.d.ts.map +0 -1
  324. package/dist/os/rfc/handlers/index-graph.js +0 -192
  325. package/dist/os/rfc/handlers/index-graph.js.map +0 -1
  326. package/dist/os/rfc/handlers/lifecycle.d.ts +0 -13
  327. package/dist/os/rfc/handlers/lifecycle.d.ts.map +0 -1
  328. package/dist/os/rfc/handlers/lifecycle.js +0 -155
  329. package/dist/os/rfc/handlers/lifecycle.js.map +0 -1
  330. package/dist/os/rfc/handlers/list-create.d.ts +0 -6
  331. package/dist/os/rfc/handlers/list-create.d.ts.map +0 -1
  332. package/dist/os/rfc/handlers/list-create.js +0 -260
  333. package/dist/os/rfc/handlers/list-create.js.map +0 -1
  334. package/dist/os/rfc/handlers/pipeline-status.d.ts +0 -26
  335. package/dist/os/rfc/handlers/pipeline-status.d.ts.map +0 -1
  336. package/dist/os/rfc/handlers/pipeline-status.js +0 -124
  337. package/dist/os/rfc/handlers/pipeline-status.js.map +0 -1
  338. package/dist/os/rfc/handlers/shared.d.ts +0 -22
  339. package/dist/os/rfc/handlers/shared.d.ts.map +0 -1
  340. package/dist/os/rfc/handlers/shared.js +0 -105
  341. package/dist/os/rfc/handlers/shared.js.map +0 -1
  342. package/dist/os/rfc/handlers/supersede-propose.d.ts +0 -4
  343. package/dist/os/rfc/handlers/supersede-propose.d.ts.map +0 -1
  344. package/dist/os/rfc/handlers/supersede-propose.js +0 -203
  345. package/dist/os/rfc/handlers/supersede-propose.js.map +0 -1
  346. package/dist/os/rfc/handlers/validate-rules.d.ts +0 -32
  347. package/dist/os/rfc/handlers/validate-rules.d.ts.map +0 -1
  348. package/dist/os/rfc/handlers/validate-rules.js +0 -590
  349. package/dist/os/rfc/handlers/validate-rules.js.map +0 -1
  350. package/dist/os/rfc/handlers/validate.d.ts +0 -4
  351. package/dist/os/rfc/handlers/validate.d.ts.map +0 -1
  352. package/dist/os/rfc/handlers/validate.js +0 -122
  353. package/dist/os/rfc/handlers/validate.js.map +0 -1
  354. package/dist/os/rfc/handlers.d.ts +0 -7
  355. package/dist/os/rfc/handlers.d.ts.map +0 -1
  356. package/dist/os/rfc/handlers.js +0 -19
  357. package/dist/os/rfc/handlers.js.map +0 -1
  358. package/dist/os/rfc/index.d.ts +0 -18
  359. package/dist/os/rfc/index.d.ts.map +0 -1
  360. package/dist/os/rfc/index.js +0 -24
  361. package/dist/os/rfc/index.js.map +0 -1
  362. package/dist/os/rfc/rfc.module.d.ts +0 -3
  363. package/dist/os/rfc/rfc.module.d.ts.map +0 -1
  364. package/dist/os/rfc/rfc.module.js +0 -367
  365. package/dist/os/rfc/rfc.module.js.map +0 -1
  366. package/dist/os/rfc/types.d.ts +0 -483
  367. package/dist/os/rfc/types.d.ts.map +0 -1
  368. package/dist/os/rfc/types.js +0 -100
  369. package/dist/os/rfc/types.js.map +0 -1
  370. package/dist/os/rfc/verification-evidence.d.ts +0 -8
  371. package/dist/os/rfc/verification-evidence.d.ts.map +0 -1
  372. package/dist/os/rfc/verification-evidence.js +0 -184
  373. package/dist/os/rfc/verification-evidence.js.map +0 -1
  374. package/dist/os/session/atif-parser.d.ts +0 -29
  375. package/dist/os/session/atif-parser.d.ts.map +0 -1
  376. package/dist/os/session/atif-parser.js +0 -140
  377. package/dist/os/session/atif-parser.js.map +0 -1
  378. package/dist/os/session/frontmatter-io.d.ts +0 -31
  379. package/dist/os/session/frontmatter-io.d.ts.map +0 -1
  380. package/dist/os/session/frontmatter-io.js +0 -146
  381. package/dist/os/session/frontmatter-io.js.map +0 -1
  382. package/dist/os/session/handlers/archive.d.ts +0 -4
  383. package/dist/os/session/handlers/archive.d.ts.map +0 -1
  384. package/dist/os/session/handlers/archive.js +0 -241
  385. package/dist/os/session/handlers/archive.js.map +0 -1
  386. package/dist/os/session/handlers/list.d.ts +0 -4
  387. package/dist/os/session/handlers/list.d.ts.map +0 -1
  388. package/dist/os/session/handlers/list.js +0 -147
  389. package/dist/os/session/handlers/list.js.map +0 -1
  390. package/dist/os/session/handlers/save.d.ts +0 -6
  391. package/dist/os/session/handlers/save.d.ts.map +0 -1
  392. package/dist/os/session/handlers/save.js +0 -297
  393. package/dist/os/session/handlers/save.js.map +0 -1
  394. package/dist/os/session/handlers/validate.d.ts +0 -4
  395. package/dist/os/session/handlers/validate.d.ts.map +0 -1
  396. package/dist/os/session/handlers/validate.js +0 -224
  397. package/dist/os/session/handlers/validate.js.map +0 -1
  398. package/dist/os/session/index.d.ts +0 -9
  399. package/dist/os/session/index.d.ts.map +0 -1
  400. package/dist/os/session/index.js +0 -20
  401. package/dist/os/session/index.js.map +0 -1
  402. package/dist/os/session/session.module.d.ts +0 -3
  403. package/dist/os/session/session.module.d.ts.map +0 -1
  404. package/dist/os/session/session.module.js +0 -116
  405. package/dist/os/session/session.module.js.map +0 -1
  406. package/dist/os/session/types.d.ts +0 -131
  407. package/dist/os/session/types.d.ts.map +0 -1
  408. package/dist/os/session/types.js +0 -59
  409. package/dist/os/session/types.js.map +0 -1
  410. package/dist/os/spec/live-spec-list.d.ts +0 -4
  411. package/dist/os/spec/live-spec-list.d.ts.map +0 -1
  412. package/dist/os/spec/live-spec-list.js +0 -72
  413. package/dist/os/spec/live-spec-list.js.map +0 -1
  414. package/dist/os/spec/live-spec-merge.d.ts +0 -4
  415. package/dist/os/spec/live-spec-merge.d.ts.map +0 -1
  416. package/dist/os/spec/live-spec-merge.js +0 -345
  417. package/dist/os/spec/live-spec-merge.js.map +0 -1
  418. package/dist/os/spec/live-spec-show.d.ts +0 -4
  419. package/dist/os/spec/live-spec-show.d.ts.map +0 -1
  420. package/dist/os/spec/live-spec-show.js +0 -105
  421. package/dist/os/spec/live-spec-show.js.map +0 -1
  422. package/dist/os/spec/live-spec-types.d.ts +0 -71
  423. package/dist/os/spec/live-spec-types.d.ts.map +0 -1
  424. package/dist/os/spec/live-spec-types.js +0 -14
  425. package/dist/os/spec/live-spec-types.js.map +0 -1
  426. package/dist/os/spec/live-spec-validate.d.ts +0 -4
  427. package/dist/os/spec/live-spec-validate.d.ts.map +0 -1
  428. package/dist/os/spec/live-spec-validate.js +0 -140
  429. package/dist/os/spec/live-spec-validate.js.map +0 -1
  430. package/dist/os/spec/spec-materialize.d.ts +0 -21
  431. package/dist/os/spec/spec-materialize.d.ts.map +0 -1
  432. package/dist/os/spec/spec-materialize.js +0 -342
  433. package/dist/os/spec/spec-materialize.js.map +0 -1
  434. package/dist/os/spec/spec-schema.d.ts +0 -126
  435. package/dist/os/spec/spec-schema.d.ts.map +0 -1
  436. package/dist/os/spec/spec-schema.js +0 -118
  437. package/dist/os/spec/spec-schema.js.map +0 -1
  438. package/dist/os/spec/spec-status.d.ts +0 -33
  439. package/dist/os/spec/spec-status.d.ts.map +0 -1
  440. package/dist/os/spec/spec-status.js +0 -228
  441. package/dist/os/spec/spec-status.js.map +0 -1
  442. package/dist/os/spec/spec-validate.d.ts +0 -4
  443. package/dist/os/spec/spec-validate.d.ts.map +0 -1
  444. package/dist/os/spec/spec-validate.js +0 -435
  445. package/dist/os/spec/spec-validate.js.map +0 -1
  446. package/dist/os/spec/spec.module.d.ts +0 -3
  447. package/dist/os/spec/spec.module.d.ts.map +0 -1
  448. package/dist/os/spec/spec.module.js +0 -120
  449. package/dist/os/spec/spec.module.js.map +0 -1
  450. package/dist/os/werkstatt/handlers/lock.d.ts +0 -10
  451. package/dist/os/werkstatt/handlers/lock.d.ts.map +0 -1
  452. package/dist/os/werkstatt/handlers/lock.js +0 -153
  453. package/dist/os/werkstatt/handlers/lock.js.map +0 -1
  454. package/dist/os/werkstatt/handlers/schema.d.ts +0 -33
  455. package/dist/os/werkstatt/handlers/schema.d.ts.map +0 -1
  456. package/dist/os/werkstatt/handlers/schema.js +0 -42
  457. package/dist/os/werkstatt/handlers/schema.js.map +0 -1
  458. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.d.ts +0 -15
  459. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.d.ts.map +0 -1
  460. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.js +0 -152
  461. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.js.map +0 -1
  462. package/dist/os/werkstatt/handlers/werkstatt-lock-status.d.ts +0 -18
  463. package/dist/os/werkstatt/handlers/werkstatt-lock-status.d.ts.map +0 -1
  464. package/dist/os/werkstatt/handlers/werkstatt-lock-status.js +0 -51
  465. package/dist/os/werkstatt/handlers/werkstatt-lock-status.js.map +0 -1
  466. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.d.ts +0 -11
  467. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.d.ts.map +0 -1
  468. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.js +0 -79
  469. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.js.map +0 -1
  470. package/dist/os/werkstatt/handlers/workspace-deps.d.ts +0 -12
  471. package/dist/os/werkstatt/handlers/workspace-deps.d.ts.map +0 -1
  472. package/dist/os/werkstatt/handlers/workspace-deps.js +0 -42
  473. package/dist/os/werkstatt/handlers/workspace-deps.js.map +0 -1
  474. package/dist/os/werkstatt/index.d.ts +0 -7
  475. package/dist/os/werkstatt/index.d.ts.map +0 -1
  476. package/dist/os/werkstatt/index.js +0 -18
  477. package/dist/os/werkstatt/index.js.map +0 -1
  478. package/dist/os/werkstatt/werkstatt.module.d.ts +0 -3
  479. package/dist/os/werkstatt/werkstatt.module.d.ts.map +0 -1
  480. package/dist/os/werkstatt/werkstatt.module.js +0 -59
  481. package/dist/os/werkstatt/werkstatt.module.js.map +0 -1
  482. package/dist/os/workflow/handlers.d.ts +0 -12
  483. package/dist/os/workflow/handlers.d.ts.map +0 -1
  484. package/dist/os/workflow/handlers.js +0 -262
  485. package/dist/os/workflow/handlers.js.map +0 -1
  486. package/dist/os/workflow/index.d.ts +0 -4
  487. package/dist/os/workflow/index.d.ts.map +0 -1
  488. package/dist/os/workflow/index.js +0 -18
  489. package/dist/os/workflow/index.js.map +0 -1
  490. package/dist/os/workflow/types.d.ts +0 -69
  491. package/dist/os/workflow/types.d.ts.map +0 -1
  492. package/dist/os/workflow/types.js +0 -23
  493. package/dist/os/workflow/types.js.map +0 -1
  494. package/dist/os/workflow/workflow.module.d.ts +0 -3
  495. package/dist/os/workflow/workflow.module.d.ts.map +0 -1
  496. package/dist/os/workflow/workflow.module.js +0 -49
  497. package/dist/os/workflow/workflow.module.js.map +0 -1
  498. package/dist/src/cli-output.d.ts +0 -5
  499. package/dist/src/cli-output.d.ts.map +0 -1
  500. package/dist/src/cli-output.js +0 -53
  501. package/dist/src/cli-output.js.map +0 -1
  502. package/dist/src/compass/contract-registry.d.ts +0 -7
  503. package/dist/src/compass/contract-registry.d.ts.map +0 -1
  504. package/dist/src/compass/contract-registry.js +0 -93
  505. package/dist/src/compass/contract-registry.js.map +0 -1
  506. package/dist/src/compass/types.d.ts +0 -28
  507. package/dist/src/compass/types.d.ts.map +0 -1
  508. package/dist/src/compass/types.js +0 -14
  509. package/dist/src/compass/types.js.map +0 -1
  510. package/dist/src/config/forge-config.d.ts +0 -242
  511. package/dist/src/config/forge-config.d.ts.map +0 -1
  512. package/dist/src/config/forge-config.js +0 -363
  513. package/dist/src/config/forge-config.js.map +0 -1
  514. package/dist/src/forge-module.d.ts +0 -17
  515. package/dist/src/forge-module.d.ts.map +0 -1
  516. package/dist/src/forge-module.js +0 -16
  517. package/dist/src/forge-module.js.map +0 -1
  518. package/dist/src/index.d.ts +0 -39
  519. package/dist/src/index.d.ts.map +0 -1
  520. package/dist/src/index.js +0 -59
  521. package/dist/src/index.js.map +0 -1
  522. package/dist/src/knowledge/budgets.d.ts +0 -38
  523. package/dist/src/knowledge/budgets.d.ts.map +0 -1
  524. package/dist/src/knowledge/budgets.js +0 -157
  525. package/dist/src/knowledge/budgets.js.map +0 -1
  526. package/dist/src/knowledge/compact.d.ts +0 -47
  527. package/dist/src/knowledge/compact.d.ts.map +0 -1
  528. package/dist/src/knowledge/compact.js +0 -320
  529. package/dist/src/knowledge/compact.js.map +0 -1
  530. package/dist/src/knowledge/index.d.ts +0 -7
  531. package/dist/src/knowledge/index.d.ts.map +0 -1
  532. package/dist/src/knowledge/index.js +0 -19
  533. package/dist/src/knowledge/index.js.map +0 -1
  534. package/dist/src/knowledge/parse.d.ts +0 -3
  535. package/dist/src/knowledge/parse.d.ts.map +0 -1
  536. package/dist/src/knowledge/parse.js +0 -205
  537. package/dist/src/knowledge/parse.js.map +0 -1
  538. package/dist/src/knowledge/promote.d.ts +0 -37
  539. package/dist/src/knowledge/promote.d.ts.map +0 -1
  540. package/dist/src/knowledge/promote.js +0 -120
  541. package/dist/src/knowledge/promote.js.map +0 -1
  542. package/dist/src/knowledge/schema.d.ts +0 -61
  543. package/dist/src/knowledge/schema.d.ts.map +0 -1
  544. package/dist/src/knowledge/schema.js +0 -64
  545. package/dist/src/knowledge/schema.js.map +0 -1
  546. package/dist/src/knowledge/serialize.d.ts +0 -3
  547. package/dist/src/knowledge/serialize.d.ts.map +0 -1
  548. package/dist/src/knowledge/serialize.js +0 -67
  549. package/dist/src/knowledge/serialize.js.map +0 -1
  550. package/dist/src/migration-adapters/git-utils.d.ts +0 -3
  551. package/dist/src/migration-adapters/git-utils.d.ts.map +0 -1
  552. package/dist/src/migration-adapters/git-utils.js +0 -64
  553. package/dist/src/migration-adapters/git-utils.js.map +0 -1
  554. package/dist/src/migration-adapters/ignored-files.d.ts +0 -12
  555. package/dist/src/migration-adapters/ignored-files.d.ts.map +0 -1
  556. package/dist/src/migration-adapters/ignored-files.js +0 -190
  557. package/dist/src/migration-adapters/ignored-files.js.map +0 -1
  558. package/dist/src/migration-adapters/index.d.ts +0 -8
  559. package/dist/src/migration-adapters/index.d.ts.map +0 -1
  560. package/dist/src/migration-adapters/index.js +0 -17
  561. package/dist/src/migration-adapters/index.js.map +0 -1
  562. package/dist/src/migration-adapters/node-typescript-pnpm/index.d.ts +0 -3
  563. package/dist/src/migration-adapters/node-typescript-pnpm/index.d.ts.map +0 -1
  564. package/dist/src/migration-adapters/node-typescript-pnpm/index.js +0 -141
  565. package/dist/src/migration-adapters/node-typescript-pnpm/index.js.map +0 -1
  566. package/dist/src/migration-adapters/phaser-pnpm/index.d.ts +0 -3
  567. package/dist/src/migration-adapters/phaser-pnpm/index.d.ts.map +0 -1
  568. package/dist/src/migration-adapters/phaser-pnpm/index.js +0 -142
  569. package/dist/src/migration-adapters/phaser-pnpm/index.js.map +0 -1
  570. package/dist/src/migration-adapters/registry.d.ts +0 -6
  571. package/dist/src/migration-adapters/registry.d.ts.map +0 -1
  572. package/dist/src/migration-adapters/registry.js +0 -55
  573. package/dist/src/migration-adapters/registry.js.map +0 -1
  574. package/dist/src/migration-adapters/types.d.ts +0 -35
  575. package/dist/src/migration-adapters/types.d.ts.map +0 -1
  576. package/dist/src/migration-adapters/types.js +0 -31
  577. package/dist/src/migration-adapters/types.js.map +0 -1
  578. package/dist/src/onboarding/agents-generate.d.ts +0 -31
  579. package/dist/src/onboarding/agents-generate.d.ts.map +0 -1
  580. package/dist/src/onboarding/agents-generate.js +0 -372
  581. package/dist/src/onboarding/agents-generate.js.map +0 -1
  582. package/dist/src/onboarding/create.d.ts +0 -12
  583. package/dist/src/onboarding/create.d.ts.map +0 -1
  584. package/dist/src/onboarding/create.js +0 -389
  585. package/dist/src/onboarding/create.js.map +0 -1
  586. package/dist/src/onboarding/doctor.d.ts +0 -45
  587. package/dist/src/onboarding/doctor.d.ts.map +0 -1
  588. package/dist/src/onboarding/doctor.js +0 -1190
  589. package/dist/src/onboarding/doctor.js.map +0 -1
  590. package/dist/src/onboarding/init.d.ts +0 -36
  591. package/dist/src/onboarding/init.d.ts.map +0 -1
  592. package/dist/src/onboarding/init.js +0 -362
  593. package/dist/src/onboarding/init.js.map +0 -1
  594. package/dist/src/onboarding/invariant-engine.d.ts +0 -17
  595. package/dist/src/onboarding/invariant-engine.d.ts.map +0 -1
  596. package/dist/src/onboarding/invariant-engine.js +0 -416
  597. package/dist/src/onboarding/invariant-engine.js.map +0 -1
  598. package/dist/src/onboarding/memory-scaffold.d.ts +0 -18
  599. package/dist/src/onboarding/memory-scaffold.d.ts.map +0 -1
  600. package/dist/src/onboarding/memory-scaffold.js +0 -151
  601. package/dist/src/onboarding/memory-scaffold.js.map +0 -1
  602. package/dist/src/onboarding/nested-agents-generate.d.ts +0 -18
  603. package/dist/src/onboarding/nested-agents-generate.d.ts.map +0 -1
  604. package/dist/src/onboarding/nested-agents-generate.js +0 -69
  605. package/dist/src/onboarding/nested-agents-generate.js.map +0 -1
  606. package/dist/src/onboarding/nested-agents-templates.d.ts +0 -26
  607. package/dist/src/onboarding/nested-agents-templates.d.ts.map +0 -1
  608. package/dist/src/onboarding/nested-agents-templates.js +0 -178
  609. package/dist/src/onboarding/nested-agents-templates.js.map +0 -1
  610. package/dist/src/onboarding/profile-validate.d.ts +0 -13
  611. package/dist/src/onboarding/profile-validate.d.ts.map +0 -1
  612. package/dist/src/onboarding/profile-validate.js +0 -109
  613. package/dist/src/onboarding/profile-validate.js.map +0 -1
  614. package/dist/src/onboarding/scaffold-project.d.ts +0 -12
  615. package/dist/src/onboarding/scaffold-project.d.ts.map +0 -1
  616. package/dist/src/onboarding/scaffold-project.js +0 -264
  617. package/dist/src/onboarding/scaffold-project.js.map +0 -1
  618. package/dist/src/onboarding/scaffold.d.ts +0 -15
  619. package/dist/src/onboarding/scaffold.d.ts.map +0 -1
  620. package/dist/src/onboarding/scaffold.js +0 -121
  621. package/dist/src/onboarding/scaffold.js.map +0 -1
  622. package/dist/src/onboarding/upgrade.d.ts +0 -27
  623. package/dist/src/onboarding/upgrade.d.ts.map +0 -1
  624. package/dist/src/onboarding/upgrade.js +0 -453
  625. package/dist/src/onboarding/upgrade.js.map +0 -1
  626. package/dist/src/onboarding/workspace-discovery.d.ts +0 -11
  627. package/dist/src/onboarding/workspace-discovery.d.ts.map +0 -1
  628. package/dist/src/onboarding/workspace-discovery.js +0 -138
  629. package/dist/src/onboarding/workspace-discovery.js.map +0 -1
  630. package/dist/src/plugin/ForgePluginManifest.d.ts +0 -38
  631. package/dist/src/plugin/ForgePluginManifest.d.ts.map +0 -1
  632. package/dist/src/plugin/ForgePluginManifest.js +0 -52
  633. package/dist/src/plugin/ForgePluginManifest.js.map +0 -1
  634. package/dist/src/profiles/profile-schema.d.ts +0 -361
  635. package/dist/src/profiles/profile-schema.d.ts.map +0 -1
  636. package/dist/src/profiles/profile-schema.js +0 -208
  637. package/dist/src/profiles/profile-schema.js.map +0 -1
  638. package/dist/src/profiles/stack-profile.d.ts +0 -173
  639. package/dist/src/profiles/stack-profile.d.ts.map +0 -1
  640. package/dist/src/profiles/stack-profile.js +0 -148
  641. package/dist/src/profiles/stack-profile.js.map +0 -1
  642. package/dist/src/profiles/terminology-utils.d.ts +0 -8
  643. package/dist/src/profiles/terminology-utils.d.ts.map +0 -1
  644. package/dist/src/profiles/terminology-utils.js +0 -31
  645. package/dist/src/profiles/terminology-utils.js.map +0 -1
  646. package/dist/src/registry.d.ts +0 -38
  647. package/dist/src/registry.d.ts.map +0 -1
  648. package/dist/src/registry.js +0 -174
  649. package/dist/src/registry.js.map +0 -1
  650. package/dist/src/skill-schema.d.ts +0 -30
  651. package/dist/src/skill-schema.d.ts.map +0 -1
  652. package/dist/src/skill-schema.js +0 -34
  653. package/dist/src/skill-schema.js.map +0 -1
  654. package/dist/src/types.d.ts +0 -154
  655. package/dist/src/types.d.ts.map +0 -1
  656. package/dist/src/types.js +0 -17
  657. package/dist/src/types.js.map +0 -1
  658. package/dist/src/utils/fs-atomic.d.ts +0 -7
  659. package/dist/src/utils/fs-atomic.d.ts.map +0 -1
  660. package/dist/src/utils/fs-atomic.js +0 -81
  661. package/dist/src/utils/fs-atomic.js.map +0 -1
  662. package/dist/src/utils/fs-idempotent.d.ts +0 -2
  663. package/dist/src/utils/fs-idempotent.d.ts.map +0 -1
  664. package/dist/src/utils/fs-idempotent.js +0 -39
  665. package/dist/src/utils/fs-idempotent.js.map +0 -1
  666. package/dist/src/utils/fs-trash-sync.d.ts +0 -2
  667. package/dist/src/utils/fs-trash-sync.d.ts.map +0 -1
  668. package/dist/src/utils/fs-trash-sync.js +0 -34
  669. package/dist/src/utils/fs-trash-sync.js.map +0 -1
  670. package/dist/src/utils/fs-trash.d.ts +0 -2
  671. package/dist/src/utils/fs-trash.d.ts.map +0 -1
  672. package/dist/src/utils/fs-trash.js +0 -24
  673. package/dist/src/utils/fs-trash.js.map +0 -1
  674. package/dist/src/utils/fs.d.ts +0 -8
  675. package/dist/src/utils/fs.d.ts.map +0 -1
  676. package/dist/src/utils/fs.js +0 -60
  677. package/dist/src/utils/fs.js.map +0 -1
  678. package/dist/src/utils/generated-marker.d.ts +0 -21
  679. package/dist/src/utils/generated-marker.d.ts.map +0 -1
  680. package/dist/src/utils/generated-marker.js +0 -128
  681. package/dist/src/utils/generated-marker.js.map +0 -1
  682. package/dist/src/utils/hash.d.ts +0 -2
  683. package/dist/src/utils/hash.d.ts.map +0 -1
  684. package/dist/src/utils/hash.js +0 -18
  685. package/dist/src/utils/hash.js.map +0 -1
  686. package/dist/src/utils/index.d.ts +0 -9
  687. package/dist/src/utils/index.d.ts.map +0 -1
  688. package/dist/src/utils/index.js +0 -21
  689. package/dist/src/utils/index.js.map +0 -1
  690. package/dist/src/utils/string-utils.d.ts +0 -2
  691. package/dist/src/utils/string-utils.d.ts.map +0 -1
  692. package/dist/src/utils/string-utils.js +0 -19
  693. package/dist/src/utils/string-utils.js.map +0 -1
  694. package/dist/src/validators/note-frontmatter-validate.d.ts +0 -20
  695. package/dist/src/validators/note-frontmatter-validate.d.ts.map +0 -1
  696. package/dist/src/validators/note-frontmatter-validate.js +0 -117
  697. package/dist/src/validators/note-frontmatter-validate.js.map +0 -1
  698. package/dist/src/validators/note-link-validate.d.ts +0 -21
  699. package/dist/src/validators/note-link-validate.d.ts.map +0 -1
  700. package/dist/src/validators/note-link-validate.js +0 -121
  701. package/dist/src/validators/note-link-validate.js.map +0 -1
  702. package/dist/src/validators/note-orphan-detect.d.ts +0 -19
  703. package/dist/src/validators/note-orphan-detect.d.ts.map +0 -1
  704. package/dist/src/validators/note-orphan-detect.js +0 -123
  705. package/dist/src/validators/note-orphan-detect.js.map +0 -1
  706. package/dist/src/validators/port-validate.d.ts +0 -12
  707. package/dist/src/validators/port-validate.d.ts.map +0 -1
  708. package/dist/src/validators/port-validate.js +0 -78
  709. package/dist/src/validators/port-validate.js.map +0 -1
  710. package/dist/src/validators/skill-validate.d.ts +0 -29
  711. package/dist/src/validators/skill-validate.d.ts.map +0 -1
  712. package/dist/src/validators/skill-validate.js +0 -689
  713. package/dist/src/validators/skill-validate.js.map +0 -1
@@ -1,590 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Per-RFC validation rules (V-01..V-34, RFC-DIR-01) extracted from the validate handler for modularity.</purpose>
4
- <non-goals>
5
- <item>Do not introduce app-specific runtime composition or deployment behavior into this reusable package source file.</item>
6
- </non-goals>
7
- </MODULE_CONTRACT>
8
- <CHANGE_SUMMARY>
9
- <item>RFC-0303 Phase 3: extracted from validate.ts as part of the handler split.</item>
10
- <item>RFC-0722: add RFC-DIR-01 directory structure warning rule for unsanctioned subdirectories.</item>
11
- <item>RFC-0755: add V-RFC-33 frontmatter YAML parseability check (checkFrontmatterYamlParse helper).</item>
12
- <item>RFC-0795: add V-33 dependsOn referential integrity/self-dependency/rejected-dependency and V-34 batch slug format rules.</item>
13
- </CHANGE_SUMMARY>
14
- */
15
- import path from "node:path";
16
- import { readFile } from "node:fs/promises";
17
- import { execFile } from "node:child_process";
18
- import { parse as yamlParse } from "yaml";
19
- import { validateAcceptanceShape } from "../acceptance.js";
20
- import { RFC_DIR, RFC_ID_PATTERN, RFC_STATUSES, RFC_KINDS, RFC_SCOPES, RFC_FULL_REQUIRED_SECTIONS, RFC_METADATA_CUTOFF, RFC_VERSION_BUMP_CUTOFF, } from "../types.js";
21
- import { DNA_DOCS, AP_DOCS } from "./shared.js";
22
- const DNA_DOC = DNA_DOCS[0];
23
- const AP_DOC = AP_DOCS[0];
24
- // RFC-0335: reviewer identity validation constants
25
- const REVIEWER_IDENTITY_PATTERN = /^(human|agent):[a-z0-9][a-z0-9-]*$/;
26
- const DECIDED_STATUSES = [
27
- "accepted",
28
- "implemented",
29
- "rejected",
30
- "superseded",
31
- ];
32
- /**
33
- * Extract the raw acceptance-criteria section text from an RFC body.
34
- * Returns `undefined` when the section is absent.
35
- */
36
- export function extractAcceptanceCriteriaSection(body) {
37
- const match = body.match(/## Acceptance criteria\s*\n([\s\S]*?)(?=\n## |\n*$)/);
38
- return match?.[1];
39
- }
40
- /**
41
- * Evaluate acceptance criteria checkboxes and inline evidence annotations.
42
- * Pure function — no I/O, no side effects. Used by both V-26/V-27 validation
43
- * and the `rfc.implement.stamp` precondition checks (RFC-0476).
44
- */
45
- export function evaluateAcceptanceCriteria(body) {
46
- const section = extractAcceptanceCriteriaSection(body);
47
- if (!section) {
48
- return {
49
- totalChecked: 0,
50
- totalUnchecked: 0,
51
- uncheckedLines: [],
52
- checkedWithoutEvidence: [],
53
- };
54
- }
55
- const uncheckedLines = section
56
- .split("\n")
57
- .filter((line) => /^- \[ \]/.test(line))
58
- .map((line) => line.trim());
59
- const totalUnchecked = uncheckedLines.length;
60
- const checkedLines = section.split("\n").filter((line) => /^- \[x\]/.test(line));
61
- const checkedWithoutEvidence = [];
62
- for (const line of checkedLines) {
63
- if (!/\(evidence:\s*.+\)/.test(line)) {
64
- checkedWithoutEvidence.push(line.trim());
65
- }
66
- }
67
- return {
68
- totalChecked: checkedLines.length,
69
- totalUnchecked,
70
- uncheckedLines,
71
- checkedWithoutEvidence,
72
- };
73
- }
74
- // ─── RFC-0625: V-32 implementation commit drift detection ──────────────────
75
- function execGitLog(workspaceRoot, args) {
76
- return new Promise((resolve) => {
77
- execFile("git", args, { cwd: workspaceRoot, timeout: 10000 }, (err, stdout) => {
78
- if (err) {
79
- resolve("");
80
- return;
81
- }
82
- resolve(stdout.trim());
83
- });
84
- });
85
- }
86
- async function checkImplementationCommitDrift(workspaceRoot, rfcId, createdAt, currentStatus) {
87
- if (currentStatus === "implemented") {
88
- return { found: false, commitCount: 0 };
89
- }
90
- const datePattern = /^\d{4}-\d{2}-\d{2}$/;
91
- if (!datePattern.test(createdAt)) {
92
- return { found: false, commitCount: 0 };
93
- }
94
- const log = await execGitLog(workspaceRoot, ["log", `--since=${createdAt}`, "--oneline"]);
95
- if (!log) {
96
- return { found: false, commitCount: 0 };
97
- }
98
- const pattern = new RegExp(`implement:\\s+${rfcId}\\b`, "i");
99
- const matchingLines = log.split("\n").filter((line) => pattern.test(line.trim()));
100
- return { found: matchingLines.length > 0, commitCount: matchingLines.length };
101
- }
102
- // ─── RFC-0709: V-NC-01 NEEDS CLARIFICATION marker detection ────────────────
103
- const NC_MARKER_CUTOFF = "2026-08-06";
104
- const NC_MARKER_PATTERN = /^>\s*NEEDS CLARIFICATION:\s*(.+)$/;
105
- /**
106
- * Collect NEEDS CLARIFICATION markers from an RFC body.
107
- * Skips lines inside fenced code blocks. Pure function — no I/O.
108
- */
109
- export function collectMarkers(body, status, createdAt) {
110
- if (createdAt < NC_MARKER_CUTOFF)
111
- return [];
112
- const severity = status === "draft" ? "warn" : "error";
113
- const markers = [];
114
- const lines = body.split("\n");
115
- let inCodeBlock = false;
116
- for (let i = 0; i < lines.length; i++) {
117
- const line = lines[i];
118
- if (/^```/.test(line.trim())) {
119
- inCodeBlock = !inCodeBlock;
120
- continue;
121
- }
122
- if (inCodeBlock)
123
- continue;
124
- const match = line.match(NC_MARKER_PATTERN);
125
- if (match) {
126
- markers.push({
127
- line: i + 1,
128
- text: match[1].trim(),
129
- severity,
130
- });
131
- }
132
- }
133
- return markers;
134
- }
135
- export async function validateSingleRfc(fileName, parsed, allParsed, seenIds, validDnaIds, validApIds, knownKeys, workspaceRoot, addViolation, seenFilenameNumbers) {
136
- const fm = parsed.frontmatter;
137
- const body = parsed.body;
138
- const relFile = path.join(RFC_DIR, fileName);
139
- const rfcId = String(fm["id"] ?? "UNKNOWN");
140
- const isArchived = fileName.startsWith("archive/");
141
- // V-01: id format
142
- if (!RFC_ID_PATTERN.test(rfcId)) {
143
- addViolation(rfcId, relFile, "V-01", `id "${rfcId}" does not match format RFC-XXXX`);
144
- }
145
- // RFC-DIR-01: directory structure convention (RFC-0722)
146
- // Warn when RFC files are found in subdirectories other than archive/ and verification/
147
- const slashIdx = fileName.indexOf("/");
148
- if (slashIdx > 0) {
149
- const subDir = fileName.slice(0, slashIdx);
150
- if (subDir !== "archive" && subDir !== "verification") {
151
- addViolation(rfcId, relFile, "RFC-DIR-01", `${relFile} is in an unsanctioned subdirectory. Only archive/ and verification/ are allowed. Move the file to docs/rfcs/ root or write an ADR to formalize the subdirectory.`, "warning");
152
- }
153
- }
154
- // V-02: id uniqueness
155
- const prevFile = seenIds.get(rfcId);
156
- if (prevFile) {
157
- addViolation(rfcId, relFile, "V-02", `Duplicate id "${rfcId}" — also in ${prevFile}. ` +
158
- `This happens when an RFC is created by scanning only the top-level docs/rfcs/ directory, missing archived RFCs under docs/rfcs/archive/. ` +
159
- `Fix: renumber this RFC by deleting it and re-running rfc.create (or spec.materialize) which scans the full tree recursively.`);
160
- }
161
- else {
162
- seenIds.set(rfcId, relFile);
163
- }
164
- // V-03: valid status
165
- const status = String(fm["status"] ?? "");
166
- if (!RFC_STATUSES.includes(status)) {
167
- addViolation(rfcId, relFile, "V-03", `Invalid status "${status}". Must be one of: ${RFC_STATUSES.join(", ")}`);
168
- }
169
- // V-04: valid kind
170
- const kind = String(fm["kind"] ?? "");
171
- if (!RFC_KINDS.includes(kind)) {
172
- addViolation(rfcId, relFile, "V-04", `Invalid kind "${kind}". Must be one of: ${RFC_KINDS.join(", ")}`);
173
- }
174
- // V-05: valid scope
175
- const scope = String(fm["scope"] ?? "");
176
- if (!RFC_SCOPES.includes(scope)) {
177
- addViolation(rfcId, relFile, "V-05", `Invalid scope "${scope}". Must be one of: ${RFC_SCOPES.join(", ")}`);
178
- }
179
- // V-06: owners non-empty
180
- const owners = fm["owners"];
181
- if (!Array.isArray(owners) || owners.length === 0) {
182
- addViolation(rfcId, relFile, "V-06", "owners must be a non-empty array");
183
- }
184
- // V-07: valid dates
185
- const createdAt = String(fm["createdAt"] ?? "");
186
- const updatedAt = String(fm["updatedAt"] ?? "");
187
- const datePattern = /^\d{4}-\d{2}-\d{2}$/;
188
- if (!datePattern.test(createdAt)) {
189
- addViolation(rfcId, relFile, "V-07", `createdAt "${createdAt}" is not a valid ISO 8601 date (YYYY-MM-DD)`);
190
- }
191
- if (!datePattern.test(updatedAt)) {
192
- addViolation(rfcId, relFile, "V-07", `updatedAt "${updatedAt}" is not a valid ISO 8601 date (YYYY-MM-DD)`);
193
- }
194
- const enhancedAt = fm["enhancedAt"];
195
- if (enhancedAt && !datePattern.test(enhancedAt)) {
196
- addViolation(rfcId, relFile, "V-07", `enhancedAt "${enhancedAt}" is not a valid ISO 8601 date (YYYY-MM-DD)`);
197
- }
198
- // V-08: implementedAt >= createdAt
199
- const implementedAt = fm["implementedAt"];
200
- if (implementedAt && datePattern.test(implementedAt) && datePattern.test(createdAt)) {
201
- if (implementedAt < createdAt) {
202
- addViolation(rfcId, relFile, "V-08", `implementedAt (${implementedAt}) precedes createdAt (${createdAt})`);
203
- }
204
- }
205
- // V-08b: enhancedAt >= createdAt
206
- if (enhancedAt && datePattern.test(enhancedAt) && datePattern.test(createdAt)) {
207
- if (enhancedAt < createdAt) {
208
- addViolation(rfcId, relFile, "V-08", `enhancedAt (${enhancedAt}) precedes createdAt (${createdAt})`);
209
- }
210
- }
211
- // V-09: closedAt >= createdAt
212
- const closedAt = fm["closedAt"];
213
- if (closedAt && datePattern.test(closedAt) && datePattern.test(createdAt)) {
214
- if (closedAt < createdAt) {
215
- addViolation(rfcId, relFile, "V-09", `closedAt (${closedAt}) precedes createdAt (${createdAt})`);
216
- }
217
- }
218
- // V-10: supersedes point to existing RFCs (+ V-12 forward back-link check)
219
- const supersedes = fm["supersedes"];
220
- if (Array.isArray(supersedes)) {
221
- for (const ref of supersedes) {
222
- const refStr = String(ref);
223
- if (!refStr)
224
- continue;
225
- if (!allParsed.has(refStr)) {
226
- addViolation(rfcId, relFile, "V-10", `supersedes "${refStr}" does not match any existing RFC`);
227
- }
228
- else {
229
- const otherBy = String(allParsed.get(refStr).parsed.frontmatter["supersededBy"] ?? "");
230
- if (otherBy !== rfcId) {
231
- addViolation(rfcId, relFile, "V-12", `${rfcId}.supersedes includes ${refStr}, but ${refStr}.supersededBy is "${otherBy || "(empty)"}" (expected ${rfcId})`, "warning");
232
- }
233
- }
234
- }
235
- }
236
- // V-11: supersededBy points to existing RFC
237
- // Skip for archived RFCs — superseding RFCs may have been themselves archived/removed
238
- const supersededBy = fm["supersededBy"];
239
- if (supersededBy && !allParsed.has(supersededBy) && !isArchived) {
240
- addViolation(rfcId, relFile, "V-11", `supersededBy "${supersededBy}" does not match any existing RFC`);
241
- }
242
- // V-12 (reverse): supersededBy target must list this RFC in its supersedes
243
- if (supersededBy && allParsed.has(supersededBy)) {
244
- const otherFm = allParsed.get(supersededBy).parsed.frontmatter;
245
- const otherSupersedes = otherFm["supersedes"];
246
- if (!Array.isArray(otherSupersedes) || !otherSupersedes.map(String).includes(rfcId)) {
247
- addViolation(rfcId, relFile, "V-12", `${rfcId} is supersededBy ${supersededBy}, but ${supersededBy}.supersedes does not include ${rfcId}`, "warning");
248
- }
249
- }
250
- // V-17: strict supersession lifecycle
251
- if (supersededBy && status !== "superseded") {
252
- addViolation(rfcId, relFile, "V-17", `supersededBy is set (${supersededBy}) but status is "${status}" (expected "superseded")`, "warning");
253
- }
254
- // V-13: required H2 sections (all RFCs use the full template)
255
- const requiredSections = RFC_FULL_REQUIRED_SECTIONS;
256
- const headings = [...body.matchAll(/^##\s+(.+)$/gm)].map((m) => m[1].trim());
257
- for (const section of requiredSections) {
258
- if (!headings.includes(section)) {
259
- const severity = status === "draft" ? "warning" : "error";
260
- // Skip error-severity V-13 for archived RFCs — template requirements evolved after archival
261
- if (severity === "error" && isArchived)
262
- continue;
263
- addViolation(rfcId, relFile, "V-13", `Missing required section "## ${section}"`, severity);
264
- }
265
- }
266
- // V-14: acceptance criteria must have at least 3 checklist items
267
- const acceptanceMatch = body.match(/## Acceptance criteria\s*\n([\s\S]*?)(?=\n## |\n*$)/);
268
- if (acceptanceMatch) {
269
- const checklistItems = acceptanceMatch[1].match(/^- \[[ x]\]/gm);
270
- const count = checklistItems?.length ?? 0;
271
- if (count < 3) {
272
- addViolation(rfcId, relFile, "V-14", `Acceptance criteria has ${count} checklist items; minimum is 3`, status === "draft" ? "warning" : "error");
273
- }
274
- }
275
- // V-26: implemented RFCs must have all acceptance criteria checked (RFC-0463)
276
- // V-27: every checked criterion must carry inline (evidence: ...) annotation (RFC-0463)
277
- // RFC-0476: both use the shared evaluateAcceptanceCriteria function.
278
- if (acceptanceMatch) {
279
- const criteriaEval = evaluateAcceptanceCriteria(body);
280
- if (status === "implemented" && criteriaEval.totalUnchecked > 0 && !isArchived) {
281
- addViolation(rfcId, relFile, "V-26", `status is "implemented" but ${criteriaEval.totalUnchecked} acceptance criteria are unchecked. ` +
282
- `Complete the work or split deferred criteria into a follow-up RFC via supersede.`);
283
- }
284
- for (const line of criteriaEval.checkedWithoutEvidence) {
285
- addViolation(rfcId, relFile, "V-27", `checked acceptance criterion lacks inline (evidence: ...) annotation: "${line}"`);
286
- }
287
- }
288
- // V-15: title consistency
289
- const titleStr = String(fm["title"] ?? "");
290
- const headingMatch = body.match(/^#\s+(?:RFC-\d{4}:\s*)?(.+)$/m);
291
- if (headingMatch && titleStr) {
292
- const headingTitle = headingMatch[1].trim();
293
- if (headingTitle !== titleStr) {
294
- addViolation(rfcId, relFile, "V-15", `Frontmatter title "${titleStr}" does not match body heading "${headingTitle}"`, "warning");
295
- }
296
- }
297
- // V-16: status <-> date coupling
298
- const implementedAtStr = String(fm["implementedAt"] ?? "");
299
- const closedAtStr = String(fm["closedAt"] ?? "");
300
- const isTerminalStatus = status === "superseded" || status === "rejected";
301
- if (status === "implemented" && !implementedAtStr) {
302
- addViolation(rfcId, relFile, "V-16", `status is "implemented" but implementedAt is empty`, "error");
303
- }
304
- if ((status === "accepted" || status === "draft") && implementedAtStr) {
305
- addViolation(rfcId, relFile, "V-16", `status is "${status}" but implementedAt is set (${implementedAtStr})`, "error");
306
- }
307
- if (isTerminalStatus && !closedAtStr) {
308
- addViolation(rfcId, relFile, "V-16", `status is "${status}" but closedAt is empty`, "warning");
309
- }
310
- if (!isTerminalStatus && closedAtStr) {
311
- addViolation(rfcId, relFile, "V-16", `closedAt is set (${closedAtStr}) but status "${status}" is not terminal (superseded/rejected)`, "warning");
312
- }
313
- // V-18: referential integrity of related[]
314
- const related = fm["related"];
315
- if (Array.isArray(related)) {
316
- for (const ref of related) {
317
- const refStr = String(ref).trim();
318
- if (!refStr)
319
- continue;
320
- if (/^RFC-\d{4}$/.test(refStr)) {
321
- if (!allParsed.has(refStr)) {
322
- addViolation(rfcId, relFile, "V-18", `related "${refStr}" does not match any existing RFC`, "warning");
323
- }
324
- }
325
- else if (/^DNA-\d+$/i.test(refStr) && validDnaIds.size > 0) {
326
- if (!validDnaIds.has(parseInt(refStr.slice(4), 10))) {
327
- addViolation(rfcId, relFile, "V-18", `related "${refStr}" is not defined in ${DNA_DOC}`, "warning");
328
- }
329
- }
330
- else if (/^AP-\d+$/i.test(refStr) && validApIds.size > 0) {
331
- if (!validApIds.has(parseInt(refStr.slice(3), 10))) {
332
- addViolation(rfcId, relFile, "V-18", `related "${refStr}" is not defined in ${AP_DOC}`, "warning");
333
- }
334
- }
335
- }
336
- }
337
- // V-19: amends/amendedBy referential + bidirectional integrity
338
- const amends = fm["amends"];
339
- if (Array.isArray(amends)) {
340
- for (const ref of amends) {
341
- const refStr = String(ref);
342
- if (!refStr)
343
- continue;
344
- if (!allParsed.has(refStr)) {
345
- addViolation(rfcId, relFile, "V-19", `amends "${refStr}" does not match any existing RFC`);
346
- }
347
- else {
348
- const otherAmendedBy = allParsed.get(refStr).parsed.frontmatter["amendedBy"];
349
- const arr = Array.isArray(otherAmendedBy) ? otherAmendedBy.map(String) : [];
350
- if (!arr.includes(rfcId)) {
351
- addViolation(rfcId, relFile, "V-19", `${rfcId}.amends includes ${refStr}, but ${refStr}.amendedBy does not include ${rfcId}`, "warning");
352
- }
353
- }
354
- }
355
- }
356
- const amendedBy = fm["amendedBy"];
357
- if (Array.isArray(amendedBy)) {
358
- for (const ref of amendedBy) {
359
- const refStr = String(ref);
360
- if (!refStr)
361
- continue;
362
- if (!allParsed.has(refStr)) {
363
- addViolation(rfcId, relFile, "V-19", `amendedBy "${refStr}" does not match any existing RFC`);
364
- }
365
- else {
366
- const otherAmends = allParsed.get(refStr).parsed.frontmatter["amends"];
367
- const arr = Array.isArray(otherAmends) ? otherAmends.map(String) : [];
368
- if (!arr.includes(rfcId)) {
369
- addViolation(rfcId, relFile, "V-19", `${rfcId}.amendedBy includes ${refStr}, but ${refStr}.amends does not include ${rfcId}`, "warning");
370
- }
371
- }
372
- }
373
- }
374
- // V-21: filename must be lowercase kebab-case
375
- const lowerRfcId = rfcId.toLowerCase();
376
- const fileBasename = fileName.split("/").pop().split("\\").pop();
377
- if (!fileBasename.startsWith(lowerRfcId)) {
378
- addViolation(rfcId, relFile, "V-21", `Filename "${fileBasename}" must start with lowercase "${lowerRfcId}"`);
379
- }
380
- else if (!/^[a-z0-9-]+\.md$/.test(fileBasename)) {
381
- addViolation(rfcId, relFile, "V-21", `Filename "${fileName}" is not lowercase kebab-case (only a-z, 0-9, hyphens allowed)`);
382
- }
383
- // V-20: no unknown frontmatter keys
384
- for (const key of Object.keys(fm)) {
385
- if (!knownKeys.has(key)) {
386
- addViolation(rfcId, relFile, "V-20", `unknown frontmatter key "${key}" (not in the RFC schema)`, "warning");
387
- }
388
- }
389
- // V-22: well-formed acceptance probe shape
390
- for (const issue of validateAcceptanceShape(fm["acceptance"])) {
391
- addViolation(rfcId, relFile, "V-22", issue.message, "warning");
392
- }
393
- // V-23: verification evidence for post-cutoff, probe-bearing, implemented RFCs
394
- const createdAtStr = String(fm["createdAt"] ?? "");
395
- const hasProbes = Array.isArray(fm["acceptance"]) && fm["acceptance"].length > 0;
396
- if (createdAtStr >= RFC_METADATA_CUTOFF && hasProbes && status === "implemented") {
397
- const slug = rfcId.toLowerCase();
398
- const evidenceRelPath = path.join(RFC_DIR, "verification", `${slug}.generated.yaml`);
399
- const evidenceAbsPath = path.join(workspaceRoot, evidenceRelPath);
400
- let evidenceOk = false;
401
- let evidenceOverall = "";
402
- try {
403
- const evidenceContent = await readFile(evidenceAbsPath, "utf-8");
404
- const evidence = yamlParse(evidenceContent);
405
- evidenceOverall = String(evidence.overall ?? "");
406
- evidenceOk = evidenceOverall === "pass";
407
- }
408
- catch {
409
- // file missing or unparseable
410
- }
411
- if (!evidenceOk) {
412
- addViolation(rfcId, relFile, "V-23", `status is "implemented" with acceptance probes and createdAt >= ${RFC_METADATA_CUTOFF}, ` +
413
- `but evidence file ${evidenceRelPath} is missing, unparseable, or overall is not "pass" ` +
414
- `(got "${evidenceOverall || "missing"}"). Run: site-kernel run rfc.verification.emit --id ${rfcId}`);
415
- }
416
- }
417
- // V-25: reviewer identity on newly decided RFCs (RFC-0335)
418
- {
419
- const reviewers = fm["reviewers"];
420
- const reviewerArr = Array.isArray(reviewers) ? reviewers.map(String) : [];
421
- const isDecided = DECIDED_STATUSES.includes(status);
422
- const isPostCutoff = createdAtStr >= RFC_METADATA_CUTOFF;
423
- if (isPostCutoff && isDecided && reviewerArr.length === 0) {
424
- addViolation(rfcId, relFile, "V-25", `${status} RFC created ${createdAtStr} has empty reviewers — the deciding human must record their identity (RFC-0335).`);
425
- }
426
- for (const entry of reviewerArr) {
427
- if (!REVIEWER_IDENTITY_PATTERN.test(entry)) {
428
- addViolation(rfcId, relFile, "V-25", `reviewer "${entry}" does not match the identity format ^(human|agent):[a-z0-9][a-z0-9-]*$ (RFC-0335).`);
429
- }
430
- else if (entry.startsWith("agent:")) {
431
- addViolation(rfcId, relFile, "V-25", `agent reviewer identities are reserved until an RFC grants AI reviewer authority over RFC governance (see RFC-0279 for the pattern) (RFC-0335).`);
432
- }
433
- }
434
- }
435
- // V-24: satisfies DNA-trace frontmatter (RFC-0331)
436
- {
437
- const satisfies = fm["satisfies"];
438
- const satisfiesArr = Array.isArray(satisfies) ? satisfies.map(String) : [];
439
- const satisfiesPresent = satisfiesArr.length > 0;
440
- const kind = String(fm["kind"] ?? "");
441
- const requiresSatisfies = createdAtStr >= RFC_METADATA_CUTOFF && (kind === "architecture" || kind === "contract");
442
- // Format: all RFCs, any age — each entry must match ^DNA-\d+$
443
- if (satisfiesPresent) {
444
- for (const entry of satisfiesArr) {
445
- if (!/^DNA-\d+$/.test(entry)) {
446
- addViolation(rfcId, relFile, "V-24", `satisfies entry "${entry}" does not match the format ^DNA-\\d+$ (RFC-0331).`);
447
- }
448
- }
449
- }
450
- // Presence: post-cutoff architecture/contract RFCs must have non-empty satisfies
451
- if (requiresSatisfies && !satisfiesPresent) {
452
- addViolation(rfcId, relFile, "V-24", `${kind} RFC created ${createdAtStr} (>= ${RFC_METADATA_CUTOFF}) must declare at least one DNA invariant in satisfies (RFC-0331).`);
453
- }
454
- }
455
- // V-28: RFC-id monotonicity (RFC-0478) — no RFC may have an id lower
456
- // than the maximum id among RFCs with a strictly earlier createdAt.
457
- // Same-day RFCs (equal createdAt) are unconstrained relative to each other.
458
- // Only applies to RFCs created strictly after RFC_VERSION_BUMP_CUTOFF;
459
- // pre-cutoff and same-day RFCs predate the rule and are exempt.
460
- // All RFCs (including pre-cutoff) participate in the comparison set.
461
- {
462
- const currentIdNum = parseInt(rfcId.replace(/^RFC-/, ""), 10);
463
- const currentCreatedAt = String(fm["createdAt"] ?? "");
464
- if (currentCreatedAt > RFC_VERSION_BUMP_CUTOFF) {
465
- let maxEarlierId = 0;
466
- for (const [otherId, other] of allParsed) {
467
- if (otherId === rfcId)
468
- continue;
469
- const otherCreatedAt = String(other.parsed.frontmatter["createdAt"] ?? "");
470
- if (otherCreatedAt < currentCreatedAt) {
471
- const otherIdNum = parseInt(otherId.replace(/^RFC-/, ""), 10);
472
- if (otherIdNum > maxEarlierId) {
473
- maxEarlierId = otherIdNum;
474
- }
475
- }
476
- }
477
- if (currentIdNum < maxEarlierId) {
478
- addViolation(rfcId, relFile, "V-28", `RFC-id ${rfcId} (createdAt ${currentCreatedAt}) is lower than RFC-${maxEarlierId} which has a strictly earlier createdAt. RFC-ids must be monotonically non-decreasing with respect to createdAt (RFC-0478).`);
479
- }
480
- }
481
- }
482
- // V-29: versionBump required for post-cutoff accepted/implemented RFCs (RFC-0478, ADR-0029)
483
- {
484
- const versionBump = fm["versionBump"];
485
- const isPostCutoff = createdAtStr >= RFC_VERSION_BUMP_CUTOFF;
486
- const requiresVersionBump = status === "implemented" || status === "accepted";
487
- if (isPostCutoff && requiresVersionBump && versionBump === undefined) {
488
- addViolation(rfcId, relFile, "V-29", `status is "${status}" and createdAt >= ${RFC_VERSION_BUMP_CUTOFF}, but versionBump is absent. Post-cutoff accepted/implemented RFCs must declare versionBump (RFC-0478).`);
489
- }
490
- if (versionBump === "none") {
491
- const commands = fm["commands"];
492
- const added = Array.isArray(commands?.added) ? commands.added : [];
493
- const changed = Array.isArray(commands?.changed) ? commands.changed : [];
494
- if (added.length > 0 || changed.length > 0) {
495
- addViolation(rfcId, relFile, "V-29", `versionBump is "none" but commands.added or commands.changed is non-empty. Commands imply code changes; use "patch" or "minor" instead (RFC-0478).`, "warning");
496
- }
497
- }
498
- }
499
- // V-30: breaksC field consistency (RFC-0480)
500
- // If breaksC: true — @warpgogol/ontology must be in packagesImpacted.
501
- // If breaksC absent/false but @warpgol/ontology in packagesImpacted — warning.
502
- // Skip for archived RFCs — package names changed during ecosystem consolidation (RFC-0776):
503
- // @warpgogol/ontology → @warpgogol/werkstatt-shared/ontology
504
- {
505
- const breaksC = fm["breaksC"];
506
- const packagesImpacted = Array.isArray(fm["packagesImpacted"])
507
- ? fm["packagesImpacted"].map(String)
508
- : [];
509
- const hasOntology = packagesImpacted.some((p) => p.includes("@warpgogol/werkstatt-shared/ontology"));
510
- if (breaksC === true && !hasOntology && !isArchived) {
511
- addViolation(rfcId, relFile, "V-30", `breaksC is true but @warpgogol/ontology is not in packagesImpacted. RFCs that break Layer C must update the declarative C-contract in packages/ontology/src/external-surfaces/ (RFC-0480).`);
512
- }
513
- if (breaksC !== true && hasOntology) {
514
- addViolation(rfcId, relFile, "V-30", `@warpgogol/ontology is in packagesImpacted but breaksC is not true. If this RFC modifies packages/ontology/src/external-surfaces/, declare breaksC: true (RFC-0480).`, "warning");
515
- }
516
- }
517
- // V-31: filename-number uniqueness and filename/id consistency (RFC-0491)
518
- if (seenFilenameNumbers) {
519
- const fileBasename = fileName.split("/").pop().split("\\").pop();
520
- const fileNumMatch = fileBasename.match(/^rfc-(\d{4})/);
521
- if (fileNumMatch) {
522
- const fileNum = parseInt(fileNumMatch[1], 10);
523
- const idNum = parseInt(rfcId.replace(/^RFC-/, ""), 10);
524
- // Sub-check A: filename number must match frontmatter id number
525
- if (!Number.isNaN(idNum) && fileNum !== idNum) {
526
- addViolation(rfcId, relFile, "V-31", `Filename number ${String(fileNum).padStart(4, "0")} does not match frontmatter id ${rfcId}`);
527
- }
528
- // Sub-check B: filename number must be unique across the full tree
529
- const prevNumFile = seenFilenameNumbers.get(fileNum);
530
- if (prevNumFile) {
531
- addViolation(rfcId, relFile, "V-31", `Duplicate filename number ${String(fileNum).padStart(4, "0")} — also in ${prevNumFile}`);
532
- }
533
- else {
534
- seenFilenameNumbers.set(fileNum, relFile);
535
- }
536
- }
537
- }
538
- // V-32: implementation commit drift detection (RFC-0625)
539
- // Warns when implement: RFC-XXXX commits exist in git history since createdAt
540
- // but the RFC status is not yet "implemented".
541
- {
542
- const driftResult = await checkImplementationCommitDrift(workspaceRoot, rfcId, createdAt, status);
543
- if (driftResult.found) {
544
- addViolation(rfcId, relFile, "V-32", `${rfcId} has ${driftResult.commitCount} implement: commit(s) in git history since ${createdAt} but status is still "${status}". Run rfc.implement.stamp to transition to implemented.`, "warning");
545
- }
546
- }
547
- // V-33: dependsOn referential integrity, self-dependency, rejected-dependency deadlock (RFC-0795)
548
- const dependsOn = fm["dependsOn"];
549
- if (Array.isArray(dependsOn)) {
550
- for (const depRef of dependsOn) {
551
- const depStr = String(depRef);
552
- if (!depStr)
553
- continue;
554
- if (depStr === rfcId) {
555
- addViolation(rfcId, relFile, "V-33", `dependsOn includes itself — an RFC cannot depend on itself`, "warning");
556
- }
557
- else if (!allParsed.has(depStr)) {
558
- addViolation(rfcId, relFile, "V-33", `dependsOn "${depStr}" does not match any existing RFC`, "warning");
559
- }
560
- else {
561
- const depStatus = String(allParsed.get(depStr).parsed.frontmatter["status"] ?? "");
562
- if (depStatus === "rejected") {
563
- addViolation(rfcId, relFile, "V-33", `dependsOn "${depStr}" has status "rejected" — this dependency will never be satisfied. Remove the entry or supersede the rejected RFC.`, "warning");
564
- }
565
- }
566
- }
567
- }
568
- // V-34: batch slug format (RFC-0795)
569
- const batchSlug = fm["batch"];
570
- if (batchSlug !== undefined && batchSlug !== null) {
571
- const batchStr = String(batchSlug);
572
- if (batchStr && !/^[a-z0-9]+(-[a-z0-9]+)*$/.test(batchStr)) {
573
- addViolation(rfcId, relFile, "V-34", `batch slug "${batchStr}" does not match kebab-case pattern /^[a-z0-9]+(-[a-z0-9]+)*$/`, "warning");
574
- }
575
- }
576
- // V-NC-01: NEEDS CLARIFICATION marker detection (RFC-0709)
577
- const ncMarkers = collectMarkers(body, status, createdAt);
578
- for (const marker of ncMarkers) {
579
- addViolation(rfcId, relFile, "V-NC-01", `Unresolved NEEDS CLARIFICATION marker at line ${marker.line}: "${marker.text}"`, marker.severity === "error" ? "error" : "warning");
580
- }
581
- return ncMarkers;
582
- }
583
- // ─── V-RFC-33: frontmatter YAML parseability (RFC-0755) ────────────────────
584
- export function checkFrontmatterYamlParse(fileName, result, addViolation) {
585
- if (result && "error" in result) {
586
- const relFile = path.join(RFC_DIR, fileName);
587
- addViolation("UNKNOWN", relFile, "V-RFC-33", `RFC frontmatter YAML parse error in ${fileName}: ${result.error}`);
588
- }
589
- }
590
- //# sourceMappingURL=validate-rules.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validate-rules.js","sourceRoot":"","sources":["../../../../os/rfc/handlers/validate-rules.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import type { ForgeCommandInput, ForgeCommandResult, ForgeRuntimeContext } from "../../../src/types.ts";
2
- import type { RfcValidationResult } from "../types.ts";
3
- export declare function runRfcValidate(input: ForgeCommandInput, context: ForgeRuntimeContext): Promise<ForgeCommandResult<RfcValidationResult>>;
4
- //# sourceMappingURL=validate.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../../../os/rfc/handlers/validate.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAA0B,mBAAmB,EAAU,MAAM,aAAa,CAAC;AAMvF,wBAAsB,cAAc,CAClC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,CAAC,CA8IlD"}