@warpgogol/forge 0.3.1

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 (516) hide show
  1. package/AGENTS.md +149 -0
  2. package/README.md +164 -0
  3. package/bin/cli.js +16 -0
  4. package/dist/bin/cli.d.ts +3 -0
  5. package/dist/bin/cli.d.ts.map +1 -0
  6. package/dist/bin/cli.js +265 -0
  7. package/dist/bin/cli.js.map +1 -0
  8. package/dist/os/adr/adr.module.d.ts +3 -0
  9. package/dist/os/adr/adr.module.d.ts.map +1 -0
  10. package/dist/os/adr/adr.module.js +112 -0
  11. package/dist/os/adr/adr.module.js.map +1 -0
  12. package/dist/os/adr/frontmatter-io.d.ts +11 -0
  13. package/dist/os/adr/frontmatter-io.d.ts.map +1 -0
  14. package/dist/os/adr/frontmatter-io.js +64 -0
  15. package/dist/os/adr/frontmatter-io.js.map +1 -0
  16. package/dist/os/adr/handlers/archive.d.ts +24 -0
  17. package/dist/os/adr/handlers/archive.d.ts.map +1 -0
  18. package/dist/os/adr/handlers/archive.js +162 -0
  19. package/dist/os/adr/handlers/archive.js.map +1 -0
  20. package/dist/os/adr/handlers/list-create.d.ts +5 -0
  21. package/dist/os/adr/handlers/list-create.d.ts.map +1 -0
  22. package/dist/os/adr/handlers/list-create.js +165 -0
  23. package/dist/os/adr/handlers/list-create.js.map +1 -0
  24. package/dist/os/adr/handlers/validate.d.ts +4 -0
  25. package/dist/os/adr/handlers/validate.d.ts.map +1 -0
  26. package/dist/os/adr/handlers/validate.js +219 -0
  27. package/dist/os/adr/handlers/validate.js.map +1 -0
  28. package/dist/os/adr/index.d.ts +8 -0
  29. package/dist/os/adr/index.d.ts.map +1 -0
  30. package/dist/os/adr/index.js +18 -0
  31. package/dist/os/adr/index.js.map +1 -0
  32. package/dist/os/adr/types.d.ts +59 -0
  33. package/dist/os/adr/types.d.ts.map +1 -0
  34. package/dist/os/adr/types.js +54 -0
  35. package/dist/os/adr/types.js.map +1 -0
  36. package/dist/os/audit/audit.module.d.ts +3 -0
  37. package/dist/os/audit/audit.module.d.ts.map +1 -0
  38. package/dist/os/audit/audit.module.js +44 -0
  39. package/dist/os/audit/audit.module.js.map +1 -0
  40. package/dist/os/audit/frontmatter-io.d.ts +12 -0
  41. package/dist/os/audit/frontmatter-io.d.ts.map +1 -0
  42. package/dist/os/audit/frontmatter-io.js +73 -0
  43. package/dist/os/audit/frontmatter-io.js.map +1 -0
  44. package/dist/os/audit/handlers/archive.d.ts +4 -0
  45. package/dist/os/audit/handlers/archive.d.ts.map +1 -0
  46. package/dist/os/audit/handlers/archive.js +167 -0
  47. package/dist/os/audit/handlers/archive.js.map +1 -0
  48. package/dist/os/audit/index.d.ts +6 -0
  49. package/dist/os/audit/index.d.ts.map +1 -0
  50. package/dist/os/audit/index.js +16 -0
  51. package/dist/os/audit/index.js.map +1 -0
  52. package/dist/os/audit/types.d.ts +12 -0
  53. package/dist/os/audit/types.d.ts.map +1 -0
  54. package/dist/os/audit/types.js +17 -0
  55. package/dist/os/audit/types.js.map +1 -0
  56. package/dist/os/compass/compass.module.d.ts +3 -0
  57. package/dist/os/compass/compass.module.d.ts.map +1 -0
  58. package/dist/os/compass/compass.module.js +162 -0
  59. package/dist/os/compass/compass.module.js.map +1 -0
  60. package/dist/os/compass/handlers/compass-audit-handler.d.ts +36 -0
  61. package/dist/os/compass/handlers/compass-audit-handler.d.ts.map +1 -0
  62. package/dist/os/compass/handlers/compass-audit-handler.js +238 -0
  63. package/dist/os/compass/handlers/compass-audit-handler.js.map +1 -0
  64. package/dist/os/compass/handlers/compass-change-summary-handler.d.ts +19 -0
  65. package/dist/os/compass/handlers/compass-change-summary-handler.d.ts.map +1 -0
  66. package/dist/os/compass/handlers/compass-change-summary-handler.js +205 -0
  67. package/dist/os/compass/handlers/compass-change-summary-handler.js.map +1 -0
  68. package/dist/os/compass/handlers/compass-inventory-handler.d.ts +28 -0
  69. package/dist/os/compass/handlers/compass-inventory-handler.d.ts.map +1 -0
  70. package/dist/os/compass/handlers/compass-inventory-handler.js +213 -0
  71. package/dist/os/compass/handlers/compass-inventory-handler.js.map +1 -0
  72. package/dist/os/compass/handlers/compass-inventory.d.ts +30 -0
  73. package/dist/os/compass/handlers/compass-inventory.d.ts.map +1 -0
  74. package/dist/os/compass/handlers/compass-inventory.js +418 -0
  75. package/dist/os/compass/handlers/compass-inventory.js.map +1 -0
  76. package/dist/os/compass/handlers/git-revision.d.ts +8 -0
  77. package/dist/os/compass/handlers/git-revision.d.ts.map +1 -0
  78. package/dist/os/compass/handlers/git-revision.js +99 -0
  79. package/dist/os/compass/handlers/git-revision.js.map +1 -0
  80. package/dist/os/compass/handlers/resolve-scan-root.d.ts +3 -0
  81. package/dist/os/compass/handlers/resolve-scan-root.d.ts.map +1 -0
  82. package/dist/os/compass/handlers/resolve-scan-root.js +41 -0
  83. package/dist/os/compass/handlers/resolve-scan-root.js.map +1 -0
  84. package/dist/os/compass/index.d.ts +8 -0
  85. package/dist/os/compass/index.d.ts.map +1 -0
  86. package/dist/os/compass/index.js +19 -0
  87. package/dist/os/compass/index.js.map +1 -0
  88. package/dist/os/core/core.module.d.ts +3 -0
  89. package/dist/os/core/core.module.d.ts.map +1 -0
  90. package/dist/os/core/core.module.js +318 -0
  91. package/dist/os/core/core.module.js.map +1 -0
  92. package/dist/os/core/index.d.ts +2 -0
  93. package/dist/os/core/index.d.ts.map +1 -0
  94. package/dist/os/core/index.js +13 -0
  95. package/dist/os/core/index.js.map +1 -0
  96. package/dist/os/mission/handlers/archive.d.ts +4 -0
  97. package/dist/os/mission/handlers/archive.d.ts.map +1 -0
  98. package/dist/os/mission/handlers/archive.js +209 -0
  99. package/dist/os/mission/handlers/archive.js.map +1 -0
  100. package/dist/os/mission/index.d.ts +2 -0
  101. package/dist/os/mission/index.d.ts.map +1 -0
  102. package/dist/os/mission/index.js +2 -0
  103. package/dist/os/mission/index.js.map +1 -0
  104. package/dist/os/mission/mission.module.d.ts +3 -0
  105. package/dist/os/mission/mission.module.d.ts.map +1 -0
  106. package/dist/os/mission/mission.module.js +44 -0
  107. package/dist/os/mission/mission.module.js.map +1 -0
  108. package/dist/os/mission/types.d.ts +23 -0
  109. package/dist/os/mission/types.d.ts.map +1 -0
  110. package/dist/os/mission/types.js +18 -0
  111. package/dist/os/mission/types.js.map +1 -0
  112. package/dist/os/naming/index.d.ts +3 -0
  113. package/dist/os/naming/index.d.ts.map +1 -0
  114. package/dist/os/naming/index.js +14 -0
  115. package/dist/os/naming/index.js.map +1 -0
  116. package/dist/os/naming/naming-convention.d.ts +25 -0
  117. package/dist/os/naming/naming-convention.d.ts.map +1 -0
  118. package/dist/os/naming/naming-convention.js +324 -0
  119. package/dist/os/naming/naming-convention.js.map +1 -0
  120. package/dist/os/naming/naming.module.d.ts +3 -0
  121. package/dist/os/naming/naming.module.d.ts.map +1 -0
  122. package/dist/os/naming/naming.module.js +33 -0
  123. package/dist/os/naming/naming.module.js.map +1 -0
  124. package/dist/os/plan/frontmatter-io.d.ts +12 -0
  125. package/dist/os/plan/frontmatter-io.d.ts.map +1 -0
  126. package/dist/os/plan/frontmatter-io.js +71 -0
  127. package/dist/os/plan/frontmatter-io.js.map +1 -0
  128. package/dist/os/plan/handlers/archive.d.ts +4 -0
  129. package/dist/os/plan/handlers/archive.d.ts.map +1 -0
  130. package/dist/os/plan/handlers/archive.js +166 -0
  131. package/dist/os/plan/handlers/archive.js.map +1 -0
  132. package/dist/os/plan/index.d.ts +6 -0
  133. package/dist/os/plan/index.d.ts.map +1 -0
  134. package/dist/os/plan/index.js +16 -0
  135. package/dist/os/plan/index.js.map +1 -0
  136. package/dist/os/plan/plan.module.d.ts +3 -0
  137. package/dist/os/plan/plan.module.d.ts.map +1 -0
  138. package/dist/os/plan/plan.module.js +44 -0
  139. package/dist/os/plan/plan.module.js.map +1 -0
  140. package/dist/os/plan/types.d.ts +12 -0
  141. package/dist/os/plan/types.d.ts.map +1 -0
  142. package/dist/os/plan/types.js +17 -0
  143. package/dist/os/plan/types.js.map +1 -0
  144. package/dist/os/rfc/acceptance.d.ts +15 -0
  145. package/dist/os/rfc/acceptance.d.ts.map +1 -0
  146. package/dist/os/rfc/acceptance.js +290 -0
  147. package/dist/os/rfc/acceptance.js.map +1 -0
  148. package/dist/os/rfc/decision-log.d.ts +6 -0
  149. package/dist/os/rfc/decision-log.d.ts.map +1 -0
  150. package/dist/os/rfc/decision-log.js +269 -0
  151. package/dist/os/rfc/decision-log.js.map +1 -0
  152. package/dist/os/rfc/dna-trace.d.ts +27 -0
  153. package/dist/os/rfc/dna-trace.d.ts.map +1 -0
  154. package/dist/os/rfc/dna-trace.js +214 -0
  155. package/dist/os/rfc/dna-trace.js.map +1 -0
  156. package/dist/os/rfc/frontmatter-io.d.ts +14 -0
  157. package/dist/os/rfc/frontmatter-io.d.ts.map +1 -0
  158. package/dist/os/rfc/frontmatter-io.js +98 -0
  159. package/dist/os/rfc/frontmatter-io.js.map +1 -0
  160. package/dist/os/rfc/handlers/archive.d.ts +24 -0
  161. package/dist/os/rfc/handlers/archive.d.ts.map +1 -0
  162. package/dist/os/rfc/handlers/archive.js +161 -0
  163. package/dist/os/rfc/handlers/archive.js.map +1 -0
  164. package/dist/os/rfc/handlers/check.d.ts +4 -0
  165. package/dist/os/rfc/handlers/check.d.ts.map +1 -0
  166. package/dist/os/rfc/handlers/check.js +195 -0
  167. package/dist/os/rfc/handlers/check.js.map +1 -0
  168. package/dist/os/rfc/handlers/implement-stamp.d.ts +4 -0
  169. package/dist/os/rfc/handlers/implement-stamp.d.ts.map +1 -0
  170. package/dist/os/rfc/handlers/implement-stamp.js +334 -0
  171. package/dist/os/rfc/handlers/implement-stamp.js.map +1 -0
  172. package/dist/os/rfc/handlers/index-graph.d.ts +13 -0
  173. package/dist/os/rfc/handlers/index-graph.d.ts.map +1 -0
  174. package/dist/os/rfc/handlers/index-graph.js +189 -0
  175. package/dist/os/rfc/handlers/index-graph.js.map +1 -0
  176. package/dist/os/rfc/handlers/lifecycle.d.ts +13 -0
  177. package/dist/os/rfc/handlers/lifecycle.d.ts.map +1 -0
  178. package/dist/os/rfc/handlers/lifecycle.js +150 -0
  179. package/dist/os/rfc/handlers/lifecycle.js.map +1 -0
  180. package/dist/os/rfc/handlers/list-create.d.ts +6 -0
  181. package/dist/os/rfc/handlers/list-create.d.ts.map +1 -0
  182. package/dist/os/rfc/handlers/list-create.js +235 -0
  183. package/dist/os/rfc/handlers/list-create.js.map +1 -0
  184. package/dist/os/rfc/handlers/pipeline-status.d.ts +26 -0
  185. package/dist/os/rfc/handlers/pipeline-status.d.ts.map +1 -0
  186. package/dist/os/rfc/handlers/pipeline-status.js +124 -0
  187. package/dist/os/rfc/handlers/pipeline-status.js.map +1 -0
  188. package/dist/os/rfc/handlers/shared.d.ts +22 -0
  189. package/dist/os/rfc/handlers/shared.d.ts.map +1 -0
  190. package/dist/os/rfc/handlers/shared.js +99 -0
  191. package/dist/os/rfc/handlers/shared.js.map +1 -0
  192. package/dist/os/rfc/handlers/supersede-propose.d.ts +4 -0
  193. package/dist/os/rfc/handlers/supersede-propose.d.ts.map +1 -0
  194. package/dist/os/rfc/handlers/supersede-propose.js +200 -0
  195. package/dist/os/rfc/handlers/supersede-propose.js.map +1 -0
  196. package/dist/os/rfc/handlers/validate-rules.d.ts +29 -0
  197. package/dist/os/rfc/handlers/validate-rules.d.ts.map +1 -0
  198. package/dist/os/rfc/handlers/validate-rules.js +461 -0
  199. package/dist/os/rfc/handlers/validate-rules.js.map +1 -0
  200. package/dist/os/rfc/handlers/validate.d.ts +4 -0
  201. package/dist/os/rfc/handlers/validate.d.ts.map +1 -0
  202. package/dist/os/rfc/handlers/validate.js +101 -0
  203. package/dist/os/rfc/handlers/validate.js.map +1 -0
  204. package/dist/os/rfc/handlers.d.ts +7 -0
  205. package/dist/os/rfc/handlers.d.ts.map +1 -0
  206. package/dist/os/rfc/handlers.js +19 -0
  207. package/dist/os/rfc/handlers.js.map +1 -0
  208. package/dist/os/rfc/index.d.ts +18 -0
  209. package/dist/os/rfc/index.d.ts.map +1 -0
  210. package/dist/os/rfc/index.js +24 -0
  211. package/dist/os/rfc/index.js.map +1 -0
  212. package/dist/os/rfc/rfc.module.d.ts +3 -0
  213. package/dist/os/rfc/rfc.module.d.ts.map +1 -0
  214. package/dist/os/rfc/rfc.module.js +355 -0
  215. package/dist/os/rfc/rfc.module.js.map +1 -0
  216. package/dist/os/rfc/types.d.ts +448 -0
  217. package/dist/os/rfc/types.d.ts.map +1 -0
  218. package/dist/os/rfc/types.js +95 -0
  219. package/dist/os/rfc/types.js.map +1 -0
  220. package/dist/os/rfc/verification-evidence.d.ts +8 -0
  221. package/dist/os/rfc/verification-evidence.d.ts.map +1 -0
  222. package/dist/os/rfc/verification-evidence.js +182 -0
  223. package/dist/os/rfc/verification-evidence.js.map +1 -0
  224. package/dist/os/session/atif-parser.d.ts +29 -0
  225. package/dist/os/session/atif-parser.d.ts.map +1 -0
  226. package/dist/os/session/atif-parser.js +138 -0
  227. package/dist/os/session/atif-parser.js.map +1 -0
  228. package/dist/os/session/frontmatter-io.d.ts +31 -0
  229. package/dist/os/session/frontmatter-io.d.ts.map +1 -0
  230. package/dist/os/session/frontmatter-io.js +146 -0
  231. package/dist/os/session/frontmatter-io.js.map +1 -0
  232. package/dist/os/session/handlers/archive.d.ts +4 -0
  233. package/dist/os/session/handlers/archive.d.ts.map +1 -0
  234. package/dist/os/session/handlers/archive.js +209 -0
  235. package/dist/os/session/handlers/archive.js.map +1 -0
  236. package/dist/os/session/handlers/list.d.ts +4 -0
  237. package/dist/os/session/handlers/list.d.ts.map +1 -0
  238. package/dist/os/session/handlers/list.js +147 -0
  239. package/dist/os/session/handlers/list.js.map +1 -0
  240. package/dist/os/session/handlers/save.d.ts +6 -0
  241. package/dist/os/session/handlers/save.d.ts.map +1 -0
  242. package/dist/os/session/handlers/save.js +285 -0
  243. package/dist/os/session/handlers/save.js.map +1 -0
  244. package/dist/os/session/handlers/validate.d.ts +4 -0
  245. package/dist/os/session/handlers/validate.d.ts.map +1 -0
  246. package/dist/os/session/handlers/validate.js +188 -0
  247. package/dist/os/session/handlers/validate.js.map +1 -0
  248. package/dist/os/session/index.d.ts +9 -0
  249. package/dist/os/session/index.d.ts.map +1 -0
  250. package/dist/os/session/index.js +20 -0
  251. package/dist/os/session/index.js.map +1 -0
  252. package/dist/os/session/session.module.d.ts +3 -0
  253. package/dist/os/session/session.module.d.ts.map +1 -0
  254. package/dist/os/session/session.module.js +113 -0
  255. package/dist/os/session/session.module.js.map +1 -0
  256. package/dist/os/session/types.d.ts +101 -0
  257. package/dist/os/session/types.d.ts.map +1 -0
  258. package/dist/os/session/types.js +52 -0
  259. package/dist/os/session/types.js.map +1 -0
  260. package/dist/os/spec/spec-materialize.d.ts +21 -0
  261. package/dist/os/spec/spec-materialize.d.ts.map +1 -0
  262. package/dist/os/spec/spec-materialize.js +342 -0
  263. package/dist/os/spec/spec-materialize.js.map +1 -0
  264. package/dist/os/spec/spec-schema.d.ts +132 -0
  265. package/dist/os/spec/spec-schema.d.ts.map +1 -0
  266. package/dist/os/spec/spec-schema.js +118 -0
  267. package/dist/os/spec/spec-schema.js.map +1 -0
  268. package/dist/os/spec/spec-status.d.ts +33 -0
  269. package/dist/os/spec/spec-status.d.ts.map +1 -0
  270. package/dist/os/spec/spec-status.js +222 -0
  271. package/dist/os/spec/spec-status.js.map +1 -0
  272. package/dist/os/spec/spec-validate.d.ts +4 -0
  273. package/dist/os/spec/spec-validate.d.ts.map +1 -0
  274. package/dist/os/spec/spec-validate.js +435 -0
  275. package/dist/os/spec/spec-validate.js.map +1 -0
  276. package/dist/os/spec/spec.module.d.ts +3 -0
  277. package/dist/os/spec/spec.module.d.ts.map +1 -0
  278. package/dist/os/spec/spec.module.js +67 -0
  279. package/dist/os/spec/spec.module.js.map +1 -0
  280. package/dist/os/werkstatt/handlers/lock.d.ts +10 -0
  281. package/dist/os/werkstatt/handlers/lock.d.ts.map +1 -0
  282. package/dist/os/werkstatt/handlers/lock.js +127 -0
  283. package/dist/os/werkstatt/handlers/lock.js.map +1 -0
  284. package/dist/os/werkstatt/handlers/schema.d.ts +32 -0
  285. package/dist/os/werkstatt/handlers/schema.d.ts.map +1 -0
  286. package/dist/os/werkstatt/handlers/schema.js +41 -0
  287. package/dist/os/werkstatt/handlers/schema.js.map +1 -0
  288. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.d.ts +15 -0
  289. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.d.ts.map +1 -0
  290. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.js +142 -0
  291. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.js.map +1 -0
  292. package/dist/os/werkstatt/handlers/werkstatt-lock-status.d.ts +18 -0
  293. package/dist/os/werkstatt/handlers/werkstatt-lock-status.d.ts.map +1 -0
  294. package/dist/os/werkstatt/handlers/werkstatt-lock-status.js +43 -0
  295. package/dist/os/werkstatt/handlers/werkstatt-lock-status.js.map +1 -0
  296. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.d.ts +11 -0
  297. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.d.ts.map +1 -0
  298. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.js +79 -0
  299. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.js.map +1 -0
  300. package/dist/os/werkstatt/index.d.ts +7 -0
  301. package/dist/os/werkstatt/index.d.ts.map +1 -0
  302. package/dist/os/werkstatt/index.js +18 -0
  303. package/dist/os/werkstatt/index.js.map +1 -0
  304. package/dist/os/werkstatt/werkstatt.module.d.ts +3 -0
  305. package/dist/os/werkstatt/werkstatt.module.d.ts.map +1 -0
  306. package/dist/os/werkstatt/werkstatt.module.js +58 -0
  307. package/dist/os/werkstatt/werkstatt.module.js.map +1 -0
  308. package/dist/os/workflow/handlers.d.ts +12 -0
  309. package/dist/os/workflow/handlers.d.ts.map +1 -0
  310. package/dist/os/workflow/handlers.js +254 -0
  311. package/dist/os/workflow/handlers.js.map +1 -0
  312. package/dist/os/workflow/index.d.ts +4 -0
  313. package/dist/os/workflow/index.d.ts.map +1 -0
  314. package/dist/os/workflow/index.js +18 -0
  315. package/dist/os/workflow/index.js.map +1 -0
  316. package/dist/os/workflow/types.d.ts +69 -0
  317. package/dist/os/workflow/types.d.ts.map +1 -0
  318. package/dist/os/workflow/types.js +23 -0
  319. package/dist/os/workflow/types.js.map +1 -0
  320. package/dist/os/workflow/workflow.module.d.ts +3 -0
  321. package/dist/os/workflow/workflow.module.d.ts.map +1 -0
  322. package/dist/os/workflow/workflow.module.js +48 -0
  323. package/dist/os/workflow/workflow.module.js.map +1 -0
  324. package/dist/src/cli-output.d.ts +5 -0
  325. package/dist/src/cli-output.d.ts.map +1 -0
  326. package/dist/src/cli-output.js +52 -0
  327. package/dist/src/cli-output.js.map +1 -0
  328. package/dist/src/config/forge-config.d.ts +170 -0
  329. package/dist/src/config/forge-config.d.ts.map +1 -0
  330. package/dist/src/config/forge-config.js +259 -0
  331. package/dist/src/config/forge-config.js.map +1 -0
  332. package/dist/src/forge-module.d.ts +16 -0
  333. package/dist/src/forge-module.d.ts.map +1 -0
  334. package/dist/src/forge-module.js +15 -0
  335. package/dist/src/forge-module.js.map +1 -0
  336. package/dist/src/index.d.ts +30 -0
  337. package/dist/src/index.d.ts.map +1 -0
  338. package/dist/src/index.js +48 -0
  339. package/dist/src/index.js.map +1 -0
  340. package/dist/src/migration-adapters/git-utils.d.ts +3 -0
  341. package/dist/src/migration-adapters/git-utils.d.ts.map +1 -0
  342. package/dist/src/migration-adapters/git-utils.js +46 -0
  343. package/dist/src/migration-adapters/git-utils.js.map +1 -0
  344. package/dist/src/migration-adapters/ignored-files.d.ts +12 -0
  345. package/dist/src/migration-adapters/ignored-files.d.ts.map +1 -0
  346. package/dist/src/migration-adapters/ignored-files.js +190 -0
  347. package/dist/src/migration-adapters/ignored-files.js.map +1 -0
  348. package/dist/src/migration-adapters/index.d.ts +8 -0
  349. package/dist/src/migration-adapters/index.d.ts.map +1 -0
  350. package/dist/src/migration-adapters/index.js +17 -0
  351. package/dist/src/migration-adapters/index.js.map +1 -0
  352. package/dist/src/migration-adapters/node-typescript-pnpm/index.d.ts +3 -0
  353. package/dist/src/migration-adapters/node-typescript-pnpm/index.d.ts.map +1 -0
  354. package/dist/src/migration-adapters/node-typescript-pnpm/index.js +141 -0
  355. package/dist/src/migration-adapters/node-typescript-pnpm/index.js.map +1 -0
  356. package/dist/src/migration-adapters/phaser-pnpm/index.d.ts +3 -0
  357. package/dist/src/migration-adapters/phaser-pnpm/index.d.ts.map +1 -0
  358. package/dist/src/migration-adapters/phaser-pnpm/index.js +142 -0
  359. package/dist/src/migration-adapters/phaser-pnpm/index.js.map +1 -0
  360. package/dist/src/migration-adapters/registry.d.ts +6 -0
  361. package/dist/src/migration-adapters/registry.d.ts.map +1 -0
  362. package/dist/src/migration-adapters/registry.js +58 -0
  363. package/dist/src/migration-adapters/registry.js.map +1 -0
  364. package/dist/src/migration-adapters/types.d.ts +35 -0
  365. package/dist/src/migration-adapters/types.d.ts.map +1 -0
  366. package/dist/src/migration-adapters/types.js +31 -0
  367. package/dist/src/migration-adapters/types.js.map +1 -0
  368. package/dist/src/onboarding/agents-generate.d.ts +11 -0
  369. package/dist/src/onboarding/agents-generate.d.ts.map +1 -0
  370. package/dist/src/onboarding/agents-generate.js +415 -0
  371. package/dist/src/onboarding/agents-generate.js.map +1 -0
  372. package/dist/src/onboarding/create.d.ts +12 -0
  373. package/dist/src/onboarding/create.d.ts.map +1 -0
  374. package/dist/src/onboarding/create.js +232 -0
  375. package/dist/src/onboarding/create.js.map +1 -0
  376. package/dist/src/onboarding/doctor.d.ts +30 -0
  377. package/dist/src/onboarding/doctor.d.ts.map +1 -0
  378. package/dist/src/onboarding/doctor.js +380 -0
  379. package/dist/src/onboarding/doctor.js.map +1 -0
  380. package/dist/src/onboarding/extended-behavioral-layer.d.ts +10 -0
  381. package/dist/src/onboarding/extended-behavioral-layer.d.ts.map +1 -0
  382. package/dist/src/onboarding/extended-behavioral-layer.js +82 -0
  383. package/dist/src/onboarding/extended-behavioral-layer.js.map +1 -0
  384. package/dist/src/onboarding/init.d.ts +25 -0
  385. package/dist/src/onboarding/init.d.ts.map +1 -0
  386. package/dist/src/onboarding/init.js +260 -0
  387. package/dist/src/onboarding/init.js.map +1 -0
  388. package/dist/src/onboarding/scaffold-project.d.ts +12 -0
  389. package/dist/src/onboarding/scaffold-project.d.ts.map +1 -0
  390. package/dist/src/onboarding/scaffold-project.js +167 -0
  391. package/dist/src/onboarding/scaffold-project.js.map +1 -0
  392. package/dist/src/onboarding/scaffold.d.ts +15 -0
  393. package/dist/src/onboarding/scaffold.d.ts.map +1 -0
  394. package/dist/src/onboarding/scaffold.js +120 -0
  395. package/dist/src/onboarding/scaffold.js.map +1 -0
  396. package/dist/src/onboarding/upgrade.d.ts +17 -0
  397. package/dist/src/onboarding/upgrade.d.ts.map +1 -0
  398. package/dist/src/onboarding/upgrade.js +293 -0
  399. package/dist/src/onboarding/upgrade.js.map +1 -0
  400. package/dist/src/profiles/stack-profile.d.ts +51 -0
  401. package/dist/src/profiles/stack-profile.d.ts.map +1 -0
  402. package/dist/src/profiles/stack-profile.js +119 -0
  403. package/dist/src/profiles/stack-profile.js.map +1 -0
  404. package/dist/src/registry.d.ts +38 -0
  405. package/dist/src/registry.d.ts.map +1 -0
  406. package/dist/src/registry.js +135 -0
  407. package/dist/src/registry.js.map +1 -0
  408. package/dist/src/skill-schema.d.ts +30 -0
  409. package/dist/src/skill-schema.d.ts.map +1 -0
  410. package/dist/src/skill-schema.js +34 -0
  411. package/dist/src/skill-schema.js.map +1 -0
  412. package/dist/src/types.d.ts +153 -0
  413. package/dist/src/types.d.ts.map +1 -0
  414. package/dist/src/types.js +17 -0
  415. package/dist/src/types.js.map +1 -0
  416. package/dist/src/utils/fs-atomic.d.ts +7 -0
  417. package/dist/src/utils/fs-atomic.d.ts.map +1 -0
  418. package/dist/src/utils/fs-atomic.js +81 -0
  419. package/dist/src/utils/fs-atomic.js.map +1 -0
  420. package/dist/src/utils/fs-idempotent.d.ts +2 -0
  421. package/dist/src/utils/fs-idempotent.d.ts.map +1 -0
  422. package/dist/src/utils/fs-idempotent.js +30 -0
  423. package/dist/src/utils/fs-idempotent.js.map +1 -0
  424. package/dist/src/utils/fs.d.ts +8 -0
  425. package/dist/src/utils/fs.d.ts.map +1 -0
  426. package/dist/src/utils/fs.js +60 -0
  427. package/dist/src/utils/fs.js.map +1 -0
  428. package/dist/src/utils/generated-marker.d.ts +21 -0
  429. package/dist/src/utils/generated-marker.d.ts.map +1 -0
  430. package/dist/src/utils/generated-marker.js +128 -0
  431. package/dist/src/utils/generated-marker.js.map +1 -0
  432. package/dist/src/utils/hash.d.ts +2 -0
  433. package/dist/src/utils/hash.d.ts.map +1 -0
  434. package/dist/src/utils/hash.js +18 -0
  435. package/dist/src/utils/hash.js.map +1 -0
  436. package/dist/src/utils/index.d.ts +7 -0
  437. package/dist/src/utils/index.d.ts.map +1 -0
  438. package/dist/src/utils/index.js +19 -0
  439. package/dist/src/utils/index.js.map +1 -0
  440. package/dist/src/utils/string-utils.d.ts +2 -0
  441. package/dist/src/utils/string-utils.d.ts.map +1 -0
  442. package/dist/src/utils/string-utils.js +19 -0
  443. package/dist/src/utils/string-utils.js.map +1 -0
  444. package/dist/src/validators/port-validate.d.ts +12 -0
  445. package/dist/src/validators/port-validate.d.ts.map +1 -0
  446. package/dist/src/validators/port-validate.js +73 -0
  447. package/dist/src/validators/port-validate.js.map +1 -0
  448. package/dist/src/validators/skill-validate.d.ts +14 -0
  449. package/dist/src/validators/skill-validate.d.ts.map +1 -0
  450. package/dist/src/validators/skill-validate.js +487 -0
  451. package/dist/src/validators/skill-validate.js.map +1 -0
  452. package/os/rfc/rfc-0000-template.md +222 -0
  453. package/package.json +262 -0
  454. package/profiles/astro-typescript-turborepo.yaml +144 -0
  455. package/profiles/forge-shell.yaml +77 -0
  456. package/profiles/phaser-turborepo.yaml +144 -0
  457. package/skills/_shared/fo-pipeline-conventions.md +119 -0
  458. package/skills/_shared/fo-session-summary.md +95 -0
  459. package/skills/fo/fo-add-tests/SKILL.md +166 -0
  460. package/skills/fo/fo-add-tests/mocking.md +60 -0
  461. package/skills/fo/fo-add-tests/pbt-guide.md +193 -0
  462. package/skills/fo/fo-add-tests/tests-reference.md +92 -0
  463. package/skills/fo/fo-architecture/SKILL.md +83 -0
  464. package/skills/fo/fo-architecture/architecture-vocabulary.md +104 -0
  465. package/skills/fo/fo-architecture/deepening.md +37 -0
  466. package/skills/fo/fo-architecture/design-it-twice.md +44 -0
  467. package/skills/fo/fo-architecture/html-report.md +104 -0
  468. package/skills/fo/fo-compass-annotate/SKILL.md +128 -0
  469. package/skills/fo/fo-compass-annotate/reference/comment-styles.md +25 -0
  470. package/skills/fo/fo-compass-annotate/reference/learned-principles.md +12 -0
  471. package/skills/fo/fo-compass-annotate/reference/risk-patterns.md +23 -0
  472. package/skills/fo/fo-compass-annotate/templates/audit-prompt.md +36 -0
  473. package/skills/fo/fo-compass-annotate/templates/header-format.md +57 -0
  474. package/skills/fo/fo-compass-annotate/templates/header-prompt.md +35 -0
  475. package/skills/fo/fo-doc-audit/SKILL.md +264 -0
  476. package/skills/fo/fo-extract-dna/SKILL.md +248 -0
  477. package/skills/fo/fo-fix/SKILL.md +152 -0
  478. package/skills/fo/fo-fix/bug-diagnosis.md +128 -0
  479. package/skills/fo/fo-handoff/SKILL.md +58 -0
  480. package/skills/fo/fo-harvest/SKILL.md +80 -0
  481. package/skills/fo/fo-idea/SKILL.md +242 -0
  482. package/skills/fo/fo-idea-audit/SKILL.md +248 -0
  483. package/skills/fo/fo-idea-create-adr/SKILL.md +130 -0
  484. package/skills/fo/fo-idea-create-rfc/SKILL.md +130 -0
  485. package/skills/fo/fo-idea-enhance/SKILL.md +218 -0
  486. package/skills/fo/fo-idea-i-just-want-to-see-the-plan/SKILL.md +36 -0
  487. package/skills/fo/fo-idea-i-just-want-to-see-the-result/SKILL.md +167 -0
  488. package/skills/fo/fo-idea-implement/SKILL.md +463 -0
  489. package/skills/fo/fo-idea-plan/SKILL.md +230 -0
  490. package/skills/fo/fo-idea-status/SKILL.md +103 -0
  491. package/skills/fo/fo-memory-sync/SKILL.md +204 -0
  492. package/skills/fo/fo-memory-sync/fix-patterns.md +24 -0
  493. package/skills/fo/fo-memory-sync/learned-principles.md +6 -0
  494. package/skills/fo/fo-memory-sync/qa-log.md +5 -0
  495. package/skills/fo/fo-qa/SKILL.md +142 -0
  496. package/skills/fo/fo-review/SKILL.md +273 -0
  497. package/skills/fo/fo-session-retro/SKILL.md +276 -0
  498. package/skills/fo/fo-session-save/SKILL.md +71 -0
  499. package/skills/fo/fo-session-save/fix-patterns.md +33 -0
  500. package/skills/fo/fo-session-save/learned-principles.md +19 -0
  501. package/skills/fo/fo-session-save/qa-log.md +11 -0
  502. package/skills/fo/fo-spec-ingest/SKILL.md +127 -0
  503. package/skills/fo/fo-triage/SKILL.md +97 -0
  504. package/skills/meta/forge-bootstrap/SKILL.md +335 -0
  505. package/skills/meta/forge-bootstrap/forge-about.md +35 -0
  506. package/skills/meta/forge-bootstrap/milestone-gallery/.gitkeep +0 -0
  507. package/skills/meta/forge-bootstrap/operator-profile-template.md +53 -0
  508. package/skills/meta/forge-bootstrap/project-narrative-template.md +31 -0
  509. package/skills/meta/port-to-forge/SKILL.md +65 -0
  510. package/skills/meta/skill-create/SKILL.md +73 -0
  511. package/skills/shared/grilling/SKILL.md +28 -0
  512. package/skills/shared/grilling/learned-principles.md +12 -0
  513. package/skills/shared/grilling/qa-log.md +10 -0
  514. package/skills/shared/my-preferences/SKILL.md +77 -0
  515. package/skills/shared/windows-ai-tooling/SKILL.md +200 -0
  516. package/skills/shared/writing-great-skills/SKILL.md +132 -0
@@ -0,0 +1,222 @@
1
+ ---
2
+ id: RFC-0000
3
+ title: "Short imperative title (e.g. Add structure.validate command)"
4
+ status: draft
5
+ # kind options: architecture | contract | command | policy | deprecation
6
+ kind: architecture
7
+ # scope options: app | workspace
8
+ scope: workspace
9
+ owners:
10
+ - architecture
11
+ # Set by the deciding human together with the status change (RFC-0335).
12
+ # Draft scaffolds must keep this empty; do not prefill a default identity.
13
+ # Format: human:<handle> (agent:<id> reserved — see RFC-0335).
14
+ # Default reviewer when none is specified by the operator: human:andrii-syrokomskyi
15
+ reviewers: []
16
+ createdAt: YYYY-MM-DD
17
+ updatedAt: YYYY-MM-DD
18
+ implementedAt:
19
+ closedAt:
20
+ supersedes: []
21
+ supersededBy:
22
+ amends: []
23
+ amendedBy: []
24
+ related:
25
+ # Reference DNA invariants, anti-patterns, spec docs, or other RFCs:
26
+ # - DNA-1
27
+ # - AP-3
28
+ # - RFC-0005
29
+ # - PAGE-MANDATORY-ARTIFACTS
30
+ # - COMPONENT-THREE-WAY-MIRROR
31
+ # RFC-0331: DNA invariants this RFC implements, protects, or extends.
32
+ # Required for architecture/contract RFCs created on or after 2026-07-07.
33
+ # Entries must match ^DNA-\d+$ and exist in docs/architecture-dna.md.
34
+ satisfies: []
35
+ # RFC-0396: Traceability to a vendored spec node: "<spec-id>/<node-id>", e.g. "pbp/RFC-PBP-020".
36
+ # Set by spec.materialize; leave commented for non-spec RFCs.
37
+ # specRef:
38
+ # RFC-0478: Platform versioning enforcement. Declares the SemVer delta this RFC
39
+ # produces when implemented. Required for post-cutoff implemented RFCs (V-29).
40
+ # Values: minor (Breaks-B, requires migrator), patch (safe), none (prose-only),
41
+ # major (architectural, manually reserved). Default: patch.
42
+ versionBump: patch
43
+ commands:
44
+ proposed: []
45
+ added: []
46
+ changed: []
47
+ removed: []
48
+ appsImpacted: []
49
+ # List only packages actually impacted. Leave empty if unknown.
50
+ packagesImpacted: []
51
+ successSignals: []
52
+ nonGoals: []
53
+ # RFC-0268: OPTIONAL machine-checkable acceptance probes, executed on-demand
54
+ # via `pnpm exec site-kernel run rfc.acceptance.run --id <this-rfc-id>` (never
55
+ # automatically inside build pipelines). Closed probe vocabulary — see
56
+ # docs/rfcs/rfc-0268-make-rfc-acceptance-criteria-machine-checkable.md.
57
+ # acceptance:
58
+ # - probe: run
59
+ # command: "site-kernel run some.command.validate --app warpgogol-com"
60
+ # expect:
61
+ # exitCode: 0
62
+ # - probe: file-exists
63
+ # path: "packages/share/src/some-new-module.ts"
64
+ # - probe: command-registered
65
+ # name: "some.new.command"
66
+ # - probe: file-contains
67
+ # path: "AGENTS.md"
68
+ # pattern: "Some new governance paragraph"
69
+ ---
70
+
71
+ # RFC-0000: Short imperative title
72
+
73
+ ## Context
74
+
75
+ <!-- Why does this RFC exist?
76
+ Describe the observable gap, drift, or risk in the current system.
77
+ Reference Architecture DNA invariants, anti-patterns, or spec documents
78
+ that this RFC is meant to close or protect. -->
79
+
80
+ ## Problem
81
+
82
+ <!-- What specific invariant is unprotected right now?
83
+ What relies on manual discipline instead of automated or documented enforcement?
84
+ Be concrete: reference file paths, DNA invariant IDs, or known failure modes. -->
85
+
86
+ ## Decision
87
+
88
+ <!-- State the single decision being made.
89
+ One of:
90
+ - Introduce a new OS command or set of commands
91
+ - Add or change an architectural contract (page, component, semantic, brand, quality)
92
+ - Establish a new governance policy
93
+ - Deprecate or supersede an existing rule or command
94
+
95
+ Write it in present tense as if already decided:
96
+ "The kernel gains a `structure.validate` command that checks..."
97
+ not "We should add..." -->
98
+
99
+ ## Architectural fit
100
+
101
+ <!-- How does this decision relate to existing building blocks?
102
+ Explain alignment with the following — skip any that are not relevant:
103
+ - Architecture DNA (which invariants does this enforce or protect?)
104
+ - Anti-Patterns (which patterns does this prevent?)
105
+ - Page Contracts (which page-level rules are formalized?)
106
+ - Component Contracts (which component-level rules are formalized?)
107
+ - Site OS operator model (command scope, module placement, pipeline integration)
108
+ - Scaling Playbook (does this apply uniformly across growth stages 1–4?) -->
109
+
110
+ ## Design
111
+
112
+ ### CLI surface
113
+
114
+ <!-- Show the exact command(s) as a user would type them:
115
+
116
+ ```sh
117
+ pnpm exec site-kernel run domain.command --app main
118
+ pnpm exec site-kernel run domain.command --all --json
119
+ ```
120
+
121
+ Describe flags, arguments, and scope (app | workspace).
122
+ -->
123
+
124
+ ### TypeScript contracts
125
+
126
+ <!-- Specify the key types and interfaces needed.
127
+ Do not write full implementation — write the minimum contract
128
+ that a developer or agent needs to understand the shape.
129
+
130
+ ```ts
131
+ interface ExampleInput {
132
+ // ...
133
+ }
134
+
135
+ interface ExampleResult {
136
+ // ...
137
+ }
138
+ ```
139
+ -->
140
+
141
+ ### File system responsibilities
142
+
143
+ <!-- Which files/directories does this touch or read?
144
+ Which files does this create, validate, or refuse to touch?
145
+
146
+ | Path | Role |
147
+ |---|---|
148
+ | `src/pages/[lang]/**/*.astro` | Scanned for violations |
149
+ | `docs/rfcs/index.json` | Updated by rfc.index.generate |
150
+ -->
151
+
152
+ ### Output format
153
+
154
+ <!-- Describe the --json output shape so agents can parse it reliably.
155
+
156
+ ```json
157
+ {
158
+ "command": "domain.command",
159
+ "status": "fail",
160
+ "violations": [
161
+ { "file": "src/pages/de/legal.astro", "rule": "missing-schema", "message": "..." }
162
+ ]
163
+ }
164
+ ```
165
+ -->
166
+
167
+ ### Failure modes
168
+
169
+ <!-- What does the command do when it finds violations?
170
+ Does it exit non-zero? Does it log warnings only?
171
+ What is the behavior difference between --json and pretty output?
172
+ Are there any rules where the command should warn rather than fail? -->
173
+
174
+ ## Rollout
175
+
176
+ <!-- Describe the adoption path — not a short-term wave, but a durable rollout strategy:
177
+
178
+ - Default behavior on first introduction (fail-hard vs. warn vs. opt-in)
179
+ - How existing apps adopt without a flag day (e.g., --strict mode, grace period)
180
+ - How new apps automatically comply from day one
181
+ - Deprecation path if this supersedes an existing command
182
+ - How this integrates into the `build.check` or other standard pipelines
183
+ -->
184
+
185
+ ## Alternatives considered
186
+
187
+ <!-- What else was considered and why was it rejected?
188
+ Be brief but honest — this section prevents re-litigating old decisions. -->
189
+
190
+ ## Risks
191
+
192
+ <!-- Technical, organizational, or agent-facing risks.
193
+ Include: performance impact, false positive rate, maintenance burden,
194
+ risk of agents misinterpreting this RFC. -->
195
+
196
+ ## Acceptance criteria
197
+
198
+ - [ ] TypeScript types and interfaces defined in the relevant package
199
+ - [ ] CLI command registered with correct name and scope
200
+ - [ ] `--json` output format documented and stable
201
+ - [ ] Integrated into appropriate pipeline (`build.check` or standalone)
202
+ - [ ] Existing apps pass without changes (or migration path is documented)
203
+ - [ ] `AGENTS.md` updated where agent behavior rules changed
204
+ - [ ] Relevant Architecture DNA or spec docs link to this RFC
205
+ - [ ] `rfc.validate` passes on this file before merging
206
+
207
+ ## Implementation notes for agents
208
+
209
+ <!-- Rules that govern how AI agents interact with this RFC.
210
+ Be explicit. Agents read this section for behavioral policy.
211
+
212
+ - Agents MAY implement code changes ONLY when this RFC has status: accepted (or implemented).
213
+ - Agents MAY transition this RFC from `accepted` to `implemented` per RFC-0224 preconditions; reference this RFC ID in commits.
214
+ - For RFCs created on or after 2026-07-07 with acceptance probes: before stamping `implemented`, run
215
+ `site-kernel run rfc.verification.emit --id <this-rfc-id>` and commit the evidence file
216
+ in the same commit (RFC-0330 amended transition precondition).
217
+ - Agents MUST NOT weaken or remove enforcement rules established by this RFC
218
+ without a new RFC that supersedes it.
219
+ - If implementation reveals an invariant conflict, run
220
+ `site-kernel run rfc.supersede.propose --id <this-rfc-id> --reason "..." --invariant "DNA-N"`
221
+ instead of working around it (RFC-0334).
222
+ -->
package/package.json ADDED
@@ -0,0 +1,262 @@
1
+ {
2
+ "name": "@warpgogol/forge",
3
+ "version": "0.3.1",
4
+ "private": false,
5
+ "type": "module",
6
+ "license": "MIT",
7
+ "description": "Framework for documenting and implementing ideas — RFC/ADR governance, skills, and project bootstrapping.",
8
+ "keywords": [
9
+ "rfc",
10
+ "adr",
11
+ "governance",
12
+ "skills",
13
+ "ai-agent",
14
+ "documentation",
15
+ "framework"
16
+ ],
17
+ "homepage": "https://github.com/syrokomskyi/warpgogol-4#readme",
18
+ "repository": {
19
+ "type": "git",
20
+ "url": "https://github.com/syrokomskyi/warpgogol-4.git",
21
+ "directory": "packages/forge"
22
+ },
23
+ "bugs": {
24
+ "url": "https://github.com/syrokomskyi/warpgogol-4/issues"
25
+ },
26
+ "main": "./src/index.ts",
27
+ "types": "./src/index.ts",
28
+ "bin": {
29
+ "forge": "./bin/cli.js"
30
+ },
31
+ "exports": {
32
+ ".": {
33
+ "types": "./src/index.ts",
34
+ "default": "./src/index.ts"
35
+ },
36
+ "./types": {
37
+ "types": "./src/types.ts",
38
+ "default": "./src/types.ts"
39
+ },
40
+ "./utils": {
41
+ "types": "./src/utils/index.ts",
42
+ "default": "./src/utils/index.ts"
43
+ },
44
+ "./config": {
45
+ "types": "./src/config/forge-config.ts",
46
+ "default": "./src/config/forge-config.ts"
47
+ },
48
+ "./os/core": {
49
+ "types": "./os/core/core.module.ts",
50
+ "default": "./os/core/core.module.ts"
51
+ },
52
+ "./os/compass": {
53
+ "types": "./os/compass/index.ts",
54
+ "default": "./os/compass/index.ts"
55
+ },
56
+ "./os/naming": {
57
+ "types": "./os/naming/index.ts",
58
+ "default": "./os/naming/index.ts"
59
+ },
60
+ "./os/naming-module": {
61
+ "types": "./os/naming/naming.module.ts",
62
+ "default": "./os/naming/naming.module.ts"
63
+ },
64
+ "./os/rfc": {
65
+ "types": "./os/rfc/index.ts",
66
+ "default": "./os/rfc/index.ts"
67
+ },
68
+ "./os/rfc-module": {
69
+ "types": "./os/rfc/rfc.module.ts",
70
+ "default": "./os/rfc/rfc.module.ts"
71
+ },
72
+ "./os/werkstatt": {
73
+ "types": "./os/werkstatt/index.ts",
74
+ "default": "./os/werkstatt/index.ts"
75
+ },
76
+ "./os/workflow": {
77
+ "types": "./os/workflow/index.ts",
78
+ "default": "./os/workflow/index.ts"
79
+ },
80
+ "./os/workflow-module": {
81
+ "types": "./os/workflow/workflow.module.ts",
82
+ "default": "./os/workflow/workflow.module.ts"
83
+ },
84
+ "./os/spec-module": {
85
+ "types": "./os/spec/spec.module.ts",
86
+ "default": "./os/spec/spec.module.ts"
87
+ },
88
+ "./os/adr": {
89
+ "types": "./os/adr/index.ts",
90
+ "default": "./os/adr/index.ts"
91
+ },
92
+ "./os/adr-module": {
93
+ "types": "./os/adr/adr.module.ts",
94
+ "default": "./os/adr/adr.module.ts"
95
+ },
96
+ "./os/plan": {
97
+ "types": "./os/plan/index.ts",
98
+ "default": "./os/plan/index.ts"
99
+ },
100
+ "./os/plan-module": {
101
+ "types": "./os/plan/plan.module.ts",
102
+ "default": "./os/plan/plan.module.ts"
103
+ },
104
+ "./os/audit": {
105
+ "types": "./os/audit/index.ts",
106
+ "default": "./os/audit/index.ts"
107
+ },
108
+ "./os/audit-module": {
109
+ "types": "./os/audit/audit.module.ts",
110
+ "default": "./os/audit/audit.module.ts"
111
+ },
112
+ "./os/session": {
113
+ "types": "./os/session/index.ts",
114
+ "default": "./os/session/index.ts"
115
+ },
116
+ "./os/session-module": {
117
+ "types": "./os/session/session.module.ts",
118
+ "default": "./os/session/session.module.ts"
119
+ },
120
+ "./os/mission": {
121
+ "types": "./os/mission/index.ts",
122
+ "default": "./os/mission/index.ts"
123
+ },
124
+ "./os/mission-module": {
125
+ "types": "./os/mission/mission.module.ts",
126
+ "default": "./os/mission/mission.module.ts"
127
+ }
128
+ },
129
+ "files": [
130
+ "dist/",
131
+ "bin/cli.js",
132
+ "skills/",
133
+ "profiles/",
134
+ "os/rfc/rfc-0000-template.md",
135
+ "AGENTS.md",
136
+ "README.md"
137
+ ],
138
+ "scripts": {
139
+ "build": "pnpm exec tsc -p tsconfig.json",
140
+ "build:check": "pnpm exec tsc -p tsconfig.json --noEmit",
141
+ "clean": "rm -rf dist",
142
+ "prepublishOnly": "pnpm run clean && pnpm run build && node scripts/publish-check.mjs",
143
+ "test": "vitest run --passWithNoTests",
144
+ "test:watch": "vitest"
145
+ },
146
+ "dependencies": {
147
+ "yaml": "^2.9.0",
148
+ "zod": "^4.4.3"
149
+ },
150
+ "devDependencies": {
151
+ "@types/node": "^26.1.1",
152
+ "fast-check": "^4.9.0",
153
+ "typescript": "^6.0.3",
154
+ "vitest": "^4.1.10"
155
+ },
156
+ "engines": {
157
+ "node": ">=18.0.0"
158
+ },
159
+ "publishConfig": {
160
+ "access": "public",
161
+ "main": "./dist/src/index.js",
162
+ "types": "./dist/src/index.d.ts",
163
+ "exports": {
164
+ ".": {
165
+ "types": "./dist/src/index.d.ts",
166
+ "default": "./dist/src/index.js"
167
+ },
168
+ "./types": {
169
+ "types": "./dist/src/types.d.ts",
170
+ "default": "./dist/src/types.js"
171
+ },
172
+ "./utils": {
173
+ "types": "./dist/src/utils/index.d.ts",
174
+ "default": "./dist/src/utils/index.js"
175
+ },
176
+ "./config": {
177
+ "types": "./dist/src/config/forge-config.d.ts",
178
+ "default": "./dist/src/config/forge-config.js"
179
+ },
180
+ "./os/core": {
181
+ "types": "./dist/os/core/core.module.d.ts",
182
+ "default": "./dist/os/core/core.module.js"
183
+ },
184
+ "./os/compass": {
185
+ "types": "./dist/os/compass/index.d.ts",
186
+ "default": "./dist/os/compass/index.js"
187
+ },
188
+ "./os/naming": {
189
+ "types": "./dist/os/naming/index.d.ts",
190
+ "default": "./dist/os/naming/index.js"
191
+ },
192
+ "./os/naming-module": {
193
+ "types": "./dist/os/naming/naming.module.d.ts",
194
+ "default": "./dist/os/naming/naming.module.js"
195
+ },
196
+ "./os/rfc": {
197
+ "types": "./dist/os/rfc/index.d.ts",
198
+ "default": "./dist/os/rfc/index.js"
199
+ },
200
+ "./os/rfc-module": {
201
+ "types": "./dist/os/rfc/rfc.module.d.ts",
202
+ "default": "./dist/os/rfc/rfc.module.js"
203
+ },
204
+ "./os/werkstatt": {
205
+ "types": "./dist/os/werkstatt/index.d.ts",
206
+ "default": "./dist/os/werkstatt/index.js"
207
+ },
208
+ "./os/workflow": {
209
+ "types": "./dist/os/workflow/index.d.ts",
210
+ "default": "./dist/os/workflow/index.js"
211
+ },
212
+ "./os/workflow-module": {
213
+ "types": "./dist/os/workflow/workflow.module.d.ts",
214
+ "default": "./dist/os/workflow/workflow.module.js"
215
+ },
216
+ "./os/spec-module": {
217
+ "types": "./dist/os/spec/spec.module.d.ts",
218
+ "default": "./dist/os/spec/spec.module.js"
219
+ },
220
+ "./os/adr": {
221
+ "types": "./dist/os/adr/index.d.ts",
222
+ "default": "./dist/os/adr/index.js"
223
+ },
224
+ "./os/adr-module": {
225
+ "types": "./dist/os/adr/adr.module.d.ts",
226
+ "default": "./dist/os/adr/adr.module.js"
227
+ },
228
+ "./os/plan": {
229
+ "types": "./dist/os/plan/index.d.ts",
230
+ "default": "./dist/os/plan/index.js"
231
+ },
232
+ "./os/plan-module": {
233
+ "types": "./dist/os/plan/plan.module.d.ts",
234
+ "default": "./dist/os/plan/plan.module.js"
235
+ },
236
+ "./os/audit": {
237
+ "types": "./dist/os/audit/index.d.ts",
238
+ "default": "./dist/os/audit/index.js"
239
+ },
240
+ "./os/audit-module": {
241
+ "types": "./dist/os/audit/audit.module.d.ts",
242
+ "default": "./dist/os/audit/audit.module.js"
243
+ },
244
+ "./os/session": {
245
+ "types": "./dist/os/session/index.d.ts",
246
+ "default": "./dist/os/session/index.js"
247
+ },
248
+ "./os/session-module": {
249
+ "types": "./dist/os/session/session.module.d.ts",
250
+ "default": "./dist/os/session/session.module.js"
251
+ },
252
+ "./os/mission": {
253
+ "types": "./dist/os/mission/index.d.ts",
254
+ "default": "./dist/os/mission/index.js"
255
+ },
256
+ "./os/mission-module": {
257
+ "types": "./dist/os/mission/mission.module.d.ts",
258
+ "default": "./dist/os/mission/mission.module.js"
259
+ }
260
+ }
261
+ }
262
+ }
@@ -0,0 +1,144 @@
1
+ schema: forge/stack-profile@1
2
+ id: astro-typescript-turborepo
3
+ displayName: Astro + TypeScript + Turborepo
4
+ detect:
5
+ anyOf:
6
+ - astro.config.*
7
+ - tsconfig.json
8
+ workspace:
9
+ dirs:
10
+ - sites
11
+ - packages
12
+ - services
13
+ - scripts
14
+ files:
15
+ - path: pnpm-workspace.yaml
16
+ content: |
17
+ packages:
18
+ - "sites/*"
19
+ - "packages/*"
20
+ - "services/*"
21
+ - path: turbo.json
22
+ content: |
23
+ {
24
+ "$schema": "https://turbo.build/schema.json",
25
+ "tasks": {
26
+ "build": {
27
+ "dependsOn": ["^build"],
28
+ "outputs": ["dist/**"]
29
+ },
30
+ "build:check": {
31
+ "dependsOn": ["^build:check"]
32
+ },
33
+ "test": {
34
+ "dependsOn": ["^build:check"]
35
+ }
36
+ }
37
+ }
38
+ - path: tsconfig.base.json
39
+ content: |
40
+ {
41
+ "compilerOptions": {
42
+ "target": "ESNext",
43
+ "module": "ESNext",
44
+ "moduleResolution": "bundler",
45
+ "strict": true,
46
+ "esModuleInterop": true,
47
+ "skipLibCheck": true,
48
+ "forceConsistentCasingInFileNames": true
49
+ }
50
+ }
51
+ - path: .gitignore
52
+ content: |
53
+ node_modules
54
+ dist
55
+ .turbo
56
+ .cache
57
+ operator-profile.md
58
+ - path: package.json
59
+ content: |
60
+ {
61
+ "name": "__PROJECT_NAME__",
62
+ "version": "0.1.0",
63
+ "private": true,
64
+ "type": "module",
65
+ "engines": {
66
+ "node": ">=22"
67
+ },
68
+ "scripts": {
69
+ "clean": "node scripts/clean.mjs",
70
+ "format": "prettier --write .",
71
+ "format:check": "prettier --check .",
72
+ "build": "turbo run build",
73
+ "build:check": "turbo run build:check",
74
+ "test": "turbo run test",
75
+ "upgrade-packages": "pnpm -r up"
76
+ }
77
+ }
78
+ - path: scripts/clean.mjs
79
+ content: |
80
+ import { readdir, rm } from "node:fs/promises";
81
+ import { join } from "node:path";
82
+ import { fileURLToPath } from "node:url";
83
+
84
+ const TARGETS = new Set(["node_modules", ".turbo", "dist", ".astro", ".cache", ".wrangler"]);
85
+
86
+ const repoRoot = join(fileURLToPath(import.meta.url), "..", "..");
87
+
88
+ async function walk(dir, toDelete) {
89
+ const entries = await readdir(dir, { withFileTypes: true });
90
+ for (const entry of entries) {
91
+ if (!entry.isDirectory()) continue;
92
+ const name = entry.name;
93
+ const fullPath = join(dir, name);
94
+ if (TARGETS.has(name)) {
95
+ toDelete.push(fullPath);
96
+ continue;
97
+ }
98
+ await walk(fullPath, toDelete);
99
+ }
100
+ }
101
+
102
+ const toDelete = [];
103
+ await walk(repoRoot, toDelete);
104
+
105
+ if (toDelete.length === 0) {
106
+ console.log("Nothing to clean.");
107
+ process.exit(0);
108
+ }
109
+
110
+ await Promise.all(toDelete.map((p) => rm(p, { recursive: true, force: true })));
111
+
112
+ for (const p of toDelete) {
113
+ console.log("deleted", p.replace(repoRoot + "/", ""));
114
+ }
115
+
116
+ console.log(`Cleaned ${toDelete.length} directories.`);
117
+ install:
118
+ - pnpm add -D typescript turbo @warpgogol/forge prettier
119
+ firstWorkspace:
120
+ path: sites/my-site
121
+ files:
122
+ - path: package.json
123
+ content: |
124
+ {
125
+ "name": "my-site",
126
+ "version": "0.1.0",
127
+ "private": true,
128
+ "type": "module",
129
+ "scripts": {
130
+ "build:check": "pnpm exec tsc -p tsconfig.json --noEmit",
131
+ "test": "vitest run --passWithNoTests"
132
+ }
133
+ }
134
+ - path: tsconfig.json
135
+ content: |
136
+ {
137
+ "extends": "../tsconfig.base.json",
138
+ "compilerOptions": {
139
+ "outDir": "./dist"
140
+ }
141
+ }
142
+ install:
143
+ - pnpm add astro
144
+ - pnpm add -D vitest