@warpgogol/forge 2.9.10 → 2.9.13

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 (690) hide show
  1. package/AGENTS.md +397 -0
  2. package/package.json +1 -1
  3. package/dist/bin/cli.d.ts +0 -3
  4. package/dist/bin/cli.d.ts.map +0 -1
  5. package/dist/bin/cli.js +0 -291
  6. package/dist/bin/cli.js.map +0 -1
  7. package/dist/os/adr/adr.module.d.ts +0 -3
  8. package/dist/os/adr/adr.module.d.ts.map +0 -1
  9. package/dist/os/adr/adr.module.js +0 -145
  10. package/dist/os/adr/adr.module.js.map +0 -1
  11. package/dist/os/adr/frontmatter-io.d.ts +0 -12
  12. package/dist/os/adr/frontmatter-io.d.ts.map +0 -1
  13. package/dist/os/adr/frontmatter-io.js +0 -67
  14. package/dist/os/adr/frontmatter-io.js.map +0 -1
  15. package/dist/os/adr/handlers/archive.d.ts +0 -24
  16. package/dist/os/adr/handlers/archive.d.ts.map +0 -1
  17. package/dist/os/adr/handlers/archive.js +0 -194
  18. package/dist/os/adr/handlers/archive.js.map +0 -1
  19. package/dist/os/adr/handlers/implement-stamp.d.ts +0 -4
  20. package/dist/os/adr/handlers/implement-stamp.d.ts.map +0 -1
  21. package/dist/os/adr/handlers/implement-stamp.js +0 -264
  22. package/dist/os/adr/handlers/implement-stamp.js.map +0 -1
  23. package/dist/os/adr/handlers/list-create.d.ts +0 -5
  24. package/dist/os/adr/handlers/list-create.d.ts.map +0 -1
  25. package/dist/os/adr/handlers/list-create.js +0 -201
  26. package/dist/os/adr/handlers/list-create.js.map +0 -1
  27. package/dist/os/adr/handlers/validate.d.ts +0 -4
  28. package/dist/os/adr/handlers/validate.d.ts.map +0 -1
  29. package/dist/os/adr/handlers/validate.js +0 -279
  30. package/dist/os/adr/handlers/validate.js.map +0 -1
  31. package/dist/os/adr/index.d.ts +0 -8
  32. package/dist/os/adr/index.d.ts.map +0 -1
  33. package/dist/os/adr/index.js +0 -18
  34. package/dist/os/adr/index.js.map +0 -1
  35. package/dist/os/adr/types.d.ts +0 -76
  36. package/dist/os/adr/types.d.ts.map +0 -1
  37. package/dist/os/adr/types.js +0 -56
  38. package/dist/os/adr/types.js.map +0 -1
  39. package/dist/os/audit/audit.module.d.ts +0 -3
  40. package/dist/os/audit/audit.module.d.ts.map +0 -1
  41. package/dist/os/audit/audit.module.js +0 -44
  42. package/dist/os/audit/audit.module.js.map +0 -1
  43. package/dist/os/audit/frontmatter-io.d.ts +0 -12
  44. package/dist/os/audit/frontmatter-io.d.ts.map +0 -1
  45. package/dist/os/audit/frontmatter-io.js +0 -71
  46. package/dist/os/audit/frontmatter-io.js.map +0 -1
  47. package/dist/os/audit/handlers/archive.d.ts +0 -4
  48. package/dist/os/audit/handlers/archive.d.ts.map +0 -1
  49. package/dist/os/audit/handlers/archive.js +0 -207
  50. package/dist/os/audit/handlers/archive.js.map +0 -1
  51. package/dist/os/audit/index.d.ts +0 -6
  52. package/dist/os/audit/index.d.ts.map +0 -1
  53. package/dist/os/audit/index.js +0 -16
  54. package/dist/os/audit/index.js.map +0 -1
  55. package/dist/os/audit/types.d.ts +0 -12
  56. package/dist/os/audit/types.d.ts.map +0 -1
  57. package/dist/os/audit/types.js +0 -17
  58. package/dist/os/audit/types.js.map +0 -1
  59. package/dist/os/compass/compass.module.d.ts +0 -3
  60. package/dist/os/compass/compass.module.d.ts.map +0 -1
  61. package/dist/os/compass/compass.module.js +0 -182
  62. package/dist/os/compass/compass.module.js.map +0 -1
  63. package/dist/os/compass/handlers/compass-audit-handler.d.ts +0 -36
  64. package/dist/os/compass/handlers/compass-audit-handler.d.ts.map +0 -1
  65. package/dist/os/compass/handlers/compass-audit-handler.js +0 -260
  66. package/dist/os/compass/handlers/compass-audit-handler.js.map +0 -1
  67. package/dist/os/compass/handlers/compass-change-summary-handler.d.ts +0 -19
  68. package/dist/os/compass/handlers/compass-change-summary-handler.d.ts.map +0 -1
  69. package/dist/os/compass/handlers/compass-change-summary-handler.js +0 -222
  70. package/dist/os/compass/handlers/compass-change-summary-handler.js.map +0 -1
  71. package/dist/os/compass/handlers/compass-inventory-handler.d.ts +0 -28
  72. package/dist/os/compass/handlers/compass-inventory-handler.d.ts.map +0 -1
  73. package/dist/os/compass/handlers/compass-inventory-handler.js +0 -296
  74. package/dist/os/compass/handlers/compass-inventory-handler.js.map +0 -1
  75. package/dist/os/compass/handlers/compass-inventory.d.ts +0 -30
  76. package/dist/os/compass/handlers/compass-inventory.d.ts.map +0 -1
  77. package/dist/os/compass/handlers/compass-inventory.js +0 -462
  78. package/dist/os/compass/handlers/compass-inventory.js.map +0 -1
  79. package/dist/os/compass/handlers/git-revision.d.ts +0 -8
  80. package/dist/os/compass/handlers/git-revision.d.ts.map +0 -1
  81. package/dist/os/compass/handlers/git-revision.js +0 -99
  82. package/dist/os/compass/handlers/git-revision.js.map +0 -1
  83. package/dist/os/compass/handlers/resolve-scan-root.d.ts +0 -3
  84. package/dist/os/compass/handlers/resolve-scan-root.d.ts.map +0 -1
  85. package/dist/os/compass/handlers/resolve-scan-root.js +0 -57
  86. package/dist/os/compass/handlers/resolve-scan-root.js.map +0 -1
  87. package/dist/os/compass/index.d.ts +0 -8
  88. package/dist/os/compass/index.d.ts.map +0 -1
  89. package/dist/os/compass/index.js +0 -19
  90. package/dist/os/compass/index.js.map +0 -1
  91. package/dist/os/core/core.module.d.ts +0 -3
  92. package/dist/os/core/core.module.d.ts.map +0 -1
  93. package/dist/os/core/core.module.js +0 -820
  94. package/dist/os/core/core.module.js.map +0 -1
  95. package/dist/os/core/handlers/assets-check.d.ts +0 -19
  96. package/dist/os/core/handlers/assets-check.d.ts.map +0 -1
  97. package/dist/os/core/handlers/assets-check.js +0 -89
  98. package/dist/os/core/handlers/assets-check.js.map +0 -1
  99. package/dist/os/core/handlers/assets-helpers.d.ts +0 -28
  100. package/dist/os/core/handlers/assets-helpers.d.ts.map +0 -1
  101. package/dist/os/core/handlers/assets-helpers.js +0 -128
  102. package/dist/os/core/handlers/assets-helpers.js.map +0 -1
  103. package/dist/os/core/handlers/assets-list.d.ts +0 -9
  104. package/dist/os/core/handlers/assets-list.d.ts.map +0 -1
  105. package/dist/os/core/handlers/assets-list.js +0 -72
  106. package/dist/os/core/handlers/assets-list.js.map +0 -1
  107. package/dist/os/core/handlers/build.d.ts +0 -16
  108. package/dist/os/core/handlers/build.d.ts.map +0 -1
  109. package/dist/os/core/handlers/build.js +0 -123
  110. package/dist/os/core/handlers/build.js.map +0 -1
  111. package/dist/os/core/handlers/determinism-check.d.ts +0 -20
  112. package/dist/os/core/handlers/determinism-check.d.ts.map +0 -1
  113. package/dist/os/core/handlers/determinism-check.js +0 -289
  114. package/dist/os/core/handlers/determinism-check.js.map +0 -1
  115. package/dist/os/core/handlers/dev.d.ts +0 -10
  116. package/dist/os/core/handlers/dev.d.ts.map +0 -1
  117. package/dist/os/core/handlers/dev.js +0 -102
  118. package/dist/os/core/handlers/dev.js.map +0 -1
  119. package/dist/os/core/handlers/knowledge-compact.d.ts +0 -4
  120. package/dist/os/core/handlers/knowledge-compact.d.ts.map +0 -1
  121. package/dist/os/core/handlers/knowledge-compact.js +0 -198
  122. package/dist/os/core/handlers/knowledge-compact.js.map +0 -1
  123. package/dist/os/core/handlers/package-health.d.ts +0 -17
  124. package/dist/os/core/handlers/package-health.d.ts.map +0 -1
  125. package/dist/os/core/handlers/package-health.js +0 -196
  126. package/dist/os/core/handlers/package-health.js.map +0 -1
  127. package/dist/os/core/handlers/pinned-check.d.ts +0 -49
  128. package/dist/os/core/handlers/pinned-check.d.ts.map +0 -1
  129. package/dist/os/core/handlers/pinned-check.js +0 -159
  130. package/dist/os/core/handlers/pinned-check.js.map +0 -1
  131. package/dist/os/core/handlers/pinned-init.d.ts +0 -19
  132. package/dist/os/core/handlers/pinned-init.d.ts.map +0 -1
  133. package/dist/os/core/handlers/pinned-init.js +0 -283
  134. package/dist/os/core/handlers/pinned-init.js.map +0 -1
  135. package/dist/os/core/handlers/pinned-types.d.ts +0 -29
  136. package/dist/os/core/handlers/pinned-types.d.ts.map +0 -1
  137. package/dist/os/core/handlers/pinned-types.js +0 -16
  138. package/dist/os/core/handlers/pinned-types.js.map +0 -1
  139. package/dist/os/core/handlers/pinned-validate.d.ts +0 -4
  140. package/dist/os/core/handlers/pinned-validate.d.ts.map +0 -1
  141. package/dist/os/core/handlers/pinned-validate.js +0 -248
  142. package/dist/os/core/handlers/pinned-validate.js.map +0 -1
  143. package/dist/os/core/handlers/profile-resolve.d.ts +0 -13
  144. package/dist/os/core/handlers/profile-resolve.d.ts.map +0 -1
  145. package/dist/os/core/handlers/profile-resolve.js +0 -65
  146. package/dist/os/core/handlers/profile-resolve.js.map +0 -1
  147. package/dist/os/core/handlers/release-prepare.d.ts +0 -25
  148. package/dist/os/core/handlers/release-prepare.d.ts.map +0 -1
  149. package/dist/os/core/handlers/release-prepare.js +0 -228
  150. package/dist/os/core/handlers/release-prepare.js.map +0 -1
  151. package/dist/os/core/handlers/release-publish.d.ts +0 -13
  152. package/dist/os/core/handlers/release-publish.d.ts.map +0 -1
  153. package/dist/os/core/handlers/release-publish.js +0 -173
  154. package/dist/os/core/handlers/release-publish.js.map +0 -1
  155. package/dist/os/core/handlers/validate.d.ts +0 -26
  156. package/dist/os/core/handlers/validate.d.ts.map +0 -1
  157. package/dist/os/core/handlers/validate.js +0 -208
  158. package/dist/os/core/handlers/validate.js.map +0 -1
  159. package/dist/os/core/handlers/workspace-deps.d.ts +0 -12
  160. package/dist/os/core/handlers/workspace-deps.d.ts.map +0 -1
  161. package/dist/os/core/handlers/workspace-deps.js +0 -41
  162. package/dist/os/core/handlers/workspace-deps.js.map +0 -1
  163. package/dist/os/core/index.d.ts +0 -2
  164. package/dist/os/core/index.d.ts.map +0 -1
  165. package/dist/os/core/index.js +0 -13
  166. package/dist/os/core/index.js.map +0 -1
  167. package/dist/os/exploration/exploration.module.d.ts +0 -3
  168. package/dist/os/exploration/exploration.module.d.ts.map +0 -1
  169. package/dist/os/exploration/exploration.module.js +0 -82
  170. package/dist/os/exploration/exploration.module.js.map +0 -1
  171. package/dist/os/exploration/frontmatter-io.d.ts +0 -13
  172. package/dist/os/exploration/frontmatter-io.d.ts.map +0 -1
  173. package/dist/os/exploration/frontmatter-io.js +0 -61
  174. package/dist/os/exploration/frontmatter-io.js.map +0 -1
  175. package/dist/os/exploration/handlers/archive.d.ts +0 -4
  176. package/dist/os/exploration/handlers/archive.d.ts.map +0 -1
  177. package/dist/os/exploration/handlers/archive.js +0 -141
  178. package/dist/os/exploration/handlers/archive.js.map +0 -1
  179. package/dist/os/exploration/handlers/list.d.ts +0 -4
  180. package/dist/os/exploration/handlers/list.d.ts.map +0 -1
  181. package/dist/os/exploration/handlers/list.js +0 -64
  182. package/dist/os/exploration/handlers/list.js.map +0 -1
  183. package/dist/os/exploration/handlers/show.d.ts +0 -4
  184. package/dist/os/exploration/handlers/show.d.ts.map +0 -1
  185. package/dist/os/exploration/handlers/show.js +0 -97
  186. package/dist/os/exploration/handlers/show.js.map +0 -1
  187. package/dist/os/exploration/index.d.ts +0 -7
  188. package/dist/os/exploration/index.d.ts.map +0 -1
  189. package/dist/os/exploration/index.js +0 -17
  190. package/dist/os/exploration/index.js.map +0 -1
  191. package/dist/os/exploration/types.d.ts +0 -38
  192. package/dist/os/exploration/types.d.ts.map +0 -1
  193. package/dist/os/exploration/types.js +0 -23
  194. package/dist/os/exploration/types.js.map +0 -1
  195. package/dist/os/mission/handlers/archive.d.ts +0 -4
  196. package/dist/os/mission/handlers/archive.d.ts.map +0 -1
  197. package/dist/os/mission/handlers/archive.js +0 -356
  198. package/dist/os/mission/handlers/archive.js.map +0 -1
  199. package/dist/os/mission/index.d.ts +0 -2
  200. package/dist/os/mission/index.d.ts.map +0 -1
  201. package/dist/os/mission/index.js +0 -2
  202. package/dist/os/mission/index.js.map +0 -1
  203. package/dist/os/mission/mission.module.d.ts +0 -3
  204. package/dist/os/mission/mission.module.d.ts.map +0 -1
  205. package/dist/os/mission/mission.module.js +0 -44
  206. package/dist/os/mission/mission.module.js.map +0 -1
  207. package/dist/os/mission/types.d.ts +0 -23
  208. package/dist/os/mission/types.d.ts.map +0 -1
  209. package/dist/os/mission/types.js +0 -18
  210. package/dist/os/mission/types.js.map +0 -1
  211. package/dist/os/naming/index.d.ts +0 -3
  212. package/dist/os/naming/index.d.ts.map +0 -1
  213. package/dist/os/naming/index.js +0 -14
  214. package/dist/os/naming/index.js.map +0 -1
  215. package/dist/os/naming/naming-convention.d.ts +0 -25
  216. package/dist/os/naming/naming-convention.d.ts.map +0 -1
  217. package/dist/os/naming/naming-convention.js +0 -324
  218. package/dist/os/naming/naming-convention.js.map +0 -1
  219. package/dist/os/naming/naming.module.d.ts +0 -3
  220. package/dist/os/naming/naming.module.d.ts.map +0 -1
  221. package/dist/os/naming/naming.module.js +0 -33
  222. package/dist/os/naming/naming.module.js.map +0 -1
  223. package/dist/os/notes/index.d.ts +0 -2
  224. package/dist/os/notes/index.d.ts.map +0 -1
  225. package/dist/os/notes/index.js +0 -10
  226. package/dist/os/notes/index.js.map +0 -1
  227. package/dist/os/notes/notes.module.d.ts +0 -3
  228. package/dist/os/notes/notes.module.d.ts.map +0 -1
  229. package/dist/os/notes/notes.module.js +0 -83
  230. package/dist/os/notes/notes.module.js.map +0 -1
  231. package/dist/os/plan/frontmatter-io.d.ts +0 -12
  232. package/dist/os/plan/frontmatter-io.d.ts.map +0 -1
  233. package/dist/os/plan/frontmatter-io.js +0 -69
  234. package/dist/os/plan/frontmatter-io.js.map +0 -1
  235. package/dist/os/plan/handlers/archive.d.ts +0 -4
  236. package/dist/os/plan/handlers/archive.d.ts.map +0 -1
  237. package/dist/os/plan/handlers/archive.js +0 -206
  238. package/dist/os/plan/handlers/archive.js.map +0 -1
  239. package/dist/os/plan/index.d.ts +0 -6
  240. package/dist/os/plan/index.d.ts.map +0 -1
  241. package/dist/os/plan/index.js +0 -16
  242. package/dist/os/plan/index.js.map +0 -1
  243. package/dist/os/plan/plan.module.d.ts +0 -3
  244. package/dist/os/plan/plan.module.d.ts.map +0 -1
  245. package/dist/os/plan/plan.module.js +0 -44
  246. package/dist/os/plan/plan.module.js.map +0 -1
  247. package/dist/os/plan/types.d.ts +0 -12
  248. package/dist/os/plan/types.d.ts.map +0 -1
  249. package/dist/os/plan/types.js +0 -17
  250. package/dist/os/plan/types.js.map +0 -1
  251. package/dist/os/program/discovery.d.ts +0 -61
  252. package/dist/os/program/discovery.d.ts.map +0 -1
  253. package/dist/os/program/discovery.js +0 -236
  254. package/dist/os/program/discovery.js.map +0 -1
  255. package/dist/os/program/handlers/complete.d.ts +0 -12
  256. package/dist/os/program/handlers/complete.d.ts.map +0 -1
  257. package/dist/os/program/handlers/complete.js +0 -362
  258. package/dist/os/program/handlers/complete.js.map +0 -1
  259. package/dist/os/program/handlers/lease.d.ts +0 -13
  260. package/dist/os/program/handlers/lease.d.ts.map +0 -1
  261. package/dist/os/program/handlers/lease.js +0 -328
  262. package/dist/os/program/handlers/lease.js.map +0 -1
  263. package/dist/os/program/handlers/seal.d.ts +0 -12
  264. package/dist/os/program/handlers/seal.d.ts.map +0 -1
  265. package/dist/os/program/handlers/seal.js +0 -277
  266. package/dist/os/program/handlers/seal.js.map +0 -1
  267. package/dist/os/program/handlers/validate.d.ts +0 -14
  268. package/dist/os/program/handlers/validate.d.ts.map +0 -1
  269. package/dist/os/program/handlers/validate.js +0 -170
  270. package/dist/os/program/handlers/validate.js.map +0 -1
  271. package/dist/os/program/lease.d.ts +0 -39
  272. package/dist/os/program/lease.d.ts.map +0 -1
  273. package/dist/os/program/lease.js +0 -129
  274. package/dist/os/program/lease.js.map +0 -1
  275. package/dist/os/program/program.module.d.ts +0 -3
  276. package/dist/os/program/program.module.d.ts.map +0 -1
  277. package/dist/os/program/program.module.js +0 -201
  278. package/dist/os/program/program.module.js.map +0 -1
  279. package/dist/os/program/schemas.d.ts +0 -225
  280. package/dist/os/program/schemas.d.ts.map +0 -1
  281. package/dist/os/program/schemas.js +0 -174
  282. package/dist/os/program/schemas.js.map +0 -1
  283. package/dist/os/program/state.d.ts +0 -38
  284. package/dist/os/program/state.d.ts.map +0 -1
  285. package/dist/os/program/state.js +0 -189
  286. package/dist/os/program/state.js.map +0 -1
  287. package/dist/os/rfc/acceptance.d.ts +0 -15
  288. package/dist/os/rfc/acceptance.d.ts.map +0 -1
  289. package/dist/os/rfc/acceptance.js +0 -318
  290. package/dist/os/rfc/acceptance.js.map +0 -1
  291. package/dist/os/rfc/decision-log.d.ts +0 -6
  292. package/dist/os/rfc/decision-log.d.ts.map +0 -1
  293. package/dist/os/rfc/decision-log.js +0 -269
  294. package/dist/os/rfc/decision-log.js.map +0 -1
  295. package/dist/os/rfc/dna-trace.d.ts +0 -27
  296. package/dist/os/rfc/dna-trace.d.ts.map +0 -1
  297. package/dist/os/rfc/dna-trace.js +0 -214
  298. package/dist/os/rfc/dna-trace.js.map +0 -1
  299. package/dist/os/rfc/frontmatter-io.d.ts +0 -18
  300. package/dist/os/rfc/frontmatter-io.d.ts.map +0 -1
  301. package/dist/os/rfc/frontmatter-io.js +0 -110
  302. package/dist/os/rfc/frontmatter-io.js.map +0 -1
  303. package/dist/os/rfc/handlers/archive.d.ts +0 -25
  304. package/dist/os/rfc/handlers/archive.d.ts.map +0 -1
  305. package/dist/os/rfc/handlers/archive.js +0 -247
  306. package/dist/os/rfc/handlers/archive.js.map +0 -1
  307. package/dist/os/rfc/handlers/check.d.ts +0 -4
  308. package/dist/os/rfc/handlers/check.d.ts.map +0 -1
  309. package/dist/os/rfc/handlers/check.js +0 -203
  310. package/dist/os/rfc/handlers/check.js.map +0 -1
  311. package/dist/os/rfc/handlers/implement-stamp.d.ts +0 -4
  312. package/dist/os/rfc/handlers/implement-stamp.d.ts.map +0 -1
  313. package/dist/os/rfc/handlers/implement-stamp.js +0 -426
  314. package/dist/os/rfc/handlers/implement-stamp.js.map +0 -1
  315. package/dist/os/rfc/handlers/index-graph.d.ts +0 -13
  316. package/dist/os/rfc/handlers/index-graph.d.ts.map +0 -1
  317. package/dist/os/rfc/handlers/index-graph.js +0 -192
  318. package/dist/os/rfc/handlers/index-graph.js.map +0 -1
  319. package/dist/os/rfc/handlers/lifecycle.d.ts +0 -13
  320. package/dist/os/rfc/handlers/lifecycle.d.ts.map +0 -1
  321. package/dist/os/rfc/handlers/lifecycle.js +0 -155
  322. package/dist/os/rfc/handlers/lifecycle.js.map +0 -1
  323. package/dist/os/rfc/handlers/list-create.d.ts +0 -6
  324. package/dist/os/rfc/handlers/list-create.d.ts.map +0 -1
  325. package/dist/os/rfc/handlers/list-create.js +0 -260
  326. package/dist/os/rfc/handlers/list-create.js.map +0 -1
  327. package/dist/os/rfc/handlers/pipeline-status.d.ts +0 -26
  328. package/dist/os/rfc/handlers/pipeline-status.d.ts.map +0 -1
  329. package/dist/os/rfc/handlers/pipeline-status.js +0 -124
  330. package/dist/os/rfc/handlers/pipeline-status.js.map +0 -1
  331. package/dist/os/rfc/handlers/shared.d.ts +0 -22
  332. package/dist/os/rfc/handlers/shared.d.ts.map +0 -1
  333. package/dist/os/rfc/handlers/shared.js +0 -105
  334. package/dist/os/rfc/handlers/shared.js.map +0 -1
  335. package/dist/os/rfc/handlers/supersede-propose.d.ts +0 -4
  336. package/dist/os/rfc/handlers/supersede-propose.d.ts.map +0 -1
  337. package/dist/os/rfc/handlers/supersede-propose.js +0 -203
  338. package/dist/os/rfc/handlers/supersede-propose.js.map +0 -1
  339. package/dist/os/rfc/handlers/validate-rules.d.ts +0 -32
  340. package/dist/os/rfc/handlers/validate-rules.d.ts.map +0 -1
  341. package/dist/os/rfc/handlers/validate-rules.js +0 -590
  342. package/dist/os/rfc/handlers/validate-rules.js.map +0 -1
  343. package/dist/os/rfc/handlers/validate.d.ts +0 -4
  344. package/dist/os/rfc/handlers/validate.d.ts.map +0 -1
  345. package/dist/os/rfc/handlers/validate.js +0 -122
  346. package/dist/os/rfc/handlers/validate.js.map +0 -1
  347. package/dist/os/rfc/handlers.d.ts +0 -7
  348. package/dist/os/rfc/handlers.d.ts.map +0 -1
  349. package/dist/os/rfc/handlers.js +0 -19
  350. package/dist/os/rfc/handlers.js.map +0 -1
  351. package/dist/os/rfc/index.d.ts +0 -18
  352. package/dist/os/rfc/index.d.ts.map +0 -1
  353. package/dist/os/rfc/index.js +0 -24
  354. package/dist/os/rfc/index.js.map +0 -1
  355. package/dist/os/rfc/rfc.module.d.ts +0 -3
  356. package/dist/os/rfc/rfc.module.d.ts.map +0 -1
  357. package/dist/os/rfc/rfc.module.js +0 -366
  358. package/dist/os/rfc/rfc.module.js.map +0 -1
  359. package/dist/os/rfc/types.d.ts +0 -483
  360. package/dist/os/rfc/types.d.ts.map +0 -1
  361. package/dist/os/rfc/types.js +0 -100
  362. package/dist/os/rfc/types.js.map +0 -1
  363. package/dist/os/rfc/verification-evidence.d.ts +0 -8
  364. package/dist/os/rfc/verification-evidence.d.ts.map +0 -1
  365. package/dist/os/rfc/verification-evidence.js +0 -184
  366. package/dist/os/rfc/verification-evidence.js.map +0 -1
  367. package/dist/os/session/atif-parser.d.ts +0 -29
  368. package/dist/os/session/atif-parser.d.ts.map +0 -1
  369. package/dist/os/session/atif-parser.js +0 -140
  370. package/dist/os/session/atif-parser.js.map +0 -1
  371. package/dist/os/session/frontmatter-io.d.ts +0 -31
  372. package/dist/os/session/frontmatter-io.d.ts.map +0 -1
  373. package/dist/os/session/frontmatter-io.js +0 -146
  374. package/dist/os/session/frontmatter-io.js.map +0 -1
  375. package/dist/os/session/handlers/archive.d.ts +0 -4
  376. package/dist/os/session/handlers/archive.d.ts.map +0 -1
  377. package/dist/os/session/handlers/archive.js +0 -241
  378. package/dist/os/session/handlers/archive.js.map +0 -1
  379. package/dist/os/session/handlers/list.d.ts +0 -4
  380. package/dist/os/session/handlers/list.d.ts.map +0 -1
  381. package/dist/os/session/handlers/list.js +0 -147
  382. package/dist/os/session/handlers/list.js.map +0 -1
  383. package/dist/os/session/handlers/save.d.ts +0 -6
  384. package/dist/os/session/handlers/save.d.ts.map +0 -1
  385. package/dist/os/session/handlers/save.js +0 -297
  386. package/dist/os/session/handlers/save.js.map +0 -1
  387. package/dist/os/session/handlers/validate.d.ts +0 -4
  388. package/dist/os/session/handlers/validate.d.ts.map +0 -1
  389. package/dist/os/session/handlers/validate.js +0 -224
  390. package/dist/os/session/handlers/validate.js.map +0 -1
  391. package/dist/os/session/index.d.ts +0 -9
  392. package/dist/os/session/index.d.ts.map +0 -1
  393. package/dist/os/session/index.js +0 -20
  394. package/dist/os/session/index.js.map +0 -1
  395. package/dist/os/session/session.module.d.ts +0 -3
  396. package/dist/os/session/session.module.d.ts.map +0 -1
  397. package/dist/os/session/session.module.js +0 -115
  398. package/dist/os/session/session.module.js.map +0 -1
  399. package/dist/os/session/types.d.ts +0 -131
  400. package/dist/os/session/types.d.ts.map +0 -1
  401. package/dist/os/session/types.js +0 -59
  402. package/dist/os/session/types.js.map +0 -1
  403. package/dist/os/spec/live-spec-list.d.ts +0 -4
  404. package/dist/os/spec/live-spec-list.d.ts.map +0 -1
  405. package/dist/os/spec/live-spec-list.js +0 -72
  406. package/dist/os/spec/live-spec-list.js.map +0 -1
  407. package/dist/os/spec/live-spec-merge.d.ts +0 -4
  408. package/dist/os/spec/live-spec-merge.d.ts.map +0 -1
  409. package/dist/os/spec/live-spec-merge.js +0 -345
  410. package/dist/os/spec/live-spec-merge.js.map +0 -1
  411. package/dist/os/spec/live-spec-show.d.ts +0 -4
  412. package/dist/os/spec/live-spec-show.d.ts.map +0 -1
  413. package/dist/os/spec/live-spec-show.js +0 -105
  414. package/dist/os/spec/live-spec-show.js.map +0 -1
  415. package/dist/os/spec/live-spec-types.d.ts +0 -71
  416. package/dist/os/spec/live-spec-types.d.ts.map +0 -1
  417. package/dist/os/spec/live-spec-types.js +0 -14
  418. package/dist/os/spec/live-spec-types.js.map +0 -1
  419. package/dist/os/spec/live-spec-validate.d.ts +0 -4
  420. package/dist/os/spec/live-spec-validate.d.ts.map +0 -1
  421. package/dist/os/spec/live-spec-validate.js +0 -140
  422. package/dist/os/spec/live-spec-validate.js.map +0 -1
  423. package/dist/os/spec/spec-materialize.d.ts +0 -21
  424. package/dist/os/spec/spec-materialize.d.ts.map +0 -1
  425. package/dist/os/spec/spec-materialize.js +0 -342
  426. package/dist/os/spec/spec-materialize.js.map +0 -1
  427. package/dist/os/spec/spec-schema.d.ts +0 -126
  428. package/dist/os/spec/spec-schema.d.ts.map +0 -1
  429. package/dist/os/spec/spec-schema.js +0 -118
  430. package/dist/os/spec/spec-schema.js.map +0 -1
  431. package/dist/os/spec/spec-status.d.ts +0 -33
  432. package/dist/os/spec/spec-status.d.ts.map +0 -1
  433. package/dist/os/spec/spec-status.js +0 -228
  434. package/dist/os/spec/spec-status.js.map +0 -1
  435. package/dist/os/spec/spec-validate.d.ts +0 -4
  436. package/dist/os/spec/spec-validate.d.ts.map +0 -1
  437. package/dist/os/spec/spec-validate.js +0 -435
  438. package/dist/os/spec/spec-validate.js.map +0 -1
  439. package/dist/os/spec/spec.module.d.ts +0 -3
  440. package/dist/os/spec/spec.module.d.ts.map +0 -1
  441. package/dist/os/spec/spec.module.js +0 -119
  442. package/dist/os/spec/spec.module.js.map +0 -1
  443. package/dist/os/werkstatt/handlers/lock.d.ts +0 -10
  444. package/dist/os/werkstatt/handlers/lock.d.ts.map +0 -1
  445. package/dist/os/werkstatt/handlers/lock.js +0 -153
  446. package/dist/os/werkstatt/handlers/lock.js.map +0 -1
  447. package/dist/os/werkstatt/handlers/schema.d.ts +0 -33
  448. package/dist/os/werkstatt/handlers/schema.d.ts.map +0 -1
  449. package/dist/os/werkstatt/handlers/schema.js +0 -42
  450. package/dist/os/werkstatt/handlers/schema.js.map +0 -1
  451. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.d.ts +0 -15
  452. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.d.ts.map +0 -1
  453. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.js +0 -152
  454. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.js.map +0 -1
  455. package/dist/os/werkstatt/handlers/werkstatt-lock-status.d.ts +0 -18
  456. package/dist/os/werkstatt/handlers/werkstatt-lock-status.d.ts.map +0 -1
  457. package/dist/os/werkstatt/handlers/werkstatt-lock-status.js +0 -51
  458. package/dist/os/werkstatt/handlers/werkstatt-lock-status.js.map +0 -1
  459. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.d.ts +0 -11
  460. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.d.ts.map +0 -1
  461. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.js +0 -79
  462. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.js.map +0 -1
  463. package/dist/os/werkstatt/index.d.ts +0 -7
  464. package/dist/os/werkstatt/index.d.ts.map +0 -1
  465. package/dist/os/werkstatt/index.js +0 -18
  466. package/dist/os/werkstatt/index.js.map +0 -1
  467. package/dist/os/werkstatt/werkstatt.module.d.ts +0 -3
  468. package/dist/os/werkstatt/werkstatt.module.d.ts.map +0 -1
  469. package/dist/os/werkstatt/werkstatt.module.js +0 -58
  470. package/dist/os/werkstatt/werkstatt.module.js.map +0 -1
  471. package/dist/os/workflow/handlers.d.ts +0 -12
  472. package/dist/os/workflow/handlers.d.ts.map +0 -1
  473. package/dist/os/workflow/handlers.js +0 -262
  474. package/dist/os/workflow/handlers.js.map +0 -1
  475. package/dist/os/workflow/index.d.ts +0 -4
  476. package/dist/os/workflow/index.d.ts.map +0 -1
  477. package/dist/os/workflow/index.js +0 -18
  478. package/dist/os/workflow/index.js.map +0 -1
  479. package/dist/os/workflow/types.d.ts +0 -69
  480. package/dist/os/workflow/types.d.ts.map +0 -1
  481. package/dist/os/workflow/types.js +0 -23
  482. package/dist/os/workflow/types.js.map +0 -1
  483. package/dist/os/workflow/workflow.module.d.ts +0 -3
  484. package/dist/os/workflow/workflow.module.d.ts.map +0 -1
  485. package/dist/os/workflow/workflow.module.js +0 -48
  486. package/dist/os/workflow/workflow.module.js.map +0 -1
  487. package/dist/src/cli-output.d.ts +0 -5
  488. package/dist/src/cli-output.d.ts.map +0 -1
  489. package/dist/src/cli-output.js +0 -53
  490. package/dist/src/cli-output.js.map +0 -1
  491. package/dist/src/config/forge-config.d.ts +0 -242
  492. package/dist/src/config/forge-config.d.ts.map +0 -1
  493. package/dist/src/config/forge-config.js +0 -363
  494. package/dist/src/config/forge-config.js.map +0 -1
  495. package/dist/src/forge-module.d.ts +0 -16
  496. package/dist/src/forge-module.d.ts.map +0 -1
  497. package/dist/src/forge-module.js +0 -15
  498. package/dist/src/forge-module.js.map +0 -1
  499. package/dist/src/index.d.ts +0 -36
  500. package/dist/src/index.d.ts.map +0 -1
  501. package/dist/src/index.js +0 -56
  502. package/dist/src/index.js.map +0 -1
  503. package/dist/src/knowledge/budgets.d.ts +0 -38
  504. package/dist/src/knowledge/budgets.d.ts.map +0 -1
  505. package/dist/src/knowledge/budgets.js +0 -157
  506. package/dist/src/knowledge/budgets.js.map +0 -1
  507. package/dist/src/knowledge/compact.d.ts +0 -47
  508. package/dist/src/knowledge/compact.d.ts.map +0 -1
  509. package/dist/src/knowledge/compact.js +0 -320
  510. package/dist/src/knowledge/compact.js.map +0 -1
  511. package/dist/src/knowledge/index.d.ts +0 -7
  512. package/dist/src/knowledge/index.d.ts.map +0 -1
  513. package/dist/src/knowledge/index.js +0 -19
  514. package/dist/src/knowledge/index.js.map +0 -1
  515. package/dist/src/knowledge/parse.d.ts +0 -3
  516. package/dist/src/knowledge/parse.d.ts.map +0 -1
  517. package/dist/src/knowledge/parse.js +0 -205
  518. package/dist/src/knowledge/parse.js.map +0 -1
  519. package/dist/src/knowledge/promote.d.ts +0 -37
  520. package/dist/src/knowledge/promote.d.ts.map +0 -1
  521. package/dist/src/knowledge/promote.js +0 -120
  522. package/dist/src/knowledge/promote.js.map +0 -1
  523. package/dist/src/knowledge/schema.d.ts +0 -61
  524. package/dist/src/knowledge/schema.d.ts.map +0 -1
  525. package/dist/src/knowledge/schema.js +0 -64
  526. package/dist/src/knowledge/schema.js.map +0 -1
  527. package/dist/src/knowledge/serialize.d.ts +0 -3
  528. package/dist/src/knowledge/serialize.d.ts.map +0 -1
  529. package/dist/src/knowledge/serialize.js +0 -67
  530. package/dist/src/knowledge/serialize.js.map +0 -1
  531. package/dist/src/migration-adapters/git-utils.d.ts +0 -3
  532. package/dist/src/migration-adapters/git-utils.d.ts.map +0 -1
  533. package/dist/src/migration-adapters/git-utils.js +0 -64
  534. package/dist/src/migration-adapters/git-utils.js.map +0 -1
  535. package/dist/src/migration-adapters/ignored-files.d.ts +0 -12
  536. package/dist/src/migration-adapters/ignored-files.d.ts.map +0 -1
  537. package/dist/src/migration-adapters/ignored-files.js +0 -190
  538. package/dist/src/migration-adapters/ignored-files.js.map +0 -1
  539. package/dist/src/migration-adapters/index.d.ts +0 -8
  540. package/dist/src/migration-adapters/index.d.ts.map +0 -1
  541. package/dist/src/migration-adapters/index.js +0 -17
  542. package/dist/src/migration-adapters/index.js.map +0 -1
  543. package/dist/src/migration-adapters/node-typescript-pnpm/index.d.ts +0 -3
  544. package/dist/src/migration-adapters/node-typescript-pnpm/index.d.ts.map +0 -1
  545. package/dist/src/migration-adapters/node-typescript-pnpm/index.js +0 -141
  546. package/dist/src/migration-adapters/node-typescript-pnpm/index.js.map +0 -1
  547. package/dist/src/migration-adapters/phaser-pnpm/index.d.ts +0 -3
  548. package/dist/src/migration-adapters/phaser-pnpm/index.d.ts.map +0 -1
  549. package/dist/src/migration-adapters/phaser-pnpm/index.js +0 -142
  550. package/dist/src/migration-adapters/phaser-pnpm/index.js.map +0 -1
  551. package/dist/src/migration-adapters/registry.d.ts +0 -6
  552. package/dist/src/migration-adapters/registry.d.ts.map +0 -1
  553. package/dist/src/migration-adapters/registry.js +0 -55
  554. package/dist/src/migration-adapters/registry.js.map +0 -1
  555. package/dist/src/migration-adapters/types.d.ts +0 -35
  556. package/dist/src/migration-adapters/types.d.ts.map +0 -1
  557. package/dist/src/migration-adapters/types.js +0 -31
  558. package/dist/src/migration-adapters/types.js.map +0 -1
  559. package/dist/src/onboarding/agents-generate.d.ts +0 -31
  560. package/dist/src/onboarding/agents-generate.d.ts.map +0 -1
  561. package/dist/src/onboarding/agents-generate.js +0 -372
  562. package/dist/src/onboarding/agents-generate.js.map +0 -1
  563. package/dist/src/onboarding/create.d.ts +0 -12
  564. package/dist/src/onboarding/create.d.ts.map +0 -1
  565. package/dist/src/onboarding/create.js +0 -389
  566. package/dist/src/onboarding/create.js.map +0 -1
  567. package/dist/src/onboarding/doctor.d.ts +0 -45
  568. package/dist/src/onboarding/doctor.d.ts.map +0 -1
  569. package/dist/src/onboarding/doctor.js +0 -1108
  570. package/dist/src/onboarding/doctor.js.map +0 -1
  571. package/dist/src/onboarding/init.d.ts +0 -36
  572. package/dist/src/onboarding/init.d.ts.map +0 -1
  573. package/dist/src/onboarding/init.js +0 -341
  574. package/dist/src/onboarding/init.js.map +0 -1
  575. package/dist/src/onboarding/invariant-engine.d.ts +0 -17
  576. package/dist/src/onboarding/invariant-engine.d.ts.map +0 -1
  577. package/dist/src/onboarding/invariant-engine.js +0 -416
  578. package/dist/src/onboarding/invariant-engine.js.map +0 -1
  579. package/dist/src/onboarding/memory-scaffold.d.ts +0 -18
  580. package/dist/src/onboarding/memory-scaffold.d.ts.map +0 -1
  581. package/dist/src/onboarding/memory-scaffold.js +0 -151
  582. package/dist/src/onboarding/memory-scaffold.js.map +0 -1
  583. package/dist/src/onboarding/nested-agents-generate.d.ts +0 -18
  584. package/dist/src/onboarding/nested-agents-generate.d.ts.map +0 -1
  585. package/dist/src/onboarding/nested-agents-generate.js +0 -69
  586. package/dist/src/onboarding/nested-agents-generate.js.map +0 -1
  587. package/dist/src/onboarding/nested-agents-templates.d.ts +0 -26
  588. package/dist/src/onboarding/nested-agents-templates.d.ts.map +0 -1
  589. package/dist/src/onboarding/nested-agents-templates.js +0 -178
  590. package/dist/src/onboarding/nested-agents-templates.js.map +0 -1
  591. package/dist/src/onboarding/profile-validate.d.ts +0 -13
  592. package/dist/src/onboarding/profile-validate.d.ts.map +0 -1
  593. package/dist/src/onboarding/profile-validate.js +0 -109
  594. package/dist/src/onboarding/profile-validate.js.map +0 -1
  595. package/dist/src/onboarding/scaffold-project.d.ts +0 -12
  596. package/dist/src/onboarding/scaffold-project.d.ts.map +0 -1
  597. package/dist/src/onboarding/scaffold-project.js +0 -264
  598. package/dist/src/onboarding/scaffold-project.js.map +0 -1
  599. package/dist/src/onboarding/scaffold.d.ts +0 -15
  600. package/dist/src/onboarding/scaffold.d.ts.map +0 -1
  601. package/dist/src/onboarding/scaffold.js +0 -120
  602. package/dist/src/onboarding/scaffold.js.map +0 -1
  603. package/dist/src/onboarding/upgrade.d.ts +0 -27
  604. package/dist/src/onboarding/upgrade.d.ts.map +0 -1
  605. package/dist/src/onboarding/upgrade.js +0 -447
  606. package/dist/src/onboarding/upgrade.js.map +0 -1
  607. package/dist/src/onboarding/workspace-discovery.d.ts +0 -11
  608. package/dist/src/onboarding/workspace-discovery.d.ts.map +0 -1
  609. package/dist/src/onboarding/workspace-discovery.js +0 -138
  610. package/dist/src/onboarding/workspace-discovery.js.map +0 -1
  611. package/dist/src/profiles/profile-schema.d.ts +0 -361
  612. package/dist/src/profiles/profile-schema.d.ts.map +0 -1
  613. package/dist/src/profiles/profile-schema.js +0 -208
  614. package/dist/src/profiles/profile-schema.js.map +0 -1
  615. package/dist/src/profiles/stack-profile.d.ts +0 -173
  616. package/dist/src/profiles/stack-profile.d.ts.map +0 -1
  617. package/dist/src/profiles/stack-profile.js +0 -148
  618. package/dist/src/profiles/stack-profile.js.map +0 -1
  619. package/dist/src/profiles/terminology-utils.d.ts +0 -8
  620. package/dist/src/profiles/terminology-utils.d.ts.map +0 -1
  621. package/dist/src/profiles/terminology-utils.js +0 -31
  622. package/dist/src/profiles/terminology-utils.js.map +0 -1
  623. package/dist/src/registry.d.ts +0 -38
  624. package/dist/src/registry.d.ts.map +0 -1
  625. package/dist/src/registry.js +0 -146
  626. package/dist/src/registry.js.map +0 -1
  627. package/dist/src/skill-schema.d.ts +0 -30
  628. package/dist/src/skill-schema.d.ts.map +0 -1
  629. package/dist/src/skill-schema.js +0 -34
  630. package/dist/src/skill-schema.js.map +0 -1
  631. package/dist/src/types.d.ts +0 -154
  632. package/dist/src/types.d.ts.map +0 -1
  633. package/dist/src/types.js +0 -17
  634. package/dist/src/types.js.map +0 -1
  635. package/dist/src/utils/fs-atomic.d.ts +0 -7
  636. package/dist/src/utils/fs-atomic.d.ts.map +0 -1
  637. package/dist/src/utils/fs-atomic.js +0 -81
  638. package/dist/src/utils/fs-atomic.js.map +0 -1
  639. package/dist/src/utils/fs-idempotent.d.ts +0 -2
  640. package/dist/src/utils/fs-idempotent.d.ts.map +0 -1
  641. package/dist/src/utils/fs-idempotent.js +0 -39
  642. package/dist/src/utils/fs-idempotent.js.map +0 -1
  643. package/dist/src/utils/fs-trash-sync.d.ts +0 -2
  644. package/dist/src/utils/fs-trash-sync.d.ts.map +0 -1
  645. package/dist/src/utils/fs-trash-sync.js +0 -34
  646. package/dist/src/utils/fs-trash-sync.js.map +0 -1
  647. package/dist/src/utils/fs-trash.d.ts +0 -2
  648. package/dist/src/utils/fs-trash.d.ts.map +0 -1
  649. package/dist/src/utils/fs-trash.js +0 -24
  650. package/dist/src/utils/fs-trash.js.map +0 -1
  651. package/dist/src/utils/fs.d.ts +0 -8
  652. package/dist/src/utils/fs.d.ts.map +0 -1
  653. package/dist/src/utils/fs.js +0 -60
  654. package/dist/src/utils/fs.js.map +0 -1
  655. package/dist/src/utils/generated-marker.d.ts +0 -21
  656. package/dist/src/utils/generated-marker.d.ts.map +0 -1
  657. package/dist/src/utils/generated-marker.js +0 -128
  658. package/dist/src/utils/generated-marker.js.map +0 -1
  659. package/dist/src/utils/hash.d.ts +0 -2
  660. package/dist/src/utils/hash.d.ts.map +0 -1
  661. package/dist/src/utils/hash.js +0 -18
  662. package/dist/src/utils/hash.js.map +0 -1
  663. package/dist/src/utils/index.d.ts +0 -9
  664. package/dist/src/utils/index.d.ts.map +0 -1
  665. package/dist/src/utils/index.js +0 -21
  666. package/dist/src/utils/index.js.map +0 -1
  667. package/dist/src/utils/string-utils.d.ts +0 -2
  668. package/dist/src/utils/string-utils.d.ts.map +0 -1
  669. package/dist/src/utils/string-utils.js +0 -19
  670. package/dist/src/utils/string-utils.js.map +0 -1
  671. package/dist/src/validators/note-frontmatter-validate.d.ts +0 -20
  672. package/dist/src/validators/note-frontmatter-validate.d.ts.map +0 -1
  673. package/dist/src/validators/note-frontmatter-validate.js +0 -117
  674. package/dist/src/validators/note-frontmatter-validate.js.map +0 -1
  675. package/dist/src/validators/note-link-validate.d.ts +0 -21
  676. package/dist/src/validators/note-link-validate.d.ts.map +0 -1
  677. package/dist/src/validators/note-link-validate.js +0 -121
  678. package/dist/src/validators/note-link-validate.js.map +0 -1
  679. package/dist/src/validators/note-orphan-detect.d.ts +0 -19
  680. package/dist/src/validators/note-orphan-detect.d.ts.map +0 -1
  681. package/dist/src/validators/note-orphan-detect.js +0 -123
  682. package/dist/src/validators/note-orphan-detect.js.map +0 -1
  683. package/dist/src/validators/port-validate.d.ts +0 -12
  684. package/dist/src/validators/port-validate.d.ts.map +0 -1
  685. package/dist/src/validators/port-validate.js +0 -78
  686. package/dist/src/validators/port-validate.js.map +0 -1
  687. package/dist/src/validators/skill-validate.d.ts +0 -29
  688. package/dist/src/validators/skill-validate.d.ts.map +0 -1
  689. package/dist/src/validators/skill-validate.js +0 -689
  690. package/dist/src/validators/skill-validate.js.map +0 -1
@@ -1,324 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>naming.convention.lint — validates that every filename in registered repo roots
4
- uses kebab-case (lowercase letters, digits, hyphens only), with documented exemptions.</purpose>
5
- <non-goals>
6
- <item>Do not introduce app-specific runtime composition or deployment behavior into this reusable package source file.</item>
7
- </non-goals>
8
- </MODULE_CONTRACT>
9
- <CHANGE_SUMMARY>
10
- <item>RFC-0303: split out of structure.ts (Phase 3 file-size split).</item>
11
- <item>RFC-0360: extend scan roots from apps/ and packages/ to the whole repo.</item>
12
- </CHANGE_SUMMARY>
13
- */
14
- import { basename, join, relative } from "node:path";
15
- import { readFile } from "node:fs/promises";
16
- import { readdirSync } from "node:fs";
17
- import { collectFiles } from "../../src/utils/fs.js";
18
- // @ai-invariant The exception rules below are the canonical source for naming.convention.lint.
19
- // Update naming-conventions.md (packages/site-kernel/docs/) when these rules change.
20
- // RFC-0360: Registered recursive roots — scanned recursively for filename violations.
21
- const NAMING_CONVENTION_RECURSIVE_ROOTS = [
22
- "apps",
23
- "packages",
24
- "services",
25
- "docs",
26
- "integrations",
27
- "onboarding",
28
- "fleet",
29
- "hooks",
30
- "tools",
31
- "scripts",
32
- "systems",
33
- "tsconfig",
34
- ];
35
- // RFC-0360: Registered ephemeral roots — root name validated, contents skipped unless --include-ignored.
36
- const NAMING_CONVENTION_EPHEMERAL_ROOTS = ["missions", "releases", "agents", ".werkstatt"];
37
- // RFC-0360: Tool/cache directories that are never scanned at any level.
38
- const NAMING_CONVENTION_IGNORED_TOP_LEVEL = new Set([
39
- "node_modules",
40
- ".git",
41
- ".turbo",
42
- ".astro",
43
- ".wrangler",
44
- ".vscode",
45
- ".idea",
46
- "coverage",
47
- ".changelog-system",
48
- ".codex-runlogs",
49
- ".agents",
50
- ".claude",
51
- ".github",
52
- ".opencode",
53
- ".windsurf",
54
- ".cache",
55
- "tmp",
56
- ]);
57
- // Tool-mandated filenames exempt from kebab-case (Docker, Caddy use these exact names).
58
- const NAMING_CONVENTION_TOOL_MANDATED = new Set(["Dockerfile", "Caddyfile"]);
59
- const NAMING_CONVENTION_IGNORED_DIRS = new Set([
60
- "node_modules",
61
- "dist",
62
- ".git",
63
- ".turbo",
64
- ".astro",
65
- ".wrangler",
66
- ".vscode",
67
- ".idea",
68
- "coverage",
69
- "spec",
70
- "todo",
71
- // Generated, gitignored media-artifact dirs under public/ — their filenames are owned by the
72
- // generators, not authored: RFC-0204 responsive image variants (_img) and RFC-0210 video
73
- // variants / HLS segments (_video, e.g. "1080p_000.ts", where ".ts" is MPEG-TS, not TypeScript).
74
- "_img",
75
- "_video",
76
- // DB migration dirs follow the ordered tool convention "NNN_name.sql" (Supabase/Postgres,
77
- // RFC-0186) — the numeric-underscore prefix is required for ordering and is not authored prose.
78
- "migrations",
79
- ]);
80
- const NAMING_CONVENTION_EXEMPT_KEYWORDS = ["config", "module"];
81
- // Set of directory paths that are exempt from naming convention (generated files)
82
- const NAMING_CONVENTION_EXEMPT_DIRS = new Set([
83
- "components/icons/gen", // Generated icon components — naming controlled by generator
84
- ]);
85
- /**
86
- * Returns true when a filename is exempt from kebab-case enforcement.
87
- *
88
- * Exemptions (see naming-conventions.md for the canonical description):
89
- * 1. File name starts with a dot (.env, .gitignore, ...).
90
- * 2. File name starts with an underscore (_shared.ts, _headers, etc.).
91
- * 3. File name is ALLCAPS (AGENTS.md, README.md, LICENSE, etc.).
92
- * 4. File name (full, including extension) contains "config" or "module".
93
- * 5. File is in an exempt directory (components/icons/gen — generated files).
94
- * 6. Base icon component (LordIconBase.astro) — used by generated icon components.
95
- */
96
- function isNamingExempt(fileName, filePath) {
97
- if (fileName.startsWith("."))
98
- return true;
99
- if (fileName.startsWith("_"))
100
- return true;
101
- if (NAMING_CONVENTION_TOOL_MANDATED.has(fileName))
102
- return true;
103
- // SHOUTY_SNAKE_CASE files are exempt (AGENTS.md, README.md, LICENSE,
104
- // ICONS_GENERATE.md, etc.). RFC-0132 extension: the check uses the FIRST
105
- // stem segment so multi-segment names like AGENTS.template.md and
106
- // SCHEMA.draft.md inherit the exemption from their canonical first segment
107
- // — this is intentional for template files whose generated artifact carries
108
- // the canonical name (AGENTS.template.md → AGENTS.md after agents.generate).
109
- const firstDotIndex = fileName.indexOf(".");
110
- const firstStem = firstDotIndex > 0 ? fileName.slice(0, firstDotIndex) : fileName;
111
- if (firstStem.length > 0 && /^[A-Z]+(_[A-Z]+)*$/.test(firstStem))
112
- return true;
113
- for (const keyword of NAMING_CONVENTION_EXEMPT_KEYWORDS) {
114
- if (fileName.includes(keyword))
115
- return true;
116
- }
117
- // Check if file is in an exempt directory
118
- if (filePath) {
119
- for (const exemptDir of NAMING_CONVENTION_EXEMPT_DIRS) {
120
- if (filePath.includes(exemptDir))
121
- return true;
122
- }
123
- }
124
- return false;
125
- }
126
- /**
127
- * Returns true when a filename violates the kebab-case convention.
128
- * Violations: underscores OR mixed-case (PascalCase, camelCase).
129
- * Note: ALLCAPS files are exempt, not violations.
130
- * Only called when the file is not already exempt.
131
- */
132
- function hasNamingViolation(fileName) {
133
- const dotIndex = fileName.lastIndexOf(".");
134
- const stem = dotIndex > 0 ? fileName.slice(0, dotIndex) : fileName;
135
- // kebab-case allows only lowercase letters, digits, and hyphens
136
- // Violations: underscores OR mixed-case (contains both upper and lower)
137
- if (stem.includes("_"))
138
- return true;
139
- // Mixed case: has at least one uppercase AND at least one lowercase
140
- const hasUpper = /[A-Z]/.test(stem);
141
- const hasLower = /[a-z]/.test(stem);
142
- return hasUpper && hasLower;
143
- }
144
- /**
145
- * Reads a gitignore-style file and returns a set of simple (no-wildcard) patterns.
146
- * Patterns containing `*` or `?` are skipped — too complex without a full gitignore engine.
147
- */
148
- async function readSimpleIgnorePatterns(filePath) {
149
- const patterns = new Set();
150
- try {
151
- const content = await readFile(filePath, "utf8");
152
- for (const rawLine of content.split("\n")) {
153
- const line = rawLine.trim();
154
- if (!line || line.startsWith("#"))
155
- continue;
156
- if (line.includes("*") || line.includes("?"))
157
- continue;
158
- patterns.add(line.replace(/^\//, "").replace(/\/$/, ""));
159
- }
160
- }
161
- catch {
162
- // File absent — silently skip
163
- }
164
- return patterns;
165
- }
166
- function isSegmentIgnored(relPath, ignorePatterns) {
167
- for (const segment of relPath.split("/")) {
168
- if (ignorePatterns.has(segment))
169
- return true;
170
- }
171
- return false;
172
- }
173
- async function collectAllFilesForNaming(dirPath, ignorePatterns) {
174
- return collectFiles(dirPath, {
175
- ignore: (name) => name.startsWith(".") ||
176
- NAMING_CONVENTION_IGNORED_DIRS.has(name) ||
177
- ignorePatterns.has(name) ||
178
- ignorePatterns.has(`${name}/`),
179
- });
180
- }
181
- function isRegisteredOrIgnoredTopLevel(name) {
182
- return (NAMING_CONVENTION_RECURSIVE_ROOTS.includes(name) ||
183
- NAMING_CONVENTION_EPHEMERAL_ROOTS.includes(name) ||
184
- NAMING_CONVENTION_IGNORED_TOP_LEVEL.has(name));
185
- }
186
- function resolveScanPlan(repoRoot) {
187
- let entries;
188
- try {
189
- entries = readdirSync(repoRoot, { withFileTypes: true });
190
- }
191
- catch {
192
- return {
193
- recursiveRoots: [...NAMING_CONVENTION_RECURSIVE_ROOTS],
194
- ephemeralRoots: [...NAMING_CONVENTION_EPHEMERAL_ROOTS],
195
- unknown: [],
196
- };
197
- }
198
- const topLevelDirs = entries
199
- .filter((e) => e.isDirectory() && !e.isSymbolicLink())
200
- .map((e) => e.name);
201
- const unknown = topLevelDirs.filter((name) => !isRegisteredOrIgnoredTopLevel(name));
202
- const recursiveRoots = NAMING_CONVENTION_RECURSIVE_ROOTS.filter((name) => topLevelDirs.includes(name));
203
- const ephemeralRoots = NAMING_CONVENTION_EPHEMERAL_ROOTS.filter((name) => topLevelDirs.includes(name));
204
- return { recursiveRoots, ephemeralRoots, unknown };
205
- }
206
- /**
207
- * Validates that all filenames in registered repo roots use kebab-case.
208
- *
209
- * Rule: filenames must use only lowercase letters, digits, and hyphens.
210
- * Violations: underscores, uppercase letters (PascalCase, camelCase, ALLCAPS).
211
- *
212
- * Exceptions (not flagged):
213
- * - Files starting with a dot (.env, .gitignore)
214
- * - Files starting with an underscore (_shared.ts, _headers, _redirects, _routes.json)
215
- * - Tool-mandated filenames (Dockerfile, Caddyfile)
216
- * - Files containing "config" or "module" in their name (astro.config.mjs, check.module.ts)
217
- * - Files in directories starting with a dot (.git, .astro, .vscode)
218
- * - Files excluded by .gitignore or .windsurfignore (simple non-wildcard patterns only)
219
- *
220
- * See packages/site-kernel/docs/naming-conventions.md — "Global Rule" section.
221
- */
222
- export async function runNamingConventionLint(input, context) {
223
- const workspaceRoot = context.workspaceRoot;
224
- const includeIgnored = input.flags["include-ignored"] === true;
225
- const gitignorePatterns = await readSimpleIgnorePatterns(join(workspaceRoot, ".gitignore"));
226
- const windsurfignorePatterns = await readSimpleIgnorePatterns(join(workspaceRoot, ".windsurfignore"));
227
- const ignorePatterns = new Set([...gitignorePatterns, ...windsurfignorePatterns]);
228
- let violations = 0;
229
- let checkedFiles = 0;
230
- // App-scoped mode: scan only the app directory
231
- if (context.site) {
232
- const files = await collectAllFilesForNaming(context.site.directory, ignorePatterns);
233
- for (const filePath of files) {
234
- const fileName = basename(filePath);
235
- const relPath = relative(workspaceRoot, filePath).replace(/\\/g, "/");
236
- if (isNamingExempt(fileName, relPath))
237
- continue;
238
- if (isSegmentIgnored(relPath, ignorePatterns))
239
- continue;
240
- checkedFiles += 1;
241
- if (hasNamingViolation(fileName)) {
242
- context.logger.error(`${relPath}: "${fileName}" violates kebab-case — use only lowercase letters, digits, and hyphens`);
243
- violations += 1;
244
- }
245
- }
246
- return {
247
- data: { violations, checkedFiles },
248
- exitCode: violations > 0 ? 1 : 0,
249
- summary: violations > 0
250
- ? undefined
251
- : `[naming.convention] OK (${checkedFiles} non-exempt files checked)`,
252
- };
253
- }
254
- // Workspace-scoped mode: resolve scan plan from filesystem
255
- const scanPlan = resolveScanPlan(workspaceRoot);
256
- // Report unknown top-level directories
257
- for (const unknownDir of scanPlan.unknown) {
258
- context.logger.error(`[naming.convention.lint] unknown top-level directory '${unknownDir}'; register it or remove it`);
259
- violations += 1;
260
- }
261
- // Validate ephemeral root names (kebab-case check on the root name itself)
262
- for (const ephemeral of scanPlan.ephemeralRoots) {
263
- const name = ephemeral.startsWith(".") ? ephemeral.slice(1) : ephemeral;
264
- if (name && !name.includes("_") && !(/[A-Z]/.test(name) && /[a-z]/.test(name))) {
265
- // ok
266
- }
267
- else if (name && (name.includes("_") || (/[A-Z]/.test(name) && /[a-z]/.test(name)))) {
268
- context.logger.error(`[naming.convention.lint] top-level directory '${ephemeral}' violates naming convention`);
269
- violations += 1;
270
- }
271
- }
272
- // Scan recursive roots
273
- for (const rootName of scanPlan.recursiveRoots) {
274
- const scanDir = join(workspaceRoot, rootName);
275
- const files = await collectAllFilesForNaming(scanDir, ignorePatterns);
276
- for (const filePath of files) {
277
- const fileName = basename(filePath);
278
- const relPath = relative(workspaceRoot, filePath).replace(/\\/g, "/");
279
- if (isNamingExempt(fileName, relPath))
280
- continue;
281
- if (isSegmentIgnored(relPath, ignorePatterns))
282
- continue;
283
- checkedFiles += 1;
284
- if (hasNamingViolation(fileName)) {
285
- context.logger.error(`${relPath}: "${fileName}" violates kebab-case — use only lowercase letters, digits, and hyphens`);
286
- violations += 1;
287
- }
288
- }
289
- }
290
- // Scan ephemeral root contents only when --include-ignored is passed
291
- if (includeIgnored) {
292
- for (const rootName of scanPlan.ephemeralRoots) {
293
- const scanDir = join(workspaceRoot, rootName);
294
- const files = await collectAllFilesForNaming(scanDir, ignorePatterns);
295
- for (const filePath of files) {
296
- const fileName = basename(filePath);
297
- const relPath = relative(workspaceRoot, filePath).replace(/\\/g, "/");
298
- if (isNamingExempt(fileName, relPath))
299
- continue;
300
- if (isSegmentIgnored(relPath, ignorePatterns))
301
- continue;
302
- checkedFiles += 1;
303
- if (hasNamingViolation(fileName)) {
304
- context.logger.error(`${relPath}: "${fileName}" violates kebab-case — use only lowercase letters, digits, and hyphens`);
305
- violations += 1;
306
- }
307
- }
308
- }
309
- }
310
- return {
311
- data: {
312
- violations,
313
- checkedFiles,
314
- scannedRoots: scanPlan.recursiveRoots,
315
- ephemeralRootsSkipped: includeIgnored ? [] : scanPlan.ephemeralRoots,
316
- unknownTopLevelDirs: scanPlan.unknown,
317
- },
318
- exitCode: violations > 0 ? 1 : 0,
319
- summary: violations > 0
320
- ? undefined
321
- : `[naming.convention] OK (${checkedFiles} non-exempt files checked)`,
322
- };
323
- }
324
- //# sourceMappingURL=naming-convention.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"naming-convention.js","sourceRoot":"","sources":["../../../os/naming/naming-convention.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import type { ForgeModule } from "../../src/forge-module.ts";
2
- export declare const forgeNamingModule: ForgeModule;
3
- //# sourceMappingURL=naming.module.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"naming.module.d.ts","sourceRoot":"","sources":["../../../os/naming/naming.module.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAE7D,eAAO,MAAM,iBAAiB,EAAE,WAqB/B,CAAC"}
@@ -1,33 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Register the forge naming convention lint command with the Site OS kernel registry.</purpose>
4
- <non-goals>
5
- <item>Do not register project-specific naming commands (naming.pages.lint, etc.) — those stay in site-kernel-checks.</item>
6
- </non-goals>
7
- </MODULE_CONTRACT>
8
- <CHANGE_SUMMARY>
9
- <item>RFC-0374: initial forgeNamingModule registering naming.convention.lint.</item>
10
- </CHANGE_SUMMARY>
11
- */
12
- export const forgeNamingModule = {
13
- name: "forge-naming",
14
- version: "0.1.0",
15
- async register(registry) {
16
- const { runNamingConventionLint } = await import("./naming-convention.js");
17
- registry.registerCommand({
18
- name: "naming.convention.lint",
19
- description: "Validate all filenames use kebab-case (no underscores) across registered workspace roots.",
20
- scope: "workspace",
21
- supportsAllSites: true,
22
- flags: {
23
- "include-ignored": {
24
- kind: "boolean",
25
- description: "Also scan files ignored by .gitignore or .windsurfignore.",
26
- },
27
- },
28
- reads: ["packages/**/*.{ts,tsx}", "apps/**/*.{ts,tsx}", "services/**/*.{ts,tsx}"],
29
- execute: runNamingConventionLint,
30
- });
31
- },
32
- };
33
- //# sourceMappingURL=naming.module.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"naming.module.js","sourceRoot":"","sources":["../../../os/naming/naming.module.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;EAUE;AAIF,MAAM,CAAC,MAAM,iBAAiB,GAAgB;IAC5C,IAAI,EAAE,cAAc;IACpB,OAAO,EAAE,OAAO;IAChB,KAAK,CAAC,QAAQ,CAAC,QAAQ;QACrB,MAAM,EAAE,uBAAuB,EAAE,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC;QAC3E,QAAQ,CAAC,eAAe,CAAC;YACvB,IAAI,EAAE,wBAAwB;YAC9B,WAAW,EACT,2FAA2F;YAC7F,KAAK,EAAE,WAAW;YAClB,gBAAgB,EAAE,IAAI;YACtB,KAAK,EAAE;gBACL,iBAAiB,EAAE;oBACjB,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,2DAA2D;iBACzE;aACF;YACD,KAAK,EAAE,CAAC,wBAAwB,EAAE,oBAAoB,EAAE,wBAAwB,CAAC;YACjF,OAAO,EAAE,uBAAuB;SACjC,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
@@ -1,2 +0,0 @@
1
- export { forgeNotesModule } from "./notes.module.ts";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../os/notes/index.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -1,10 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Re-export forgeNotesModule and note validator handlers.</purpose>
4
- </MODULE_CONTRACT>
5
- <CHANGE_SUMMARY>
6
- <item>RFC-0808: initial notes module index.</item>
7
- </CHANGE_SUMMARY>
8
- */
9
- export { forgeNotesModule } from "./notes.module.js";
10
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../os/notes/index.ts"],"names":[],"mappings":"AAAA;;;;;;;EAOE;AAEF,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { ForgeModule } from "../../src/forge-module.ts";
2
- export declare const forgeNotesModule: ForgeModule;
3
- //# sourceMappingURL=notes.module.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"notes.module.d.ts","sourceRoot":"","sources":["../../../os/notes/notes.module.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAO7D,eAAO,MAAM,gBAAgB,EAAE,WAyF9B,CAAC"}
@@ -1,83 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Register note validation commands (note.link.validate, note.frontmatter.validate, note.orphan.detect) with the forge kernel registry.</purpose>
4
- <non-goals>
5
- <item>Do not implement handler logic here — delegate to src/validators/.</item>
6
- </non-goals>
7
- </MODULE_CONTRACT>
8
- <CHANGE_SUMMARY>
9
- <item>RFC-0808: initial forgeNotesModule registering 3 note validation commands.</item>
10
- </CHANGE_SUMMARY>
11
- */
12
- export const forgeNotesModule = {
13
- name: "forge-notes",
14
- version: "0.1.0",
15
- async register(registry) {
16
- const { runNoteLinkValidate } = await import("../../src/validators/note-link-validate.js");
17
- const { runNoteFrontmatterValidate } = await import("../../src/validators/note-frontmatter-validate.js");
18
- const { runNoteOrphanDetect } = await import("../../src/validators/note-orphan-detect.js");
19
- const noteLinkValidateWrapper = async (input, context) => {
20
- return runNoteLinkValidate(input, context);
21
- };
22
- const noteFrontmatterValidateWrapper = async (input, context) => {
23
- return runNoteFrontmatterValidate(input, context);
24
- };
25
- const noteOrphanDetectWrapper = async (input, context) => {
26
- return runNoteOrphanDetect(input, context);
27
- };
28
- registry.registerCommand({
29
- name: "note.link.validate",
30
- description: "Validate wikilink integrity across a markdown note vault. Scans [[wikilinks]] and resolves each against the note graph.",
31
- scope: "workspace",
32
- supportsAllSites: false,
33
- flags: {
34
- "vault-dir": {
35
- kind: "string",
36
- description: "Vault directory relative to workspace root (default: vault).",
37
- },
38
- path: {
39
- kind: "string",
40
- description: "Subdirectory within the vault to scope the scan to.",
41
- },
42
- },
43
- reads: ["vault/**/*.md"],
44
- cacheable: false,
45
- execute: noteLinkValidateWrapper,
46
- });
47
- registry.registerCommand({
48
- name: "note.frontmatter.validate",
49
- description: "Validate frontmatter consistency across a markdown note vault. Checks for required fields in YAML frontmatter.",
50
- scope: "workspace",
51
- supportsAllSites: false,
52
- flags: {
53
- "vault-dir": {
54
- kind: "string",
55
- description: "Vault directory relative to workspace root (default: vault).",
56
- },
57
- fields: {
58
- kind: "string",
59
- description: "Comma-separated list of required fields (default: title).",
60
- },
61
- },
62
- reads: ["vault/**/*.md"],
63
- cacheable: false,
64
- execute: noteFrontmatterValidateWrapper,
65
- });
66
- registry.registerCommand({
67
- name: "note.orphan.detect",
68
- description: "Detect orphan notes in a markdown note vault — notes with zero inbound wikilinks. Always exits zero (warnings, not errors).",
69
- scope: "workspace",
70
- supportsAllSites: false,
71
- flags: {
72
- "vault-dir": {
73
- kind: "string",
74
- description: "Vault directory relative to workspace root (default: vault).",
75
- },
76
- },
77
- reads: ["vault/**/*.md"],
78
- cacheable: false,
79
- execute: noteOrphanDetectWrapper,
80
- });
81
- },
82
- };
83
- //# sourceMappingURL=notes.module.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"notes.module.js","sourceRoot":"","sources":["../../../os/notes/notes.module.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;EAUE;AASF,MAAM,CAAC,MAAM,gBAAgB,GAAgB;IAC3C,IAAI,EAAE,aAAa;IACnB,OAAO,EAAE,OAAO;IAChB,KAAK,CAAC,QAAQ,CAAC,QAAQ;QACrB,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,4CAA4C,CAAC,CAAC;QAC3F,MAAM,EAAE,0BAA0B,EAAE,GAClC,MAAM,MAAM,CAAC,mDAAmD,CAAC,CAAC;QACpE,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,4CAA4C,CAAC,CAAC;QAE3F,MAAM,uBAAuB,GAAG,KAAK,EACnC,KAAwB,EACxB,OAA4B,EACC,EAAE;YAC/B,OAAO,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC7C,CAAC,CAAC;QAEF,MAAM,8BAA8B,GAAG,KAAK,EAC1C,KAAwB,EACxB,OAA4B,EACC,EAAE;YAC/B,OAAO,0BAA0B,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACpD,CAAC,CAAC;QAEF,MAAM,uBAAuB,GAAG,KAAK,EACnC,KAAwB,EACxB,OAA4B,EACC,EAAE;YAC/B,OAAO,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC7C,CAAC,CAAC;QAEF,QAAQ,CAAC,eAAe,CAAC;YACvB,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EACT,yHAAyH;YAC3H,KAAK,EAAE,WAAW;YAClB,gBAAgB,EAAE,KAAK;YACvB,KAAK,EAAE;gBACL,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8DAA8D;iBAC5E;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,qDAAqD;iBACnE;aACF;YACD,KAAK,EAAE,CAAC,eAAe,CAAC;YACxB,SAAS,EAAE,KAAK;YAChB,OAAO,EAAE,uBAAuB;SACjC,CAAC,CAAC;QAEH,QAAQ,CAAC,eAAe,CAAC;YACvB,IAAI,EAAE,2BAA2B;YACjC,WAAW,EACT,gHAAgH;YAClH,KAAK,EAAE,WAAW;YAClB,gBAAgB,EAAE,KAAK;YACvB,KAAK,EAAE;gBACL,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8DAA8D;iBAC5E;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,2DAA2D;iBACzE;aACF;YACD,KAAK,EAAE,CAAC,eAAe,CAAC;YACxB,SAAS,EAAE,KAAK;YAChB,OAAO,EAAE,8BAA8B;SACxC,CAAC,CAAC;QAEH,QAAQ,CAAC,eAAe,CAAC;YACvB,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EACT,6HAA6H;YAC/H,KAAK,EAAE,WAAW;YAClB,gBAAgB,EAAE,KAAK;YACvB,KAAK,EAAE;gBACL,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,8DAA8D;iBAC5E;aACF;YACD,KAAK,EAAE,CAAC,eAAe,CAAC;YACxB,SAAS,EAAE,KAAK;YAChB,OAAO,EAAE,uBAAuB;SACjC,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
@@ -1,12 +0,0 @@
1
- export interface ParsedPlan {
2
- frontmatter: Record<string, unknown>;
3
- body: string;
4
- }
5
- export declare function parsePlanFile(source: string): ParsedPlan;
6
- export declare function listPlanFiles(planDirPath: string): Promise<string[]>;
7
- export declare function readAndParsePlan(planDirPath: string, fileName: string): Promise<{
8
- fileName: string;
9
- parsed: ParsedPlan;
10
- } | undefined>;
11
- export declare function extractRfcIdFromPlanFile(fileName: string): string | undefined;
12
- //# sourceMappingURL=frontmatter-io.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"frontmatter-io.d.ts","sourceRoot":"","sources":["../../../os/plan/frontmatter-io.ts"],"names":[],"mappings":"AAoBA,MAAM,WAAW,UAAU;IACzB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CASxD;AAED,wBAAsB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CA2B1E;AAED,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,UAAU,CAAA;CAAE,GAAG,SAAS,CAAC,CAQ/D;AAED,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAG7E"}
@@ -1,69 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>
4
- Plan frontmatter file I/O — recursive file discovery and YAML frontmatter
5
- parsing for plan files under docs/plans/.
6
- </purpose>
7
- <non-goals>
8
- <item>Do not validate plan content — that is a future concern.</item>
9
- </non-goals>
10
- </MODULE_CONTRACT>
11
- <CHANGE_SUMMARY>
12
- <item>RFC-0521: initial plan frontmatter I/O.</item>
13
- </CHANGE_SUMMARY>
14
- */
15
- import fs from "node:fs/promises";
16
- import path from "node:path";
17
- import YAML from "yaml";
18
- import { PLAN_FILE_PATTERN } from "./types.js";
19
- export function parsePlanFile(source) {
20
- const match = source.match(/^---\r?\n([\s\S]*?)\r?\n---\r?\n?([\s\S]*)$/);
21
- if (!match) {
22
- return { frontmatter: {}, body: source };
23
- }
24
- return {
25
- frontmatter: (YAML.parse(match[1]) ?? {}),
26
- body: match[2] ?? "",
27
- };
28
- }
29
- export async function listPlanFiles(planDirPath) {
30
- const results = [];
31
- async function scanDir(dirPath, relativePrefix) {
32
- try {
33
- const entries = await fs.readdir(dirPath, { withFileTypes: true });
34
- for (const entry of entries) {
35
- const relativePath = relativePrefix ? `${relativePrefix}/${entry.name}` : entry.name;
36
- if (entry.isDirectory()) {
37
- await scanDir(path.join(dirPath, entry.name), relativePath);
38
- }
39
- else if (entry.isFile() &&
40
- entry.name.endsWith(".md") &&
41
- !entry.name.startsWith("plan-0000") &&
42
- entry.name !== "README.md" &&
43
- PLAN_FILE_PATTERN.test(entry.name)) {
44
- results.push(relativePath);
45
- }
46
- }
47
- }
48
- catch {
49
- // Directory doesn't exist or is unreadable — return empty
50
- }
51
- }
52
- await scanDir(planDirPath, "");
53
- return results.sort();
54
- }
55
- export async function readAndParsePlan(planDirPath, fileName) {
56
- try {
57
- const filePath = path.join(planDirPath, fileName);
58
- const content = await fs.readFile(filePath, "utf-8");
59
- return { fileName, parsed: parsePlanFile(content) };
60
- }
61
- catch {
62
- return undefined;
63
- }
64
- }
65
- export function extractRfcIdFromPlanFile(fileName) {
66
- const match = path.basename(fileName).match(/^plan-(rfc-\d{4})-/i);
67
- return match ? match[1].toUpperCase() : undefined;
68
- }
69
- //# sourceMappingURL=frontmatter-io.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"frontmatter-io.js","sourceRoot":"","sources":["../../../os/plan/frontmatter-io.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import type { ForgeCommandInput, ForgeCommandResult, ForgeRuntimeContext } from "../../../src/types.ts";
2
- import type { PlanArchiveResult } from "../types.ts";
3
- export declare function runPlanArchive(input: ForgeCommandInput, context: ForgeRuntimeContext): Promise<ForgeCommandResult<PlanArchiveResult>>;
4
- //# sourceMappingURL=archive.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"archive.d.ts","sourceRoot":"","sources":["../../../../os/plan/handlers/archive.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAKrD,wBAAsB,cAAc,CAClC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC,CAwMhD"}