@warpgogol/forge 2.19.0 → 2.21.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 (737) hide show
  1. package/README.md +13 -1
  2. package/README.uk.md +7 -1
  3. package/os/adr/adr.module.ts +2 -0
  4. package/os/compass/compass.module.ts +6 -0
  5. package/os/core/core.module.ts +17 -1
  6. package/os/naming/naming.module.ts +2 -0
  7. package/os/notes/notes.module.ts +4 -0
  8. package/os/plugin/plugin.module.ts +2 -0
  9. package/os/program/program.module.ts +2 -0
  10. package/os/rfc/acceptance.ts +1 -1
  11. package/os/rfc/rfc.module.ts +10 -0
  12. package/os/session/session.module.ts +2 -0
  13. package/os/spec/live-spec-merge.test.ts +76 -0
  14. package/os/spec/live-spec-merge.ts +14 -49
  15. package/os/spec/spec.module.ts +4 -0
  16. package/os/werkstatt/werkstatt.module.ts +2 -0
  17. package/os/workflow/workflow.module.ts +2 -0
  18. package/package.json +1 -1
  19. package/profiles/godot-csharp.yaml +4 -4
  20. package/profiles/typescript-turborepo.yaml +222 -0
  21. package/skills/meta/forge-bootstrap/SKILL.md +6 -6
  22. package/src/migration-adapters/git-utils.ts +4 -3
  23. package/src/onboarding/create.ts +19 -0
  24. package/src/onboarding/doctor.ts +37 -0
  25. package/src/tests/migration-adapters.test.ts +21 -0
  26. package/src/tests/profile-schema.test.ts +1 -1
  27. package/src/types/werkstatt-engine-shims.d.ts +99 -12
  28. package/src/types/werkstatt-shared-shims.d.ts +71 -0
  29. package/src/types.ts +4 -0
  30. package/dist/bin/cli.d.ts +0 -3
  31. package/dist/bin/cli.d.ts.map +0 -1
  32. package/dist/bin/cli.js +0 -291
  33. package/dist/bin/cli.js.map +0 -1
  34. package/dist/os/adr/adr.module.d.ts +0 -3
  35. package/dist/os/adr/adr.module.d.ts.map +0 -1
  36. package/dist/os/adr/adr.module.js +0 -146
  37. package/dist/os/adr/adr.module.js.map +0 -1
  38. package/dist/os/adr/frontmatter-io.d.ts +0 -12
  39. package/dist/os/adr/frontmatter-io.d.ts.map +0 -1
  40. package/dist/os/adr/frontmatter-io.js +0 -67
  41. package/dist/os/adr/frontmatter-io.js.map +0 -1
  42. package/dist/os/adr/handlers/archive.d.ts +0 -24
  43. package/dist/os/adr/handlers/archive.d.ts.map +0 -1
  44. package/dist/os/adr/handlers/archive.js +0 -194
  45. package/dist/os/adr/handlers/archive.js.map +0 -1
  46. package/dist/os/adr/handlers/implement-stamp.d.ts +0 -4
  47. package/dist/os/adr/handlers/implement-stamp.d.ts.map +0 -1
  48. package/dist/os/adr/handlers/implement-stamp.js +0 -264
  49. package/dist/os/adr/handlers/implement-stamp.js.map +0 -1
  50. package/dist/os/adr/handlers/list-create.d.ts +0 -5
  51. package/dist/os/adr/handlers/list-create.d.ts.map +0 -1
  52. package/dist/os/adr/handlers/list-create.js +0 -201
  53. package/dist/os/adr/handlers/list-create.js.map +0 -1
  54. package/dist/os/adr/handlers/validate.d.ts +0 -4
  55. package/dist/os/adr/handlers/validate.d.ts.map +0 -1
  56. package/dist/os/adr/handlers/validate.js +0 -279
  57. package/dist/os/adr/handlers/validate.js.map +0 -1
  58. package/dist/os/adr/index.d.ts +0 -8
  59. package/dist/os/adr/index.d.ts.map +0 -1
  60. package/dist/os/adr/index.js +0 -18
  61. package/dist/os/adr/index.js.map +0 -1
  62. package/dist/os/adr/types.d.ts +0 -76
  63. package/dist/os/adr/types.d.ts.map +0 -1
  64. package/dist/os/adr/types.js +0 -56
  65. package/dist/os/adr/types.js.map +0 -1
  66. package/dist/os/audit/audit.module.d.ts +0 -3
  67. package/dist/os/audit/audit.module.d.ts.map +0 -1
  68. package/dist/os/audit/audit.module.js +0 -45
  69. package/dist/os/audit/audit.module.js.map +0 -1
  70. package/dist/os/audit/frontmatter-io.d.ts +0 -12
  71. package/dist/os/audit/frontmatter-io.d.ts.map +0 -1
  72. package/dist/os/audit/frontmatter-io.js +0 -71
  73. package/dist/os/audit/frontmatter-io.js.map +0 -1
  74. package/dist/os/audit/handlers/archive.d.ts +0 -4
  75. package/dist/os/audit/handlers/archive.d.ts.map +0 -1
  76. package/dist/os/audit/handlers/archive.js +0 -207
  77. package/dist/os/audit/handlers/archive.js.map +0 -1
  78. package/dist/os/audit/index.d.ts +0 -6
  79. package/dist/os/audit/index.d.ts.map +0 -1
  80. package/dist/os/audit/index.js +0 -16
  81. package/dist/os/audit/index.js.map +0 -1
  82. package/dist/os/audit/types.d.ts +0 -12
  83. package/dist/os/audit/types.d.ts.map +0 -1
  84. package/dist/os/audit/types.js +0 -17
  85. package/dist/os/audit/types.js.map +0 -1
  86. package/dist/os/compass/compass.module.d.ts +0 -3
  87. package/dist/os/compass/compass.module.d.ts.map +0 -1
  88. package/dist/os/compass/compass.module.js +0 -183
  89. package/dist/os/compass/compass.module.js.map +0 -1
  90. package/dist/os/compass/handlers/compass-audit-handler.d.ts +0 -36
  91. package/dist/os/compass/handlers/compass-audit-handler.d.ts.map +0 -1
  92. package/dist/os/compass/handlers/compass-audit-handler.js +0 -260
  93. package/dist/os/compass/handlers/compass-audit-handler.js.map +0 -1
  94. package/dist/os/compass/handlers/compass-change-summary-handler.d.ts +0 -19
  95. package/dist/os/compass/handlers/compass-change-summary-handler.d.ts.map +0 -1
  96. package/dist/os/compass/handlers/compass-change-summary-handler.js +0 -222
  97. package/dist/os/compass/handlers/compass-change-summary-handler.js.map +0 -1
  98. package/dist/os/compass/handlers/compass-inventory-handler.d.ts +0 -28
  99. package/dist/os/compass/handlers/compass-inventory-handler.d.ts.map +0 -1
  100. package/dist/os/compass/handlers/compass-inventory-handler.js +0 -377
  101. package/dist/os/compass/handlers/compass-inventory-handler.js.map +0 -1
  102. package/dist/os/compass/handlers/compass-inventory.d.ts +0 -30
  103. package/dist/os/compass/handlers/compass-inventory.d.ts.map +0 -1
  104. package/dist/os/compass/handlers/compass-inventory.js +0 -462
  105. package/dist/os/compass/handlers/compass-inventory.js.map +0 -1
  106. package/dist/os/compass/handlers/git-revision.d.ts +0 -8
  107. package/dist/os/compass/handlers/git-revision.d.ts.map +0 -1
  108. package/dist/os/compass/handlers/git-revision.js +0 -99
  109. package/dist/os/compass/handlers/git-revision.js.map +0 -1
  110. package/dist/os/compass/handlers/resolve-scan-root.d.ts +0 -3
  111. package/dist/os/compass/handlers/resolve-scan-root.d.ts.map +0 -1
  112. package/dist/os/compass/handlers/resolve-scan-root.js +0 -57
  113. package/dist/os/compass/handlers/resolve-scan-root.js.map +0 -1
  114. package/dist/os/compass/index.d.ts +0 -8
  115. package/dist/os/compass/index.d.ts.map +0 -1
  116. package/dist/os/compass/index.js +0 -19
  117. package/dist/os/compass/index.js.map +0 -1
  118. package/dist/os/core/core.module.d.ts +0 -3
  119. package/dist/os/core/core.module.d.ts.map +0 -1
  120. package/dist/os/core/core.module.js +0 -836
  121. package/dist/os/core/core.module.js.map +0 -1
  122. package/dist/os/core/handlers/assets-check.d.ts +0 -19
  123. package/dist/os/core/handlers/assets-check.d.ts.map +0 -1
  124. package/dist/os/core/handlers/assets-check.js +0 -89
  125. package/dist/os/core/handlers/assets-check.js.map +0 -1
  126. package/dist/os/core/handlers/assets-helpers.d.ts +0 -28
  127. package/dist/os/core/handlers/assets-helpers.d.ts.map +0 -1
  128. package/dist/os/core/handlers/assets-helpers.js +0 -128
  129. package/dist/os/core/handlers/assets-helpers.js.map +0 -1
  130. package/dist/os/core/handlers/assets-list.d.ts +0 -9
  131. package/dist/os/core/handlers/assets-list.d.ts.map +0 -1
  132. package/dist/os/core/handlers/assets-list.js +0 -72
  133. package/dist/os/core/handlers/assets-list.js.map +0 -1
  134. package/dist/os/core/handlers/build.d.ts +0 -16
  135. package/dist/os/core/handlers/build.d.ts.map +0 -1
  136. package/dist/os/core/handlers/build.js +0 -123
  137. package/dist/os/core/handlers/build.js.map +0 -1
  138. package/dist/os/core/handlers/determinism-check.d.ts +0 -20
  139. package/dist/os/core/handlers/determinism-check.d.ts.map +0 -1
  140. package/dist/os/core/handlers/determinism-check.js +0 -289
  141. package/dist/os/core/handlers/determinism-check.js.map +0 -1
  142. package/dist/os/core/handlers/dev.d.ts +0 -10
  143. package/dist/os/core/handlers/dev.d.ts.map +0 -1
  144. package/dist/os/core/handlers/dev.js +0 -102
  145. package/dist/os/core/handlers/dev.js.map +0 -1
  146. package/dist/os/core/handlers/forge-autonomy-validate.d.ts +0 -18
  147. package/dist/os/core/handlers/forge-autonomy-validate.d.ts.map +0 -1
  148. package/dist/os/core/handlers/forge-autonomy-validate.js +0 -115
  149. package/dist/os/core/handlers/forge-autonomy-validate.js.map +0 -1
  150. package/dist/os/core/handlers/knowledge-compact.d.ts +0 -4
  151. package/dist/os/core/handlers/knowledge-compact.d.ts.map +0 -1
  152. package/dist/os/core/handlers/knowledge-compact.js +0 -204
  153. package/dist/os/core/handlers/knowledge-compact.js.map +0 -1
  154. package/dist/os/core/handlers/package-health.d.ts +0 -17
  155. package/dist/os/core/handlers/package-health.d.ts.map +0 -1
  156. package/dist/os/core/handlers/package-health.js +0 -196
  157. package/dist/os/core/handlers/package-health.js.map +0 -1
  158. package/dist/os/core/handlers/pinned-check.d.ts +0 -49
  159. package/dist/os/core/handlers/pinned-check.d.ts.map +0 -1
  160. package/dist/os/core/handlers/pinned-check.js +0 -159
  161. package/dist/os/core/handlers/pinned-check.js.map +0 -1
  162. package/dist/os/core/handlers/pinned-init.d.ts +0 -19
  163. package/dist/os/core/handlers/pinned-init.d.ts.map +0 -1
  164. package/dist/os/core/handlers/pinned-init.js +0 -283
  165. package/dist/os/core/handlers/pinned-init.js.map +0 -1
  166. package/dist/os/core/handlers/pinned-types.d.ts +0 -29
  167. package/dist/os/core/handlers/pinned-types.d.ts.map +0 -1
  168. package/dist/os/core/handlers/pinned-types.js +0 -16
  169. package/dist/os/core/handlers/pinned-types.js.map +0 -1
  170. package/dist/os/core/handlers/pinned-validate.d.ts +0 -4
  171. package/dist/os/core/handlers/pinned-validate.d.ts.map +0 -1
  172. package/dist/os/core/handlers/pinned-validate.js +0 -248
  173. package/dist/os/core/handlers/pinned-validate.js.map +0 -1
  174. package/dist/os/core/handlers/profile-resolve.d.ts +0 -13
  175. package/dist/os/core/handlers/profile-resolve.d.ts.map +0 -1
  176. package/dist/os/core/handlers/profile-resolve.js +0 -65
  177. package/dist/os/core/handlers/profile-resolve.js.map +0 -1
  178. package/dist/os/core/handlers/release-prepare.d.ts +0 -25
  179. package/dist/os/core/handlers/release-prepare.d.ts.map +0 -1
  180. package/dist/os/core/handlers/release-prepare.js +0 -228
  181. package/dist/os/core/handlers/release-prepare.js.map +0 -1
  182. package/dist/os/core/handlers/release-publish.d.ts +0 -13
  183. package/dist/os/core/handlers/release-publish.d.ts.map +0 -1
  184. package/dist/os/core/handlers/release-publish.js +0 -173
  185. package/dist/os/core/handlers/release-publish.js.map +0 -1
  186. package/dist/os/core/handlers/validate.d.ts +0 -26
  187. package/dist/os/core/handlers/validate.d.ts.map +0 -1
  188. package/dist/os/core/handlers/validate.js +0 -208
  189. package/dist/os/core/handlers/validate.js.map +0 -1
  190. package/dist/os/core/index.d.ts +0 -2
  191. package/dist/os/core/index.d.ts.map +0 -1
  192. package/dist/os/core/index.js +0 -13
  193. package/dist/os/core/index.js.map +0 -1
  194. package/dist/os/exploration/exploration.module.d.ts +0 -3
  195. package/dist/os/exploration/exploration.module.d.ts.map +0 -1
  196. package/dist/os/exploration/exploration.module.js +0 -83
  197. package/dist/os/exploration/exploration.module.js.map +0 -1
  198. package/dist/os/exploration/frontmatter-io.d.ts +0 -13
  199. package/dist/os/exploration/frontmatter-io.d.ts.map +0 -1
  200. package/dist/os/exploration/frontmatter-io.js +0 -61
  201. package/dist/os/exploration/frontmatter-io.js.map +0 -1
  202. package/dist/os/exploration/handlers/archive.d.ts +0 -4
  203. package/dist/os/exploration/handlers/archive.d.ts.map +0 -1
  204. package/dist/os/exploration/handlers/archive.js +0 -141
  205. package/dist/os/exploration/handlers/archive.js.map +0 -1
  206. package/dist/os/exploration/handlers/list.d.ts +0 -4
  207. package/dist/os/exploration/handlers/list.d.ts.map +0 -1
  208. package/dist/os/exploration/handlers/list.js +0 -64
  209. package/dist/os/exploration/handlers/list.js.map +0 -1
  210. package/dist/os/exploration/handlers/show.d.ts +0 -4
  211. package/dist/os/exploration/handlers/show.d.ts.map +0 -1
  212. package/dist/os/exploration/handlers/show.js +0 -97
  213. package/dist/os/exploration/handlers/show.js.map +0 -1
  214. package/dist/os/exploration/index.d.ts +0 -7
  215. package/dist/os/exploration/index.d.ts.map +0 -1
  216. package/dist/os/exploration/index.js +0 -17
  217. package/dist/os/exploration/index.js.map +0 -1
  218. package/dist/os/exploration/types.d.ts +0 -38
  219. package/dist/os/exploration/types.d.ts.map +0 -1
  220. package/dist/os/exploration/types.js +0 -23
  221. package/dist/os/exploration/types.js.map +0 -1
  222. package/dist/os/mission/handlers/archive.d.ts +0 -4
  223. package/dist/os/mission/handlers/archive.d.ts.map +0 -1
  224. package/dist/os/mission/handlers/archive.js +0 -356
  225. package/dist/os/mission/handlers/archive.js.map +0 -1
  226. package/dist/os/mission/index.d.ts +0 -2
  227. package/dist/os/mission/index.d.ts.map +0 -1
  228. package/dist/os/mission/index.js +0 -2
  229. package/dist/os/mission/index.js.map +0 -1
  230. package/dist/os/mission/mission.module.d.ts +0 -3
  231. package/dist/os/mission/mission.module.d.ts.map +0 -1
  232. package/dist/os/mission/mission.module.js +0 -45
  233. package/dist/os/mission/mission.module.js.map +0 -1
  234. package/dist/os/mission/types.d.ts +0 -23
  235. package/dist/os/mission/types.d.ts.map +0 -1
  236. package/dist/os/mission/types.js +0 -18
  237. package/dist/os/mission/types.js.map +0 -1
  238. package/dist/os/naming/index.d.ts +0 -3
  239. package/dist/os/naming/index.d.ts.map +0 -1
  240. package/dist/os/naming/index.js +0 -14
  241. package/dist/os/naming/index.js.map +0 -1
  242. package/dist/os/naming/naming-convention.d.ts +0 -25
  243. package/dist/os/naming/naming-convention.d.ts.map +0 -1
  244. package/dist/os/naming/naming-convention.js +0 -324
  245. package/dist/os/naming/naming-convention.js.map +0 -1
  246. package/dist/os/naming/naming.module.d.ts +0 -3
  247. package/dist/os/naming/naming.module.d.ts.map +0 -1
  248. package/dist/os/naming/naming.module.js +0 -34
  249. package/dist/os/naming/naming.module.js.map +0 -1
  250. package/dist/os/notes/index.d.ts +0 -2
  251. package/dist/os/notes/index.d.ts.map +0 -1
  252. package/dist/os/notes/index.js +0 -10
  253. package/dist/os/notes/index.js.map +0 -1
  254. package/dist/os/notes/notes.module.d.ts +0 -3
  255. package/dist/os/notes/notes.module.d.ts.map +0 -1
  256. package/dist/os/notes/notes.module.js +0 -84
  257. package/dist/os/notes/notes.module.js.map +0 -1
  258. package/dist/os/plan/frontmatter-io.d.ts +0 -12
  259. package/dist/os/plan/frontmatter-io.d.ts.map +0 -1
  260. package/dist/os/plan/frontmatter-io.js +0 -69
  261. package/dist/os/plan/frontmatter-io.js.map +0 -1
  262. package/dist/os/plan/handlers/archive.d.ts +0 -4
  263. package/dist/os/plan/handlers/archive.d.ts.map +0 -1
  264. package/dist/os/plan/handlers/archive.js +0 -206
  265. package/dist/os/plan/handlers/archive.js.map +0 -1
  266. package/dist/os/plan/index.d.ts +0 -6
  267. package/dist/os/plan/index.d.ts.map +0 -1
  268. package/dist/os/plan/index.js +0 -16
  269. package/dist/os/plan/index.js.map +0 -1
  270. package/dist/os/plan/plan.module.d.ts +0 -3
  271. package/dist/os/plan/plan.module.d.ts.map +0 -1
  272. package/dist/os/plan/plan.module.js +0 -45
  273. package/dist/os/plan/plan.module.js.map +0 -1
  274. package/dist/os/plan/types.d.ts +0 -12
  275. package/dist/os/plan/types.d.ts.map +0 -1
  276. package/dist/os/plan/types.js +0 -17
  277. package/dist/os/plan/types.js.map +0 -1
  278. package/dist/os/plugin/plugin.module.d.ts +0 -25
  279. package/dist/os/plugin/plugin.module.d.ts.map +0 -1
  280. package/dist/os/plugin/plugin.module.js +0 -208
  281. package/dist/os/plugin/plugin.module.js.map +0 -1
  282. package/dist/os/program/discovery.d.ts +0 -61
  283. package/dist/os/program/discovery.d.ts.map +0 -1
  284. package/dist/os/program/discovery.js +0 -236
  285. package/dist/os/program/discovery.js.map +0 -1
  286. package/dist/os/program/handlers/complete.d.ts +0 -12
  287. package/dist/os/program/handlers/complete.d.ts.map +0 -1
  288. package/dist/os/program/handlers/complete.js +0 -362
  289. package/dist/os/program/handlers/complete.js.map +0 -1
  290. package/dist/os/program/handlers/lease.d.ts +0 -13
  291. package/dist/os/program/handlers/lease.d.ts.map +0 -1
  292. package/dist/os/program/handlers/lease.js +0 -328
  293. package/dist/os/program/handlers/lease.js.map +0 -1
  294. package/dist/os/program/handlers/seal.d.ts +0 -12
  295. package/dist/os/program/handlers/seal.d.ts.map +0 -1
  296. package/dist/os/program/handlers/seal.js +0 -277
  297. package/dist/os/program/handlers/seal.js.map +0 -1
  298. package/dist/os/program/handlers/validate.d.ts +0 -14
  299. package/dist/os/program/handlers/validate.d.ts.map +0 -1
  300. package/dist/os/program/handlers/validate.js +0 -170
  301. package/dist/os/program/handlers/validate.js.map +0 -1
  302. package/dist/os/program/lease.d.ts +0 -39
  303. package/dist/os/program/lease.d.ts.map +0 -1
  304. package/dist/os/program/lease.js +0 -129
  305. package/dist/os/program/lease.js.map +0 -1
  306. package/dist/os/program/program.module.d.ts +0 -3
  307. package/dist/os/program/program.module.d.ts.map +0 -1
  308. package/dist/os/program/program.module.js +0 -202
  309. package/dist/os/program/program.module.js.map +0 -1
  310. package/dist/os/program/schemas.d.ts +0 -225
  311. package/dist/os/program/schemas.d.ts.map +0 -1
  312. package/dist/os/program/schemas.js +0 -174
  313. package/dist/os/program/schemas.js.map +0 -1
  314. package/dist/os/program/state.d.ts +0 -38
  315. package/dist/os/program/state.d.ts.map +0 -1
  316. package/dist/os/program/state.js +0 -189
  317. package/dist/os/program/state.js.map +0 -1
  318. package/dist/os/rfc/acceptance.d.ts +0 -15
  319. package/dist/os/rfc/acceptance.d.ts.map +0 -1
  320. package/dist/os/rfc/acceptance.js +0 -318
  321. package/dist/os/rfc/acceptance.js.map +0 -1
  322. package/dist/os/rfc/decision-log.d.ts +0 -6
  323. package/dist/os/rfc/decision-log.d.ts.map +0 -1
  324. package/dist/os/rfc/decision-log.js +0 -269
  325. package/dist/os/rfc/decision-log.js.map +0 -1
  326. package/dist/os/rfc/dna-trace.d.ts +0 -27
  327. package/dist/os/rfc/dna-trace.d.ts.map +0 -1
  328. package/dist/os/rfc/dna-trace.js +0 -214
  329. package/dist/os/rfc/dna-trace.js.map +0 -1
  330. package/dist/os/rfc/frontmatter-io.d.ts +0 -18
  331. package/dist/os/rfc/frontmatter-io.d.ts.map +0 -1
  332. package/dist/os/rfc/frontmatter-io.js +0 -110
  333. package/dist/os/rfc/frontmatter-io.js.map +0 -1
  334. package/dist/os/rfc/handlers/archive.d.ts +0 -25
  335. package/dist/os/rfc/handlers/archive.d.ts.map +0 -1
  336. package/dist/os/rfc/handlers/archive.js +0 -247
  337. package/dist/os/rfc/handlers/archive.js.map +0 -1
  338. package/dist/os/rfc/handlers/check.d.ts +0 -4
  339. package/dist/os/rfc/handlers/check.d.ts.map +0 -1
  340. package/dist/os/rfc/handlers/check.js +0 -203
  341. package/dist/os/rfc/handlers/check.js.map +0 -1
  342. package/dist/os/rfc/handlers/implement-stamp.d.ts +0 -4
  343. package/dist/os/rfc/handlers/implement-stamp.d.ts.map +0 -1
  344. package/dist/os/rfc/handlers/implement-stamp.js +0 -426
  345. package/dist/os/rfc/handlers/implement-stamp.js.map +0 -1
  346. package/dist/os/rfc/handlers/index-graph.d.ts +0 -13
  347. package/dist/os/rfc/handlers/index-graph.d.ts.map +0 -1
  348. package/dist/os/rfc/handlers/index-graph.js +0 -192
  349. package/dist/os/rfc/handlers/index-graph.js.map +0 -1
  350. package/dist/os/rfc/handlers/lifecycle.d.ts +0 -13
  351. package/dist/os/rfc/handlers/lifecycle.d.ts.map +0 -1
  352. package/dist/os/rfc/handlers/lifecycle.js +0 -155
  353. package/dist/os/rfc/handlers/lifecycle.js.map +0 -1
  354. package/dist/os/rfc/handlers/list-create.d.ts +0 -6
  355. package/dist/os/rfc/handlers/list-create.d.ts.map +0 -1
  356. package/dist/os/rfc/handlers/list-create.js +0 -260
  357. package/dist/os/rfc/handlers/list-create.js.map +0 -1
  358. package/dist/os/rfc/handlers/pipeline-status.d.ts +0 -26
  359. package/dist/os/rfc/handlers/pipeline-status.d.ts.map +0 -1
  360. package/dist/os/rfc/handlers/pipeline-status.js +0 -124
  361. package/dist/os/rfc/handlers/pipeline-status.js.map +0 -1
  362. package/dist/os/rfc/handlers/shared.d.ts +0 -22
  363. package/dist/os/rfc/handlers/shared.d.ts.map +0 -1
  364. package/dist/os/rfc/handlers/shared.js +0 -105
  365. package/dist/os/rfc/handlers/shared.js.map +0 -1
  366. package/dist/os/rfc/handlers/supersede-propose.d.ts +0 -4
  367. package/dist/os/rfc/handlers/supersede-propose.d.ts.map +0 -1
  368. package/dist/os/rfc/handlers/supersede-propose.js +0 -203
  369. package/dist/os/rfc/handlers/supersede-propose.js.map +0 -1
  370. package/dist/os/rfc/handlers/validate-rules.d.ts +0 -32
  371. package/dist/os/rfc/handlers/validate-rules.d.ts.map +0 -1
  372. package/dist/os/rfc/handlers/validate-rules.js +0 -590
  373. package/dist/os/rfc/handlers/validate-rules.js.map +0 -1
  374. package/dist/os/rfc/handlers/validate.d.ts +0 -4
  375. package/dist/os/rfc/handlers/validate.d.ts.map +0 -1
  376. package/dist/os/rfc/handlers/validate.js +0 -122
  377. package/dist/os/rfc/handlers/validate.js.map +0 -1
  378. package/dist/os/rfc/handlers.d.ts +0 -7
  379. package/dist/os/rfc/handlers.d.ts.map +0 -1
  380. package/dist/os/rfc/handlers.js +0 -19
  381. package/dist/os/rfc/handlers.js.map +0 -1
  382. package/dist/os/rfc/index.d.ts +0 -18
  383. package/dist/os/rfc/index.d.ts.map +0 -1
  384. package/dist/os/rfc/index.js +0 -24
  385. package/dist/os/rfc/index.js.map +0 -1
  386. package/dist/os/rfc/rfc.module.d.ts +0 -3
  387. package/dist/os/rfc/rfc.module.d.ts.map +0 -1
  388. package/dist/os/rfc/rfc.module.js +0 -367
  389. package/dist/os/rfc/rfc.module.js.map +0 -1
  390. package/dist/os/rfc/types.d.ts +0 -483
  391. package/dist/os/rfc/types.d.ts.map +0 -1
  392. package/dist/os/rfc/types.js +0 -100
  393. package/dist/os/rfc/types.js.map +0 -1
  394. package/dist/os/rfc/verification-evidence.d.ts +0 -8
  395. package/dist/os/rfc/verification-evidence.d.ts.map +0 -1
  396. package/dist/os/rfc/verification-evidence.js +0 -184
  397. package/dist/os/rfc/verification-evidence.js.map +0 -1
  398. package/dist/os/session/atif-parser.d.ts +0 -29
  399. package/dist/os/session/atif-parser.d.ts.map +0 -1
  400. package/dist/os/session/atif-parser.js +0 -140
  401. package/dist/os/session/atif-parser.js.map +0 -1
  402. package/dist/os/session/frontmatter-io.d.ts +0 -31
  403. package/dist/os/session/frontmatter-io.d.ts.map +0 -1
  404. package/dist/os/session/frontmatter-io.js +0 -146
  405. package/dist/os/session/frontmatter-io.js.map +0 -1
  406. package/dist/os/session/handlers/archive.d.ts +0 -4
  407. package/dist/os/session/handlers/archive.d.ts.map +0 -1
  408. package/dist/os/session/handlers/archive.js +0 -241
  409. package/dist/os/session/handlers/archive.js.map +0 -1
  410. package/dist/os/session/handlers/list.d.ts +0 -4
  411. package/dist/os/session/handlers/list.d.ts.map +0 -1
  412. package/dist/os/session/handlers/list.js +0 -147
  413. package/dist/os/session/handlers/list.js.map +0 -1
  414. package/dist/os/session/handlers/save.d.ts +0 -6
  415. package/dist/os/session/handlers/save.d.ts.map +0 -1
  416. package/dist/os/session/handlers/save.js +0 -297
  417. package/dist/os/session/handlers/save.js.map +0 -1
  418. package/dist/os/session/handlers/validate.d.ts +0 -4
  419. package/dist/os/session/handlers/validate.d.ts.map +0 -1
  420. package/dist/os/session/handlers/validate.js +0 -224
  421. package/dist/os/session/handlers/validate.js.map +0 -1
  422. package/dist/os/session/index.d.ts +0 -9
  423. package/dist/os/session/index.d.ts.map +0 -1
  424. package/dist/os/session/index.js +0 -20
  425. package/dist/os/session/index.js.map +0 -1
  426. package/dist/os/session/session.module.d.ts +0 -3
  427. package/dist/os/session/session.module.d.ts.map +0 -1
  428. package/dist/os/session/session.module.js +0 -116
  429. package/dist/os/session/session.module.js.map +0 -1
  430. package/dist/os/session/types.d.ts +0 -131
  431. package/dist/os/session/types.d.ts.map +0 -1
  432. package/dist/os/session/types.js +0 -59
  433. package/dist/os/session/types.js.map +0 -1
  434. package/dist/os/spec/live-spec-list.d.ts +0 -4
  435. package/dist/os/spec/live-spec-list.d.ts.map +0 -1
  436. package/dist/os/spec/live-spec-list.js +0 -72
  437. package/dist/os/spec/live-spec-list.js.map +0 -1
  438. package/dist/os/spec/live-spec-merge.d.ts +0 -4
  439. package/dist/os/spec/live-spec-merge.d.ts.map +0 -1
  440. package/dist/os/spec/live-spec-merge.js +0 -345
  441. package/dist/os/spec/live-spec-merge.js.map +0 -1
  442. package/dist/os/spec/live-spec-show.d.ts +0 -4
  443. package/dist/os/spec/live-spec-show.d.ts.map +0 -1
  444. package/dist/os/spec/live-spec-show.js +0 -105
  445. package/dist/os/spec/live-spec-show.js.map +0 -1
  446. package/dist/os/spec/live-spec-types.d.ts +0 -71
  447. package/dist/os/spec/live-spec-types.d.ts.map +0 -1
  448. package/dist/os/spec/live-spec-types.js +0 -14
  449. package/dist/os/spec/live-spec-types.js.map +0 -1
  450. package/dist/os/spec/live-spec-validate.d.ts +0 -4
  451. package/dist/os/spec/live-spec-validate.d.ts.map +0 -1
  452. package/dist/os/spec/live-spec-validate.js +0 -140
  453. package/dist/os/spec/live-spec-validate.js.map +0 -1
  454. package/dist/os/spec/spec-materialize.d.ts +0 -21
  455. package/dist/os/spec/spec-materialize.d.ts.map +0 -1
  456. package/dist/os/spec/spec-materialize.js +0 -342
  457. package/dist/os/spec/spec-materialize.js.map +0 -1
  458. package/dist/os/spec/spec-schema.d.ts +0 -126
  459. package/dist/os/spec/spec-schema.d.ts.map +0 -1
  460. package/dist/os/spec/spec-schema.js +0 -118
  461. package/dist/os/spec/spec-schema.js.map +0 -1
  462. package/dist/os/spec/spec-status.d.ts +0 -33
  463. package/dist/os/spec/spec-status.d.ts.map +0 -1
  464. package/dist/os/spec/spec-status.js +0 -228
  465. package/dist/os/spec/spec-status.js.map +0 -1
  466. package/dist/os/spec/spec-validate.d.ts +0 -4
  467. package/dist/os/spec/spec-validate.d.ts.map +0 -1
  468. package/dist/os/spec/spec-validate.js +0 -435
  469. package/dist/os/spec/spec-validate.js.map +0 -1
  470. package/dist/os/spec/spec.module.d.ts +0 -3
  471. package/dist/os/spec/spec.module.d.ts.map +0 -1
  472. package/dist/os/spec/spec.module.js +0 -120
  473. package/dist/os/spec/spec.module.js.map +0 -1
  474. package/dist/os/werkstatt/handlers/lock.d.ts +0 -10
  475. package/dist/os/werkstatt/handlers/lock.d.ts.map +0 -1
  476. package/dist/os/werkstatt/handlers/lock.js +0 -153
  477. package/dist/os/werkstatt/handlers/lock.js.map +0 -1
  478. package/dist/os/werkstatt/handlers/schema.d.ts +0 -33
  479. package/dist/os/werkstatt/handlers/schema.d.ts.map +0 -1
  480. package/dist/os/werkstatt/handlers/schema.js +0 -42
  481. package/dist/os/werkstatt/handlers/schema.js.map +0 -1
  482. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.d.ts +0 -15
  483. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.d.ts.map +0 -1
  484. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.js +0 -152
  485. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.js.map +0 -1
  486. package/dist/os/werkstatt/handlers/werkstatt-lock-status.d.ts +0 -18
  487. package/dist/os/werkstatt/handlers/werkstatt-lock-status.d.ts.map +0 -1
  488. package/dist/os/werkstatt/handlers/werkstatt-lock-status.js +0 -51
  489. package/dist/os/werkstatt/handlers/werkstatt-lock-status.js.map +0 -1
  490. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.d.ts +0 -11
  491. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.d.ts.map +0 -1
  492. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.js +0 -79
  493. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.js.map +0 -1
  494. package/dist/os/werkstatt/handlers/workspace-deps.d.ts +0 -12
  495. package/dist/os/werkstatt/handlers/workspace-deps.d.ts.map +0 -1
  496. package/dist/os/werkstatt/handlers/workspace-deps.js +0 -42
  497. package/dist/os/werkstatt/handlers/workspace-deps.js.map +0 -1
  498. package/dist/os/werkstatt/index.d.ts +0 -7
  499. package/dist/os/werkstatt/index.d.ts.map +0 -1
  500. package/dist/os/werkstatt/index.js +0 -18
  501. package/dist/os/werkstatt/index.js.map +0 -1
  502. package/dist/os/werkstatt/werkstatt.module.d.ts +0 -3
  503. package/dist/os/werkstatt/werkstatt.module.d.ts.map +0 -1
  504. package/dist/os/werkstatt/werkstatt.module.js +0 -59
  505. package/dist/os/werkstatt/werkstatt.module.js.map +0 -1
  506. package/dist/os/workflow/handlers.d.ts +0 -12
  507. package/dist/os/workflow/handlers.d.ts.map +0 -1
  508. package/dist/os/workflow/handlers.js +0 -262
  509. package/dist/os/workflow/handlers.js.map +0 -1
  510. package/dist/os/workflow/index.d.ts +0 -4
  511. package/dist/os/workflow/index.d.ts.map +0 -1
  512. package/dist/os/workflow/index.js +0 -18
  513. package/dist/os/workflow/index.js.map +0 -1
  514. package/dist/os/workflow/types.d.ts +0 -69
  515. package/dist/os/workflow/types.d.ts.map +0 -1
  516. package/dist/os/workflow/types.js +0 -23
  517. package/dist/os/workflow/types.js.map +0 -1
  518. package/dist/os/workflow/workflow.module.d.ts +0 -3
  519. package/dist/os/workflow/workflow.module.d.ts.map +0 -1
  520. package/dist/os/workflow/workflow.module.js +0 -49
  521. package/dist/os/workflow/workflow.module.js.map +0 -1
  522. package/dist/src/cli-output.d.ts +0 -5
  523. package/dist/src/cli-output.d.ts.map +0 -1
  524. package/dist/src/cli-output.js +0 -53
  525. package/dist/src/cli-output.js.map +0 -1
  526. package/dist/src/compass/contract-registry.d.ts +0 -7
  527. package/dist/src/compass/contract-registry.d.ts.map +0 -1
  528. package/dist/src/compass/contract-registry.js +0 -93
  529. package/dist/src/compass/contract-registry.js.map +0 -1
  530. package/dist/src/compass/types.d.ts +0 -28
  531. package/dist/src/compass/types.d.ts.map +0 -1
  532. package/dist/src/compass/types.js +0 -14
  533. package/dist/src/compass/types.js.map +0 -1
  534. package/dist/src/config/forge-config.d.ts +0 -242
  535. package/dist/src/config/forge-config.d.ts.map +0 -1
  536. package/dist/src/config/forge-config.js +0 -363
  537. package/dist/src/config/forge-config.js.map +0 -1
  538. package/dist/src/forge-module.d.ts +0 -17
  539. package/dist/src/forge-module.d.ts.map +0 -1
  540. package/dist/src/forge-module.js +0 -16
  541. package/dist/src/forge-module.js.map +0 -1
  542. package/dist/src/index.d.ts +0 -39
  543. package/dist/src/index.d.ts.map +0 -1
  544. package/dist/src/index.js +0 -59
  545. package/dist/src/index.js.map +0 -1
  546. package/dist/src/knowledge/budgets.d.ts +0 -38
  547. package/dist/src/knowledge/budgets.d.ts.map +0 -1
  548. package/dist/src/knowledge/budgets.js +0 -157
  549. package/dist/src/knowledge/budgets.js.map +0 -1
  550. package/dist/src/knowledge/compact.d.ts +0 -47
  551. package/dist/src/knowledge/compact.d.ts.map +0 -1
  552. package/dist/src/knowledge/compact.js +0 -320
  553. package/dist/src/knowledge/compact.js.map +0 -1
  554. package/dist/src/knowledge/index.d.ts +0 -7
  555. package/dist/src/knowledge/index.d.ts.map +0 -1
  556. package/dist/src/knowledge/index.js +0 -19
  557. package/dist/src/knowledge/index.js.map +0 -1
  558. package/dist/src/knowledge/parse.d.ts +0 -3
  559. package/dist/src/knowledge/parse.d.ts.map +0 -1
  560. package/dist/src/knowledge/parse.js +0 -205
  561. package/dist/src/knowledge/parse.js.map +0 -1
  562. package/dist/src/knowledge/promote.d.ts +0 -37
  563. package/dist/src/knowledge/promote.d.ts.map +0 -1
  564. package/dist/src/knowledge/promote.js +0 -120
  565. package/dist/src/knowledge/promote.js.map +0 -1
  566. package/dist/src/knowledge/schema.d.ts +0 -61
  567. package/dist/src/knowledge/schema.d.ts.map +0 -1
  568. package/dist/src/knowledge/schema.js +0 -64
  569. package/dist/src/knowledge/schema.js.map +0 -1
  570. package/dist/src/knowledge/serialize.d.ts +0 -3
  571. package/dist/src/knowledge/serialize.d.ts.map +0 -1
  572. package/dist/src/knowledge/serialize.js +0 -67
  573. package/dist/src/knowledge/serialize.js.map +0 -1
  574. package/dist/src/migration-adapters/git-utils.d.ts +0 -3
  575. package/dist/src/migration-adapters/git-utils.d.ts.map +0 -1
  576. package/dist/src/migration-adapters/git-utils.js +0 -64
  577. package/dist/src/migration-adapters/git-utils.js.map +0 -1
  578. package/dist/src/migration-adapters/ignored-files.d.ts +0 -12
  579. package/dist/src/migration-adapters/ignored-files.d.ts.map +0 -1
  580. package/dist/src/migration-adapters/ignored-files.js +0 -190
  581. package/dist/src/migration-adapters/ignored-files.js.map +0 -1
  582. package/dist/src/migration-adapters/index.d.ts +0 -8
  583. package/dist/src/migration-adapters/index.d.ts.map +0 -1
  584. package/dist/src/migration-adapters/index.js +0 -17
  585. package/dist/src/migration-adapters/index.js.map +0 -1
  586. package/dist/src/migration-adapters/node-typescript-pnpm/index.d.ts +0 -3
  587. package/dist/src/migration-adapters/node-typescript-pnpm/index.d.ts.map +0 -1
  588. package/dist/src/migration-adapters/node-typescript-pnpm/index.js +0 -141
  589. package/dist/src/migration-adapters/node-typescript-pnpm/index.js.map +0 -1
  590. package/dist/src/migration-adapters/phaser-pnpm/index.d.ts +0 -3
  591. package/dist/src/migration-adapters/phaser-pnpm/index.d.ts.map +0 -1
  592. package/dist/src/migration-adapters/phaser-pnpm/index.js +0 -142
  593. package/dist/src/migration-adapters/phaser-pnpm/index.js.map +0 -1
  594. package/dist/src/migration-adapters/registry.d.ts +0 -6
  595. package/dist/src/migration-adapters/registry.d.ts.map +0 -1
  596. package/dist/src/migration-adapters/registry.js +0 -55
  597. package/dist/src/migration-adapters/registry.js.map +0 -1
  598. package/dist/src/migration-adapters/types.d.ts +0 -35
  599. package/dist/src/migration-adapters/types.d.ts.map +0 -1
  600. package/dist/src/migration-adapters/types.js +0 -31
  601. package/dist/src/migration-adapters/types.js.map +0 -1
  602. package/dist/src/onboarding/agents-generate.d.ts +0 -31
  603. package/dist/src/onboarding/agents-generate.d.ts.map +0 -1
  604. package/dist/src/onboarding/agents-generate.js +0 -372
  605. package/dist/src/onboarding/agents-generate.js.map +0 -1
  606. package/dist/src/onboarding/create.d.ts +0 -12
  607. package/dist/src/onboarding/create.d.ts.map +0 -1
  608. package/dist/src/onboarding/create.js +0 -389
  609. package/dist/src/onboarding/create.js.map +0 -1
  610. package/dist/src/onboarding/doctor.d.ts +0 -45
  611. package/dist/src/onboarding/doctor.d.ts.map +0 -1
  612. package/dist/src/onboarding/doctor.js +0 -1190
  613. package/dist/src/onboarding/doctor.js.map +0 -1
  614. package/dist/src/onboarding/init.d.ts +0 -36
  615. package/dist/src/onboarding/init.d.ts.map +0 -1
  616. package/dist/src/onboarding/init.js +0 -362
  617. package/dist/src/onboarding/init.js.map +0 -1
  618. package/dist/src/onboarding/invariant-engine.d.ts +0 -17
  619. package/dist/src/onboarding/invariant-engine.d.ts.map +0 -1
  620. package/dist/src/onboarding/invariant-engine.js +0 -416
  621. package/dist/src/onboarding/invariant-engine.js.map +0 -1
  622. package/dist/src/onboarding/memory-scaffold.d.ts +0 -18
  623. package/dist/src/onboarding/memory-scaffold.d.ts.map +0 -1
  624. package/dist/src/onboarding/memory-scaffold.js +0 -151
  625. package/dist/src/onboarding/memory-scaffold.js.map +0 -1
  626. package/dist/src/onboarding/nested-agents-generate.d.ts +0 -18
  627. package/dist/src/onboarding/nested-agents-generate.d.ts.map +0 -1
  628. package/dist/src/onboarding/nested-agents-generate.js +0 -69
  629. package/dist/src/onboarding/nested-agents-generate.js.map +0 -1
  630. package/dist/src/onboarding/nested-agents-templates.d.ts +0 -26
  631. package/dist/src/onboarding/nested-agents-templates.d.ts.map +0 -1
  632. package/dist/src/onboarding/nested-agents-templates.js +0 -178
  633. package/dist/src/onboarding/nested-agents-templates.js.map +0 -1
  634. package/dist/src/onboarding/profile-validate.d.ts +0 -13
  635. package/dist/src/onboarding/profile-validate.d.ts.map +0 -1
  636. package/dist/src/onboarding/profile-validate.js +0 -109
  637. package/dist/src/onboarding/profile-validate.js.map +0 -1
  638. package/dist/src/onboarding/scaffold-project.d.ts +0 -12
  639. package/dist/src/onboarding/scaffold-project.d.ts.map +0 -1
  640. package/dist/src/onboarding/scaffold-project.js +0 -264
  641. package/dist/src/onboarding/scaffold-project.js.map +0 -1
  642. package/dist/src/onboarding/scaffold.d.ts +0 -15
  643. package/dist/src/onboarding/scaffold.d.ts.map +0 -1
  644. package/dist/src/onboarding/scaffold.js +0 -121
  645. package/dist/src/onboarding/scaffold.js.map +0 -1
  646. package/dist/src/onboarding/upgrade.d.ts +0 -27
  647. package/dist/src/onboarding/upgrade.d.ts.map +0 -1
  648. package/dist/src/onboarding/upgrade.js +0 -453
  649. package/dist/src/onboarding/upgrade.js.map +0 -1
  650. package/dist/src/onboarding/workspace-discovery.d.ts +0 -11
  651. package/dist/src/onboarding/workspace-discovery.d.ts.map +0 -1
  652. package/dist/src/onboarding/workspace-discovery.js +0 -138
  653. package/dist/src/onboarding/workspace-discovery.js.map +0 -1
  654. package/dist/src/plugin/ForgePluginManifest.d.ts +0 -38
  655. package/dist/src/plugin/ForgePluginManifest.d.ts.map +0 -1
  656. package/dist/src/plugin/ForgePluginManifest.js +0 -52
  657. package/dist/src/plugin/ForgePluginManifest.js.map +0 -1
  658. package/dist/src/profiles/profile-schema.d.ts +0 -361
  659. package/dist/src/profiles/profile-schema.d.ts.map +0 -1
  660. package/dist/src/profiles/profile-schema.js +0 -208
  661. package/dist/src/profiles/profile-schema.js.map +0 -1
  662. package/dist/src/profiles/stack-profile.d.ts +0 -173
  663. package/dist/src/profiles/stack-profile.d.ts.map +0 -1
  664. package/dist/src/profiles/stack-profile.js +0 -148
  665. package/dist/src/profiles/stack-profile.js.map +0 -1
  666. package/dist/src/profiles/terminology-utils.d.ts +0 -8
  667. package/dist/src/profiles/terminology-utils.d.ts.map +0 -1
  668. package/dist/src/profiles/terminology-utils.js +0 -31
  669. package/dist/src/profiles/terminology-utils.js.map +0 -1
  670. package/dist/src/registry.d.ts +0 -38
  671. package/dist/src/registry.d.ts.map +0 -1
  672. package/dist/src/registry.js +0 -174
  673. package/dist/src/registry.js.map +0 -1
  674. package/dist/src/skill-schema.d.ts +0 -30
  675. package/dist/src/skill-schema.d.ts.map +0 -1
  676. package/dist/src/skill-schema.js +0 -34
  677. package/dist/src/skill-schema.js.map +0 -1
  678. package/dist/src/types.d.ts +0 -154
  679. package/dist/src/types.d.ts.map +0 -1
  680. package/dist/src/types.js +0 -17
  681. package/dist/src/types.js.map +0 -1
  682. package/dist/src/utils/fs-atomic.d.ts +0 -7
  683. package/dist/src/utils/fs-atomic.d.ts.map +0 -1
  684. package/dist/src/utils/fs-atomic.js +0 -81
  685. package/dist/src/utils/fs-atomic.js.map +0 -1
  686. package/dist/src/utils/fs-idempotent.d.ts +0 -2
  687. package/dist/src/utils/fs-idempotent.d.ts.map +0 -1
  688. package/dist/src/utils/fs-idempotent.js +0 -39
  689. package/dist/src/utils/fs-idempotent.js.map +0 -1
  690. package/dist/src/utils/fs-trash-sync.d.ts +0 -2
  691. package/dist/src/utils/fs-trash-sync.d.ts.map +0 -1
  692. package/dist/src/utils/fs-trash-sync.js +0 -34
  693. package/dist/src/utils/fs-trash-sync.js.map +0 -1
  694. package/dist/src/utils/fs-trash.d.ts +0 -2
  695. package/dist/src/utils/fs-trash.d.ts.map +0 -1
  696. package/dist/src/utils/fs-trash.js +0 -24
  697. package/dist/src/utils/fs-trash.js.map +0 -1
  698. package/dist/src/utils/fs.d.ts +0 -8
  699. package/dist/src/utils/fs.d.ts.map +0 -1
  700. package/dist/src/utils/fs.js +0 -60
  701. package/dist/src/utils/fs.js.map +0 -1
  702. package/dist/src/utils/generated-marker.d.ts +0 -21
  703. package/dist/src/utils/generated-marker.d.ts.map +0 -1
  704. package/dist/src/utils/generated-marker.js +0 -128
  705. package/dist/src/utils/generated-marker.js.map +0 -1
  706. package/dist/src/utils/hash.d.ts +0 -2
  707. package/dist/src/utils/hash.d.ts.map +0 -1
  708. package/dist/src/utils/hash.js +0 -18
  709. package/dist/src/utils/hash.js.map +0 -1
  710. package/dist/src/utils/index.d.ts +0 -9
  711. package/dist/src/utils/index.d.ts.map +0 -1
  712. package/dist/src/utils/index.js +0 -21
  713. package/dist/src/utils/index.js.map +0 -1
  714. package/dist/src/utils/string-utils.d.ts +0 -2
  715. package/dist/src/utils/string-utils.d.ts.map +0 -1
  716. package/dist/src/utils/string-utils.js +0 -19
  717. package/dist/src/utils/string-utils.js.map +0 -1
  718. package/dist/src/validators/note-frontmatter-validate.d.ts +0 -20
  719. package/dist/src/validators/note-frontmatter-validate.d.ts.map +0 -1
  720. package/dist/src/validators/note-frontmatter-validate.js +0 -117
  721. package/dist/src/validators/note-frontmatter-validate.js.map +0 -1
  722. package/dist/src/validators/note-link-validate.d.ts +0 -21
  723. package/dist/src/validators/note-link-validate.d.ts.map +0 -1
  724. package/dist/src/validators/note-link-validate.js +0 -121
  725. package/dist/src/validators/note-link-validate.js.map +0 -1
  726. package/dist/src/validators/note-orphan-detect.d.ts +0 -19
  727. package/dist/src/validators/note-orphan-detect.d.ts.map +0 -1
  728. package/dist/src/validators/note-orphan-detect.js +0 -123
  729. package/dist/src/validators/note-orphan-detect.js.map +0 -1
  730. package/dist/src/validators/port-validate.d.ts +0 -12
  731. package/dist/src/validators/port-validate.d.ts.map +0 -1
  732. package/dist/src/validators/port-validate.js +0 -78
  733. package/dist/src/validators/port-validate.js.map +0 -1
  734. package/dist/src/validators/skill-validate.d.ts +0 -29
  735. package/dist/src/validators/skill-validate.d.ts.map +0 -1
  736. package/dist/src/validators/skill-validate.js +0 -689
  737. package/dist/src/validators/skill-validate.js.map +0 -1
@@ -1,64 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>exploration.list handler — list all exploration notes with metadata.</purpose>
4
- <non-goals>
5
- <item>Do not validate frontmatter shape — listing is metadata-only.</item>
6
- </non-goals>
7
- </MODULE_CONTRACT>
8
- <CHANGE_SUMMARY>
9
- <item>RFC-0710: initial exploration.list handler.</item>
10
- </CHANGE_SUMMARY>
11
- */
12
- import path from "node:path";
13
- import { listExplorationFiles, readAndParseExplorationNote, getExplorationsDir, } from "../frontmatter-io.js";
14
- export async function runExplorationList(input, context) {
15
- const { workspaceRoot, logger, outputFormat } = context;
16
- const explorationsDirPath = getExplorationsDir(workspaceRoot);
17
- const filterStatus = input.flags["status"];
18
- const files = await listExplorationFiles(explorationsDirPath);
19
- const entries = [];
20
- for (const fileName of files) {
21
- const result = await readAndParseExplorationNote(explorationsDirPath, fileName);
22
- if (!result)
23
- continue;
24
- const fm = result.parsed.frontmatter;
25
- const status = String(fm["status"] ?? "");
26
- if (filterStatus && status !== filterStatus)
27
- continue;
28
- entries.push({
29
- id: String(fm["id"] ?? path.basename(fileName, ".md")),
30
- title: String(fm["title"] ?? ""),
31
- status,
32
- createdAt: String(fm["createdAt"] ?? ""),
33
- });
34
- }
35
- if (outputFormat === "pretty") {
36
- if (entries.length === 0) {
37
- logger.info("No exploration notes found.");
38
- }
39
- else {
40
- logger.section(`Exploration notes (${entries.length})`);
41
- for (const entry of entries) {
42
- logger.info(`${entry.id} ${entry.status.padEnd(10)} ${entry.createdAt.padEnd(12)} ${entry.title}`);
43
- }
44
- }
45
- }
46
- return {
47
- data: {
48
- command: "exploration.list",
49
- status: "ok",
50
- count: entries.length,
51
- explorations: entries,
52
- },
53
- summary: `${entries.length} exploration note(s) found`,
54
- nextSteps: entries.length === 0
55
- ? [
56
- {
57
- action: `Create an exploration note: pnpm exec forge run exploration.show --id <slug>`,
58
- kind: "optional",
59
- },
60
- ]
61
- : undefined,
62
- };
63
- }
64
- //# sourceMappingURL=list.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../os/exploration/handlers/list.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;EAUE;AAEF,OAAO,IAAI,MAAM,WAAW,CAAC;AAM7B,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,kBAAkB,GACnB,MAAM,sBAAsB,CAAC;AAG9B,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAAwB,EACxB,OAA4B;IAE5B,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IACxD,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAE9D,MAAM,YAAY,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAuB,CAAC;IAEjE,MAAM,KAAK,GAAG,MAAM,oBAAoB,CAAC,mBAAmB,CAAC,CAAC;IAC9D,MAAM,OAAO,GAA2B,EAAE,CAAC;IAE3C,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;QAChF,IAAI,CAAC,MAAM;YAAE,SAAS;QAEtB,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAsB,CAAC;QAE/D,IAAI,YAAY,IAAI,MAAM,KAAK,YAAY;YAAE,SAAS;QAEtD,OAAO,CAAC,IAAI,CAAC;YACX,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACtD,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAChC,MAAM;YACN,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;SACzC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;QAC9B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,OAAO,CAAC,sBAAsB,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;YACxD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC5B,MAAM,CAAC,IAAI,CACT,GAAG,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,KAAK,EAAE,CACvF,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO;QACL,IAAI,EAAE;YACJ,OAAO,EAAE,kBAAkB;YAC3B,MAAM,EAAE,IAAI;YACZ,KAAK,EAAE,OAAO,CAAC,MAAM;YACrB,YAAY,EAAE,OAAO;SACtB;QACD,OAAO,EAAE,GAAG,OAAO,CAAC,MAAM,4BAA4B;QACtD,SAAS,EACP,OAAO,CAAC,MAAM,KAAK,CAAC;YAClB,CAAC,CAAC;gBACE;oBACE,MAAM,EAAE,8EAA8E;oBACtF,IAAI,EAAE,UAAU;iBACjB;aACF;YACH,CAAC,CAAC,SAAS;KAChB,CAAC;AACJ,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { ForgeCommandInput, ForgeCommandResult, ForgeRuntimeContext } from "../../../src/types.ts";
2
- import type { ExplorationShowResult } from "../types.ts";
3
- export declare function runExplorationShow(input: ForgeCommandInput, context: ForgeRuntimeContext): Promise<ForgeCommandResult<ExplorationShowResult>>;
4
- //# sourceMappingURL=show.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"show.d.ts","sourceRoot":"","sources":["../../../../os/exploration/handlers/show.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,EAAmB,qBAAqB,EAAqB,MAAM,aAAa,CAAC;AAS7F,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,kBAAkB,CAAC,qBAAqB,CAAC,CAAC,CAkFpD"}
@@ -1,97 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>exploration.show handler — return the full content of a single exploration note.</purpose>
4
- <non-goals>
5
- <item>Do not validate frontmatter shape — show returns raw parsed content.</item>
6
- </non-goals>
7
- </MODULE_CONTRACT>
8
- <CHANGE_SUMMARY>
9
- <item>RFC-0710: initial exploration.show handler.</item>
10
- </CHANGE_SUMMARY>
11
- */
12
- import { readAndParseExplorationNote, getExplorationsDir } from "../frontmatter-io.js";
13
- function parseRelatedArray(value) {
14
- if (Array.isArray(value)) {
15
- return value.filter((v) => typeof v === "string");
16
- }
17
- return [];
18
- }
19
- export async function runExplorationShow(input, context) {
20
- const { workspaceRoot, logger, outputFormat } = context;
21
- const explorationsDirPath = getExplorationsDir(workspaceRoot);
22
- const slug = input.flags["id"];
23
- if (!slug) {
24
- return {
25
- data: {
26
- command: "exploration.show",
27
- status: "error",
28
- note: {
29
- id: "",
30
- title: "",
31
- createdAt: "",
32
- status: "open",
33
- related: [],
34
- body: "",
35
- },
36
- },
37
- exitCode: 1,
38
- summary: "exploration.show requires --id <slug>",
39
- };
40
- }
41
- const fileName = `${slug}.md`;
42
- const result = await readAndParseExplorationNote(explorationsDirPath, fileName);
43
- if (!result) {
44
- if (outputFormat === "pretty") {
45
- logger.info(`Exploration note not found: ${slug}`);
46
- }
47
- return {
48
- data: {
49
- command: "exploration.show",
50
- status: "error",
51
- note: {
52
- id: slug,
53
- title: "",
54
- createdAt: "",
55
- status: "open",
56
- related: [],
57
- body: "",
58
- },
59
- },
60
- exitCode: 1,
61
- summary: `Exploration note not found: ${slug}`,
62
- };
63
- }
64
- const fm = result.parsed.frontmatter;
65
- const note = {
66
- id: String(fm["id"] ?? slug),
67
- title: String(fm["title"] ?? ""),
68
- createdAt: String(fm["createdAt"] ?? ""),
69
- status: String(fm["status"] ?? "open"),
70
- related: parseRelatedArray(fm["related"]),
71
- body: result.parsed.body,
72
- };
73
- if (outputFormat === "pretty") {
74
- logger.section(`Exploration: ${note.title}`);
75
- logger.info(`ID: ${note.id} Status: ${note.status} Created: ${note.createdAt}`);
76
- if (note.related.length > 0) {
77
- logger.info(`Related: ${note.related.join(", ")}`);
78
- }
79
- logger.info("");
80
- logger.info(note.body.trim());
81
- }
82
- return {
83
- data: {
84
- command: "exploration.show",
85
- status: "ok",
86
- note,
87
- },
88
- summary: `Exploration note: ${note.id}`,
89
- nextSteps: [
90
- {
91
- action: `Archive the note when done: pnpm exec forge run exploration.archive --id ${note.id}`,
92
- kind: "optional",
93
- },
94
- ],
95
- };
96
- }
97
- //# sourceMappingURL=show.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"show.js","sourceRoot":"","sources":["../../../../os/exploration/handlers/show.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;EAUE;AAOF,OAAO,EAAE,2BAA2B,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAGvF,SAAS,iBAAiB,CAAC,KAAc;IACvC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;IACjE,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAAwB,EACxB,OAA4B;IAE5B,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IACxD,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAE9D,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAuB,CAAC;IACrD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO;YACL,IAAI,EAAE;gBACJ,OAAO,EAAE,kBAAkB;gBAC3B,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE;oBACJ,EAAE,EAAE,EAAE;oBACN,KAAK,EAAE,EAAE;oBACT,SAAS,EAAE,EAAE;oBACb,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,EAAE;oBACX,IAAI,EAAE,EAAE;iBACT;aACF;YACD,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,uCAAuC;SACjD,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,GAAG,IAAI,KAAK,CAAC;IAC9B,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;IAChF,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,+BAA+B,IAAI,EAAE,CAAC,CAAC;QACrD,CAAC;QACD,OAAO;YACL,IAAI,EAAE;gBACJ,OAAO,EAAE,kBAAkB;gBAC3B,MAAM,EAAE,OAAO;gBACf,IAAI,EAAE;oBACJ,EAAE,EAAE,IAAI;oBACR,KAAK,EAAE,EAAE;oBACT,SAAS,EAAE,EAAE;oBACb,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,EAAE;oBACX,IAAI,EAAE,EAAE;iBACT;aACF;YACD,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,+BAA+B,IAAI,EAAE;SAC/C,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;IACrC,MAAM,IAAI,GAAoB;QAC5B,EAAE,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;QAC5B,KAAK,EAAE,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAChC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QACxC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAsB;QAC3D,OAAO,EAAE,iBAAiB,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;QACzC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI;KACzB,CAAC;IAEF,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,CAAC,OAAO,CAAC,gBAAgB,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAC7C,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,EAAE,aAAa,IAAI,CAAC,MAAM,cAAc,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAClF,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACrD,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAChC,CAAC;IAED,OAAO;QACL,IAAI,EAAE;YACJ,OAAO,EAAE,kBAAkB;YAC3B,MAAM,EAAE,IAAI;YACZ,IAAI;SACL;QACD,OAAO,EAAE,qBAAqB,IAAI,CAAC,EAAE,EAAE;QACvC,SAAS,EAAE;YACT;gBACE,MAAM,EAAE,4EAA4E,IAAI,CAAC,EAAE,EAAE;gBAC7F,IAAI,EAAE,UAAU;aACjB;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -1,7 +0,0 @@
1
- export { forgeExplorationModule } from "./exploration.module.ts";
2
- export { runExplorationList } from "./handlers/list.ts";
3
- export { runExplorationShow } from "./handlers/show.ts";
4
- export { runExplorationArchive } from "./handlers/archive.ts";
5
- export type { ExplorationStatus, ExplorationNote, ExplorationListEntry, ExplorationListResult, ExplorationShowResult, ExplorationArchiveResult, } from "./types.ts";
6
- export { EXPLORATION_STATUSES, EXPLORATION_DIR, EXPLORATION_SLUG_PATTERN } from "./types.ts";
7
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../os/exploration/index.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,YAAY,EACV,iBAAiB,EACjB,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,EACrB,wBAAwB,GACzB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC"}
@@ -1,17 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Barrel export for the exploration domain — types, constants, module, and handlers.</purpose>
4
- <non-goals>
5
- <item>Do not implement exploration logic here; delegate to handlers/ and exploration.module.ts.</item>
6
- </non-goals>
7
- </MODULE_CONTRACT>
8
- <CHANGE_SUMMARY>
9
- <item>RFC-0710: expose forgeExplorationModule and exploration types from the exploration domain.</item>
10
- </CHANGE_SUMMARY>
11
- */
12
- export { forgeExplorationModule } from "./exploration.module.js";
13
- export { runExplorationList } from "./handlers/list.js";
14
- export { runExplorationShow } from "./handlers/show.js";
15
- export { runExplorationArchive } from "./handlers/archive.js";
16
- export { EXPLORATION_STATUSES, EXPLORATION_DIR, EXPLORATION_SLUG_PATTERN } from "./types.js";
17
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../os/exploration/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;EAUE;AAEF,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAS9D,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC"}
@@ -1,38 +0,0 @@
1
- export type ExplorationStatus = "open" | "explored" | "archived";
2
- export declare const EXPLORATION_STATUSES: readonly ExplorationStatus[];
3
- export interface ExplorationNote {
4
- id: string;
5
- title: string;
6
- createdAt: string;
7
- status: ExplorationStatus;
8
- related: string[];
9
- body: string;
10
- }
11
- export interface ExplorationListEntry {
12
- id: string;
13
- title: string;
14
- status: ExplorationStatus;
15
- createdAt: string;
16
- }
17
- export interface ExplorationListResult {
18
- command: "exploration.list";
19
- status: "ok";
20
- count: number;
21
- explorations: ExplorationListEntry[];
22
- }
23
- export interface ExplorationShowResult {
24
- command: "exploration.show";
25
- status: "ok" | "error";
26
- note: ExplorationNote;
27
- }
28
- export interface ExplorationArchiveResult {
29
- command: "exploration.archive";
30
- status: "ok" | "error";
31
- id: string;
32
- previousStatus: string;
33
- newStatus: "archived";
34
- related: string[];
35
- }
36
- export declare const EXPLORATION_DIR = "docs/explorations";
37
- export declare const EXPLORATION_SLUG_PATTERN: RegExp;
38
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../os/exploration/types.ts"],"names":[],"mappings":"AAgBA,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,CAAC;AAEjE,eAAO,MAAM,oBAAoB,EAAE,SAAS,iBAAiB,EAInD,CAAC;AAEX,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,iBAAiB,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,kBAAkB,CAAC;IAC5B,MAAM,EAAE,IAAI,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,oBAAoB,EAAE,CAAC;CACtC;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,kBAAkB,CAAC;IAC5B,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC;IACvB,IAAI,EAAE,eAAe,CAAC;CACvB;AAED,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,qBAAqB,CAAC;IAC/B,MAAM,EAAE,IAAI,GAAG,OAAO,CAAC;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,UAAU,CAAC;IACtB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,eAAO,MAAM,eAAe,sBAAsB,CAAC;AAEnD,eAAO,MAAM,wBAAwB,QAA+B,CAAC"}
@@ -1,23 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>
4
- Defines types and constants for managing exploration notes: statuses,
5
- frontmatter shape, list/show/archive result types.
6
- </purpose>
7
- <non-goals>
8
- <item>Do not implement exploration processing logic here.</item>
9
- <item>Do not handle user input or command execution.</item>
10
- </non-goals>
11
- </MODULE_CONTRACT>
12
- <CHANGE_SUMMARY>
13
- <item>RFC-0710: initial exploration types and constants.</item>
14
- </CHANGE_SUMMARY>
15
- */
16
- export const EXPLORATION_STATUSES = [
17
- "open",
18
- "explored",
19
- "archived",
20
- ];
21
- export const EXPLORATION_DIR = "docs/explorations";
22
- export const EXPLORATION_SLUG_PATTERN = /^[a-z0-9]+(?:-[a-z0-9]+)*$/;
23
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../os/exploration/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;EAcE;AAIF,MAAM,CAAC,MAAM,oBAAoB,GAAiC;IAChE,MAAM;IACN,UAAU;IACV,UAAU;CACF,CAAC;AAwCX,MAAM,CAAC,MAAM,eAAe,GAAG,mBAAmB,CAAC;AAEnD,MAAM,CAAC,MAAM,wBAAwB,GAAG,4BAA4B,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { ForgeCommandInput, ForgeCommandResult, ForgeRuntimeContext } from "../../../src/types.ts";
2
- import { type MissionArchiveResult } from "../types.ts";
3
- export declare function runMissionArchive(input: ForgeCommandInput, context: ForgeRuntimeContext): Promise<ForgeCommandResult<MissionArchiveResult>>;
4
- //# sourceMappingURL=archive.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"archive.d.ts","sourceRoot":"","sources":["../../../../os/mission/handlers/archive.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAML,KAAK,oBAAoB,EAC1B,MAAM,aAAa,CAAC;AA8GrB,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,CAAC,CA0SnD"}
@@ -1,356 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>
4
- Mission archive handler — moves terminal-state mission directories (state: closed
5
- or state: aborted in mission.yaml) into status-specific subdirectories under
6
- missions/archive/<state>/ and moves non-terminal (open) directories found in
7
- archive subdirectories back to missions/.
8
- </purpose>
9
- <non-goals>
10
- <item>Does not validate mission manifest schema — reads only the state field.</item>
11
- <item>Does not change mission.yaml — only moves directories on disk.</item>
12
- <item>Does not import from @warpgogol/* packages — uses node:fs, node:child_process, and yaml only.</item>
13
- </non-goals>
14
- </MODULE_CONTRACT>
15
- <CHANGE_SUMMARY>
16
- <item>RFC-0573: implement mission.archive command.</item>
17
- <item>RFC-0573: extract moveMissionDir helper to eliminate Phase 1/2 duplication.</item>
18
- <item>RFC-0801: add service-folder cleanup (node_modules, dist, .astro, .wrangler, .cache, .turbo) before archive move.</item>
19
- <item>RFC-0733: add pinned-files pre-check — skip pinned mission directories with warning instead of moving them.</item>
20
- <item>RFC-0804: auto-refresh pnpm-lock.yaml after directory moves.</item>
21
- </CHANGE_SUMMARY>
22
- */
23
- import fs from "node:fs/promises";
24
- import { existsSync } from "node:fs";
25
- import path from "node:path";
26
- import { execSync } from "node:child_process";
27
- import { parse as parseYaml } from "yaml";
28
- import { trashPath } from "../../../src/utils/fs-trash.js";
29
- import { MISSIONS_DIR, ARCHIVE_DIR_NAME, MISSION_TERMINAL_STATUSES, } from "../types.js";
30
- import { loadPinnedManifest, isPinned, isIntraDirMove } from "../../core/handlers/pinned-check.js";
31
- const SERVICE_FOLDERS = [
32
- "node_modules",
33
- "dist",
34
- ".astro",
35
- ".wrangler",
36
- ".cache",
37
- ".turbo",
38
- ];
39
- async function cleanServiceFolders(workpieceDir) {
40
- const removed = [];
41
- for (const folder of SERVICE_FOLDERS) {
42
- const target = path.join(workpieceDir, folder);
43
- if (existsSync(target)) {
44
- await fs.rm(target, { recursive: true, force: true });
45
- removed.push(folder);
46
- }
47
- }
48
- return removed;
49
- }
50
- async function readMissionState(missionDir) {
51
- const manifestPath = path.join(missionDir, "mission.yaml");
52
- try {
53
- const raw = await fs.readFile(manifestPath, "utf8");
54
- const parsed = parseYaml(raw);
55
- const state = parsed?.state;
56
- if (typeof state === "string")
57
- return state.trim();
58
- return null;
59
- }
60
- catch {
61
- return null;
62
- }
63
- }
64
- async function moveMissionDir(sourcePath, targetPath, targetParentDir, missionId, state, sourceRel, targetRel, direction, dryRun, logger) {
65
- if (existsSync(targetPath)) {
66
- return { moved: null, skip: { missionId, dir: sourceRel, reason: "destination exists" } };
67
- }
68
- if (!dryRun) {
69
- if (targetParentDir) {
70
- await fs.mkdir(targetParentDir, { recursive: true });
71
- }
72
- // RFC-0801: Clean service folders from workpiece before move.
73
- // node_modules/, dist/, .astro/, .wrangler/, .cache/, .turbo/ contain
74
- // broken symlinks and stale build artifacts that waste disk space in archive.
75
- // Aborted missions may not have a workpiece/ directory — skip gracefully.
76
- const workpieceDir = path.join(sourcePath, "workpiece");
77
- if (existsSync(workpieceDir)) {
78
- try {
79
- const removed = await cleanServiceFolders(workpieceDir);
80
- if (removed.length > 0 && logger) {
81
- logger.info(` cleaned service folders: ${removed.join(", ")}`);
82
- }
83
- }
84
- catch (cleanupErr) {
85
- // Non-fatal: log warning and continue with move
86
- if (logger) {
87
- logger.warn(` Warning: service folder cleanup failed for ${missionId}: ${cleanupErr instanceof Error ? cleanupErr.message : String(cleanupErr)}`);
88
- }
89
- }
90
- }
91
- try {
92
- await fs.rename(sourcePath, targetPath);
93
- }
94
- catch (err) {
95
- if (err.code === "ENOENT") {
96
- return {
97
- moved: null,
98
- skip: { missionId, dir: sourceRel, reason: "already moved by another process" },
99
- };
100
- }
101
- throw err;
102
- }
103
- // Post-rename cleanup: a watcher or IDE may recreate stale cache
104
- // directories (e.g. .astro/) at the source path after the rename.
105
- // Remove the resurrected source so it doesn't leave orphan directories.
106
- if (existsSync(sourcePath)) {
107
- await trashPath(sourcePath);
108
- }
109
- }
110
- return {
111
- moved: { missionId, state, from: sourceRel, to: targetRel, direction },
112
- skip: null,
113
- };
114
- }
115
- export async function runMissionArchive(input, context) {
116
- const { workspaceRoot, logger, outputFormat } = context;
117
- const missionsPath = path.join(workspaceRoot, MISSIONS_DIR);
118
- const dryRun = context.dryRun || input.flags["dry-run"] === true;
119
- const statusFilter = input.flags["status"];
120
- if (statusFilter && !MISSION_TERMINAL_STATUSES.includes(statusFilter)) {
121
- throw new Error(`Invalid --status "${statusFilter}". Must be one of: ${MISSION_TERMINAL_STATUSES.join(", ")}`);
122
- }
123
- const moved = [];
124
- const skipped = [];
125
- // RFC-0733: Load pinned manifest once per invocation
126
- let pinnedManifest = null;
127
- try {
128
- pinnedManifest = await loadPinnedManifest(workspaceRoot);
129
- }
130
- catch {
131
- // Malformed manifest — skip pre-check
132
- }
133
- if (!existsSync(missionsPath)) {
134
- if (outputFormat === "pretty") {
135
- if (dryRun) {
136
- logger.info("[dry-run] mission.archive: no missions/ directory — nothing to do");
137
- }
138
- else {
139
- logger.info("mission.archive: no missions/ directory — nothing to do");
140
- }
141
- }
142
- return {
143
- data: { command: "mission.archive", status: "ok", moved, skipped, dryRun },
144
- summary: dryRun
145
- ? "[dry-run] No missions/ directory — nothing to do"
146
- : "No missions/ directory — nothing to do",
147
- };
148
- }
149
- // Phase 1: Scan missions/ for terminal-state missions to move into archive
150
- const rootEntries = await fs.readdir(missionsPath, { withFileTypes: true });
151
- // Stale symlink cleanup: IDEs or file watchers may recreate symlinks to
152
- // archived mission directories after mission.archive has moved them.
153
- // These symlinks break pnpm workspace resolution and mission number derivation.
154
- // Trash them before they can cause downstream issues.
155
- for (const e of rootEntries) {
156
- if (e.isSymbolicLink() && e.name !== ARCHIVE_DIR_NAME) {
157
- const symlinkPath = path.join(missionsPath, e.name);
158
- const sourceRel = `${MISSIONS_DIR}/${e.name}`;
159
- if (!dryRun) {
160
- await trashPath(symlinkPath);
161
- }
162
- skipped.push({
163
- missionId: e.name,
164
- dir: sourceRel,
165
- reason: "stale symlink — trashed",
166
- });
167
- if (outputFormat === "pretty") {
168
- logger.warn(` stale symlink: trashed ${sourceRel}`);
169
- }
170
- }
171
- }
172
- const rootDirs = rootEntries
173
- .filter((e) => e.isDirectory() && !e.isSymbolicLink() && e.name !== ARCHIVE_DIR_NAME)
174
- .map((e) => e.name);
175
- for (const missionId of rootDirs) {
176
- const missionDir = path.join(missionsPath, missionId);
177
- const state = await readMissionState(missionDir);
178
- if (state === null) {
179
- skipped.push({
180
- missionId,
181
- dir: `${MISSIONS_DIR}/${missionId}`,
182
- reason: "unreadable manifest",
183
- });
184
- continue;
185
- }
186
- const isTerminal = MISSION_TERMINAL_STATUSES.includes(state);
187
- if (!isTerminal) {
188
- skipped.push({
189
- missionId,
190
- dir: `${MISSIONS_DIR}/${missionId}`,
191
- reason: `state ${state} is non-terminal`,
192
- });
193
- continue;
194
- }
195
- if (statusFilter && state !== statusFilter) {
196
- skipped.push({
197
- missionId,
198
- dir: `${MISSIONS_DIR}/${missionId}`,
199
- reason: `state ${state} does not match --status ${statusFilter}`,
200
- });
201
- continue;
202
- }
203
- const targetDir = path.join(missionsPath, ARCHIVE_DIR_NAME, state);
204
- const targetPath = path.join(targetDir, missionId);
205
- const targetRel = `${MISSIONS_DIR}/${ARCHIVE_DIR_NAME}/${state}/${missionId}`;
206
- const sourceRel = `${MISSIONS_DIR}/${missionId}`;
207
- // RFC-0733: Check if mission directory is pinned before moving
208
- // Gap fix: exempt intra-directory moves (dir stays within the same pinned parent)
209
- if (pinnedManifest &&
210
- isPinned(pinnedManifest, sourceRel) &&
211
- !isIntraDirMove(pinnedManifest, sourceRel, targetRel)) {
212
- skipped.push({
213
- missionId,
214
- dir: sourceRel,
215
- reason: "pinned (protected by .forge/pinned.yaml)",
216
- });
217
- if (outputFormat === "pretty") {
218
- logger.warn(` pinned: skipping ${sourceRel} (protected)`);
219
- }
220
- continue;
221
- }
222
- const result = await moveMissionDir(missionDir, targetPath, targetDir, missionId, state, sourceRel, targetRel, "into-archive", dryRun, logger);
223
- if (result.skip) {
224
- skipped.push(result.skip);
225
- continue;
226
- }
227
- if (result.moved)
228
- moved.push(result.moved);
229
- }
230
- // Phase 2: Scan missions/archive/<state>/ for non-terminal missions to move back
231
- const archivePath = path.join(missionsPath, ARCHIVE_DIR_NAME);
232
- if (existsSync(archivePath)) {
233
- const stateDirs = await fs.readdir(archivePath, { withFileTypes: true });
234
- const stateDirNames = stateDirs.filter((e) => e.isDirectory()).map((e) => e.name);
235
- for (const stateDirName of stateDirNames) {
236
- const stateDirPath = path.join(archivePath, stateDirName);
237
- const archivedMissions = await fs.readdir(stateDirPath, { withFileTypes: true });
238
- const archivedDirNames = archivedMissions.filter((e) => e.isDirectory()).map((e) => e.name);
239
- for (const missionId of archivedDirNames) {
240
- const archivedMissionDir = path.join(stateDirPath, missionId);
241
- const state = await readMissionState(archivedMissionDir);
242
- if (state === null) {
243
- skipped.push({
244
- missionId,
245
- dir: `${MISSIONS_DIR}/${ARCHIVE_DIR_NAME}/${stateDirName}/${missionId}`,
246
- reason: "unreadable manifest",
247
- });
248
- continue;
249
- }
250
- const isTerminal = MISSION_TERMINAL_STATUSES.includes(state);
251
- if (isTerminal) {
252
- skipped.push({
253
- missionId,
254
- dir: `${MISSIONS_DIR}/${ARCHIVE_DIR_NAME}/${stateDirName}/${missionId}`,
255
- reason: `already archived (${state})`,
256
- });
257
- continue;
258
- }
259
- // Non-terminal in archive — move back to missions/
260
- const targetPath = path.join(missionsPath, missionId);
261
- const targetRel = `${MISSIONS_DIR}/${missionId}`;
262
- const sourceRel = `${MISSIONS_DIR}/${ARCHIVE_DIR_NAME}/${stateDirName}/${missionId}`;
263
- // RFC-0733: Check if mission directory is pinned before moving
264
- // Gap fix: exempt intra-directory moves (dir stays within the same pinned parent)
265
- if (pinnedManifest &&
266
- isPinned(pinnedManifest, sourceRel) &&
267
- !isIntraDirMove(pinnedManifest, sourceRel, targetRel)) {
268
- skipped.push({
269
- missionId,
270
- dir: sourceRel,
271
- reason: "pinned (protected by .forge/pinned.yaml)",
272
- });
273
- if (outputFormat === "pretty") {
274
- logger.warn(` pinned: skipping ${sourceRel} (protected)`);
275
- }
276
- continue;
277
- }
278
- const result = await moveMissionDir(archivedMissionDir, targetPath, "", missionId, state, sourceRel, targetRel, "out-of-archive", dryRun, logger);
279
- if (result.skip) {
280
- skipped.push(result.skip);
281
- continue;
282
- }
283
- if (result.moved)
284
- moved.push(result.moved);
285
- }
286
- }
287
- }
288
- if (outputFormat === "pretty") {
289
- if (dryRun) {
290
- logger.info(`[dry-run] mission.archive: would move ${moved.length} mission(s), skip ${skipped.length}`);
291
- }
292
- else {
293
- logger.success(`mission.archive: moved ${moved.length} mission(s), skipped ${skipped.length}`);
294
- }
295
- for (const m of moved) {
296
- logger.info(` ${m.direction}: ${m.missionId} (${m.state}) ${m.from} → ${m.to}`);
297
- }
298
- }
299
- // RFC-0804: Post-move lockfile refresh
300
- if (!dryRun && moved.length > 0) {
301
- try {
302
- execSync("pnpm install", {
303
- cwd: workspaceRoot,
304
- stdio: ["pipe", "pipe", "pipe"],
305
- timeout: 120_000,
306
- });
307
- const lockfileStatus = execSync("git status --porcelain pnpm-lock.yaml", {
308
- cwd: workspaceRoot,
309
- encoding: "utf-8",
310
- stdio: ["pipe", "pipe", "pipe"],
311
- }).trim();
312
- if (lockfileStatus) {
313
- execSync("git add pnpm-lock.yaml", {
314
- cwd: workspaceRoot,
315
- stdio: ["pipe", "pipe", "pipe"],
316
- });
317
- for (const m of moved) {
318
- execSync(`git add -A ${JSON.stringify(m.to)}`, {
319
- cwd: workspaceRoot,
320
- stdio: ["pipe", "pipe", "pipe"],
321
- });
322
- if (existsSync(m.from))
323
- continue;
324
- execSync(`git rm -r --cached --ignore-unmatch ${JSON.stringify(m.from)}`, {
325
- cwd: workspaceRoot,
326
- stdio: ["pipe", "pipe", "pipe"],
327
- });
328
- }
329
- execSync(`git commit -m ${JSON.stringify(`chore: refresh pnpm-lock.yaml after mission.archive (${moved.length} moved)`)}`, { cwd: workspaceRoot, stdio: ["pipe", "pipe", "pipe"] });
330
- logger.info(` Committed pnpm-lock.yaml refresh (${moved.length} missions archived)`);
331
- }
332
- }
333
- catch (refreshErr) {
334
- logger.warn(` Lockfile refresh failed after archive — lockfile may be stale. Run 'pnpm install' manually: ${refreshErr instanceof Error ? refreshErr.message : String(refreshErr)}`);
335
- }
336
- }
337
- return {
338
- data: {
339
- command: "mission.archive",
340
- status: "ok",
341
- moved,
342
- skipped,
343
- dryRun,
344
- },
345
- summary: dryRun
346
- ? `[dry-run] Would move ${moved.length} mission(s), skip ${skipped.length}`
347
- : `Moved ${moved.length} mission(s), skipped ${skipped.length}`,
348
- nextSteps: [
349
- {
350
- action: "Run: pnpm exec werkstatt run mission.list --json to verify active missions",
351
- kind: "optional",
352
- },
353
- ],
354
- };
355
- }
356
- //# sourceMappingURL=archive.js.map