@warpgogol/forge 1.2.2 → 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 (698) hide show
  1. package/AGENTS.md +1 -0
  2. package/README.md +33 -19
  3. package/README.uk.md +33 -19
  4. package/package.json +1 -1
  5. package/profiles/astro-typescript-turborepo.yaml +147 -0
  6. package/profiles/forge-shell.yaml +120 -1
  7. package/profiles/godot-csharp.yaml +280 -6
  8. package/profiles/phaser-turborepo.yaml +134 -0
  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/dist/bin/cli.d.ts +0 -3
  16. package/dist/bin/cli.d.ts.map +0 -1
  17. package/dist/bin/cli.js +0 -292
  18. package/dist/bin/cli.js.map +0 -1
  19. package/dist/os/adr/adr.module.d.ts +0 -3
  20. package/dist/os/adr/adr.module.d.ts.map +0 -1
  21. package/dist/os/adr/adr.module.js +0 -145
  22. package/dist/os/adr/adr.module.js.map +0 -1
  23. package/dist/os/adr/frontmatter-io.d.ts +0 -12
  24. package/dist/os/adr/frontmatter-io.d.ts.map +0 -1
  25. package/dist/os/adr/frontmatter-io.js +0 -67
  26. package/dist/os/adr/frontmatter-io.js.map +0 -1
  27. package/dist/os/adr/handlers/archive.d.ts +0 -24
  28. package/dist/os/adr/handlers/archive.d.ts.map +0 -1
  29. package/dist/os/adr/handlers/archive.js +0 -194
  30. package/dist/os/adr/handlers/archive.js.map +0 -1
  31. package/dist/os/adr/handlers/implement-stamp.d.ts +0 -4
  32. package/dist/os/adr/handlers/implement-stamp.d.ts.map +0 -1
  33. package/dist/os/adr/handlers/implement-stamp.js +0 -258
  34. package/dist/os/adr/handlers/implement-stamp.js.map +0 -1
  35. package/dist/os/adr/handlers/list-create.d.ts +0 -5
  36. package/dist/os/adr/handlers/list-create.d.ts.map +0 -1
  37. package/dist/os/adr/handlers/list-create.js +0 -165
  38. package/dist/os/adr/handlers/list-create.js.map +0 -1
  39. package/dist/os/adr/handlers/validate.d.ts +0 -4
  40. package/dist/os/adr/handlers/validate.d.ts.map +0 -1
  41. package/dist/os/adr/handlers/validate.js +0 -265
  42. package/dist/os/adr/handlers/validate.js.map +0 -1
  43. package/dist/os/adr/index.d.ts +0 -8
  44. package/dist/os/adr/index.d.ts.map +0 -1
  45. package/dist/os/adr/index.js +0 -18
  46. package/dist/os/adr/index.js.map +0 -1
  47. package/dist/os/adr/types.d.ts +0 -75
  48. package/dist/os/adr/types.d.ts.map +0 -1
  49. package/dist/os/adr/types.js +0 -55
  50. package/dist/os/adr/types.js.map +0 -1
  51. package/dist/os/audit/audit.module.d.ts +0 -3
  52. package/dist/os/audit/audit.module.d.ts.map +0 -1
  53. package/dist/os/audit/audit.module.js +0 -44
  54. package/dist/os/audit/audit.module.js.map +0 -1
  55. package/dist/os/audit/frontmatter-io.d.ts +0 -12
  56. package/dist/os/audit/frontmatter-io.d.ts.map +0 -1
  57. package/dist/os/audit/frontmatter-io.js +0 -71
  58. package/dist/os/audit/frontmatter-io.js.map +0 -1
  59. package/dist/os/audit/handlers/archive.d.ts +0 -4
  60. package/dist/os/audit/handlers/archive.d.ts.map +0 -1
  61. package/dist/os/audit/handlers/archive.js +0 -207
  62. package/dist/os/audit/handlers/archive.js.map +0 -1
  63. package/dist/os/audit/index.d.ts +0 -6
  64. package/dist/os/audit/index.d.ts.map +0 -1
  65. package/dist/os/audit/index.js +0 -16
  66. package/dist/os/audit/index.js.map +0 -1
  67. package/dist/os/audit/types.d.ts +0 -12
  68. package/dist/os/audit/types.d.ts.map +0 -1
  69. package/dist/os/audit/types.js +0 -17
  70. package/dist/os/audit/types.js.map +0 -1
  71. package/dist/os/compass/compass.module.d.ts +0 -3
  72. package/dist/os/compass/compass.module.d.ts.map +0 -1
  73. package/dist/os/compass/compass.module.js +0 -166
  74. package/dist/os/compass/compass.module.js.map +0 -1
  75. package/dist/os/compass/handlers/compass-audit-handler.d.ts +0 -36
  76. package/dist/os/compass/handlers/compass-audit-handler.d.ts.map +0 -1
  77. package/dist/os/compass/handlers/compass-audit-handler.js +0 -238
  78. package/dist/os/compass/handlers/compass-audit-handler.js.map +0 -1
  79. package/dist/os/compass/handlers/compass-change-summary-handler.d.ts +0 -19
  80. package/dist/os/compass/handlers/compass-change-summary-handler.d.ts.map +0 -1
  81. package/dist/os/compass/handlers/compass-change-summary-handler.js +0 -205
  82. package/dist/os/compass/handlers/compass-change-summary-handler.js.map +0 -1
  83. package/dist/os/compass/handlers/compass-inventory-handler.d.ts +0 -28
  84. package/dist/os/compass/handlers/compass-inventory-handler.d.ts.map +0 -1
  85. package/dist/os/compass/handlers/compass-inventory-handler.js +0 -213
  86. package/dist/os/compass/handlers/compass-inventory-handler.js.map +0 -1
  87. package/dist/os/compass/handlers/compass-inventory.d.ts +0 -30
  88. package/dist/os/compass/handlers/compass-inventory.d.ts.map +0 -1
  89. package/dist/os/compass/handlers/compass-inventory.js +0 -418
  90. package/dist/os/compass/handlers/compass-inventory.js.map +0 -1
  91. package/dist/os/compass/handlers/git-revision.d.ts +0 -8
  92. package/dist/os/compass/handlers/git-revision.d.ts.map +0 -1
  93. package/dist/os/compass/handlers/git-revision.js +0 -99
  94. package/dist/os/compass/handlers/git-revision.js.map +0 -1
  95. package/dist/os/compass/handlers/resolve-scan-root.d.ts +0 -3
  96. package/dist/os/compass/handlers/resolve-scan-root.d.ts.map +0 -1
  97. package/dist/os/compass/handlers/resolve-scan-root.js +0 -57
  98. package/dist/os/compass/handlers/resolve-scan-root.js.map +0 -1
  99. package/dist/os/compass/index.d.ts +0 -8
  100. package/dist/os/compass/index.d.ts.map +0 -1
  101. package/dist/os/compass/index.js +0 -19
  102. package/dist/os/compass/index.js.map +0 -1
  103. package/dist/os/core/core.module.d.ts +0 -3
  104. package/dist/os/core/core.module.d.ts.map +0 -1
  105. package/dist/os/core/core.module.js +0 -758
  106. package/dist/os/core/core.module.js.map +0 -1
  107. package/dist/os/core/handlers/assets-check.d.ts +0 -19
  108. package/dist/os/core/handlers/assets-check.d.ts.map +0 -1
  109. package/dist/os/core/handlers/assets-check.js +0 -89
  110. package/dist/os/core/handlers/assets-check.js.map +0 -1
  111. package/dist/os/core/handlers/assets-helpers.d.ts +0 -28
  112. package/dist/os/core/handlers/assets-helpers.d.ts.map +0 -1
  113. package/dist/os/core/handlers/assets-helpers.js +0 -128
  114. package/dist/os/core/handlers/assets-helpers.js.map +0 -1
  115. package/dist/os/core/handlers/assets-list.d.ts +0 -9
  116. package/dist/os/core/handlers/assets-list.d.ts.map +0 -1
  117. package/dist/os/core/handlers/assets-list.js +0 -72
  118. package/dist/os/core/handlers/assets-list.js.map +0 -1
  119. package/dist/os/core/handlers/build.d.ts +0 -16
  120. package/dist/os/core/handlers/build.d.ts.map +0 -1
  121. package/dist/os/core/handlers/build.js +0 -123
  122. package/dist/os/core/handlers/build.js.map +0 -1
  123. package/dist/os/core/handlers/determinism-check.d.ts +0 -20
  124. package/dist/os/core/handlers/determinism-check.d.ts.map +0 -1
  125. package/dist/os/core/handlers/determinism-check.js +0 -289
  126. package/dist/os/core/handlers/determinism-check.js.map +0 -1
  127. package/dist/os/core/handlers/dev.d.ts +0 -10
  128. package/dist/os/core/handlers/dev.d.ts.map +0 -1
  129. package/dist/os/core/handlers/dev.js +0 -102
  130. package/dist/os/core/handlers/dev.js.map +0 -1
  131. package/dist/os/core/handlers/knowledge-compact.d.ts +0 -4
  132. package/dist/os/core/handlers/knowledge-compact.d.ts.map +0 -1
  133. package/dist/os/core/handlers/knowledge-compact.js +0 -198
  134. package/dist/os/core/handlers/knowledge-compact.js.map +0 -1
  135. package/dist/os/core/handlers/pinned-check.d.ts +0 -49
  136. package/dist/os/core/handlers/pinned-check.d.ts.map +0 -1
  137. package/dist/os/core/handlers/pinned-check.js +0 -159
  138. package/dist/os/core/handlers/pinned-check.js.map +0 -1
  139. package/dist/os/core/handlers/pinned-init.d.ts +0 -19
  140. package/dist/os/core/handlers/pinned-init.d.ts.map +0 -1
  141. package/dist/os/core/handlers/pinned-init.js +0 -283
  142. package/dist/os/core/handlers/pinned-init.js.map +0 -1
  143. package/dist/os/core/handlers/pinned-types.d.ts +0 -29
  144. package/dist/os/core/handlers/pinned-types.d.ts.map +0 -1
  145. package/dist/os/core/handlers/pinned-types.js +0 -16
  146. package/dist/os/core/handlers/pinned-types.js.map +0 -1
  147. package/dist/os/core/handlers/pinned-validate.d.ts +0 -4
  148. package/dist/os/core/handlers/pinned-validate.d.ts.map +0 -1
  149. package/dist/os/core/handlers/pinned-validate.js +0 -248
  150. package/dist/os/core/handlers/pinned-validate.js.map +0 -1
  151. package/dist/os/core/handlers/profile-resolve.d.ts +0 -13
  152. package/dist/os/core/handlers/profile-resolve.d.ts.map +0 -1
  153. package/dist/os/core/handlers/profile-resolve.js +0 -65
  154. package/dist/os/core/handlers/profile-resolve.js.map +0 -1
  155. package/dist/os/core/handlers/release-prepare.d.ts +0 -25
  156. package/dist/os/core/handlers/release-prepare.d.ts.map +0 -1
  157. package/dist/os/core/handlers/release-prepare.js +0 -228
  158. package/dist/os/core/handlers/release-prepare.js.map +0 -1
  159. package/dist/os/core/handlers/release-publish.d.ts +0 -13
  160. package/dist/os/core/handlers/release-publish.d.ts.map +0 -1
  161. package/dist/os/core/handlers/release-publish.js +0 -173
  162. package/dist/os/core/handlers/release-publish.js.map +0 -1
  163. package/dist/os/core/handlers/validate.d.ts +0 -26
  164. package/dist/os/core/handlers/validate.d.ts.map +0 -1
  165. package/dist/os/core/handlers/validate.js +0 -208
  166. package/dist/os/core/handlers/validate.js.map +0 -1
  167. package/dist/os/core/handlers/workspace-deps.d.ts +0 -12
  168. package/dist/os/core/handlers/workspace-deps.d.ts.map +0 -1
  169. package/dist/os/core/handlers/workspace-deps.js +0 -39
  170. package/dist/os/core/handlers/workspace-deps.js.map +0 -1
  171. package/dist/os/core/index.d.ts +0 -2
  172. package/dist/os/core/index.d.ts.map +0 -1
  173. package/dist/os/core/index.js +0 -13
  174. package/dist/os/core/index.js.map +0 -1
  175. package/dist/os/exploration/exploration.module.d.ts +0 -3
  176. package/dist/os/exploration/exploration.module.d.ts.map +0 -1
  177. package/dist/os/exploration/exploration.module.js +0 -82
  178. package/dist/os/exploration/exploration.module.js.map +0 -1
  179. package/dist/os/exploration/frontmatter-io.d.ts +0 -13
  180. package/dist/os/exploration/frontmatter-io.d.ts.map +0 -1
  181. package/dist/os/exploration/frontmatter-io.js +0 -61
  182. package/dist/os/exploration/frontmatter-io.js.map +0 -1
  183. package/dist/os/exploration/handlers/archive.d.ts +0 -4
  184. package/dist/os/exploration/handlers/archive.d.ts.map +0 -1
  185. package/dist/os/exploration/handlers/archive.js +0 -135
  186. package/dist/os/exploration/handlers/archive.js.map +0 -1
  187. package/dist/os/exploration/handlers/list.d.ts +0 -4
  188. package/dist/os/exploration/handlers/list.d.ts.map +0 -1
  189. package/dist/os/exploration/handlers/list.js +0 -56
  190. package/dist/os/exploration/handlers/list.js.map +0 -1
  191. package/dist/os/exploration/handlers/show.d.ts +0 -4
  192. package/dist/os/exploration/handlers/show.d.ts.map +0 -1
  193. package/dist/os/exploration/handlers/show.js +0 -91
  194. package/dist/os/exploration/handlers/show.js.map +0 -1
  195. package/dist/os/exploration/index.d.ts +0 -7
  196. package/dist/os/exploration/index.d.ts.map +0 -1
  197. package/dist/os/exploration/index.js +0 -17
  198. package/dist/os/exploration/index.js.map +0 -1
  199. package/dist/os/exploration/types.d.ts +0 -38
  200. package/dist/os/exploration/types.d.ts.map +0 -1
  201. package/dist/os/exploration/types.js +0 -23
  202. package/dist/os/exploration/types.js.map +0 -1
  203. package/dist/os/mission/handlers/archive.d.ts +0 -4
  204. package/dist/os/mission/handlers/archive.d.ts.map +0 -1
  205. package/dist/os/mission/handlers/archive.js +0 -356
  206. package/dist/os/mission/handlers/archive.js.map +0 -1
  207. package/dist/os/mission/index.d.ts +0 -2
  208. package/dist/os/mission/index.d.ts.map +0 -1
  209. package/dist/os/mission/index.js +0 -2
  210. package/dist/os/mission/index.js.map +0 -1
  211. package/dist/os/mission/mission.module.d.ts +0 -3
  212. package/dist/os/mission/mission.module.d.ts.map +0 -1
  213. package/dist/os/mission/mission.module.js +0 -44
  214. package/dist/os/mission/mission.module.js.map +0 -1
  215. package/dist/os/mission/types.d.ts +0 -23
  216. package/dist/os/mission/types.d.ts.map +0 -1
  217. package/dist/os/mission/types.js +0 -18
  218. package/dist/os/mission/types.js.map +0 -1
  219. package/dist/os/naming/index.d.ts +0 -3
  220. package/dist/os/naming/index.d.ts.map +0 -1
  221. package/dist/os/naming/index.js +0 -14
  222. package/dist/os/naming/index.js.map +0 -1
  223. package/dist/os/naming/naming-convention.d.ts +0 -25
  224. package/dist/os/naming/naming-convention.d.ts.map +0 -1
  225. package/dist/os/naming/naming-convention.js +0 -324
  226. package/dist/os/naming/naming-convention.js.map +0 -1
  227. package/dist/os/naming/naming.module.d.ts +0 -3
  228. package/dist/os/naming/naming.module.d.ts.map +0 -1
  229. package/dist/os/naming/naming.module.js +0 -33
  230. package/dist/os/naming/naming.module.js.map +0 -1
  231. package/dist/os/notes/index.d.ts +0 -2
  232. package/dist/os/notes/index.d.ts.map +0 -1
  233. package/dist/os/notes/index.js +0 -10
  234. package/dist/os/notes/index.js.map +0 -1
  235. package/dist/os/notes/notes.module.d.ts +0 -3
  236. package/dist/os/notes/notes.module.d.ts.map +0 -1
  237. package/dist/os/notes/notes.module.js +0 -83
  238. package/dist/os/notes/notes.module.js.map +0 -1
  239. package/dist/os/plan/frontmatter-io.d.ts +0 -12
  240. package/dist/os/plan/frontmatter-io.d.ts.map +0 -1
  241. package/dist/os/plan/frontmatter-io.js +0 -69
  242. package/dist/os/plan/frontmatter-io.js.map +0 -1
  243. package/dist/os/plan/handlers/archive.d.ts +0 -4
  244. package/dist/os/plan/handlers/archive.d.ts.map +0 -1
  245. package/dist/os/plan/handlers/archive.js +0 -206
  246. package/dist/os/plan/handlers/archive.js.map +0 -1
  247. package/dist/os/plan/index.d.ts +0 -6
  248. package/dist/os/plan/index.d.ts.map +0 -1
  249. package/dist/os/plan/index.js +0 -16
  250. package/dist/os/plan/index.js.map +0 -1
  251. package/dist/os/plan/plan.module.d.ts +0 -3
  252. package/dist/os/plan/plan.module.d.ts.map +0 -1
  253. package/dist/os/plan/plan.module.js +0 -44
  254. package/dist/os/plan/plan.module.js.map +0 -1
  255. package/dist/os/plan/types.d.ts +0 -12
  256. package/dist/os/plan/types.d.ts.map +0 -1
  257. package/dist/os/plan/types.js +0 -17
  258. package/dist/os/plan/types.js.map +0 -1
  259. package/dist/os/program/discovery.d.ts +0 -61
  260. package/dist/os/program/discovery.d.ts.map +0 -1
  261. package/dist/os/program/discovery.js +0 -236
  262. package/dist/os/program/discovery.js.map +0 -1
  263. package/dist/os/program/handlers/complete.d.ts +0 -12
  264. package/dist/os/program/handlers/complete.d.ts.map +0 -1
  265. package/dist/os/program/handlers/complete.js +0 -344
  266. package/dist/os/program/handlers/complete.js.map +0 -1
  267. package/dist/os/program/handlers/lease.d.ts +0 -13
  268. package/dist/os/program/handlers/lease.d.ts.map +0 -1
  269. package/dist/os/program/handlers/lease.js +0 -322
  270. package/dist/os/program/handlers/lease.js.map +0 -1
  271. package/dist/os/program/handlers/seal.d.ts +0 -12
  272. package/dist/os/program/handlers/seal.d.ts.map +0 -1
  273. package/dist/os/program/handlers/seal.js +0 -265
  274. package/dist/os/program/handlers/seal.js.map +0 -1
  275. package/dist/os/program/handlers/validate.d.ts +0 -14
  276. package/dist/os/program/handlers/validate.d.ts.map +0 -1
  277. package/dist/os/program/handlers/validate.js +0 -164
  278. package/dist/os/program/handlers/validate.js.map +0 -1
  279. package/dist/os/program/lease.d.ts +0 -39
  280. package/dist/os/program/lease.d.ts.map +0 -1
  281. package/dist/os/program/lease.js +0 -129
  282. package/dist/os/program/lease.js.map +0 -1
  283. package/dist/os/program/program.module.d.ts +0 -3
  284. package/dist/os/program/program.module.d.ts.map +0 -1
  285. package/dist/os/program/program.module.js +0 -201
  286. package/dist/os/program/program.module.js.map +0 -1
  287. package/dist/os/program/schemas.d.ts +0 -225
  288. package/dist/os/program/schemas.d.ts.map +0 -1
  289. package/dist/os/program/schemas.js +0 -174
  290. package/dist/os/program/schemas.js.map +0 -1
  291. package/dist/os/program/state.d.ts +0 -38
  292. package/dist/os/program/state.d.ts.map +0 -1
  293. package/dist/os/program/state.js +0 -189
  294. package/dist/os/program/state.js.map +0 -1
  295. package/dist/os/rfc/acceptance.d.ts +0 -15
  296. package/dist/os/rfc/acceptance.d.ts.map +0 -1
  297. package/dist/os/rfc/acceptance.js +0 -310
  298. package/dist/os/rfc/acceptance.js.map +0 -1
  299. package/dist/os/rfc/decision-log.d.ts +0 -6
  300. package/dist/os/rfc/decision-log.d.ts.map +0 -1
  301. package/dist/os/rfc/decision-log.js +0 -269
  302. package/dist/os/rfc/decision-log.js.map +0 -1
  303. package/dist/os/rfc/dna-trace.d.ts +0 -27
  304. package/dist/os/rfc/dna-trace.d.ts.map +0 -1
  305. package/dist/os/rfc/dna-trace.js +0 -214
  306. package/dist/os/rfc/dna-trace.js.map +0 -1
  307. package/dist/os/rfc/frontmatter-io.d.ts +0 -18
  308. package/dist/os/rfc/frontmatter-io.d.ts.map +0 -1
  309. package/dist/os/rfc/frontmatter-io.js +0 -110
  310. package/dist/os/rfc/frontmatter-io.js.map +0 -1
  311. package/dist/os/rfc/handlers/archive.d.ts +0 -25
  312. package/dist/os/rfc/handlers/archive.d.ts.map +0 -1
  313. package/dist/os/rfc/handlers/archive.js +0 -247
  314. package/dist/os/rfc/handlers/archive.js.map +0 -1
  315. package/dist/os/rfc/handlers/check.d.ts +0 -4
  316. package/dist/os/rfc/handlers/check.d.ts.map +0 -1
  317. package/dist/os/rfc/handlers/check.js +0 -195
  318. package/dist/os/rfc/handlers/check.js.map +0 -1
  319. package/dist/os/rfc/handlers/implement-stamp.d.ts +0 -4
  320. package/dist/os/rfc/handlers/implement-stamp.d.ts.map +0 -1
  321. package/dist/os/rfc/handlers/implement-stamp.js +0 -420
  322. package/dist/os/rfc/handlers/implement-stamp.js.map +0 -1
  323. package/dist/os/rfc/handlers/index-graph.d.ts +0 -13
  324. package/dist/os/rfc/handlers/index-graph.d.ts.map +0 -1
  325. package/dist/os/rfc/handlers/index-graph.js +0 -192
  326. package/dist/os/rfc/handlers/index-graph.js.map +0 -1
  327. package/dist/os/rfc/handlers/lifecycle.d.ts +0 -13
  328. package/dist/os/rfc/handlers/lifecycle.d.ts.map +0 -1
  329. package/dist/os/rfc/handlers/lifecycle.js +0 -155
  330. package/dist/os/rfc/handlers/lifecycle.js.map +0 -1
  331. package/dist/os/rfc/handlers/list-create.d.ts +0 -6
  332. package/dist/os/rfc/handlers/list-create.d.ts.map +0 -1
  333. package/dist/os/rfc/handlers/list-create.js +0 -240
  334. package/dist/os/rfc/handlers/list-create.js.map +0 -1
  335. package/dist/os/rfc/handlers/pipeline-status.d.ts +0 -26
  336. package/dist/os/rfc/handlers/pipeline-status.d.ts.map +0 -1
  337. package/dist/os/rfc/handlers/pipeline-status.js +0 -124
  338. package/dist/os/rfc/handlers/pipeline-status.js.map +0 -1
  339. package/dist/os/rfc/handlers/shared.d.ts +0 -22
  340. package/dist/os/rfc/handlers/shared.d.ts.map +0 -1
  341. package/dist/os/rfc/handlers/shared.js +0 -105
  342. package/dist/os/rfc/handlers/shared.js.map +0 -1
  343. package/dist/os/rfc/handlers/supersede-propose.d.ts +0 -4
  344. package/dist/os/rfc/handlers/supersede-propose.d.ts.map +0 -1
  345. package/dist/os/rfc/handlers/supersede-propose.js +0 -203
  346. package/dist/os/rfc/handlers/supersede-propose.js.map +0 -1
  347. package/dist/os/rfc/handlers/validate-rules.d.ts +0 -32
  348. package/dist/os/rfc/handlers/validate-rules.d.ts.map +0 -1
  349. package/dist/os/rfc/handlers/validate-rules.js +0 -590
  350. package/dist/os/rfc/handlers/validate-rules.js.map +0 -1
  351. package/dist/os/rfc/handlers/validate.d.ts +0 -4
  352. package/dist/os/rfc/handlers/validate.d.ts.map +0 -1
  353. package/dist/os/rfc/handlers/validate.js +0 -108
  354. package/dist/os/rfc/handlers/validate.js.map +0 -1
  355. package/dist/os/rfc/handlers.d.ts +0 -7
  356. package/dist/os/rfc/handlers.d.ts.map +0 -1
  357. package/dist/os/rfc/handlers.js +0 -19
  358. package/dist/os/rfc/handlers.js.map +0 -1
  359. package/dist/os/rfc/index.d.ts +0 -18
  360. package/dist/os/rfc/index.d.ts.map +0 -1
  361. package/dist/os/rfc/index.js +0 -24
  362. package/dist/os/rfc/index.js.map +0 -1
  363. package/dist/os/rfc/rfc.module.d.ts +0 -3
  364. package/dist/os/rfc/rfc.module.d.ts.map +0 -1
  365. package/dist/os/rfc/rfc.module.js +0 -366
  366. package/dist/os/rfc/rfc.module.js.map +0 -1
  367. package/dist/os/rfc/types.d.ts +0 -483
  368. package/dist/os/rfc/types.d.ts.map +0 -1
  369. package/dist/os/rfc/types.js +0 -100
  370. package/dist/os/rfc/types.js.map +0 -1
  371. package/dist/os/rfc/verification-evidence.d.ts +0 -8
  372. package/dist/os/rfc/verification-evidence.d.ts.map +0 -1
  373. package/dist/os/rfc/verification-evidence.js +0 -184
  374. package/dist/os/rfc/verification-evidence.js.map +0 -1
  375. package/dist/os/session/atif-parser.d.ts +0 -29
  376. package/dist/os/session/atif-parser.d.ts.map +0 -1
  377. package/dist/os/session/atif-parser.js +0 -140
  378. package/dist/os/session/atif-parser.js.map +0 -1
  379. package/dist/os/session/frontmatter-io.d.ts +0 -31
  380. package/dist/os/session/frontmatter-io.d.ts.map +0 -1
  381. package/dist/os/session/frontmatter-io.js +0 -146
  382. package/dist/os/session/frontmatter-io.js.map +0 -1
  383. package/dist/os/session/handlers/archive.d.ts +0 -4
  384. package/dist/os/session/handlers/archive.d.ts.map +0 -1
  385. package/dist/os/session/handlers/archive.js +0 -241
  386. package/dist/os/session/handlers/archive.js.map +0 -1
  387. package/dist/os/session/handlers/list.d.ts +0 -4
  388. package/dist/os/session/handlers/list.d.ts.map +0 -1
  389. package/dist/os/session/handlers/list.js +0 -147
  390. package/dist/os/session/handlers/list.js.map +0 -1
  391. package/dist/os/session/handlers/save.d.ts +0 -6
  392. package/dist/os/session/handlers/save.d.ts.map +0 -1
  393. package/dist/os/session/handlers/save.js +0 -297
  394. package/dist/os/session/handlers/save.js.map +0 -1
  395. package/dist/os/session/handlers/validate.d.ts +0 -4
  396. package/dist/os/session/handlers/validate.d.ts.map +0 -1
  397. package/dist/os/session/handlers/validate.js +0 -188
  398. package/dist/os/session/handlers/validate.js.map +0 -1
  399. package/dist/os/session/index.d.ts +0 -9
  400. package/dist/os/session/index.d.ts.map +0 -1
  401. package/dist/os/session/index.js +0 -20
  402. package/dist/os/session/index.js.map +0 -1
  403. package/dist/os/session/session.module.d.ts +0 -3
  404. package/dist/os/session/session.module.d.ts.map +0 -1
  405. package/dist/os/session/session.module.js +0 -115
  406. package/dist/os/session/session.module.js.map +0 -1
  407. package/dist/os/session/types.d.ts +0 -101
  408. package/dist/os/session/types.d.ts.map +0 -1
  409. package/dist/os/session/types.js +0 -52
  410. package/dist/os/session/types.js.map +0 -1
  411. package/dist/os/spec/live-spec-list.d.ts +0 -4
  412. package/dist/os/spec/live-spec-list.d.ts.map +0 -1
  413. package/dist/os/spec/live-spec-list.js +0 -64
  414. package/dist/os/spec/live-spec-list.js.map +0 -1
  415. package/dist/os/spec/live-spec-merge.d.ts +0 -4
  416. package/dist/os/spec/live-spec-merge.d.ts.map +0 -1
  417. package/dist/os/spec/live-spec-merge.js +0 -345
  418. package/dist/os/spec/live-spec-merge.js.map +0 -1
  419. package/dist/os/spec/live-spec-show.d.ts +0 -4
  420. package/dist/os/spec/live-spec-show.d.ts.map +0 -1
  421. package/dist/os/spec/live-spec-show.js +0 -99
  422. package/dist/os/spec/live-spec-show.js.map +0 -1
  423. package/dist/os/spec/live-spec-types.d.ts +0 -71
  424. package/dist/os/spec/live-spec-types.d.ts.map +0 -1
  425. package/dist/os/spec/live-spec-types.js +0 -14
  426. package/dist/os/spec/live-spec-types.js.map +0 -1
  427. package/dist/os/spec/live-spec-validate.d.ts +0 -4
  428. package/dist/os/spec/live-spec-validate.d.ts.map +0 -1
  429. package/dist/os/spec/live-spec-validate.js +0 -140
  430. package/dist/os/spec/live-spec-validate.js.map +0 -1
  431. package/dist/os/spec/spec-materialize.d.ts +0 -21
  432. package/dist/os/spec/spec-materialize.d.ts.map +0 -1
  433. package/dist/os/spec/spec-materialize.js +0 -336
  434. package/dist/os/spec/spec-materialize.js.map +0 -1
  435. package/dist/os/spec/spec-schema.d.ts +0 -126
  436. package/dist/os/spec/spec-schema.d.ts.map +0 -1
  437. package/dist/os/spec/spec-schema.js +0 -118
  438. package/dist/os/spec/spec-schema.js.map +0 -1
  439. package/dist/os/spec/spec-status.d.ts +0 -33
  440. package/dist/os/spec/spec-status.d.ts.map +0 -1
  441. package/dist/os/spec/spec-status.js +0 -222
  442. package/dist/os/spec/spec-status.js.map +0 -1
  443. package/dist/os/spec/spec-validate.d.ts +0 -4
  444. package/dist/os/spec/spec-validate.d.ts.map +0 -1
  445. package/dist/os/spec/spec-validate.js +0 -435
  446. package/dist/os/spec/spec-validate.js.map +0 -1
  447. package/dist/os/spec/spec.module.d.ts +0 -3
  448. package/dist/os/spec/spec.module.d.ts.map +0 -1
  449. package/dist/os/spec/spec.module.js +0 -119
  450. package/dist/os/spec/spec.module.js.map +0 -1
  451. package/dist/os/werkstatt/handlers/lock.d.ts +0 -10
  452. package/dist/os/werkstatt/handlers/lock.d.ts.map +0 -1
  453. package/dist/os/werkstatt/handlers/lock.js +0 -153
  454. package/dist/os/werkstatt/handlers/lock.js.map +0 -1
  455. package/dist/os/werkstatt/handlers/schema.d.ts +0 -33
  456. package/dist/os/werkstatt/handlers/schema.d.ts.map +0 -1
  457. package/dist/os/werkstatt/handlers/schema.js +0 -42
  458. package/dist/os/werkstatt/handlers/schema.js.map +0 -1
  459. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.d.ts +0 -15
  460. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.d.ts.map +0 -1
  461. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.js +0 -144
  462. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.js.map +0 -1
  463. package/dist/os/werkstatt/handlers/werkstatt-lock-status.d.ts +0 -18
  464. package/dist/os/werkstatt/handlers/werkstatt-lock-status.d.ts.map +0 -1
  465. package/dist/os/werkstatt/handlers/werkstatt-lock-status.js +0 -43
  466. package/dist/os/werkstatt/handlers/werkstatt-lock-status.js.map +0 -1
  467. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.d.ts +0 -11
  468. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.d.ts.map +0 -1
  469. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.js +0 -79
  470. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.js.map +0 -1
  471. package/dist/os/werkstatt/index.d.ts +0 -7
  472. package/dist/os/werkstatt/index.d.ts.map +0 -1
  473. package/dist/os/werkstatt/index.js +0 -18
  474. package/dist/os/werkstatt/index.js.map +0 -1
  475. package/dist/os/werkstatt/werkstatt.module.d.ts +0 -3
  476. package/dist/os/werkstatt/werkstatt.module.d.ts.map +0 -1
  477. package/dist/os/werkstatt/werkstatt.module.js +0 -58
  478. package/dist/os/werkstatt/werkstatt.module.js.map +0 -1
  479. package/dist/os/workflow/handlers.d.ts +0 -12
  480. package/dist/os/workflow/handlers.d.ts.map +0 -1
  481. package/dist/os/workflow/handlers.js +0 -254
  482. package/dist/os/workflow/handlers.js.map +0 -1
  483. package/dist/os/workflow/index.d.ts +0 -4
  484. package/dist/os/workflow/index.d.ts.map +0 -1
  485. package/dist/os/workflow/index.js +0 -18
  486. package/dist/os/workflow/index.js.map +0 -1
  487. package/dist/os/workflow/types.d.ts +0 -69
  488. package/dist/os/workflow/types.d.ts.map +0 -1
  489. package/dist/os/workflow/types.js +0 -23
  490. package/dist/os/workflow/types.js.map +0 -1
  491. package/dist/os/workflow/workflow.module.d.ts +0 -3
  492. package/dist/os/workflow/workflow.module.d.ts.map +0 -1
  493. package/dist/os/workflow/workflow.module.js +0 -48
  494. package/dist/os/workflow/workflow.module.js.map +0 -1
  495. package/dist/src/cli-output.d.ts +0 -5
  496. package/dist/src/cli-output.d.ts.map +0 -1
  497. package/dist/src/cli-output.js +0 -53
  498. package/dist/src/cli-output.js.map +0 -1
  499. package/dist/src/config/forge-config.d.ts +0 -242
  500. package/dist/src/config/forge-config.d.ts.map +0 -1
  501. package/dist/src/config/forge-config.js +0 -359
  502. package/dist/src/config/forge-config.js.map +0 -1
  503. package/dist/src/forge-module.d.ts +0 -16
  504. package/dist/src/forge-module.d.ts.map +0 -1
  505. package/dist/src/forge-module.js +0 -15
  506. package/dist/src/forge-module.js.map +0 -1
  507. package/dist/src/index.d.ts +0 -36
  508. package/dist/src/index.d.ts.map +0 -1
  509. package/dist/src/index.js +0 -56
  510. package/dist/src/index.js.map +0 -1
  511. package/dist/src/knowledge/budgets.d.ts +0 -38
  512. package/dist/src/knowledge/budgets.d.ts.map +0 -1
  513. package/dist/src/knowledge/budgets.js +0 -157
  514. package/dist/src/knowledge/budgets.js.map +0 -1
  515. package/dist/src/knowledge/compact.d.ts +0 -47
  516. package/dist/src/knowledge/compact.d.ts.map +0 -1
  517. package/dist/src/knowledge/compact.js +0 -320
  518. package/dist/src/knowledge/compact.js.map +0 -1
  519. package/dist/src/knowledge/index.d.ts +0 -7
  520. package/dist/src/knowledge/index.d.ts.map +0 -1
  521. package/dist/src/knowledge/index.js +0 -19
  522. package/dist/src/knowledge/index.js.map +0 -1
  523. package/dist/src/knowledge/parse.d.ts +0 -3
  524. package/dist/src/knowledge/parse.d.ts.map +0 -1
  525. package/dist/src/knowledge/parse.js +0 -205
  526. package/dist/src/knowledge/parse.js.map +0 -1
  527. package/dist/src/knowledge/promote.d.ts +0 -37
  528. package/dist/src/knowledge/promote.d.ts.map +0 -1
  529. package/dist/src/knowledge/promote.js +0 -120
  530. package/dist/src/knowledge/promote.js.map +0 -1
  531. package/dist/src/knowledge/schema.d.ts +0 -61
  532. package/dist/src/knowledge/schema.d.ts.map +0 -1
  533. package/dist/src/knowledge/schema.js +0 -64
  534. package/dist/src/knowledge/schema.js.map +0 -1
  535. package/dist/src/knowledge/serialize.d.ts +0 -3
  536. package/dist/src/knowledge/serialize.d.ts.map +0 -1
  537. package/dist/src/knowledge/serialize.js +0 -67
  538. package/dist/src/knowledge/serialize.js.map +0 -1
  539. package/dist/src/migration-adapters/git-utils.d.ts +0 -3
  540. package/dist/src/migration-adapters/git-utils.d.ts.map +0 -1
  541. package/dist/src/migration-adapters/git-utils.js +0 -56
  542. package/dist/src/migration-adapters/git-utils.js.map +0 -1
  543. package/dist/src/migration-adapters/ignored-files.d.ts +0 -12
  544. package/dist/src/migration-adapters/ignored-files.d.ts.map +0 -1
  545. package/dist/src/migration-adapters/ignored-files.js +0 -190
  546. package/dist/src/migration-adapters/ignored-files.js.map +0 -1
  547. package/dist/src/migration-adapters/index.d.ts +0 -8
  548. package/dist/src/migration-adapters/index.d.ts.map +0 -1
  549. package/dist/src/migration-adapters/index.js +0 -17
  550. package/dist/src/migration-adapters/index.js.map +0 -1
  551. package/dist/src/migration-adapters/node-typescript-pnpm/index.d.ts +0 -3
  552. package/dist/src/migration-adapters/node-typescript-pnpm/index.d.ts.map +0 -1
  553. package/dist/src/migration-adapters/node-typescript-pnpm/index.js +0 -141
  554. package/dist/src/migration-adapters/node-typescript-pnpm/index.js.map +0 -1
  555. package/dist/src/migration-adapters/phaser-pnpm/index.d.ts +0 -3
  556. package/dist/src/migration-adapters/phaser-pnpm/index.d.ts.map +0 -1
  557. package/dist/src/migration-adapters/phaser-pnpm/index.js +0 -142
  558. package/dist/src/migration-adapters/phaser-pnpm/index.js.map +0 -1
  559. package/dist/src/migration-adapters/registry.d.ts +0 -6
  560. package/dist/src/migration-adapters/registry.d.ts.map +0 -1
  561. package/dist/src/migration-adapters/registry.js +0 -55
  562. package/dist/src/migration-adapters/registry.js.map +0 -1
  563. package/dist/src/migration-adapters/types.d.ts +0 -35
  564. package/dist/src/migration-adapters/types.d.ts.map +0 -1
  565. package/dist/src/migration-adapters/types.js +0 -31
  566. package/dist/src/migration-adapters/types.js.map +0 -1
  567. package/dist/src/onboarding/agents-generate.d.ts +0 -30
  568. package/dist/src/onboarding/agents-generate.d.ts.map +0 -1
  569. package/dist/src/onboarding/agents-generate.js +0 -352
  570. package/dist/src/onboarding/agents-generate.js.map +0 -1
  571. package/dist/src/onboarding/create.d.ts +0 -12
  572. package/dist/src/onboarding/create.d.ts.map +0 -1
  573. package/dist/src/onboarding/create.js +0 -318
  574. package/dist/src/onboarding/create.js.map +0 -1
  575. package/dist/src/onboarding/doctor.d.ts +0 -45
  576. package/dist/src/onboarding/doctor.d.ts.map +0 -1
  577. package/dist/src/onboarding/doctor.js +0 -1108
  578. package/dist/src/onboarding/doctor.js.map +0 -1
  579. package/dist/src/onboarding/init.d.ts +0 -32
  580. package/dist/src/onboarding/init.d.ts.map +0 -1
  581. package/dist/src/onboarding/init.js +0 -291
  582. package/dist/src/onboarding/init.js.map +0 -1
  583. package/dist/src/onboarding/invariant-engine.d.ts +0 -17
  584. package/dist/src/onboarding/invariant-engine.d.ts.map +0 -1
  585. package/dist/src/onboarding/invariant-engine.js +0 -416
  586. package/dist/src/onboarding/invariant-engine.js.map +0 -1
  587. package/dist/src/onboarding/memory-scaffold.d.ts +0 -18
  588. package/dist/src/onboarding/memory-scaffold.d.ts.map +0 -1
  589. package/dist/src/onboarding/memory-scaffold.js +0 -151
  590. package/dist/src/onboarding/memory-scaffold.js.map +0 -1
  591. package/dist/src/onboarding/nested-agents-generate.d.ts +0 -18
  592. package/dist/src/onboarding/nested-agents-generate.d.ts.map +0 -1
  593. package/dist/src/onboarding/nested-agents-generate.js +0 -69
  594. package/dist/src/onboarding/nested-agents-generate.js.map +0 -1
  595. package/dist/src/onboarding/nested-agents-templates.d.ts +0 -26
  596. package/dist/src/onboarding/nested-agents-templates.d.ts.map +0 -1
  597. package/dist/src/onboarding/nested-agents-templates.js +0 -178
  598. package/dist/src/onboarding/nested-agents-templates.js.map +0 -1
  599. package/dist/src/onboarding/profile-validate.d.ts +0 -13
  600. package/dist/src/onboarding/profile-validate.d.ts.map +0 -1
  601. package/dist/src/onboarding/profile-validate.js +0 -109
  602. package/dist/src/onboarding/profile-validate.js.map +0 -1
  603. package/dist/src/onboarding/scaffold-project.d.ts +0 -12
  604. package/dist/src/onboarding/scaffold-project.d.ts.map +0 -1
  605. package/dist/src/onboarding/scaffold-project.js +0 -248
  606. package/dist/src/onboarding/scaffold-project.js.map +0 -1
  607. package/dist/src/onboarding/scaffold.d.ts +0 -15
  608. package/dist/src/onboarding/scaffold.d.ts.map +0 -1
  609. package/dist/src/onboarding/scaffold.js +0 -120
  610. package/dist/src/onboarding/scaffold.js.map +0 -1
  611. package/dist/src/onboarding/upgrade.d.ts +0 -25
  612. package/dist/src/onboarding/upgrade.d.ts.map +0 -1
  613. package/dist/src/onboarding/upgrade.js +0 -391
  614. package/dist/src/onboarding/upgrade.js.map +0 -1
  615. package/dist/src/onboarding/workspace-discovery.d.ts +0 -11
  616. package/dist/src/onboarding/workspace-discovery.d.ts.map +0 -1
  617. package/dist/src/onboarding/workspace-discovery.js +0 -138
  618. package/dist/src/onboarding/workspace-discovery.js.map +0 -1
  619. package/dist/src/profiles/profile-schema.d.ts +0 -351
  620. package/dist/src/profiles/profile-schema.d.ts.map +0 -1
  621. package/dist/src/profiles/profile-schema.js +0 -201
  622. package/dist/src/profiles/profile-schema.js.map +0 -1
  623. package/dist/src/profiles/stack-profile.d.ts +0 -168
  624. package/dist/src/profiles/stack-profile.d.ts.map +0 -1
  625. package/dist/src/profiles/stack-profile.js +0 -144
  626. package/dist/src/profiles/stack-profile.js.map +0 -1
  627. package/dist/src/profiles/terminology-utils.d.ts +0 -8
  628. package/dist/src/profiles/terminology-utils.d.ts.map +0 -1
  629. package/dist/src/profiles/terminology-utils.js +0 -31
  630. package/dist/src/profiles/terminology-utils.js.map +0 -1
  631. package/dist/src/registry.d.ts +0 -38
  632. package/dist/src/registry.d.ts.map +0 -1
  633. package/dist/src/registry.js +0 -135
  634. package/dist/src/registry.js.map +0 -1
  635. package/dist/src/skill-schema.d.ts +0 -30
  636. package/dist/src/skill-schema.d.ts.map +0 -1
  637. package/dist/src/skill-schema.js +0 -34
  638. package/dist/src/skill-schema.js.map +0 -1
  639. package/dist/src/types.d.ts +0 -152
  640. package/dist/src/types.d.ts.map +0 -1
  641. package/dist/src/types.js +0 -17
  642. package/dist/src/types.js.map +0 -1
  643. package/dist/src/utils/fs-atomic.d.ts +0 -7
  644. package/dist/src/utils/fs-atomic.d.ts.map +0 -1
  645. package/dist/src/utils/fs-atomic.js +0 -81
  646. package/dist/src/utils/fs-atomic.js.map +0 -1
  647. package/dist/src/utils/fs-idempotent.d.ts +0 -2
  648. package/dist/src/utils/fs-idempotent.d.ts.map +0 -1
  649. package/dist/src/utils/fs-idempotent.js +0 -39
  650. package/dist/src/utils/fs-idempotent.js.map +0 -1
  651. package/dist/src/utils/fs-trash-sync.d.ts +0 -2
  652. package/dist/src/utils/fs-trash-sync.d.ts.map +0 -1
  653. package/dist/src/utils/fs-trash-sync.js +0 -34
  654. package/dist/src/utils/fs-trash-sync.js.map +0 -1
  655. package/dist/src/utils/fs-trash.d.ts +0 -2
  656. package/dist/src/utils/fs-trash.d.ts.map +0 -1
  657. package/dist/src/utils/fs-trash.js +0 -24
  658. package/dist/src/utils/fs-trash.js.map +0 -1
  659. package/dist/src/utils/fs.d.ts +0 -8
  660. package/dist/src/utils/fs.d.ts.map +0 -1
  661. package/dist/src/utils/fs.js +0 -60
  662. package/dist/src/utils/fs.js.map +0 -1
  663. package/dist/src/utils/generated-marker.d.ts +0 -21
  664. package/dist/src/utils/generated-marker.d.ts.map +0 -1
  665. package/dist/src/utils/generated-marker.js +0 -128
  666. package/dist/src/utils/generated-marker.js.map +0 -1
  667. package/dist/src/utils/hash.d.ts +0 -2
  668. package/dist/src/utils/hash.d.ts.map +0 -1
  669. package/dist/src/utils/hash.js +0 -18
  670. package/dist/src/utils/hash.js.map +0 -1
  671. package/dist/src/utils/index.d.ts +0 -9
  672. package/dist/src/utils/index.d.ts.map +0 -1
  673. package/dist/src/utils/index.js +0 -21
  674. package/dist/src/utils/index.js.map +0 -1
  675. package/dist/src/utils/string-utils.d.ts +0 -2
  676. package/dist/src/utils/string-utils.d.ts.map +0 -1
  677. package/dist/src/utils/string-utils.js +0 -19
  678. package/dist/src/utils/string-utils.js.map +0 -1
  679. package/dist/src/validators/note-frontmatter-validate.d.ts +0 -20
  680. package/dist/src/validators/note-frontmatter-validate.d.ts.map +0 -1
  681. package/dist/src/validators/note-frontmatter-validate.js +0 -117
  682. package/dist/src/validators/note-frontmatter-validate.js.map +0 -1
  683. package/dist/src/validators/note-link-validate.d.ts +0 -21
  684. package/dist/src/validators/note-link-validate.d.ts.map +0 -1
  685. package/dist/src/validators/note-link-validate.js +0 -121
  686. package/dist/src/validators/note-link-validate.js.map +0 -1
  687. package/dist/src/validators/note-orphan-detect.d.ts +0 -19
  688. package/dist/src/validators/note-orphan-detect.d.ts.map +0 -1
  689. package/dist/src/validators/note-orphan-detect.js +0 -123
  690. package/dist/src/validators/note-orphan-detect.js.map +0 -1
  691. package/dist/src/validators/port-validate.d.ts +0 -12
  692. package/dist/src/validators/port-validate.d.ts.map +0 -1
  693. package/dist/src/validators/port-validate.js +0 -78
  694. package/dist/src/validators/port-validate.js.map +0 -1
  695. package/dist/src/validators/skill-validate.d.ts +0 -29
  696. package/dist/src/validators/skill-validate.d.ts.map +0 -1
  697. package/dist/src/validators/skill-validate.js +0 -689
  698. package/dist/src/validators/skill-validate.js.map +0 -1
@@ -1,152 +0,0 @@
1
- export type ForgeFlagValue = boolean | string | string[];
2
- export interface ForgeCommandInput {
3
- argv: string[];
4
- flags: Record<string, ForgeFlagValue>;
5
- }
6
- export interface ForgeCommandTiming {
7
- durationMs?: number;
8
- startedAt?: string;
9
- endedAt?: string;
10
- }
11
- export interface ForgeNextStep {
12
- action: string;
13
- kind: "required" | "optional";
14
- }
15
- export interface ForgeCommandResult<TData = unknown> {
16
- data?: TData;
17
- nextSteps?: ForgeNextStep[];
18
- exitCode?: number;
19
- summary?: string;
20
- timing?: ForgeCommandTiming;
21
- }
22
- export interface ForgeFlagSpec {
23
- kind: "boolean" | "string" | "string[]";
24
- required?: boolean;
25
- default?: ForgeFlagValue;
26
- description: string;
27
- }
28
- export type ForgeCommandScope = "app" | "workspace";
29
- export interface ForgeCommandMetadata {
30
- description: string;
31
- scope: ForgeCommandScope;
32
- mutatesState?: boolean;
33
- requiresNetwork?: boolean;
34
- supportsAllSites?: boolean;
35
- timeoutMs?: number;
36
- expectedDurationMs?: number;
37
- longRunning?: boolean;
38
- cacheable?: boolean;
39
- /**
40
- * RFC-0518: declarative gate metadata. Optional. Structurally compatible
41
- * with GateMetadata from @warpgogol/site-kernel. Does NOT affect execution.
42
- */
43
- gate?: GateMetadata;
44
- }
45
- export type GateSeverity = "error" | "warning" | "mixed";
46
- export type GatePhase = "author" | "postbuild" | "workspace" | "mission" | "release";
47
- export interface GateConditional {
48
- kind: "entitlement" | "flag" | "config";
49
- ref: string;
50
- description: string;
51
- }
52
- export interface GateMetadata {
53
- severity: GateSeverity;
54
- phase: GatePhase;
55
- conditional?: GateConditional;
56
- surfaces?: string[];
57
- rules?: string[];
58
- blocks?: string[];
59
- }
60
- export interface ForgeRegisteredCommandInfo extends ForgeCommandMetadata {
61
- name: string;
62
- provider: "workspace" | "site";
63
- siteName?: string;
64
- module?: string;
65
- flags?: Record<string, ForgeFlagSpec>;
66
- reads?: string[];
67
- writes?: string[];
68
- }
69
- export interface ForgeCommandDefinition<TData = unknown> extends ForgeCommandMetadata {
70
- name: string;
71
- flags?: Record<string, ForgeFlagSpec>;
72
- reads?: string[];
73
- writes?: string[];
74
- execute(input: ForgeCommandInput, context: ForgeRuntimeContext): Promise<void | ForgeCommandResult<TData>> | void | ForgeCommandResult<TData>;
75
- }
76
- export type DiagnosticSeverity = "error" | "warning" | "info";
77
- export interface DiagnosticEvidence {
78
- kind: "rule" | "rendered" | "source" | "config" | "cache" | "runtime";
79
- ruleFile?: string;
80
- ruleId?: string;
81
- file?: string;
82
- url?: string;
83
- snippet?: string;
84
- }
85
- export interface Diagnostic {
86
- ruleId: string;
87
- severity: DiagnosticSeverity;
88
- message: string;
89
- file?: string;
90
- line?: number;
91
- column?: number;
92
- fixHint?: string;
93
- evidence?: DiagnosticEvidence[];
94
- data?: Record<string, unknown>;
95
- id?: string;
96
- blockId?: string;
97
- suggestion?: string;
98
- }
99
- export interface CheckResult {
100
- command: string;
101
- status: "pass" | "warn" | "fail";
102
- diagnostics: Diagnostic[];
103
- summary: {
104
- error: number;
105
- warning: number;
106
- info: number;
107
- };
108
- }
109
- export interface ForgeLogger {
110
- section(message: string, details?: unknown): void;
111
- info(message: string, details?: unknown): void;
112
- warn(message: string, details?: unknown): void;
113
- error(message: string, details?: unknown): void;
114
- success(message: string, details?: unknown): void;
115
- }
116
- export interface CommandRegistry {
117
- listCommandNames(): string[];
118
- listCommands(): ForgeRegisteredCommandInfo[];
119
- getCommand(name: string): ForgeCommandDefinition | undefined;
120
- }
121
- export type ForgeOutputFormat = "pretty" | "json";
122
- export interface ForgeSiteContext {
123
- name: string;
124
- directory: string;
125
- toolsDirectory: string;
126
- configPath?: string;
127
- packageName?: string;
128
- }
129
- export interface ForgeRuntimeContext {
130
- workspaceRoot: string;
131
- logger: ForgeLogger;
132
- dryRun: boolean;
133
- outputFormat: ForgeOutputFormat;
134
- /**
135
- * Optional command registry — provided by the runner (forge CLI or site-kernel).
136
- * Forge commands that need to discover other commands (e.g. rfc lifecycle validation)
137
- * access this through the context instead of importing a kernel-specific function.
138
- */
139
- commandRegistry?: CommandRegistry;
140
- /** Optional target site/app context — provided when running in app-scoped mode. */
141
- site?: ForgeSiteContext;
142
- /** True only when --site <name> was passed explicitly by the caller. */
143
- siteExplicit?: boolean;
144
- /**
145
- * Optional forge root override — provided when a command is called from
146
- * another command (e.g. forge.create delegates to forge.init and forge.scaffold
147
- * in a new directory where resolveForgeRoot would fail). When set, handlers
148
- * use this instead of calling resolveForgeRoot(workspaceRoot).
149
- */
150
- forgeRoot?: string;
151
- }
152
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
package/dist/src/types.js DELETED
@@ -1,17 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Canonical forge runtime types — autonomous, no @warpgogol/* dependencies.
4
- Structurally compatible with @warpgogol/site-kernel types so that forge modules
5
- can be registered in a Warpgogol kernel without direct dependency.</purpose>
6
- <non-goals>
7
- <item>Do not import from @warpgogol/site-kernel or any @warpgogol/* package.</item>
8
- <item>Do not add Warpgogol-specific fields to ForgeRuntimeContext — keep it minimal and portable.</item>
9
- </non-goals>
10
- </MODULE_CONTRACT>
11
- <CHANGE_SUMMARY>
12
- <item>Initial canonical forge types: ForgeCommandInput, ForgeCommandResult, ForgeRuntimeContext, ForgeFlagSpec, Diagnostic, CommandRegistry, ForgeLogger.</item>
13
- <item>RFC-0518: add GateMetadata, GateSeverity, GatePhase, GateConditional types and optional gate field to ForgeCommandMetadata (structurally compatible with @warpgogol/site-kernel).</item>
14
- </CHANGE_SUMMARY>
15
- */
16
- export {};
17
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;EAcE"}
@@ -1,7 +0,0 @@
1
- import { rename as fsRename } from "node:fs/promises";
2
- export interface WriteFileAtomicOptions {
3
- retries?: number;
4
- }
5
- export declare function __setRenameImplForTests(impl: typeof fsRename | undefined): void;
6
- export declare function writeFileAtomic(filePath: string, content: string | Uint8Array, options?: WriteFileAtomicOptions): Promise<void>;
7
- //# sourceMappingURL=fs-atomic.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fs-atomic.d.ts","sourceRoot":"","sources":["../../../src/utils/fs-atomic.ts"],"names":[],"mappings":"AAcA,OAAO,EAAa,MAAM,IAAI,QAAQ,EAAU,MAAM,kBAAkB,CAAC;AAKzE,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAID,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,OAAO,QAAQ,GAAG,SAAS,GAAG,IAAI,CAE/E;AAuBD,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GAAG,UAAU,EAC5B,OAAO,CAAC,EAAE,sBAAsB,GAC/B,OAAO,CAAC,IAAI,CAAC,CAsCf"}
@@ -1,81 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Atomic file-write primitive — canonical forge utility. Writes to a temp
4
- file then renames, with bounded retry for Windows EPERM/EBUSY.</purpose>
5
- <non-goals>
6
- <item>Do not provide cross-process locks — convergent atomic writes are sufficient.</item>
7
- <item>Do not fall back to non-atomic writes — fail loudly.</item>
8
- </non-goals>
9
- </MODULE_CONTRACT>
10
- <CHANGE_SUMMARY>
11
- <item>Moved from @warpgogol/site-kernel/fs-atomic to forge as canonical source (dependency inversion).</item>
12
- </CHANGE_SUMMARY>
13
- */
14
- import { writeFile, rename as fsRename, unlink } from "node:fs/promises";
15
- import { existsSync } from "node:fs";
16
- import { dirname, join, basename } from "node:path";
17
- import { randomBytes } from "node:crypto";
18
- let renameImpl = fsRename;
19
- export function __setRenameImplForTests(impl) {
20
- renameImpl = impl ?? fsRename;
21
- }
22
- const DEFAULT_RETRIES = 10;
23
- const RETRY_BACKOFF_MS = 50;
24
- const RETRYABLE_CODES = new Set(["EPERM", "EBUSY"]);
25
- function isRetryableError(error) {
26
- if (!error || typeof error !== "object")
27
- return false;
28
- const code = error.code;
29
- return typeof code === "string" && RETRYABLE_CODES.has(code);
30
- }
31
- function sleep(ms) {
32
- return new Promise((resolve) => setTimeout(resolve, ms));
33
- }
34
- function makeTempPath(filePath) {
35
- const dir = dirname(filePath);
36
- const name = basename(filePath);
37
- const random = randomBytes(6).toString("hex");
38
- return join(dir, `${name}.${random}.tmp`);
39
- }
40
- export async function writeFileAtomic(filePath, content, options) {
41
- const retries = options?.retries ?? DEFAULT_RETRIES;
42
- const tempPath = makeTempPath(filePath);
43
- let tempWritten = false;
44
- try {
45
- await writeFile(tempPath, content);
46
- tempWritten = true;
47
- let attempt = 0;
48
- for (;;) {
49
- try {
50
- await renameImpl(tempPath, filePath);
51
- return;
52
- }
53
- catch (error) {
54
- if (attempt >= retries || !isRetryableError(error)) {
55
- throw error;
56
- }
57
- attempt += 1;
58
- if (existsSync(filePath)) {
59
- try {
60
- await unlink(filePath);
61
- }
62
- catch {
63
- // If unlink also fails, the retry loop will try again.
64
- }
65
- }
66
- await sleep(RETRY_BACKOFF_MS * attempt);
67
- }
68
- }
69
- }
70
- finally {
71
- if (tempWritten) {
72
- try {
73
- await unlink(tempPath);
74
- }
75
- catch {
76
- // Expected in the success path (temp file already renamed away).
77
- }
78
- }
79
- }
80
- }
81
- //# sourceMappingURL=fs-atomic.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fs-atomic.js","sourceRoot":"","sources":["../../../src/utils/fs-atomic.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export declare function writeFileIfChanged(filePath: string, content: string | Uint8Array): Promise<"written" | "unchanged">;
2
- //# sourceMappingURL=fs-idempotent.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fs-idempotent.d.ts","sourceRoot":"","sources":["../../../src/utils/fs-idempotent.ts"],"names":[],"mappings":"AAmBA,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GAAG,UAAU,GAC3B,OAAO,CAAC,SAAS,GAAG,WAAW,CAAC,CAkBlC"}
@@ -1,39 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Idempotent file-write primitive — canonical forge utility. Writes only
4
- when file content differs, delegating to writeFileAtomic for the actual write.
5
- Reduces unnecessary disk writes and git churn in Compass and Werkstatt commands.</purpose>
6
- <non-goals>
7
- <item>Do not provide cross-process locks — convergent atomic writes are sufficient.</item>
8
- <item>Do not fall back to non-atomic writes — fail loudly.</item>
9
- </non-goals>
10
- </MODULE_CONTRACT>
11
- <CHANGE_SUMMARY>
12
- <item>RFC-0556: moved from @warpgogol/site-kernel/fs-idempotent to forge as canonical source (dependency inversion).</item>
13
- <item>RFC-0603: extended to accept Uint8Array (Buffer) content for idempotent binary file writes — PNG preview images.</item>
14
- </CHANGE_SUMMARY>
15
- */
16
- import { readFile } from "node:fs/promises";
17
- import { writeFileAtomic } from "./fs-atomic.js";
18
- export async function writeFileIfChanged(filePath, content) {
19
- try {
20
- if (typeof content === "string") {
21
- const existing = await readFile(filePath, "utf8");
22
- if (existing === content) {
23
- return "unchanged";
24
- }
25
- }
26
- else {
27
- const existing = await readFile(filePath);
28
- if (Buffer.compare(existing, Buffer.from(content)) === 0) {
29
- return "unchanged";
30
- }
31
- }
32
- }
33
- catch {
34
- // File does not exist — proceed to write.
35
- }
36
- await writeFileAtomic(filePath, content);
37
- return "written";
38
- }
39
- //# sourceMappingURL=fs-idempotent.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fs-idempotent.js","sourceRoot":"","sources":["../../../src/utils/fs-idempotent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;EAcE;AAEF,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,QAAgB,EAChB,OAA4B;IAE5B,IAAI,CAAC;QACH,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAClD,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;gBACzB,OAAO,WAAW,CAAC;YACrB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC1C,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzD,OAAO,WAAW,CAAC;YACrB,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,0CAA0C;IAC5C,CAAC;IACD,MAAM,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACzC,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare function trashSync(targetPath: string): void;
2
- //# sourceMappingURL=fs-trash-sync.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fs-trash-sync.d.ts","sourceRoot":"","sources":["../../../src/utils/fs-trash-sync.ts"],"names":[],"mappings":"AAkBA,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAkBlD"}
@@ -1,34 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Synchronous trash-can deletion — shells out to `trash-put` (trash-cli)
4
- on Linux/macOS and PowerShell Recycle Bin on Windows. Used by synchronous
5
- code paths that cannot use the async `trash` npm package.</purpose>
6
- <non-goals>
7
- <item>Do not use for async code paths — use trashPath from fs-trash.ts instead.</item>
8
- <item>Requires `trash-put` (trash-cli) installed on Linux/macOS. On Windows, uses PowerShell Recycle Bin API (no external binary needed).</item>
9
- </non-goals>
10
- </MODULE_CONTRACT>
11
- <CHANGE_SUMMARY>
12
- <item>Initial implementation: sync wrapper for `trash-put` (Linux/macOS) and PowerShell Recycle Bin (Windows).</item>
13
- </CHANGE_SUMMARY>
14
- */
15
- import { existsSync, statSync } from "node:fs";
16
- import { execFileSync } from "node:child_process";
17
- export function trashSync(targetPath) {
18
- if (!existsSync(targetPath))
19
- return;
20
- if (process.platform === "win32") {
21
- const isDir = statSync(targetPath).isDirectory();
22
- const method = isDir ? "DeleteDirectory" : "DeleteFile";
23
- const escaped = targetPath.replace(/'/g, "''");
24
- execFileSync("powershell", [
25
- "-NoProfile",
26
- "-Command",
27
- `Add-Type -AssemblyName Microsoft.VisualBasic; [Microsoft.VisualBasic.FileIO.FileSystem]::${method}('${escaped}', 'OnlyErrorDialogs', 'SendToRecycleBin')`,
28
- ], { stdio: "pipe" });
29
- }
30
- else {
31
- execFileSync("trash-put", [targetPath], { stdio: "pipe" });
32
- }
33
- }
34
- //# sourceMappingURL=fs-trash-sync.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fs-trash-sync.js","sourceRoot":"","sources":["../../../src/utils/fs-trash-sync.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;EAaE;AAEF,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,UAAU,SAAS,CAAC,UAAkB;IAC1C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO;IACpC,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;QACjD,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,YAAY,CAAC;QACxD,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC/C,YAAY,CACV,YAAY,EACZ;YACE,YAAY;YACZ,UAAU;YACV,4FAA4F,MAAM,KAAK,OAAO,4CAA4C;SAC3J,EACD,EAAE,KAAK,EAAE,MAAM,EAAE,CAClB,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,YAAY,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare function trashPath(targetPath: string): Promise<void>;
2
- //# sourceMappingURL=fs-trash.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fs-trash.d.ts","sourceRoot":"","sources":["../../../src/utils/fs-trash.ts"],"names":[],"mappings":"AAoBA,wBAAsB,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGjE"}
@@ -1,24 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Trash-can deletion primitive — moves files/directories to the OS
4
- trash/recycle bin instead of permanently deleting them. Uses the `trash`
5
- npm package which implements the FreeDesktop.org Trash specification on
6
- Linux (no external `trash-put` binary required) and the Recycle Bin on
7
- Windows.</purpose>
8
- <non-goals>
9
- <item>Do not implement trash eviction or retention policies — the OS manages that.</item>
10
- <item>Do not use for ephemeral cleanup (lock files, temp files, atomic write leftovers) — those are system-internal and should use fs.unlink directly.</item>
11
- </non-goals>
12
- </MODULE_CONTRACT>
13
- <CHANGE_SUMMARY>
14
- <item>Initial implementation: wraps npm `trash` package with glob disabled for safe path handling.</item>
15
- </CHANGE_SUMMARY>
16
- */
17
- import { existsSync } from "node:fs";
18
- import trash from "trash";
19
- export async function trashPath(targetPath) {
20
- if (!existsSync(targetPath))
21
- return;
22
- await trash(targetPath, { glob: false });
23
- }
24
- //# sourceMappingURL=fs-trash.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fs-trash.js","sourceRoot":"","sources":["../../../src/utils/fs-trash.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;EAeE;AAEF,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,UAAkB;IAChD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO;IACpC,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AAC3C,CAAC"}
@@ -1,8 +0,0 @@
1
- export interface CollectFilesOptions {
2
- extensions?: string[];
3
- ignore?: (name: string) => boolean;
4
- withDirs?: boolean;
5
- }
6
- export declare function collectFiles(root: string, options?: CollectFilesOptions): Promise<string[]>;
7
- export declare function fileExists(path: string): Promise<boolean>;
8
- //# sourceMappingURL=fs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../../src/utils/fs.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,mBAAmB;IAClC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IACnC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAMD,wBAAsB,YAAY,CAChC,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,MAAM,EAAE,CAAC,CAmCnB;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAO/D"}
@@ -1,60 +0,0 @@
1
- /*
2
- <MODULE_CONTRACT>
3
- <purpose>Trivial filesystem utilities — inlined from @warpgogol/share to avoid dependency.</purpose>
4
- <non-goals>
5
- <item>Do not add non-filesystem utilities here — use dedicated utility modules.</item>
6
- <item>Do not introduce @warpgogol/* imports — this package must remain dependency-free.</item>
7
- </non-goals>
8
- </MODULE_CONTRACT>
9
- <CHANGE_SUMMARY>
10
- <item>Initial inline of collectFiles, fileExists from @warpgogol/werkstatt-shared/share/fs.</item>
11
- </CHANGE_SUMMARY>
12
- */
13
- import { readdir, stat } from "node:fs/promises";
14
- import { join } from "node:path";
15
- function defaultIgnore(name) {
16
- return name.startsWith("-") || name.startsWith("old-");
17
- }
18
- export async function collectFiles(root, options = {}) {
19
- const { extensions, ignore = defaultIgnore, withDirs = false } = options;
20
- const results = [];
21
- // fs.walk.lint: allow — this is the canonical collectFiles implementation,
22
- // inlined from @warpgogol/werkstatt-shared/share/fs to keep @warpgogol/forge dependency-free (RFC-0303).
23
- async function walk(dir) {
24
- let entries;
25
- try {
26
- entries = await readdir(dir, { withFileTypes: true });
27
- }
28
- catch {
29
- return;
30
- }
31
- for (const entry of entries) {
32
- if (ignore(entry.name))
33
- continue;
34
- const full = join(dir, entry.name);
35
- if (entry.isDirectory()) {
36
- if (withDirs)
37
- results.push(full);
38
- await walk(full);
39
- continue;
40
- }
41
- if (!entry.isFile())
42
- continue;
43
- if (extensions && !extensions.some((ext) => entry.name.endsWith(ext)))
44
- continue;
45
- results.push(full);
46
- }
47
- }
48
- await walk(root);
49
- return results;
50
- }
51
- export async function fileExists(path) {
52
- try {
53
- await stat(path);
54
- return true;
55
- }
56
- catch {
57
- return false;
58
- }
59
- }
60
- //# sourceMappingURL=fs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fs.js","sourceRoot":"","sources":["../../../src/utils/fs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;EAWE;AAEF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAQjC,SAAS,aAAa,CAAC,IAAY;IACjC,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,IAAY,EACZ,UAA+B,EAAE;IAEjC,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,aAAa,EAAE,QAAQ,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;IACzE,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,2EAA2E;IAC3E,yGAAyG;IACzG,KAAK,UAAU,IAAI,CAAC,GAAW;QAC7B,IAAI,OAAO,CAAC;QACZ,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;QACT,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;gBAAE,SAAS;YAEjC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAEnC,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,IAAI,QAAQ;oBAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACjC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC;gBACjB,SAAS;YACX,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;gBAAE,SAAS;YAE9B,IAAI,UAAU,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAAE,SAAS;YAEhF,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAED,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAY;IAC3C,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
@@ -1,21 +0,0 @@
1
- export declare const GENERATED_MARKER = "GENERATED. Do not change this line unless the file contains project specific changes.";
2
- export declare function hasGeneratedMarker(content: string): boolean;
3
- export interface StripGeneratedMarkerResult {
4
- changed: boolean;
5
- content: string;
6
- }
7
- export declare function stripGeneratedMarker(content: string): StripGeneratedMarkerResult;
8
- export interface GeneratedHeaderInput {
9
- filePath: string;
10
- ownerCommand: string;
11
- templatePath?: string;
12
- site?: string;
13
- /**
14
- * Command prefix for the regenerate hint. Defaults to "forge" (autonomous mode).
15
- * Site-kernel callers pass "pnpm exec werkstatt run" for Warpgogol context.
16
- */
17
- commandPrefix?: string;
18
- }
19
- export declare function buildGeneratedHeader(input: GeneratedHeaderInput): string;
20
- export declare function isGeneratedMarkerTextCandidate(filePath: string): boolean;
21
- //# sourceMappingURL=generated-marker.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generated-marker.d.ts","sourceRoot":"","sources":["../../../src/utils/generated-marker.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,gBAAgB,0FAC4D,CAAC;AAE1F,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAQD,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,0BAA0B,CAmDhF;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAsBD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,oBAAoB,GAAG,MAAM,CA4BxE;AAED,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAiBxE"}