@warpgogol/forge 1.1.0 → 2.1.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 +8 -19
  2. package/README.md +93 -65
  3. package/README.uk.md +93 -65
  4. package/package.json +16 -3
  5. package/profiles/astro-typescript-turborepo.yaml +148 -1
  6. package/profiles/forge-shell.yaml +120 -1
  7. package/profiles/godot-csharp.yaml +280 -6
  8. package/profiles/phaser-turborepo.yaml +135 -1
  9. package/skills/_shared/fo-pipeline-conventions.md +55 -0
  10. package/skills/fo/fo-doc-audit/SKILL.md +2 -2
  11. package/skills/fo/fo-idea-i-just-want-to-see-the-plan/SKILL.md +2 -0
  12. package/skills/fo/fo-idea-i-just-want-to-see-the-result/SKILL.md +7 -3
  13. package/skills/fo/fo-idea-implement/SKILL.md +50 -46
  14. package/skills/fo/fo-session-retro/SKILL.md +2 -2
  15. package/skills/fo/fo-spec-ingest/SKILL.md +1 -1
  16. package/dist/bin/cli.d.ts +0 -3
  17. package/dist/bin/cli.d.ts.map +0 -1
  18. package/dist/bin/cli.js +0 -292
  19. package/dist/bin/cli.js.map +0 -1
  20. package/dist/os/adr/adr.module.d.ts +0 -3
  21. package/dist/os/adr/adr.module.d.ts.map +0 -1
  22. package/dist/os/adr/adr.module.js +0 -145
  23. package/dist/os/adr/adr.module.js.map +0 -1
  24. package/dist/os/adr/frontmatter-io.d.ts +0 -12
  25. package/dist/os/adr/frontmatter-io.d.ts.map +0 -1
  26. package/dist/os/adr/frontmatter-io.js +0 -67
  27. package/dist/os/adr/frontmatter-io.js.map +0 -1
  28. package/dist/os/adr/handlers/archive.d.ts +0 -24
  29. package/dist/os/adr/handlers/archive.d.ts.map +0 -1
  30. package/dist/os/adr/handlers/archive.js +0 -194
  31. package/dist/os/adr/handlers/archive.js.map +0 -1
  32. package/dist/os/adr/handlers/implement-stamp.d.ts +0 -4
  33. package/dist/os/adr/handlers/implement-stamp.d.ts.map +0 -1
  34. package/dist/os/adr/handlers/implement-stamp.js +0 -258
  35. package/dist/os/adr/handlers/implement-stamp.js.map +0 -1
  36. package/dist/os/adr/handlers/list-create.d.ts +0 -5
  37. package/dist/os/adr/handlers/list-create.d.ts.map +0 -1
  38. package/dist/os/adr/handlers/list-create.js +0 -165
  39. package/dist/os/adr/handlers/list-create.js.map +0 -1
  40. package/dist/os/adr/handlers/validate.d.ts +0 -4
  41. package/dist/os/adr/handlers/validate.d.ts.map +0 -1
  42. package/dist/os/adr/handlers/validate.js +0 -265
  43. package/dist/os/adr/handlers/validate.js.map +0 -1
  44. package/dist/os/adr/index.d.ts +0 -8
  45. package/dist/os/adr/index.d.ts.map +0 -1
  46. package/dist/os/adr/index.js +0 -18
  47. package/dist/os/adr/index.js.map +0 -1
  48. package/dist/os/adr/types.d.ts +0 -75
  49. package/dist/os/adr/types.d.ts.map +0 -1
  50. package/dist/os/adr/types.js +0 -55
  51. package/dist/os/adr/types.js.map +0 -1
  52. package/dist/os/audit/audit.module.d.ts +0 -3
  53. package/dist/os/audit/audit.module.d.ts.map +0 -1
  54. package/dist/os/audit/audit.module.js +0 -44
  55. package/dist/os/audit/audit.module.js.map +0 -1
  56. package/dist/os/audit/frontmatter-io.d.ts +0 -12
  57. package/dist/os/audit/frontmatter-io.d.ts.map +0 -1
  58. package/dist/os/audit/frontmatter-io.js +0 -71
  59. package/dist/os/audit/frontmatter-io.js.map +0 -1
  60. package/dist/os/audit/handlers/archive.d.ts +0 -4
  61. package/dist/os/audit/handlers/archive.d.ts.map +0 -1
  62. package/dist/os/audit/handlers/archive.js +0 -207
  63. package/dist/os/audit/handlers/archive.js.map +0 -1
  64. package/dist/os/audit/index.d.ts +0 -6
  65. package/dist/os/audit/index.d.ts.map +0 -1
  66. package/dist/os/audit/index.js +0 -16
  67. package/dist/os/audit/index.js.map +0 -1
  68. package/dist/os/audit/types.d.ts +0 -12
  69. package/dist/os/audit/types.d.ts.map +0 -1
  70. package/dist/os/audit/types.js +0 -17
  71. package/dist/os/audit/types.js.map +0 -1
  72. package/dist/os/compass/compass.module.d.ts +0 -3
  73. package/dist/os/compass/compass.module.d.ts.map +0 -1
  74. package/dist/os/compass/compass.module.js +0 -166
  75. package/dist/os/compass/compass.module.js.map +0 -1
  76. package/dist/os/compass/handlers/compass-audit-handler.d.ts +0 -36
  77. package/dist/os/compass/handlers/compass-audit-handler.d.ts.map +0 -1
  78. package/dist/os/compass/handlers/compass-audit-handler.js +0 -238
  79. package/dist/os/compass/handlers/compass-audit-handler.js.map +0 -1
  80. package/dist/os/compass/handlers/compass-change-summary-handler.d.ts +0 -19
  81. package/dist/os/compass/handlers/compass-change-summary-handler.d.ts.map +0 -1
  82. package/dist/os/compass/handlers/compass-change-summary-handler.js +0 -205
  83. package/dist/os/compass/handlers/compass-change-summary-handler.js.map +0 -1
  84. package/dist/os/compass/handlers/compass-inventory-handler.d.ts +0 -28
  85. package/dist/os/compass/handlers/compass-inventory-handler.d.ts.map +0 -1
  86. package/dist/os/compass/handlers/compass-inventory-handler.js +0 -213
  87. package/dist/os/compass/handlers/compass-inventory-handler.js.map +0 -1
  88. package/dist/os/compass/handlers/compass-inventory.d.ts +0 -30
  89. package/dist/os/compass/handlers/compass-inventory.d.ts.map +0 -1
  90. package/dist/os/compass/handlers/compass-inventory.js +0 -418
  91. package/dist/os/compass/handlers/compass-inventory.js.map +0 -1
  92. package/dist/os/compass/handlers/git-revision.d.ts +0 -8
  93. package/dist/os/compass/handlers/git-revision.d.ts.map +0 -1
  94. package/dist/os/compass/handlers/git-revision.js +0 -99
  95. package/dist/os/compass/handlers/git-revision.js.map +0 -1
  96. package/dist/os/compass/handlers/resolve-scan-root.d.ts +0 -3
  97. package/dist/os/compass/handlers/resolve-scan-root.d.ts.map +0 -1
  98. package/dist/os/compass/handlers/resolve-scan-root.js +0 -57
  99. package/dist/os/compass/handlers/resolve-scan-root.js.map +0 -1
  100. package/dist/os/compass/index.d.ts +0 -8
  101. package/dist/os/compass/index.d.ts.map +0 -1
  102. package/dist/os/compass/index.js +0 -19
  103. package/dist/os/compass/index.js.map +0 -1
  104. package/dist/os/core/core.module.d.ts +0 -3
  105. package/dist/os/core/core.module.d.ts.map +0 -1
  106. package/dist/os/core/core.module.js +0 -758
  107. package/dist/os/core/core.module.js.map +0 -1
  108. package/dist/os/core/handlers/assets-check.d.ts +0 -19
  109. package/dist/os/core/handlers/assets-check.d.ts.map +0 -1
  110. package/dist/os/core/handlers/assets-check.js +0 -89
  111. package/dist/os/core/handlers/assets-check.js.map +0 -1
  112. package/dist/os/core/handlers/assets-helpers.d.ts +0 -28
  113. package/dist/os/core/handlers/assets-helpers.d.ts.map +0 -1
  114. package/dist/os/core/handlers/assets-helpers.js +0 -128
  115. package/dist/os/core/handlers/assets-helpers.js.map +0 -1
  116. package/dist/os/core/handlers/assets-list.d.ts +0 -9
  117. package/dist/os/core/handlers/assets-list.d.ts.map +0 -1
  118. package/dist/os/core/handlers/assets-list.js +0 -72
  119. package/dist/os/core/handlers/assets-list.js.map +0 -1
  120. package/dist/os/core/handlers/build.d.ts +0 -16
  121. package/dist/os/core/handlers/build.d.ts.map +0 -1
  122. package/dist/os/core/handlers/build.js +0 -123
  123. package/dist/os/core/handlers/build.js.map +0 -1
  124. package/dist/os/core/handlers/determinism-check.d.ts +0 -20
  125. package/dist/os/core/handlers/determinism-check.d.ts.map +0 -1
  126. package/dist/os/core/handlers/determinism-check.js +0 -289
  127. package/dist/os/core/handlers/determinism-check.js.map +0 -1
  128. package/dist/os/core/handlers/dev.d.ts +0 -10
  129. package/dist/os/core/handlers/dev.d.ts.map +0 -1
  130. package/dist/os/core/handlers/dev.js +0 -102
  131. package/dist/os/core/handlers/dev.js.map +0 -1
  132. package/dist/os/core/handlers/knowledge-compact.d.ts +0 -4
  133. package/dist/os/core/handlers/knowledge-compact.d.ts.map +0 -1
  134. package/dist/os/core/handlers/knowledge-compact.js +0 -198
  135. package/dist/os/core/handlers/knowledge-compact.js.map +0 -1
  136. package/dist/os/core/handlers/pinned-check.d.ts +0 -49
  137. package/dist/os/core/handlers/pinned-check.d.ts.map +0 -1
  138. package/dist/os/core/handlers/pinned-check.js +0 -159
  139. package/dist/os/core/handlers/pinned-check.js.map +0 -1
  140. package/dist/os/core/handlers/pinned-init.d.ts +0 -19
  141. package/dist/os/core/handlers/pinned-init.d.ts.map +0 -1
  142. package/dist/os/core/handlers/pinned-init.js +0 -283
  143. package/dist/os/core/handlers/pinned-init.js.map +0 -1
  144. package/dist/os/core/handlers/pinned-types.d.ts +0 -29
  145. package/dist/os/core/handlers/pinned-types.d.ts.map +0 -1
  146. package/dist/os/core/handlers/pinned-types.js +0 -16
  147. package/dist/os/core/handlers/pinned-types.js.map +0 -1
  148. package/dist/os/core/handlers/pinned-validate.d.ts +0 -4
  149. package/dist/os/core/handlers/pinned-validate.d.ts.map +0 -1
  150. package/dist/os/core/handlers/pinned-validate.js +0 -248
  151. package/dist/os/core/handlers/pinned-validate.js.map +0 -1
  152. package/dist/os/core/handlers/profile-resolve.d.ts +0 -13
  153. package/dist/os/core/handlers/profile-resolve.d.ts.map +0 -1
  154. package/dist/os/core/handlers/profile-resolve.js +0 -65
  155. package/dist/os/core/handlers/profile-resolve.js.map +0 -1
  156. package/dist/os/core/handlers/release-prepare.d.ts +0 -25
  157. package/dist/os/core/handlers/release-prepare.d.ts.map +0 -1
  158. package/dist/os/core/handlers/release-prepare.js +0 -228
  159. package/dist/os/core/handlers/release-prepare.js.map +0 -1
  160. package/dist/os/core/handlers/release-publish.d.ts +0 -13
  161. package/dist/os/core/handlers/release-publish.d.ts.map +0 -1
  162. package/dist/os/core/handlers/release-publish.js +0 -173
  163. package/dist/os/core/handlers/release-publish.js.map +0 -1
  164. package/dist/os/core/handlers/validate.d.ts +0 -26
  165. package/dist/os/core/handlers/validate.d.ts.map +0 -1
  166. package/dist/os/core/handlers/validate.js +0 -208
  167. package/dist/os/core/handlers/validate.js.map +0 -1
  168. package/dist/os/core/handlers/workspace-deps.d.ts +0 -12
  169. package/dist/os/core/handlers/workspace-deps.d.ts.map +0 -1
  170. package/dist/os/core/handlers/workspace-deps.js +0 -39
  171. package/dist/os/core/handlers/workspace-deps.js.map +0 -1
  172. package/dist/os/core/index.d.ts +0 -2
  173. package/dist/os/core/index.d.ts.map +0 -1
  174. package/dist/os/core/index.js +0 -13
  175. package/dist/os/core/index.js.map +0 -1
  176. package/dist/os/exploration/exploration.module.d.ts +0 -3
  177. package/dist/os/exploration/exploration.module.d.ts.map +0 -1
  178. package/dist/os/exploration/exploration.module.js +0 -82
  179. package/dist/os/exploration/exploration.module.js.map +0 -1
  180. package/dist/os/exploration/frontmatter-io.d.ts +0 -13
  181. package/dist/os/exploration/frontmatter-io.d.ts.map +0 -1
  182. package/dist/os/exploration/frontmatter-io.js +0 -61
  183. package/dist/os/exploration/frontmatter-io.js.map +0 -1
  184. package/dist/os/exploration/handlers/archive.d.ts +0 -4
  185. package/dist/os/exploration/handlers/archive.d.ts.map +0 -1
  186. package/dist/os/exploration/handlers/archive.js +0 -135
  187. package/dist/os/exploration/handlers/archive.js.map +0 -1
  188. package/dist/os/exploration/handlers/list.d.ts +0 -4
  189. package/dist/os/exploration/handlers/list.d.ts.map +0 -1
  190. package/dist/os/exploration/handlers/list.js +0 -56
  191. package/dist/os/exploration/handlers/list.js.map +0 -1
  192. package/dist/os/exploration/handlers/show.d.ts +0 -4
  193. package/dist/os/exploration/handlers/show.d.ts.map +0 -1
  194. package/dist/os/exploration/handlers/show.js +0 -91
  195. package/dist/os/exploration/handlers/show.js.map +0 -1
  196. package/dist/os/exploration/index.d.ts +0 -7
  197. package/dist/os/exploration/index.d.ts.map +0 -1
  198. package/dist/os/exploration/index.js +0 -17
  199. package/dist/os/exploration/index.js.map +0 -1
  200. package/dist/os/exploration/types.d.ts +0 -38
  201. package/dist/os/exploration/types.d.ts.map +0 -1
  202. package/dist/os/exploration/types.js +0 -23
  203. package/dist/os/exploration/types.js.map +0 -1
  204. package/dist/os/mission/handlers/archive.d.ts +0 -4
  205. package/dist/os/mission/handlers/archive.d.ts.map +0 -1
  206. package/dist/os/mission/handlers/archive.js +0 -356
  207. package/dist/os/mission/handlers/archive.js.map +0 -1
  208. package/dist/os/mission/index.d.ts +0 -2
  209. package/dist/os/mission/index.d.ts.map +0 -1
  210. package/dist/os/mission/index.js +0 -2
  211. package/dist/os/mission/index.js.map +0 -1
  212. package/dist/os/mission/mission.module.d.ts +0 -3
  213. package/dist/os/mission/mission.module.d.ts.map +0 -1
  214. package/dist/os/mission/mission.module.js +0 -44
  215. package/dist/os/mission/mission.module.js.map +0 -1
  216. package/dist/os/mission/types.d.ts +0 -23
  217. package/dist/os/mission/types.d.ts.map +0 -1
  218. package/dist/os/mission/types.js +0 -18
  219. package/dist/os/mission/types.js.map +0 -1
  220. package/dist/os/naming/index.d.ts +0 -3
  221. package/dist/os/naming/index.d.ts.map +0 -1
  222. package/dist/os/naming/index.js +0 -14
  223. package/dist/os/naming/index.js.map +0 -1
  224. package/dist/os/naming/naming-convention.d.ts +0 -25
  225. package/dist/os/naming/naming-convention.d.ts.map +0 -1
  226. package/dist/os/naming/naming-convention.js +0 -324
  227. package/dist/os/naming/naming-convention.js.map +0 -1
  228. package/dist/os/naming/naming.module.d.ts +0 -3
  229. package/dist/os/naming/naming.module.d.ts.map +0 -1
  230. package/dist/os/naming/naming.module.js +0 -33
  231. package/dist/os/naming/naming.module.js.map +0 -1
  232. package/dist/os/notes/index.d.ts +0 -2
  233. package/dist/os/notes/index.d.ts.map +0 -1
  234. package/dist/os/notes/index.js +0 -10
  235. package/dist/os/notes/index.js.map +0 -1
  236. package/dist/os/notes/notes.module.d.ts +0 -3
  237. package/dist/os/notes/notes.module.d.ts.map +0 -1
  238. package/dist/os/notes/notes.module.js +0 -83
  239. package/dist/os/notes/notes.module.js.map +0 -1
  240. package/dist/os/plan/frontmatter-io.d.ts +0 -12
  241. package/dist/os/plan/frontmatter-io.d.ts.map +0 -1
  242. package/dist/os/plan/frontmatter-io.js +0 -69
  243. package/dist/os/plan/frontmatter-io.js.map +0 -1
  244. package/dist/os/plan/handlers/archive.d.ts +0 -4
  245. package/dist/os/plan/handlers/archive.d.ts.map +0 -1
  246. package/dist/os/plan/handlers/archive.js +0 -206
  247. package/dist/os/plan/handlers/archive.js.map +0 -1
  248. package/dist/os/plan/index.d.ts +0 -6
  249. package/dist/os/plan/index.d.ts.map +0 -1
  250. package/dist/os/plan/index.js +0 -16
  251. package/dist/os/plan/index.js.map +0 -1
  252. package/dist/os/plan/plan.module.d.ts +0 -3
  253. package/dist/os/plan/plan.module.d.ts.map +0 -1
  254. package/dist/os/plan/plan.module.js +0 -44
  255. package/dist/os/plan/plan.module.js.map +0 -1
  256. package/dist/os/plan/types.d.ts +0 -12
  257. package/dist/os/plan/types.d.ts.map +0 -1
  258. package/dist/os/plan/types.js +0 -17
  259. package/dist/os/plan/types.js.map +0 -1
  260. package/dist/os/program/discovery.d.ts +0 -61
  261. package/dist/os/program/discovery.d.ts.map +0 -1
  262. package/dist/os/program/discovery.js +0 -236
  263. package/dist/os/program/discovery.js.map +0 -1
  264. package/dist/os/program/handlers/complete.d.ts +0 -12
  265. package/dist/os/program/handlers/complete.d.ts.map +0 -1
  266. package/dist/os/program/handlers/complete.js +0 -344
  267. package/dist/os/program/handlers/complete.js.map +0 -1
  268. package/dist/os/program/handlers/lease.d.ts +0 -13
  269. package/dist/os/program/handlers/lease.d.ts.map +0 -1
  270. package/dist/os/program/handlers/lease.js +0 -322
  271. package/dist/os/program/handlers/lease.js.map +0 -1
  272. package/dist/os/program/handlers/seal.d.ts +0 -12
  273. package/dist/os/program/handlers/seal.d.ts.map +0 -1
  274. package/dist/os/program/handlers/seal.js +0 -265
  275. package/dist/os/program/handlers/seal.js.map +0 -1
  276. package/dist/os/program/handlers/validate.d.ts +0 -14
  277. package/dist/os/program/handlers/validate.d.ts.map +0 -1
  278. package/dist/os/program/handlers/validate.js +0 -164
  279. package/dist/os/program/handlers/validate.js.map +0 -1
  280. package/dist/os/program/lease.d.ts +0 -39
  281. package/dist/os/program/lease.d.ts.map +0 -1
  282. package/dist/os/program/lease.js +0 -129
  283. package/dist/os/program/lease.js.map +0 -1
  284. package/dist/os/program/program.module.d.ts +0 -3
  285. package/dist/os/program/program.module.d.ts.map +0 -1
  286. package/dist/os/program/program.module.js +0 -201
  287. package/dist/os/program/program.module.js.map +0 -1
  288. package/dist/os/program/schemas.d.ts +0 -225
  289. package/dist/os/program/schemas.d.ts.map +0 -1
  290. package/dist/os/program/schemas.js +0 -174
  291. package/dist/os/program/schemas.js.map +0 -1
  292. package/dist/os/program/state.d.ts +0 -38
  293. package/dist/os/program/state.d.ts.map +0 -1
  294. package/dist/os/program/state.js +0 -189
  295. package/dist/os/program/state.js.map +0 -1
  296. package/dist/os/rfc/acceptance.d.ts +0 -15
  297. package/dist/os/rfc/acceptance.d.ts.map +0 -1
  298. package/dist/os/rfc/acceptance.js +0 -310
  299. package/dist/os/rfc/acceptance.js.map +0 -1
  300. package/dist/os/rfc/decision-log.d.ts +0 -6
  301. package/dist/os/rfc/decision-log.d.ts.map +0 -1
  302. package/dist/os/rfc/decision-log.js +0 -269
  303. package/dist/os/rfc/decision-log.js.map +0 -1
  304. package/dist/os/rfc/dna-trace.d.ts +0 -27
  305. package/dist/os/rfc/dna-trace.d.ts.map +0 -1
  306. package/dist/os/rfc/dna-trace.js +0 -214
  307. package/dist/os/rfc/dna-trace.js.map +0 -1
  308. package/dist/os/rfc/frontmatter-io.d.ts +0 -18
  309. package/dist/os/rfc/frontmatter-io.d.ts.map +0 -1
  310. package/dist/os/rfc/frontmatter-io.js +0 -110
  311. package/dist/os/rfc/frontmatter-io.js.map +0 -1
  312. package/dist/os/rfc/handlers/archive.d.ts +0 -25
  313. package/dist/os/rfc/handlers/archive.d.ts.map +0 -1
  314. package/dist/os/rfc/handlers/archive.js +0 -247
  315. package/dist/os/rfc/handlers/archive.js.map +0 -1
  316. package/dist/os/rfc/handlers/check.d.ts +0 -4
  317. package/dist/os/rfc/handlers/check.d.ts.map +0 -1
  318. package/dist/os/rfc/handlers/check.js +0 -195
  319. package/dist/os/rfc/handlers/check.js.map +0 -1
  320. package/dist/os/rfc/handlers/implement-stamp.d.ts +0 -4
  321. package/dist/os/rfc/handlers/implement-stamp.d.ts.map +0 -1
  322. package/dist/os/rfc/handlers/implement-stamp.js +0 -420
  323. package/dist/os/rfc/handlers/implement-stamp.js.map +0 -1
  324. package/dist/os/rfc/handlers/index-graph.d.ts +0 -13
  325. package/dist/os/rfc/handlers/index-graph.d.ts.map +0 -1
  326. package/dist/os/rfc/handlers/index-graph.js +0 -192
  327. package/dist/os/rfc/handlers/index-graph.js.map +0 -1
  328. package/dist/os/rfc/handlers/lifecycle.d.ts +0 -13
  329. package/dist/os/rfc/handlers/lifecycle.d.ts.map +0 -1
  330. package/dist/os/rfc/handlers/lifecycle.js +0 -155
  331. package/dist/os/rfc/handlers/lifecycle.js.map +0 -1
  332. package/dist/os/rfc/handlers/list-create.d.ts +0 -6
  333. package/dist/os/rfc/handlers/list-create.d.ts.map +0 -1
  334. package/dist/os/rfc/handlers/list-create.js +0 -240
  335. package/dist/os/rfc/handlers/list-create.js.map +0 -1
  336. package/dist/os/rfc/handlers/pipeline-status.d.ts +0 -26
  337. package/dist/os/rfc/handlers/pipeline-status.d.ts.map +0 -1
  338. package/dist/os/rfc/handlers/pipeline-status.js +0 -124
  339. package/dist/os/rfc/handlers/pipeline-status.js.map +0 -1
  340. package/dist/os/rfc/handlers/shared.d.ts +0 -22
  341. package/dist/os/rfc/handlers/shared.d.ts.map +0 -1
  342. package/dist/os/rfc/handlers/shared.js +0 -105
  343. package/dist/os/rfc/handlers/shared.js.map +0 -1
  344. package/dist/os/rfc/handlers/supersede-propose.d.ts +0 -4
  345. package/dist/os/rfc/handlers/supersede-propose.d.ts.map +0 -1
  346. package/dist/os/rfc/handlers/supersede-propose.js +0 -203
  347. package/dist/os/rfc/handlers/supersede-propose.js.map +0 -1
  348. package/dist/os/rfc/handlers/validate-rules.d.ts +0 -32
  349. package/dist/os/rfc/handlers/validate-rules.d.ts.map +0 -1
  350. package/dist/os/rfc/handlers/validate-rules.js +0 -590
  351. package/dist/os/rfc/handlers/validate-rules.js.map +0 -1
  352. package/dist/os/rfc/handlers/validate.d.ts +0 -4
  353. package/dist/os/rfc/handlers/validate.d.ts.map +0 -1
  354. package/dist/os/rfc/handlers/validate.js +0 -108
  355. package/dist/os/rfc/handlers/validate.js.map +0 -1
  356. package/dist/os/rfc/handlers.d.ts +0 -7
  357. package/dist/os/rfc/handlers.d.ts.map +0 -1
  358. package/dist/os/rfc/handlers.js +0 -19
  359. package/dist/os/rfc/handlers.js.map +0 -1
  360. package/dist/os/rfc/index.d.ts +0 -18
  361. package/dist/os/rfc/index.d.ts.map +0 -1
  362. package/dist/os/rfc/index.js +0 -24
  363. package/dist/os/rfc/index.js.map +0 -1
  364. package/dist/os/rfc/rfc.module.d.ts +0 -3
  365. package/dist/os/rfc/rfc.module.d.ts.map +0 -1
  366. package/dist/os/rfc/rfc.module.js +0 -366
  367. package/dist/os/rfc/rfc.module.js.map +0 -1
  368. package/dist/os/rfc/types.d.ts +0 -483
  369. package/dist/os/rfc/types.d.ts.map +0 -1
  370. package/dist/os/rfc/types.js +0 -100
  371. package/dist/os/rfc/types.js.map +0 -1
  372. package/dist/os/rfc/verification-evidence.d.ts +0 -8
  373. package/dist/os/rfc/verification-evidence.d.ts.map +0 -1
  374. package/dist/os/rfc/verification-evidence.js +0 -184
  375. package/dist/os/rfc/verification-evidence.js.map +0 -1
  376. package/dist/os/session/atif-parser.d.ts +0 -29
  377. package/dist/os/session/atif-parser.d.ts.map +0 -1
  378. package/dist/os/session/atif-parser.js +0 -140
  379. package/dist/os/session/atif-parser.js.map +0 -1
  380. package/dist/os/session/frontmatter-io.d.ts +0 -31
  381. package/dist/os/session/frontmatter-io.d.ts.map +0 -1
  382. package/dist/os/session/frontmatter-io.js +0 -146
  383. package/dist/os/session/frontmatter-io.js.map +0 -1
  384. package/dist/os/session/handlers/archive.d.ts +0 -4
  385. package/dist/os/session/handlers/archive.d.ts.map +0 -1
  386. package/dist/os/session/handlers/archive.js +0 -241
  387. package/dist/os/session/handlers/archive.js.map +0 -1
  388. package/dist/os/session/handlers/list.d.ts +0 -4
  389. package/dist/os/session/handlers/list.d.ts.map +0 -1
  390. package/dist/os/session/handlers/list.js +0 -147
  391. package/dist/os/session/handlers/list.js.map +0 -1
  392. package/dist/os/session/handlers/save.d.ts +0 -6
  393. package/dist/os/session/handlers/save.d.ts.map +0 -1
  394. package/dist/os/session/handlers/save.js +0 -297
  395. package/dist/os/session/handlers/save.js.map +0 -1
  396. package/dist/os/session/handlers/validate.d.ts +0 -4
  397. package/dist/os/session/handlers/validate.d.ts.map +0 -1
  398. package/dist/os/session/handlers/validate.js +0 -188
  399. package/dist/os/session/handlers/validate.js.map +0 -1
  400. package/dist/os/session/index.d.ts +0 -9
  401. package/dist/os/session/index.d.ts.map +0 -1
  402. package/dist/os/session/index.js +0 -20
  403. package/dist/os/session/index.js.map +0 -1
  404. package/dist/os/session/session.module.d.ts +0 -3
  405. package/dist/os/session/session.module.d.ts.map +0 -1
  406. package/dist/os/session/session.module.js +0 -115
  407. package/dist/os/session/session.module.js.map +0 -1
  408. package/dist/os/session/types.d.ts +0 -101
  409. package/dist/os/session/types.d.ts.map +0 -1
  410. package/dist/os/session/types.js +0 -52
  411. package/dist/os/session/types.js.map +0 -1
  412. package/dist/os/spec/live-spec-list.d.ts +0 -4
  413. package/dist/os/spec/live-spec-list.d.ts.map +0 -1
  414. package/dist/os/spec/live-spec-list.js +0 -64
  415. package/dist/os/spec/live-spec-list.js.map +0 -1
  416. package/dist/os/spec/live-spec-merge.d.ts +0 -4
  417. package/dist/os/spec/live-spec-merge.d.ts.map +0 -1
  418. package/dist/os/spec/live-spec-merge.js +0 -345
  419. package/dist/os/spec/live-spec-merge.js.map +0 -1
  420. package/dist/os/spec/live-spec-show.d.ts +0 -4
  421. package/dist/os/spec/live-spec-show.d.ts.map +0 -1
  422. package/dist/os/spec/live-spec-show.js +0 -99
  423. package/dist/os/spec/live-spec-show.js.map +0 -1
  424. package/dist/os/spec/live-spec-types.d.ts +0 -71
  425. package/dist/os/spec/live-spec-types.d.ts.map +0 -1
  426. package/dist/os/spec/live-spec-types.js +0 -14
  427. package/dist/os/spec/live-spec-types.js.map +0 -1
  428. package/dist/os/spec/live-spec-validate.d.ts +0 -4
  429. package/dist/os/spec/live-spec-validate.d.ts.map +0 -1
  430. package/dist/os/spec/live-spec-validate.js +0 -140
  431. package/dist/os/spec/live-spec-validate.js.map +0 -1
  432. package/dist/os/spec/spec-materialize.d.ts +0 -21
  433. package/dist/os/spec/spec-materialize.d.ts.map +0 -1
  434. package/dist/os/spec/spec-materialize.js +0 -336
  435. package/dist/os/spec/spec-materialize.js.map +0 -1
  436. package/dist/os/spec/spec-schema.d.ts +0 -126
  437. package/dist/os/spec/spec-schema.d.ts.map +0 -1
  438. package/dist/os/spec/spec-schema.js +0 -118
  439. package/dist/os/spec/spec-schema.js.map +0 -1
  440. package/dist/os/spec/spec-status.d.ts +0 -33
  441. package/dist/os/spec/spec-status.d.ts.map +0 -1
  442. package/dist/os/spec/spec-status.js +0 -222
  443. package/dist/os/spec/spec-status.js.map +0 -1
  444. package/dist/os/spec/spec-validate.d.ts +0 -4
  445. package/dist/os/spec/spec-validate.d.ts.map +0 -1
  446. package/dist/os/spec/spec-validate.js +0 -435
  447. package/dist/os/spec/spec-validate.js.map +0 -1
  448. package/dist/os/spec/spec.module.d.ts +0 -3
  449. package/dist/os/spec/spec.module.d.ts.map +0 -1
  450. package/dist/os/spec/spec.module.js +0 -119
  451. package/dist/os/spec/spec.module.js.map +0 -1
  452. package/dist/os/werkstatt/handlers/lock.d.ts +0 -10
  453. package/dist/os/werkstatt/handlers/lock.d.ts.map +0 -1
  454. package/dist/os/werkstatt/handlers/lock.js +0 -153
  455. package/dist/os/werkstatt/handlers/lock.js.map +0 -1
  456. package/dist/os/werkstatt/handlers/schema.d.ts +0 -33
  457. package/dist/os/werkstatt/handlers/schema.d.ts.map +0 -1
  458. package/dist/os/werkstatt/handlers/schema.js +0 -42
  459. package/dist/os/werkstatt/handlers/schema.js.map +0 -1
  460. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.d.ts +0 -15
  461. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.d.ts.map +0 -1
  462. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.js +0 -144
  463. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.js.map +0 -1
  464. package/dist/os/werkstatt/handlers/werkstatt-lock-status.d.ts +0 -18
  465. package/dist/os/werkstatt/handlers/werkstatt-lock-status.d.ts.map +0 -1
  466. package/dist/os/werkstatt/handlers/werkstatt-lock-status.js +0 -43
  467. package/dist/os/werkstatt/handlers/werkstatt-lock-status.js.map +0 -1
  468. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.d.ts +0 -11
  469. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.d.ts.map +0 -1
  470. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.js +0 -79
  471. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.js.map +0 -1
  472. package/dist/os/werkstatt/index.d.ts +0 -7
  473. package/dist/os/werkstatt/index.d.ts.map +0 -1
  474. package/dist/os/werkstatt/index.js +0 -18
  475. package/dist/os/werkstatt/index.js.map +0 -1
  476. package/dist/os/werkstatt/werkstatt.module.d.ts +0 -3
  477. package/dist/os/werkstatt/werkstatt.module.d.ts.map +0 -1
  478. package/dist/os/werkstatt/werkstatt.module.js +0 -58
  479. package/dist/os/werkstatt/werkstatt.module.js.map +0 -1
  480. package/dist/os/workflow/handlers.d.ts +0 -12
  481. package/dist/os/workflow/handlers.d.ts.map +0 -1
  482. package/dist/os/workflow/handlers.js +0 -254
  483. package/dist/os/workflow/handlers.js.map +0 -1
  484. package/dist/os/workflow/index.d.ts +0 -4
  485. package/dist/os/workflow/index.d.ts.map +0 -1
  486. package/dist/os/workflow/index.js +0 -18
  487. package/dist/os/workflow/index.js.map +0 -1
  488. package/dist/os/workflow/types.d.ts +0 -69
  489. package/dist/os/workflow/types.d.ts.map +0 -1
  490. package/dist/os/workflow/types.js +0 -23
  491. package/dist/os/workflow/types.js.map +0 -1
  492. package/dist/os/workflow/workflow.module.d.ts +0 -3
  493. package/dist/os/workflow/workflow.module.d.ts.map +0 -1
  494. package/dist/os/workflow/workflow.module.js +0 -48
  495. package/dist/os/workflow/workflow.module.js.map +0 -1
  496. package/dist/src/cli-output.d.ts +0 -5
  497. package/dist/src/cli-output.d.ts.map +0 -1
  498. package/dist/src/cli-output.js +0 -53
  499. package/dist/src/cli-output.js.map +0 -1
  500. package/dist/src/config/forge-config.d.ts +0 -242
  501. package/dist/src/config/forge-config.d.ts.map +0 -1
  502. package/dist/src/config/forge-config.js +0 -359
  503. package/dist/src/config/forge-config.js.map +0 -1
  504. package/dist/src/forge-module.d.ts +0 -16
  505. package/dist/src/forge-module.d.ts.map +0 -1
  506. package/dist/src/forge-module.js +0 -15
  507. package/dist/src/forge-module.js.map +0 -1
  508. package/dist/src/index.d.ts +0 -36
  509. package/dist/src/index.d.ts.map +0 -1
  510. package/dist/src/index.js +0 -56
  511. package/dist/src/index.js.map +0 -1
  512. package/dist/src/knowledge/budgets.d.ts +0 -38
  513. package/dist/src/knowledge/budgets.d.ts.map +0 -1
  514. package/dist/src/knowledge/budgets.js +0 -157
  515. package/dist/src/knowledge/budgets.js.map +0 -1
  516. package/dist/src/knowledge/compact.d.ts +0 -47
  517. package/dist/src/knowledge/compact.d.ts.map +0 -1
  518. package/dist/src/knowledge/compact.js +0 -320
  519. package/dist/src/knowledge/compact.js.map +0 -1
  520. package/dist/src/knowledge/index.d.ts +0 -7
  521. package/dist/src/knowledge/index.d.ts.map +0 -1
  522. package/dist/src/knowledge/index.js +0 -19
  523. package/dist/src/knowledge/index.js.map +0 -1
  524. package/dist/src/knowledge/parse.d.ts +0 -3
  525. package/dist/src/knowledge/parse.d.ts.map +0 -1
  526. package/dist/src/knowledge/parse.js +0 -205
  527. package/dist/src/knowledge/parse.js.map +0 -1
  528. package/dist/src/knowledge/promote.d.ts +0 -37
  529. package/dist/src/knowledge/promote.d.ts.map +0 -1
  530. package/dist/src/knowledge/promote.js +0 -120
  531. package/dist/src/knowledge/promote.js.map +0 -1
  532. package/dist/src/knowledge/schema.d.ts +0 -61
  533. package/dist/src/knowledge/schema.d.ts.map +0 -1
  534. package/dist/src/knowledge/schema.js +0 -64
  535. package/dist/src/knowledge/schema.js.map +0 -1
  536. package/dist/src/knowledge/serialize.d.ts +0 -3
  537. package/dist/src/knowledge/serialize.d.ts.map +0 -1
  538. package/dist/src/knowledge/serialize.js +0 -67
  539. package/dist/src/knowledge/serialize.js.map +0 -1
  540. package/dist/src/migration-adapters/git-utils.d.ts +0 -3
  541. package/dist/src/migration-adapters/git-utils.d.ts.map +0 -1
  542. package/dist/src/migration-adapters/git-utils.js +0 -56
  543. package/dist/src/migration-adapters/git-utils.js.map +0 -1
  544. package/dist/src/migration-adapters/ignored-files.d.ts +0 -12
  545. package/dist/src/migration-adapters/ignored-files.d.ts.map +0 -1
  546. package/dist/src/migration-adapters/ignored-files.js +0 -190
  547. package/dist/src/migration-adapters/ignored-files.js.map +0 -1
  548. package/dist/src/migration-adapters/index.d.ts +0 -8
  549. package/dist/src/migration-adapters/index.d.ts.map +0 -1
  550. package/dist/src/migration-adapters/index.js +0 -17
  551. package/dist/src/migration-adapters/index.js.map +0 -1
  552. package/dist/src/migration-adapters/node-typescript-pnpm/index.d.ts +0 -3
  553. package/dist/src/migration-adapters/node-typescript-pnpm/index.d.ts.map +0 -1
  554. package/dist/src/migration-adapters/node-typescript-pnpm/index.js +0 -141
  555. package/dist/src/migration-adapters/node-typescript-pnpm/index.js.map +0 -1
  556. package/dist/src/migration-adapters/phaser-pnpm/index.d.ts +0 -3
  557. package/dist/src/migration-adapters/phaser-pnpm/index.d.ts.map +0 -1
  558. package/dist/src/migration-adapters/phaser-pnpm/index.js +0 -142
  559. package/dist/src/migration-adapters/phaser-pnpm/index.js.map +0 -1
  560. package/dist/src/migration-adapters/registry.d.ts +0 -6
  561. package/dist/src/migration-adapters/registry.d.ts.map +0 -1
  562. package/dist/src/migration-adapters/registry.js +0 -55
  563. package/dist/src/migration-adapters/registry.js.map +0 -1
  564. package/dist/src/migration-adapters/types.d.ts +0 -35
  565. package/dist/src/migration-adapters/types.d.ts.map +0 -1
  566. package/dist/src/migration-adapters/types.js +0 -31
  567. package/dist/src/migration-adapters/types.js.map +0 -1
  568. package/dist/src/onboarding/agents-generate.d.ts +0 -30
  569. package/dist/src/onboarding/agents-generate.d.ts.map +0 -1
  570. package/dist/src/onboarding/agents-generate.js +0 -352
  571. package/dist/src/onboarding/agents-generate.js.map +0 -1
  572. package/dist/src/onboarding/create.d.ts +0 -12
  573. package/dist/src/onboarding/create.d.ts.map +0 -1
  574. package/dist/src/onboarding/create.js +0 -318
  575. package/dist/src/onboarding/create.js.map +0 -1
  576. package/dist/src/onboarding/doctor.d.ts +0 -45
  577. package/dist/src/onboarding/doctor.d.ts.map +0 -1
  578. package/dist/src/onboarding/doctor.js +0 -1108
  579. package/dist/src/onboarding/doctor.js.map +0 -1
  580. package/dist/src/onboarding/init.d.ts +0 -32
  581. package/dist/src/onboarding/init.d.ts.map +0 -1
  582. package/dist/src/onboarding/init.js +0 -291
  583. package/dist/src/onboarding/init.js.map +0 -1
  584. package/dist/src/onboarding/invariant-engine.d.ts +0 -17
  585. package/dist/src/onboarding/invariant-engine.d.ts.map +0 -1
  586. package/dist/src/onboarding/invariant-engine.js +0 -416
  587. package/dist/src/onboarding/invariant-engine.js.map +0 -1
  588. package/dist/src/onboarding/memory-scaffold.d.ts +0 -18
  589. package/dist/src/onboarding/memory-scaffold.d.ts.map +0 -1
  590. package/dist/src/onboarding/memory-scaffold.js +0 -151
  591. package/dist/src/onboarding/memory-scaffold.js.map +0 -1
  592. package/dist/src/onboarding/nested-agents-generate.d.ts +0 -18
  593. package/dist/src/onboarding/nested-agents-generate.d.ts.map +0 -1
  594. package/dist/src/onboarding/nested-agents-generate.js +0 -69
  595. package/dist/src/onboarding/nested-agents-generate.js.map +0 -1
  596. package/dist/src/onboarding/nested-agents-templates.d.ts +0 -26
  597. package/dist/src/onboarding/nested-agents-templates.d.ts.map +0 -1
  598. package/dist/src/onboarding/nested-agents-templates.js +0 -178
  599. package/dist/src/onboarding/nested-agents-templates.js.map +0 -1
  600. package/dist/src/onboarding/profile-validate.d.ts +0 -13
  601. package/dist/src/onboarding/profile-validate.d.ts.map +0 -1
  602. package/dist/src/onboarding/profile-validate.js +0 -109
  603. package/dist/src/onboarding/profile-validate.js.map +0 -1
  604. package/dist/src/onboarding/scaffold-project.d.ts +0 -12
  605. package/dist/src/onboarding/scaffold-project.d.ts.map +0 -1
  606. package/dist/src/onboarding/scaffold-project.js +0 -248
  607. package/dist/src/onboarding/scaffold-project.js.map +0 -1
  608. package/dist/src/onboarding/scaffold.d.ts +0 -15
  609. package/dist/src/onboarding/scaffold.d.ts.map +0 -1
  610. package/dist/src/onboarding/scaffold.js +0 -120
  611. package/dist/src/onboarding/scaffold.js.map +0 -1
  612. package/dist/src/onboarding/upgrade.d.ts +0 -25
  613. package/dist/src/onboarding/upgrade.d.ts.map +0 -1
  614. package/dist/src/onboarding/upgrade.js +0 -391
  615. package/dist/src/onboarding/upgrade.js.map +0 -1
  616. package/dist/src/onboarding/workspace-discovery.d.ts +0 -11
  617. package/dist/src/onboarding/workspace-discovery.d.ts.map +0 -1
  618. package/dist/src/onboarding/workspace-discovery.js +0 -138
  619. package/dist/src/onboarding/workspace-discovery.js.map +0 -1
  620. package/dist/src/profiles/profile-schema.d.ts +0 -351
  621. package/dist/src/profiles/profile-schema.d.ts.map +0 -1
  622. package/dist/src/profiles/profile-schema.js +0 -201
  623. package/dist/src/profiles/profile-schema.js.map +0 -1
  624. package/dist/src/profiles/stack-profile.d.ts +0 -168
  625. package/dist/src/profiles/stack-profile.d.ts.map +0 -1
  626. package/dist/src/profiles/stack-profile.js +0 -144
  627. package/dist/src/profiles/stack-profile.js.map +0 -1
  628. package/dist/src/profiles/terminology-utils.d.ts +0 -8
  629. package/dist/src/profiles/terminology-utils.d.ts.map +0 -1
  630. package/dist/src/profiles/terminology-utils.js +0 -31
  631. package/dist/src/profiles/terminology-utils.js.map +0 -1
  632. package/dist/src/registry.d.ts +0 -38
  633. package/dist/src/registry.d.ts.map +0 -1
  634. package/dist/src/registry.js +0 -135
  635. package/dist/src/registry.js.map +0 -1
  636. package/dist/src/skill-schema.d.ts +0 -30
  637. package/dist/src/skill-schema.d.ts.map +0 -1
  638. package/dist/src/skill-schema.js +0 -34
  639. package/dist/src/skill-schema.js.map +0 -1
  640. package/dist/src/types.d.ts +0 -152
  641. package/dist/src/types.d.ts.map +0 -1
  642. package/dist/src/types.js +0 -17
  643. package/dist/src/types.js.map +0 -1
  644. package/dist/src/utils/fs-atomic.d.ts +0 -7
  645. package/dist/src/utils/fs-atomic.d.ts.map +0 -1
  646. package/dist/src/utils/fs-atomic.js +0 -81
  647. package/dist/src/utils/fs-atomic.js.map +0 -1
  648. package/dist/src/utils/fs-idempotent.d.ts +0 -2
  649. package/dist/src/utils/fs-idempotent.d.ts.map +0 -1
  650. package/dist/src/utils/fs-idempotent.js +0 -39
  651. package/dist/src/utils/fs-idempotent.js.map +0 -1
  652. package/dist/src/utils/fs-trash-sync.d.ts +0 -2
  653. package/dist/src/utils/fs-trash-sync.d.ts.map +0 -1
  654. package/dist/src/utils/fs-trash-sync.js +0 -34
  655. package/dist/src/utils/fs-trash-sync.js.map +0 -1
  656. package/dist/src/utils/fs-trash.d.ts +0 -2
  657. package/dist/src/utils/fs-trash.d.ts.map +0 -1
  658. package/dist/src/utils/fs-trash.js +0 -24
  659. package/dist/src/utils/fs-trash.js.map +0 -1
  660. package/dist/src/utils/fs.d.ts +0 -8
  661. package/dist/src/utils/fs.d.ts.map +0 -1
  662. package/dist/src/utils/fs.js +0 -60
  663. package/dist/src/utils/fs.js.map +0 -1
  664. package/dist/src/utils/generated-marker.d.ts +0 -21
  665. package/dist/src/utils/generated-marker.d.ts.map +0 -1
  666. package/dist/src/utils/generated-marker.js +0 -128
  667. package/dist/src/utils/generated-marker.js.map +0 -1
  668. package/dist/src/utils/hash.d.ts +0 -2
  669. package/dist/src/utils/hash.d.ts.map +0 -1
  670. package/dist/src/utils/hash.js +0 -18
  671. package/dist/src/utils/hash.js.map +0 -1
  672. package/dist/src/utils/index.d.ts +0 -9
  673. package/dist/src/utils/index.d.ts.map +0 -1
  674. package/dist/src/utils/index.js +0 -21
  675. package/dist/src/utils/index.js.map +0 -1
  676. package/dist/src/utils/string-utils.d.ts +0 -2
  677. package/dist/src/utils/string-utils.d.ts.map +0 -1
  678. package/dist/src/utils/string-utils.js +0 -19
  679. package/dist/src/utils/string-utils.js.map +0 -1
  680. package/dist/src/validators/note-frontmatter-validate.d.ts +0 -20
  681. package/dist/src/validators/note-frontmatter-validate.d.ts.map +0 -1
  682. package/dist/src/validators/note-frontmatter-validate.js +0 -117
  683. package/dist/src/validators/note-frontmatter-validate.js.map +0 -1
  684. package/dist/src/validators/note-link-validate.d.ts +0 -21
  685. package/dist/src/validators/note-link-validate.d.ts.map +0 -1
  686. package/dist/src/validators/note-link-validate.js +0 -121
  687. package/dist/src/validators/note-link-validate.js.map +0 -1
  688. package/dist/src/validators/note-orphan-detect.d.ts +0 -19
  689. package/dist/src/validators/note-orphan-detect.d.ts.map +0 -1
  690. package/dist/src/validators/note-orphan-detect.js +0 -123
  691. package/dist/src/validators/note-orphan-detect.js.map +0 -1
  692. package/dist/src/validators/port-validate.d.ts +0 -12
  693. package/dist/src/validators/port-validate.d.ts.map +0 -1
  694. package/dist/src/validators/port-validate.js +0 -78
  695. package/dist/src/validators/port-validate.js.map +0 -1
  696. package/dist/src/validators/skill-validate.d.ts +0 -29
  697. package/dist/src/validators/skill-validate.d.ts.map +0 -1
  698. package/dist/src/validators/skill-validate.js +0 -689
  699. package/dist/src/validators/skill-validate.js.map +0 -1
  700. package/profiles/editframe-templates/composition-agents.md +0 -69
  701. package/profiles/editframe-templates/composition.tsx +0 -81
  702. package/profiles/editframe-templates/html-composition-agents.md +0 -62
  703. package/profiles/editframe.yaml +0 -729
  704. package/profiles/obsidian-vault.yaml +0 -103
  705. package/skills/fo/ef-brand-video-generator/SKILL.md +0 -92
  706. package/skills/fo/ef-composition/SKILL.md +0 -156
  707. package/skills/fo/ef-composition-review/SKILL.md +0 -68
  708. package/skills/fo/ef-dev-server/SKILL.md +0 -107
  709. package/skills/fo/ef-editor-gui/SKILL.md +0 -131
  710. package/skills/fo/ef-motion-design/SKILL.md +0 -118
  711. package/skills/fo/ef-onboard/SKILL.md +0 -77
  712. package/skills/fo/ef-render-verify/SKILL.md +0 -56
  713. package/skills/fo/ef-webhooks/SKILL.md +0 -95
@@ -1,206 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>
4
- Plan archive handler — moves plan files whose parent RFC has terminal status
5
- into status-specific subdirectories under docs/plans/archive/ and moves
6
- non-terminal files found in subdirectories back to the root.
7
- </purpose>
8
- <non-goals>
9
- <item>Does not validate plan content.</item>
10
- <item>Does not change plan frontmatter — only moves files on disk.</item>
11
- </non-goals>
12
- </MODULE_CONTRACT>
13
- <CHANGE_SUMMARY>
14
- <item>RFC-0521: implement plan.archive command.</item>
15
- <item>RFC-0733: add pinned-files pre-check — skip pinned files with warning instead of moving them.</item>
16
- </CHANGE_SUMMARY>
17
- */
18
- import fs from "node:fs/promises";
19
- import path from "node:path";
20
- import { listPlanFiles, extractRfcIdFromPlanFile } from "../frontmatter-io.js";
21
- import { loadRfcStatusMap } from "../../rfc/frontmatter-io.js";
22
- import { PLAN_DIR } from "../types.js";
23
- import { loadPinnedManifest, isPinned, isIntraDirMove } from "../../core/handlers/pinned-check.js";
24
- const TERMINAL_STATUSES = ["implemented", "rejected", "superseded"];
25
- export async function runPlanArchive(input, context) {
26
- const { workspaceRoot, logger, outputFormat } = context;
27
- const planDirPath = path.join(workspaceRoot, PLAN_DIR);
28
- const rfcDirPath = path.join(workspaceRoot, "docs", "rfcs");
29
- const dryRun = context.dryRun || input.flags["dry-run"] === true;
30
- const statusFilter = input.flags["status"];
31
- if (statusFilter && !TERMINAL_STATUSES.includes(statusFilter)) {
32
- throw new Error(`Invalid --status "${statusFilter}". Must be one of: ${TERMINAL_STATUSES.join(", ")}`);
33
- }
34
- const files = await listPlanFiles(planDirPath);
35
- const rfcStatusMap = await loadRfcStatusMap(rfcDirPath);
36
- const moved = [];
37
- const skipped = [];
38
- // RFC-0733: Load pinned manifest once per invocation
39
- let pinnedManifest = null;
40
- try {
41
- pinnedManifest = await loadPinnedManifest(workspaceRoot);
42
- }
43
- catch {
44
- // Malformed manifest — skip pre-check
45
- }
46
- for (const fileName of files) {
47
- const rfcId = extractRfcIdFromPlanFile(fileName);
48
- const relFile = path.join(PLAN_DIR, fileName);
49
- const basename = path.basename(fileName);
50
- if (!rfcId) {
51
- skipped.push({ id: "UNKNOWN", file: relFile, reason: "no RFC id in filename" });
52
- continue;
53
- }
54
- const rfcStatus = rfcStatusMap.get(rfcId);
55
- if (!rfcStatus) {
56
- skipped.push({ id: rfcId, file: relFile, reason: "parent RFC not found" });
57
- continue;
58
- }
59
- const isTerminal = rfcStatus === "implemented" || rfcStatus === "rejected" || rfcStatus === "superseded";
60
- const isInArchive = fileName.includes("/");
61
- if (statusFilter && rfcStatus !== statusFilter) {
62
- skipped.push({
63
- id: rfcId,
64
- file: relFile,
65
- reason: `parent RFC status ${rfcStatus} does not match --status ${statusFilter}`,
66
- });
67
- continue;
68
- }
69
- if (isTerminal && !isInArchive) {
70
- const targetDir = path.join(planDirPath, "archive", rfcStatus);
71
- const targetPath = path.join(targetDir, basename);
72
- const targetRel = path.join(PLAN_DIR, "archive", rfcStatus, basename);
73
- // RFC-0733: Check if file is pinned before moving
74
- // Gap fix: exempt intra-directory moves (file stays within the same pinned dir)
75
- if (pinnedManifest &&
76
- isPinned(pinnedManifest, relFile) &&
77
- !isIntraDirMove(pinnedManifest, relFile, targetRel)) {
78
- skipped.push({
79
- id: rfcId,
80
- file: relFile,
81
- reason: "pinned (protected by .forge/pinned.yaml)",
82
- });
83
- if (outputFormat === "pretty") {
84
- logger.warn(` pinned: skipping ${relFile} (protected)`);
85
- }
86
- continue;
87
- }
88
- try {
89
- await fs.access(targetPath);
90
- skipped.push({ id: rfcId, file: relFile, reason: "destination exists" });
91
- continue;
92
- }
93
- catch {
94
- // destination doesn't exist — proceed
95
- }
96
- if (!dryRun) {
97
- await fs.mkdir(targetDir, { recursive: true });
98
- try {
99
- await fs.rename(path.join(planDirPath, fileName), targetPath);
100
- }
101
- catch (err) {
102
- if (err.code === "ENOENT") {
103
- skipped.push({ id: rfcId, file: relFile, reason: "already moved by another process" });
104
- continue;
105
- }
106
- throw err;
107
- }
108
- }
109
- moved.push({
110
- id: rfcId,
111
- file: targetRel,
112
- status: rfcStatus,
113
- from: relFile,
114
- to: targetRel,
115
- direction: "into-archive",
116
- });
117
- }
118
- else if (!isTerminal && isInArchive) {
119
- const targetPath = path.join(planDirPath, basename);
120
- const targetRel = path.join(PLAN_DIR, basename);
121
- // RFC-0733: Check if file is pinned before moving
122
- // Gap fix: exempt intra-directory moves (file stays within the same pinned dir)
123
- if (pinnedManifest &&
124
- isPinned(pinnedManifest, relFile) &&
125
- !isIntraDirMove(pinnedManifest, relFile, targetRel)) {
126
- skipped.push({
127
- id: rfcId,
128
- file: relFile,
129
- reason: "pinned (protected by .forge/pinned.yaml)",
130
- });
131
- if (outputFormat === "pretty") {
132
- logger.warn(` pinned: skipping ${relFile} (protected)`);
133
- }
134
- continue;
135
- }
136
- try {
137
- await fs.access(targetPath);
138
- skipped.push({ id: rfcId, file: relFile, reason: "destination exists" });
139
- continue;
140
- }
141
- catch {
142
- // destination doesn't exist — proceed
143
- }
144
- if (!dryRun) {
145
- try {
146
- await fs.rename(path.join(planDirPath, fileName), targetPath);
147
- }
148
- catch (err) {
149
- if (err.code === "ENOENT") {
150
- skipped.push({ id: rfcId, file: relFile, reason: "already moved by another process" });
151
- continue;
152
- }
153
- throw err;
154
- }
155
- }
156
- moved.push({
157
- id: rfcId,
158
- file: targetRel,
159
- status: rfcStatus,
160
- from: relFile,
161
- to: targetRel,
162
- direction: "out-of-archive",
163
- });
164
- }
165
- else if (isTerminal && isInArchive) {
166
- skipped.push({ id: rfcId, file: relFile, reason: `already archived (${rfcStatus})` });
167
- }
168
- else {
169
- skipped.push({
170
- id: rfcId,
171
- file: relFile,
172
- reason: `parent RFC status ${rfcStatus} is non-terminal`,
173
- });
174
- }
175
- }
176
- if (outputFormat === "pretty") {
177
- if (dryRun) {
178
- logger.info(`[dry-run] plan.archive: would move ${moved.length} file(s), skip ${skipped.length}`);
179
- }
180
- else {
181
- logger.success(`plan.archive: moved ${moved.length} file(s), skipped ${skipped.length}`);
182
- }
183
- for (const m of moved) {
184
- logger.info(` ${m.direction}: ${m.id} (${m.status}) ${m.from} → ${m.to}`);
185
- }
186
- }
187
- return {
188
- data: {
189
- command: "plan.archive",
190
- status: "ok",
191
- moved,
192
- skipped,
193
- dryRun,
194
- },
195
- summary: dryRun
196
- ? `[dry-run] Would move ${moved.length} file(s), skip ${skipped.length}`
197
- : `Moved ${moved.length} file(s), skipped ${skipped.length}`,
198
- nextSteps: [
199
- {
200
- action: "Run: pnpm exec werkstatt run plan.list --json to verify archive status",
201
- kind: "optional",
202
- },
203
- ],
204
- };
205
- }
206
- //# sourceMappingURL=archive.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"archive.js","sourceRoot":"","sources":["../../../../os/plan/handlers/archive.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;EAgBE;AAEF,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAO/D,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAEnG,MAAM,iBAAiB,GAAG,CAAC,aAAa,EAAE,UAAU,EAAE,YAAY,CAAU,CAAC;AAE7E,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,KAAwB,EACxB,OAA4B;IAE5B,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IACxD,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IACvD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAE5D,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC;IACjE,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAuB,CAAC;IAEjE,IAAI,YAAY,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,YAAqB,CAAC,EAAE,CAAC;QACvE,MAAM,IAAI,KAAK,CACb,qBAAqB,YAAY,sBAAsB,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACtF,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,WAAW,CAAC,CAAC;IAC/C,MAAM,YAAY,GAAG,MAAM,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACxD,MAAM,KAAK,GAAkB,EAAE,CAAC;IAChC,MAAM,OAAO,GAAkB,EAAE,CAAC;IAElC,qDAAqD;IACrD,IAAI,cAAc,GAAG,IAAI,CAAC;IAC1B,IAAI,CAAC;QACH,cAAc,GAAG,MAAM,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAC3D,CAAC;IAAC,MAAM,CAAC;QACP,sCAAsC;IACxC,CAAC;IAED,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,wBAAwB,CAAC,QAAQ,CAAC,CAAC;QACjD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAEzC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,uBAAuB,EAAE,CAAC,CAAC;YAChF,SAAS;QACX,CAAC;QAED,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,sBAAsB,EAAE,CAAC,CAAC;YAC3E,SAAS;QACX,CAAC;QAED,MAAM,UAAU,GACd,SAAS,KAAK,aAAa,IAAI,SAAS,KAAK,UAAU,IAAI,SAAS,KAAK,YAAY,CAAC;QACxF,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAE3C,IAAI,YAAY,IAAI,SAAS,KAAK,YAAY,EAAE,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC;gBACX,EAAE,EAAE,KAAK;gBACT,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,qBAAqB,SAAS,4BAA4B,YAAY,EAAE;aACjF,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QAED,IAAI,UAAU,IAAI,CAAC,WAAW,EAAE,CAAC;YAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;YAC/D,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAClD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;YAEtE,kDAAkD;YAClD,gFAAgF;YAChF,IACE,cAAc;gBACd,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;gBACjC,CAAC,cAAc,CAAC,cAAc,EAAE,OAAO,EAAE,SAAS,CAAC,EACnD,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC;oBACX,EAAE,EAAE,KAAK;oBACT,IAAI,EAAE,OAAO;oBACb,MAAM,EAAE,0CAA0C;iBACnD,CAAC,CAAC;gBACH,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;oBAC9B,MAAM,CAAC,IAAI,CAAC,sBAAsB,OAAO,cAAc,CAAC,CAAC;gBAC3D,CAAC;gBACD,SAAS;YACX,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBAC5B,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC,CAAC;gBACzE,SAAS;YACX,CAAC;YAAC,MAAM,CAAC;gBACP,sCAAsC;YACxC,CAAC;YAED,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC/C,IAAI,CAAC;oBACH,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,UAAU,CAAC,CAAC;gBAChE,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAK,GAA6B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;wBACrD,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,kCAAkC,EAAE,CAAC,CAAC;wBACvF,SAAS;oBACX,CAAC;oBACD,MAAM,GAAG,CAAC;gBACZ,CAAC;YACH,CAAC;YAED,KAAK,CAAC,IAAI,CAAC;gBACT,EAAE,EAAE,KAAK;gBACT,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,SAAS;gBACjB,IAAI,EAAE,OAAO;gBACb,EAAE,EAAE,SAAS;gBACb,SAAS,EAAE,cAAc;aAC1B,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,CAAC,UAAU,IAAI,WAAW,EAAE,CAAC;YACtC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;YACpD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAEhD,kDAAkD;YAClD,gFAAgF;YAChF,IACE,cAAc;gBACd,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;gBACjC,CAAC,cAAc,CAAC,cAAc,EAAE,OAAO,EAAE,SAAS,CAAC,EACnD,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC;oBACX,EAAE,EAAE,KAAK;oBACT,IAAI,EAAE,OAAO;oBACb,MAAM,EAAE,0CAA0C;iBACnD,CAAC,CAAC;gBACH,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;oBAC9B,MAAM,CAAC,IAAI,CAAC,sBAAsB,OAAO,cAAc,CAAC,CAAC;gBAC3D,CAAC;gBACD,SAAS;YACX,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBAC5B,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC,CAAC;gBACzE,SAAS;YACX,CAAC;YAAC,MAAM,CAAC;gBACP,sCAAsC;YACxC,CAAC;YAED,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,IAAI,CAAC;oBACH,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,EAAE,UAAU,CAAC,CAAC;gBAChE,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAK,GAA6B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;wBACrD,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,kCAAkC,EAAE,CAAC,CAAC;wBACvF,SAAS;oBACX,CAAC;oBACD,MAAM,GAAG,CAAC;gBACZ,CAAC;YACH,CAAC;YAED,KAAK,CAAC,IAAI,CAAC;gBACT,EAAE,EAAE,KAAK;gBACT,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,SAAS;gBACjB,IAAI,EAAE,OAAO;gBACb,EAAE,EAAE,SAAS;gBACb,SAAS,EAAE,gBAAgB;aAC5B,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,qBAAqB,SAAS,GAAG,EAAE,CAAC,CAAC;QACxF,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,IAAI,CAAC;gBACX,EAAE,EAAE,KAAK;gBACT,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,qBAAqB,SAAS,kBAAkB;aACzD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;QAC9B,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,IAAI,CACT,sCAAsC,KAAK,CAAC,MAAM,kBAAkB,OAAO,CAAC,MAAM,EAAE,CACrF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,OAAO,CAAC,uBAAuB,KAAK,CAAC,MAAM,qBAAqB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAC3F,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;IAED,OAAO;QACL,IAAI,EAAE;YACJ,OAAO,EAAE,cAAc;YACvB,MAAM,EAAE,IAAI;YACZ,KAAK;YACL,OAAO;YACP,MAAM;SACP;QACD,OAAO,EAAE,MAAM;YACb,CAAC,CAAC,wBAAwB,KAAK,CAAC,MAAM,kBAAkB,OAAO,CAAC,MAAM,EAAE;YACxE,CAAC,CAAC,SAAS,KAAK,CAAC,MAAM,qBAAqB,OAAO,CAAC,MAAM,EAAE;QAC9D,SAAS,EAAE;YACT;gBACE,MAAM,EAAE,wEAAwE;gBAChF,IAAI,EAAE,UAAU;aACjB;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -1,6 +0,0 @@
1
- export { forgePlanModule } from "./plan.module.ts";
2
- export { runPlanArchive } from "./handlers/archive.ts";
3
- export { listPlanFiles, parsePlanFile, readAndParsePlan, extractRfcIdFromPlanFile, type ParsedPlan, } from "./frontmatter-io.ts";
4
- export type { PlanArchiveResult, PlanArchiveMove, PlanArchiveSkip } from "./types.ts";
5
- export { PLAN_DIR, PLAN_FILE_PATTERN } from "./types.ts";
6
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../os/plan/index.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EACL,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,wBAAwB,EACxB,KAAK,UAAU,GAChB,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACtF,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC"}
@@ -1,16 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Barrel export for the plan domain — types, module, and handlers.</purpose>
4
- <non-goals>
5
- <item>Do not implement plan logic here; delegate to handlers/ and plan.module.ts.</item>
6
- </non-goals>
7
- </MODULE_CONTRACT>
8
- <CHANGE_SUMMARY>
9
- <item>RFC-0521: initial plan module barrel.</item>
10
- </CHANGE_SUMMARY>
11
- */
12
- export { forgePlanModule } from "./plan.module.js";
13
- export { runPlanArchive } from "./handlers/archive.js";
14
- export { listPlanFiles, parsePlanFile, readAndParsePlan, extractRfcIdFromPlanFile, } from "./frontmatter-io.js";
15
- export { PLAN_DIR, PLAN_FILE_PATTERN } from "./types.js";
16
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../os/plan/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;EAUE;AAEF,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EACL,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,wBAAwB,GAEzB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { ForgeModule } from "../../src/forge-module.ts";
2
- export declare const forgePlanModule: ForgeModule;
3
- //# sourceMappingURL=plan.module.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plan.module.d.ts","sourceRoot":"","sources":["../../../os/plan/plan.module.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAE7D,eAAO,MAAM,eAAe,EAAE,WAiC7B,CAAC"}
@@ -1,44 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Register the plan archive command with the forge kernel registry.</purpose>
4
- <non-goals>
5
- <item>Do not implement handler logic here — delegate to handlers/archive.ts.</item>
6
- </non-goals>
7
- </MODULE_CONTRACT>
8
- <CHANGE_SUMMARY>
9
- <item>RFC-0521: initial forgePlanModule registering plan.archive command.</item>
10
- </CHANGE_SUMMARY>
11
- */
12
- export const forgePlanModule = {
13
- name: "forge-plan",
14
- version: "0.1.0",
15
- async register(registry) {
16
- const { runPlanArchive } = await import("./handlers/archive.js");
17
- registry.registerCommand({
18
- name: "plan.archive",
19
- description: "Move plan files whose parent RFC has terminal status " +
20
- "(implemented, rejected, superseded) into docs/plans/archive/<status>/ " +
21
- "subdirectories. Bidirectional: moves non-terminal files found in " +
22
- "subdirectories back to root. Use --dry-run to preview. " +
23
- "Use --status to filter to a single terminal status. " +
24
- "Prefer the docs.archive umbrella command unless you need to archive only plans.",
25
- scope: "workspace",
26
- mutatesState: true,
27
- writes: ["docs/plans/*.md", "docs/plans/archive/**"],
28
- reads: ["docs/plans/**/*.md", "docs/rfcs/**/*.md"],
29
- cacheable: false,
30
- flags: {
31
- "dry-run": {
32
- kind: "boolean",
33
- description: "Preview what would be moved without touching the filesystem.",
34
- },
35
- status: {
36
- kind: "string",
37
- description: "Filter to a single terminal status (implemented, rejected, superseded).",
38
- },
39
- },
40
- execute: runPlanArchive,
41
- });
42
- },
43
- };
44
- //# sourceMappingURL=plan.module.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plan.module.js","sourceRoot":"","sources":["../../../os/plan/plan.module.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;EAUE;AAIF,MAAM,CAAC,MAAM,eAAe,GAAgB;IAC1C,IAAI,EAAE,YAAY;IAClB,OAAO,EAAE,OAAO;IAChB,KAAK,CAAC,QAAQ,CAAC,QAAQ;QACrB,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;QAEjE,QAAQ,CAAC,eAAe,CAAC;YACvB,IAAI,EAAE,cAAc;YACpB,WAAW,EACT,uDAAuD;gBACvD,wEAAwE;gBACxE,mEAAmE;gBACnE,yDAAyD;gBACzD,sDAAsD;gBACtD,iFAAiF;YACnF,KAAK,EAAE,WAAW;YAClB,YAAY,EAAE,IAAI;YAClB,MAAM,EAAE,CAAC,iBAAiB,EAAE,uBAAuB,CAAC;YACpD,KAAK,EAAE,CAAC,oBAAoB,EAAE,mBAAmB,CAAC;YAClD,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE;gBACL,SAAS,EAAE;oBACT,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,8DAA8D;iBAC5E;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,yEAAyE;iBACvF;aACF;YACD,OAAO,EAAE,cAAc;SACxB,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
@@ -1,12 +0,0 @@
1
- import type { ArchiveMove, ArchiveSkip } from "../rfc/handlers/archive.ts";
2
- export declare const PLAN_DIR = "docs/plans";
3
- export declare const PLAN_FILE_PATTERN: RegExp;
4
- export interface PlanArchiveResult {
5
- command: "plan.archive";
6
- status: "ok";
7
- moved: ArchiveMove[];
8
- skipped: ArchiveSkip[];
9
- dryRun: boolean;
10
- }
11
- export type { ArchiveMove as PlanArchiveMove, ArchiveSkip as PlanArchiveSkip };
12
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../os/plan/types.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAE3E,eAAO,MAAM,QAAQ,eAAe,CAAC;AACrC,eAAO,MAAM,iBAAiB,QAAqB,CAAC;AAEpD,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,cAAc,CAAC;IACxB,MAAM,EAAE,IAAI,CAAC;IACb,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,YAAY,EAAE,WAAW,IAAI,eAAe,EAAE,WAAW,IAAI,eAAe,EAAE,CAAC"}
@@ -1,17 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>
4
- Type definitions for the plan archive domain — plan file discovery, parsing,
5
- and archive result shapes.
6
- </purpose>
7
- <non-goals>
8
- <item>Do not define archive handler logic here — that lives in handlers/archive.ts.</item>
9
- </non-goals>
10
- </MODULE_CONTRACT>
11
- <CHANGE_SUMMARY>
12
- <item>RFC-0521: initial plan archive types.</item>
13
- </CHANGE_SUMMARY>
14
- */
15
- export const PLAN_DIR = "docs/plans";
16
- export const PLAN_FILE_PATTERN = /^plan-rfc-\d{4}-/;
17
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../os/plan/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;EAaE;AAIF,MAAM,CAAC,MAAM,QAAQ,GAAG,YAAY,CAAC;AACrC,MAAM,CAAC,MAAM,iBAAiB,GAAG,kBAAkB,CAAC"}
@@ -1,61 +0,0 @@
1
- import { type ProgramManifest, type ProgramPacket, type ProgramPacketIndexEntry } from "./schemas.ts";
2
- export interface ProgramLocation {
3
- programDir: string;
4
- manifestPath: string;
5
- manifest: ProgramManifest;
6
- }
7
- /**
8
- * Discover a program by RFC id. Scans docs/plans/ for a program.yaml whose
9
- * `program` field matches the given RFC id.
10
- */
11
- export declare function discoverProgram(workspaceRoot: string, programRfc: string): ProgramLocation | null;
12
- /**
13
- * Parse a packet .md file: extract YAML frontmatter and validate against
14
- * the forge/program-packet@1 schema.
15
- */
16
- export declare function parsePacketFile(packetPath: string): ProgramPacket;
17
- /**
18
- * Find a packet by packetId within a program.
19
- */
20
- export declare function findPacketEntry(manifest: ProgramManifest, packetId: string): ProgramPacketIndexEntry | null;
21
- /**
22
- * Resolve the full path to a packet file.
23
- */
24
- export declare function resolvePacketPath(programDir: string, entry: ProgramPacketIndexEntry): string;
25
- /**
26
- * Compute SHA-256 hex digest of a file's bytes.
27
- */
28
- export declare function fileSha256(filePath: string): string;
29
- /**
30
- * Verify normative source hashes for a packet. Returns violations.
31
- */
32
- export declare function verifyNormativeSources(workspaceRoot: string, packet: ProgramPacket): Array<{
33
- path: string;
34
- expected: string;
35
- actual: string;
36
- }>;
37
- export declare function gitHead(workspaceRoot: string): string;
38
- export declare function gitBranch(workspaceRoot: string): string;
39
- export declare function gitIsClean(workspaceRoot: string): boolean;
40
- export declare function gitAncestorOf(workspaceRoot: string, ancestor: string, descendant: string): boolean;
41
- export declare function gitChangedFilesBetween(workspaceRoot: string, base: string, head: string): string[];
42
- /**
43
- * Normalize a path to forward slashes for cross-platform comparison.
44
- */
45
- export declare function normalizePath(p: string): string;
46
- /**
47
- * Check if a path matches a glob pattern. Supports:
48
- * - `**` for recursive directory matching
49
- * - `*` for single-level wildcard
50
- * - exact prefix matching with trailing `/**`
51
- */
52
- export declare function pathMatchesGlob(filePath: string, pattern: string): boolean;
53
- /**
54
- * Check if a file path is within the allowed files list.
55
- */
56
- export declare function isPathAllowed(filePath: string, allowedFiles: string[]): boolean;
57
- /**
58
- * Check if a file path matches any forbidden pattern.
59
- */
60
- export declare function isPathForbidden(filePath: string, forbiddenFiles: string[]): boolean;
61
- //# sourceMappingURL=discovery.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../../os/program/discovery.ts"],"names":[],"mappings":"AAoBA,OAAO,EAGL,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,uBAAuB,EAC7B,MAAM,cAAc,CAAC;AAMtB,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,eAAe,CAAC;CAC3B;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CA4BjG;AAMD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,CAgBjE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,eAAe,EACzB,QAAQ,EAAE,MAAM,GACf,uBAAuB,GAAG,IAAI,CAEhC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,uBAAuB,GAAG,MAAM,CAE5F;AAMD;;GAEG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAGnD;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,aAAa,GACpB,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAwB3D;AAMD,wBAAgB,OAAO,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAMrD;AAED,wBAAgB,SAAS,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAMvD;AAED,wBAAgB,UAAU,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAOzD;AAED,wBAAgB,aAAa,CAC3B,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GACjB,OAAO,CAWT;AAED,wBAAgB,sBAAsB,CACpC,aAAa,EAAE,MAAM,EACrB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX,MAAM,EAAE,CAWV;AAMD;;GAEG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE/C;AAmBD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAqB1E;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAG/E;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,OAAO,CAGnF"}
@@ -1,236 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Discovery and parsing for program manifests and packet files.
4
- Reads YAML frontmatter from program.yaml and packet .md files, validates
5
- against schemas, and computes normative source hashes.</purpose>
6
- <non-goals>
7
- <item>Do not import from @warpgogol/* — forge must remain dependency-free.</item>
8
- <item>Do not mutate files — discovery is read-only.</item>
9
- </non-goals>
10
- </MODULE_CONTRACT>
11
- <CHANGE_SUMMARY>
12
- <item>RFC-0856: initial program/packet discovery and parsing.</item>
13
- </CHANGE_SUMMARY>
14
- */
15
- import fs from "node:fs";
16
- import path from "node:path";
17
- import { createHash } from "node:crypto";
18
- import { execSync } from "node:child_process";
19
- import { parse as parseYaml } from "yaml";
20
- import { programManifestSchema, programPacketSchema, } from "./schemas.js";
21
- /**
22
- * Discover a program by RFC id. Scans docs/plans/ for a program.yaml whose
23
- * `program` field matches the given RFC id.
24
- */
25
- export function discoverProgram(workspaceRoot, programRfc) {
26
- const plansDir = path.join(workspaceRoot, "docs", "plans");
27
- if (!fs.existsSync(plansDir))
28
- return null;
29
- for (const entry of fs.readdirSync(plansDir, { withFileTypes: true })) {
30
- if (!entry.isDirectory())
31
- continue;
32
- const manifestPath = path.join(plansDir, entry.name, "program.yaml");
33
- if (!fs.existsSync(manifestPath))
34
- continue;
35
- const raw = fs.readFileSync(manifestPath, "utf8");
36
- const parsed = parseYaml(raw);
37
- if (parsed.program !== programRfc)
38
- continue;
39
- const result = programManifestSchema.safeParse(parsed);
40
- if (!result.success) {
41
- throw new Error(`PROGRAM-PACKET-01: malformed program manifest at ${manifestPath}: ${result.error.message}`);
42
- }
43
- return {
44
- programDir: path.join(plansDir, entry.name),
45
- manifestPath,
46
- manifest: result.data,
47
- };
48
- }
49
- return null;
50
- }
51
- // ---------------------------------------------------------------------------
52
- // Packet parsing
53
- // ---------------------------------------------------------------------------
54
- /**
55
- * Parse a packet .md file: extract YAML frontmatter and validate against
56
- * the forge/program-packet@1 schema.
57
- */
58
- export function parsePacketFile(packetPath) {
59
- const raw = fs.readFileSync(packetPath, "utf8");
60
- const match = raw.match(/^---\n([\s\S]*?)\n---/);
61
- if (!match) {
62
- throw new Error(`PROGRAM-PACKET-01: missing frontmatter in ${packetPath}`);
63
- }
64
- const fm = parseYaml(match[1]);
65
- const result = programPacketSchema.safeParse(fm);
66
- if (!result.success) {
67
- throw new Error(`PROGRAM-PACKET-01: malformed packet at ${packetPath}: ${result.error.message}`);
68
- }
69
- return result.data;
70
- }
71
- /**
72
- * Find a packet by packetId within a program.
73
- */
74
- export function findPacketEntry(manifest, packetId) {
75
- return manifest.packets.find((p) => p.packetId === packetId) ?? null;
76
- }
77
- /**
78
- * Resolve the full path to a packet file.
79
- */
80
- export function resolvePacketPath(programDir, entry) {
81
- return path.join(programDir, entry.file);
82
- }
83
- // ---------------------------------------------------------------------------
84
- // Normative source hashing
85
- // ---------------------------------------------------------------------------
86
- /**
87
- * Compute SHA-256 hex digest of a file's bytes.
88
- */
89
- export function fileSha256(filePath) {
90
- const bytes = fs.readFileSync(filePath);
91
- return createHash("sha256").update(bytes).digest("hex");
92
- }
93
- /**
94
- * Verify normative source hashes for a packet. Returns violations.
95
- */
96
- export function verifyNormativeSources(workspaceRoot, packet) {
97
- const violations = [];
98
- for (const source of packet.normativeSources) {
99
- const fullPath = path.join(workspaceRoot, source.path);
100
- if (!fs.existsSync(fullPath)) {
101
- violations.push({
102
- path: source.path,
103
- expected: source.sha256,
104
- actual: "<missing>",
105
- });
106
- continue;
107
- }
108
- const actual = fileSha256(fullPath);
109
- if (actual !== source.sha256) {
110
- violations.push({
111
- path: source.path,
112
- expected: source.sha256,
113
- actual,
114
- });
115
- }
116
- }
117
- return violations;
118
- }
119
- // ---------------------------------------------------------------------------
120
- // Git helpers (read-only)
121
- // ---------------------------------------------------------------------------
122
- export function gitHead(workspaceRoot) {
123
- return execSync("git rev-parse HEAD", {
124
- cwd: workspaceRoot,
125
- encoding: "utf8",
126
- stdio: ["pipe", "pipe", "pipe"],
127
- }).trim();
128
- }
129
- export function gitBranch(workspaceRoot) {
130
- return execSync("git branch --show-current", {
131
- cwd: workspaceRoot,
132
- encoding: "utf8",
133
- stdio: ["pipe", "pipe", "pipe"],
134
- }).trim();
135
- }
136
- export function gitIsClean(workspaceRoot) {
137
- const status = execSync("git status --porcelain", {
138
- cwd: workspaceRoot,
139
- encoding: "utf8",
140
- stdio: ["pipe", "pipe", "pipe"],
141
- }).trim();
142
- return status.length === 0;
143
- }
144
- export function gitAncestorOf(workspaceRoot, ancestor, descendant) {
145
- try {
146
- const result = execSync(`git merge-base --is-ancestor ${ancestor} ${descendant}`, {
147
- cwd: workspaceRoot,
148
- encoding: "utf8",
149
- stdio: ["pipe", "pipe", "pipe"],
150
- });
151
- return true;
152
- }
153
- catch {
154
- return false;
155
- }
156
- }
157
- export function gitChangedFilesBetween(workspaceRoot, base, head) {
158
- try {
159
- const output = execSync(`git diff --name-only ${base}..${head}`, {
160
- cwd: workspaceRoot,
161
- encoding: "utf8",
162
- stdio: ["pipe", "pipe", "pipe"],
163
- }).trim();
164
- return output.length === 0 ? [] : output.split("\n");
165
- }
166
- catch {
167
- return [];
168
- }
169
- }
170
- // ---------------------------------------------------------------------------
171
- // Path matching (cross-platform)
172
- // ---------------------------------------------------------------------------
173
- /**
174
- * Normalize a path to forward slashes for cross-platform comparison.
175
- */
176
- export function normalizePath(p) {
177
- return p.replace(/\\/g, "/");
178
- }
179
- /**
180
- * Resolve ".." and "." segments in a path without touching the filesystem.
181
- * Returns the lexical normalization (e.g. "a/b/../c" → "a/c").
182
- */
183
- function resolveLexical(p) {
184
- const segments = p.split("/");
185
- const result = [];
186
- for (const seg of segments) {
187
- if (seg === "..") {
188
- result.pop();
189
- }
190
- else if (seg !== "." && seg !== "") {
191
- result.push(seg);
192
- }
193
- }
194
- return result.join("/");
195
- }
196
- /**
197
- * Check if a path matches a glob pattern. Supports:
198
- * - `**` for recursive directory matching
199
- * - `*` for single-level wildcard
200
- * - exact prefix matching with trailing `/**`
201
- */
202
- export function pathMatchesGlob(filePath, pattern) {
203
- const normalized = resolveLexical(normalizePath(filePath));
204
- const glob = resolveLexical(normalizePath(pattern));
205
- // Exact match
206
- if (normalized === glob)
207
- return true;
208
- // /** suffix — prefix match
209
- if (glob.endsWith("/**")) {
210
- const prefix = glob.slice(0, -3);
211
- return normalized === prefix || normalized.startsWith(prefix + "/");
212
- }
213
- // * wildcard matching (simplified)
214
- const regexStr = glob
215
- .replace(/[.+^${}()|[\]\\]/g, "\\$&")
216
- .replace(/\*\*/g, "<<<GLOBSTAR>>>")
217
- .replace(/\*/g, "[^/]*")
218
- .replace(/<<<GLOBSTAR>>>/g, ".*");
219
- const regex = new RegExp(`^${regexStr}$`);
220
- return regex.test(normalized);
221
- }
222
- /**
223
- * Check if a file path is within the allowed files list.
224
- */
225
- export function isPathAllowed(filePath, allowedFiles) {
226
- const normalized = resolveLexical(normalizePath(filePath));
227
- return allowedFiles.some((pattern) => pathMatchesGlob(normalized, pattern));
228
- }
229
- /**
230
- * Check if a file path matches any forbidden pattern.
231
- */
232
- export function isPathForbidden(filePath, forbiddenFiles) {
233
- const normalized = resolveLexical(normalizePath(filePath));
234
- return forbiddenFiles.some((pattern) => pathMatchesGlob(normalized, pattern));
235
- }
236
- //# sourceMappingURL=discovery.js.map