@warpgogol/forge 5.2.3 → 5.3.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 (584) hide show
  1. package/AGENTS.md +34 -2
  2. package/README.md +1 -1
  3. package/README.uk.md +8 -8
  4. package/bin/cli.ts +1 -0
  5. package/dist/bin/cli.js +1 -0
  6. package/dist/bin/cli.js.map +1 -1
  7. package/dist/os/adr/adr.module.d.ts.map +1 -1
  8. package/dist/os/adr/adr.module.js +8 -3
  9. package/dist/os/adr/adr.module.js.map +1 -1
  10. package/dist/os/adr/frontmatter-io.js +5 -5
  11. package/dist/os/adr/frontmatter-io.js.map +1 -1
  12. package/dist/os/adr/handlers/archive.d.ts.map +1 -1
  13. package/dist/os/adr/handlers/archive.js +10 -4
  14. package/dist/os/adr/handlers/archive.js.map +1 -1
  15. package/dist/os/adr/handlers/implement-stamp.d.ts.map +1 -1
  16. package/dist/os/adr/handlers/implement-stamp.js +10 -9
  17. package/dist/os/adr/handlers/implement-stamp.js.map +1 -1
  18. package/dist/os/adr/handlers/list-create.js +5 -5
  19. package/dist/os/adr/handlers/list-create.js.map +1 -1
  20. package/dist/os/adr/handlers/validate.js +1 -1
  21. package/dist/os/adr/handlers/validate.js.map +1 -1
  22. package/dist/os/audit/audit.module.js +3 -3
  23. package/dist/os/audit/audit.module.js.map +1 -1
  24. package/dist/os/audit/frontmatter-io.js +5 -5
  25. package/dist/os/audit/frontmatter-io.js.map +1 -1
  26. package/dist/os/audit/handlers/archive.d.ts.map +1 -1
  27. package/dist/os/audit/handlers/archive.js +10 -4
  28. package/dist/os/audit/handlers/archive.js.map +1 -1
  29. package/dist/os/compass/compass.module.d.ts.map +1 -1
  30. package/dist/os/compass/compass.module.js +17 -1
  31. package/dist/os/compass/compass.module.js.map +1 -1
  32. package/dist/os/compass/handlers/compass-audit-handler.d.ts.map +1 -1
  33. package/dist/os/compass/handlers/compass-audit-handler.js +12 -5
  34. package/dist/os/compass/handlers/compass-audit-handler.js.map +1 -1
  35. package/dist/os/compass/handlers/compass-change-summary-handler.d.ts.map +1 -1
  36. package/dist/os/compass/handlers/compass-change-summary-handler.js +3 -2
  37. package/dist/os/compass/handlers/compass-change-summary-handler.js.map +1 -1
  38. package/dist/os/compass/handlers/compass-inventory-handler.d.ts.map +1 -1
  39. package/dist/os/compass/handlers/compass-inventory-handler.js +6 -4
  40. package/dist/os/compass/handlers/compass-inventory-handler.js.map +1 -1
  41. package/dist/os/compass/handlers/compass-inventory.d.ts.map +1 -1
  42. package/dist/os/compass/handlers/compass-inventory.js +10 -8
  43. package/dist/os/compass/handlers/compass-inventory.js.map +1 -1
  44. package/dist/os/compass/handlers/compass-migrate-handler.js +1 -1
  45. package/dist/os/compass/handlers/compass-migrate-handler.js.map +1 -1
  46. package/dist/os/compass/handlers/compass-migrate.d.ts.map +1 -1
  47. package/dist/os/compass/handlers/compass-migrate.js +6 -3
  48. package/dist/os/compass/handlers/compass-migrate.js.map +1 -1
  49. package/dist/os/compass/handlers/git-revision.d.ts.map +1 -1
  50. package/dist/os/compass/handlers/git-revision.js +9 -6
  51. package/dist/os/compass/handlers/git-revision.js.map +1 -1
  52. package/dist/os/compass/handlers/resolve-scan-root.js +1 -1
  53. package/dist/os/compass/handlers/resolve-scan-root.js.map +1 -1
  54. package/dist/os/compass/handlers/summary-record.d.ts.map +1 -1
  55. package/dist/os/compass/handlers/summary-record.js +8 -4
  56. package/dist/os/compass/handlers/summary-record.js.map +1 -1
  57. package/dist/os/core/core.module.d.ts.map +1 -1
  58. package/dist/os/core/core.module.js +57 -4
  59. package/dist/os/core/core.module.js.map +1 -1
  60. package/dist/os/core/handlers/assets-helpers.d.ts.map +1 -1
  61. package/dist/os/core/handlers/assets-helpers.js +6 -3
  62. package/dist/os/core/handlers/assets-helpers.js.map +1 -1
  63. package/dist/os/core/handlers/build.js +1 -1
  64. package/dist/os/core/handlers/build.js.map +1 -1
  65. package/dist/os/core/handlers/determinism-check.d.ts.map +1 -1
  66. package/dist/os/core/handlers/determinism-check.js +10 -6
  67. package/dist/os/core/handlers/determinism-check.js.map +1 -1
  68. package/dist/os/core/handlers/dev.js +1 -1
  69. package/dist/os/core/handlers/dev.js.map +1 -1
  70. package/dist/os/core/handlers/file-size-lint.d.ts.map +1 -1
  71. package/dist/os/core/handlers/file-size-lint.js +11 -7
  72. package/dist/os/core/handlers/file-size-lint.js.map +1 -1
  73. package/dist/os/core/handlers/forge-autonomy-validate.d.ts.map +1 -1
  74. package/dist/os/core/handlers/forge-autonomy-validate.js +9 -5
  75. package/dist/os/core/handlers/forge-autonomy-validate.js.map +1 -1
  76. package/dist/os/core/handlers/knowledge-compact.js +1 -1
  77. package/dist/os/core/handlers/knowledge-compact.js.map +1 -1
  78. package/dist/os/core/handlers/package-health.js +1 -1
  79. package/dist/os/core/handlers/package-health.js.map +1 -1
  80. package/dist/os/core/handlers/pinned-check.js +2 -2
  81. package/dist/os/core/handlers/pinned-check.js.map +1 -1
  82. package/dist/os/core/handlers/pinned-init.d.ts.map +1 -1
  83. package/dist/os/core/handlers/pinned-init.js +9 -8
  84. package/dist/os/core/handlers/pinned-init.js.map +1 -1
  85. package/dist/os/core/handlers/pinned-validate.js +3 -3
  86. package/dist/os/core/handlers/pinned-validate.js.map +1 -1
  87. package/dist/os/core/handlers/profile-resolve.js +1 -1
  88. package/dist/os/core/handlers/profile-resolve.js.map +1 -1
  89. package/dist/os/core/handlers/public-surface.js +1 -1
  90. package/dist/os/core/handlers/public-surface.js.map +1 -1
  91. package/dist/os/core/handlers/release-prepare.d.ts.map +1 -1
  92. package/dist/os/core/handlers/release-prepare.js +10 -6
  93. package/dist/os/core/handlers/release-prepare.js.map +1 -1
  94. package/dist/os/core/handlers/release-publish.js +6 -6
  95. package/dist/os/core/handlers/release-publish.js.map +1 -1
  96. package/dist/os/core/handlers/validate.js +1 -1
  97. package/dist/os/core/handlers/validate.js.map +1 -1
  98. package/dist/os/exploration/exploration.module.d.ts.map +1 -1
  99. package/dist/os/exploration/exploration.module.js +1 -0
  100. package/dist/os/exploration/exploration.module.js.map +1 -1
  101. package/dist/os/exploration/frontmatter-io.js +4 -4
  102. package/dist/os/exploration/frontmatter-io.js.map +1 -1
  103. package/dist/os/exploration/handlers/archive.js +3 -3
  104. package/dist/os/exploration/handlers/archive.js.map +1 -1
  105. package/dist/os/mission/handlers/archive.d.ts.map +1 -1
  106. package/dist/os/mission/handlers/archive.js +22 -19
  107. package/dist/os/mission/handlers/archive.js.map +1 -1
  108. package/dist/os/mission/mission.module.js +3 -3
  109. package/dist/os/mission/mission.module.js.map +1 -1
  110. package/dist/os/naming/naming-convention.d.ts.map +1 -1
  111. package/dist/os/naming/naming-convention.js +7 -3
  112. package/dist/os/naming/naming-convention.js.map +1 -1
  113. package/dist/os/naming/naming.module.d.ts.map +1 -1
  114. package/dist/os/naming/naming.module.js +4 -3
  115. package/dist/os/naming/naming.module.js.map +1 -1
  116. package/dist/os/notes/notes.module.d.ts.map +1 -1
  117. package/dist/os/notes/notes.module.js +6 -3
  118. package/dist/os/notes/notes.module.js.map +1 -1
  119. package/dist/os/plan/frontmatter-io.js +5 -5
  120. package/dist/os/plan/frontmatter-io.js.map +1 -1
  121. package/dist/os/plan/handlers/archive.d.ts.map +1 -1
  122. package/dist/os/plan/handlers/archive.js +10 -4
  123. package/dist/os/plan/handlers/archive.js.map +1 -1
  124. package/dist/os/plan/plan.module.js +3 -3
  125. package/dist/os/plan/plan.module.js.map +1 -1
  126. package/dist/os/plugin/plugin.module.d.ts.map +1 -1
  127. package/dist/os/plugin/plugin.module.js +6 -3
  128. package/dist/os/plugin/plugin.module.js.map +1 -1
  129. package/dist/os/program/discovery.js +2 -2
  130. package/dist/os/program/discovery.js.map +1 -1
  131. package/dist/os/program/handlers/complete.js +1 -1
  132. package/dist/os/program/handlers/complete.js.map +1 -1
  133. package/dist/os/program/handlers/lease.js +1 -1
  134. package/dist/os/program/handlers/lease.js.map +1 -1
  135. package/dist/os/program/handlers/seal.js +1 -1
  136. package/dist/os/program/handlers/seal.js.map +1 -1
  137. package/dist/os/program/lease.js +1 -1
  138. package/dist/os/program/lease.js.map +1 -1
  139. package/dist/os/program/program.module.d.ts.map +1 -1
  140. package/dist/os/program/program.module.js +9 -3
  141. package/dist/os/program/program.module.js.map +1 -1
  142. package/dist/os/queue/index.js +1 -1
  143. package/dist/os/queue/manifest.d.ts.map +1 -1
  144. package/dist/os/queue/manifest.js +4 -8
  145. package/dist/os/queue/manifest.js.map +1 -1
  146. package/dist/os/rfc/acceptance.d.ts.map +1 -1
  147. package/dist/os/rfc/acceptance.js +10 -6
  148. package/dist/os/rfc/acceptance.js.map +1 -1
  149. package/dist/os/rfc/decision-log.d.ts.map +1 -1
  150. package/dist/os/rfc/decision-log.js +4 -3
  151. package/dist/os/rfc/decision-log.js.map +1 -1
  152. package/dist/os/rfc/dna-trace.d.ts.map +1 -1
  153. package/dist/os/rfc/dna-trace.js +7 -2
  154. package/dist/os/rfc/dna-trace.js.map +1 -1
  155. package/dist/os/rfc/frontmatter-io.js +5 -5
  156. package/dist/os/rfc/frontmatter-io.js.map +1 -1
  157. package/dist/os/rfc/handlers/archive.d.ts.map +1 -1
  158. package/dist/os/rfc/handlers/archive.js +11 -5
  159. package/dist/os/rfc/handlers/archive.js.map +1 -1
  160. package/dist/os/rfc/handlers/check.d.ts.map +1 -1
  161. package/dist/os/rfc/handlers/check.js +6 -3
  162. package/dist/os/rfc/handlers/check.js.map +1 -1
  163. package/dist/os/rfc/handlers/implement-stamp.d.ts.map +1 -1
  164. package/dist/os/rfc/handlers/implement-stamp.js +11 -10
  165. package/dist/os/rfc/handlers/implement-stamp.js.map +1 -1
  166. package/dist/os/rfc/handlers/index-graph.js +3 -3
  167. package/dist/os/rfc/handlers/index-graph.js.map +1 -1
  168. package/dist/os/rfc/handlers/lifecycle.d.ts.map +1 -1
  169. package/dist/os/rfc/handlers/lifecycle.js +6 -2
  170. package/dist/os/rfc/handlers/lifecycle.js.map +1 -1
  171. package/dist/os/rfc/handlers/list-create.d.ts.map +1 -1
  172. package/dist/os/rfc/handlers/list-create.js +7 -6
  173. package/dist/os/rfc/handlers/list-create.js.map +1 -1
  174. package/dist/os/rfc/handlers/shared.js +3 -3
  175. package/dist/os/rfc/handlers/shared.js.map +1 -1
  176. package/dist/os/rfc/handlers/supersede-propose.d.ts.map +1 -1
  177. package/dist/os/rfc/handlers/supersede-propose.js +7 -3
  178. package/dist/os/rfc/handlers/supersede-propose.js.map +1 -1
  179. package/dist/os/rfc/handlers/validate-rules.d.ts.map +1 -1
  180. package/dist/os/rfc/handlers/validate-rules.js +8 -5
  181. package/dist/os/rfc/handlers/validate-rules.js.map +1 -1
  182. package/dist/os/rfc/rfc.module.d.ts.map +1 -1
  183. package/dist/os/rfc/rfc.module.js +44 -4
  184. package/dist/os/rfc/rfc.module.js.map +1 -1
  185. package/dist/os/rfc/verification-evidence.d.ts.map +1 -1
  186. package/dist/os/rfc/verification-evidence.js +9 -5
  187. package/dist/os/rfc/verification-evidence.js.map +1 -1
  188. package/dist/os/rfc/verification-refresh.d.ts.map +1 -1
  189. package/dist/os/rfc/verification-refresh.js +4 -3
  190. package/dist/os/rfc/verification-refresh.js.map +1 -1
  191. package/dist/os/session/frontmatter-io.js +12 -12
  192. package/dist/os/session/frontmatter-io.js.map +1 -1
  193. package/dist/os/session/handlers/archive.d.ts.map +1 -1
  194. package/dist/os/session/handlers/archive.js +10 -4
  195. package/dist/os/session/handlers/archive.js.map +1 -1
  196. package/dist/os/session/handlers/metrics-aggregate.d.ts.map +1 -1
  197. package/dist/os/session/handlers/metrics-aggregate.js +9 -5
  198. package/dist/os/session/handlers/metrics-aggregate.js.map +1 -1
  199. package/dist/os/session/handlers/metrics-rfc.d.ts.map +1 -1
  200. package/dist/os/session/handlers/metrics-rfc.js +11 -8
  201. package/dist/os/session/handlers/metrics-rfc.js.map +1 -1
  202. package/dist/os/session/handlers/metrics-session.d.ts.map +1 -1
  203. package/dist/os/session/handlers/metrics-session.js +6 -3
  204. package/dist/os/session/handlers/metrics-session.js.map +1 -1
  205. package/dist/os/session/handlers/save.d.ts.map +1 -1
  206. package/dist/os/session/handlers/save.js +14 -8
  207. package/dist/os/session/handlers/save.js.map +1 -1
  208. package/dist/os/session/session.module.d.ts.map +1 -1
  209. package/dist/os/session/session.module.js +6 -0
  210. package/dist/os/session/session.module.js.map +1 -1
  211. package/dist/os/spec/live-spec-list.js +4 -4
  212. package/dist/os/spec/live-spec-list.js.map +1 -1
  213. package/dist/os/spec/live-spec-merge.js +5 -5
  214. package/dist/os/spec/live-spec-merge.js.map +1 -1
  215. package/dist/os/spec/live-spec-show.js +3 -3
  216. package/dist/os/spec/live-spec-show.js.map +1 -1
  217. package/dist/os/spec/live-spec-validate.js +4 -4
  218. package/dist/os/spec/live-spec-validate.js.map +1 -1
  219. package/dist/os/spec/spec-materialize.js +9 -9
  220. package/dist/os/spec/spec-materialize.js.map +1 -1
  221. package/dist/os/spec/spec-status.js +9 -9
  222. package/dist/os/spec/spec-status.js.map +1 -1
  223. package/dist/os/spec/spec-validate.js +7 -7
  224. package/dist/os/spec/spec-validate.js.map +1 -1
  225. package/dist/os/spec/spec.module.d.ts.map +1 -1
  226. package/dist/os/spec/spec.module.js +8 -0
  227. package/dist/os/spec/spec.module.js.map +1 -1
  228. package/dist/os/werkstatt/handlers/lock.js +16 -16
  229. package/dist/os/werkstatt/handlers/lock.js.map +1 -1
  230. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.js +3 -3
  231. package/dist/os/werkstatt/handlers/werkstatt-lock-recover.js.map +1 -1
  232. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.d.ts.map +1 -1
  233. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.js +3 -2
  234. package/dist/os/werkstatt/handlers/werkstatt-operation-validate.js.map +1 -1
  235. package/dist/os/werkstatt/werkstatt.module.d.ts.map +1 -1
  236. package/dist/os/werkstatt/werkstatt.module.js +6 -2
  237. package/dist/os/werkstatt/werkstatt.module.js.map +1 -1
  238. package/dist/os/workflow/handlers.d.ts.map +1 -1
  239. package/dist/os/workflow/handlers.js +8 -5
  240. package/dist/os/workflow/handlers.js.map +1 -1
  241. package/dist/os/workflow/workflow.module.d.ts.map +1 -1
  242. package/dist/os/workflow/workflow.module.js +6 -3
  243. package/dist/os/workflow/workflow.module.js.map +1 -1
  244. package/dist/src/compass/contract-registry.js +1 -1
  245. package/dist/src/compass/contract-registry.js.map +1 -1
  246. package/dist/src/config/forge-config.d.ts +10 -1
  247. package/dist/src/config/forge-config.d.ts.map +1 -1
  248. package/dist/src/config/forge-config.js +8 -1
  249. package/dist/src/config/forge-config.js.map +1 -1
  250. package/dist/src/knowledge/budgets.js +1 -1
  251. package/dist/src/knowledge/budgets.js.map +1 -1
  252. package/dist/src/knowledge/compact.js +1 -1
  253. package/dist/src/knowledge/compact.js.map +1 -1
  254. package/dist/src/knowledge/parse.js +1 -1
  255. package/dist/src/knowledge/parse.js.map +1 -1
  256. package/dist/src/knowledge/sync.d.ts.map +1 -1
  257. package/dist/src/knowledge/sync.js +3 -5
  258. package/dist/src/knowledge/sync.js.map +1 -1
  259. package/dist/src/migration-adapters/git-utils.js +2 -2
  260. package/dist/src/migration-adapters/git-utils.js.map +1 -1
  261. package/dist/src/migration-adapters/ignored-files.js +2 -2
  262. package/dist/src/migration-adapters/ignored-files.js.map +1 -1
  263. package/dist/src/migration-adapters/node-typescript-pnpm/index.js +1 -1
  264. package/dist/src/migration-adapters/node-typescript-pnpm/index.js.map +1 -1
  265. package/dist/src/migration-adapters/phaser-pnpm/index.js +1 -1
  266. package/dist/src/migration-adapters/phaser-pnpm/index.js.map +1 -1
  267. package/dist/src/onboarding/agents-generate.d.ts +2 -0
  268. package/dist/src/onboarding/agents-generate.d.ts.map +1 -1
  269. package/dist/src/onboarding/agents-generate.js +73 -48
  270. package/dist/src/onboarding/agents-generate.js.map +1 -1
  271. package/dist/src/onboarding/create.d.ts.map +1 -1
  272. package/dist/src/onboarding/create.js +10 -10
  273. package/dist/src/onboarding/create.js.map +1 -1
  274. package/dist/src/onboarding/doctor.d.ts +6 -0
  275. package/dist/src/onboarding/doctor.d.ts.map +1 -1
  276. package/dist/src/onboarding/doctor.js +179 -61
  277. package/dist/src/onboarding/doctor.js.map +1 -1
  278. package/dist/src/onboarding/init.d.ts.map +1 -1
  279. package/dist/src/onboarding/init.js +30 -1
  280. package/dist/src/onboarding/init.js.map +1 -1
  281. package/dist/src/onboarding/invariant-engine.js +1 -1
  282. package/dist/src/onboarding/invariant-engine.js.map +1 -1
  283. package/dist/src/onboarding/memory-compact.d.ts +22 -0
  284. package/dist/src/onboarding/memory-compact.d.ts.map +1 -0
  285. package/dist/src/onboarding/memory-compact.js +148 -0
  286. package/dist/src/onboarding/memory-compact.js.map +1 -0
  287. package/dist/src/onboarding/memory-scaffold.d.ts +1 -0
  288. package/dist/src/onboarding/memory-scaffold.d.ts.map +1 -1
  289. package/dist/src/onboarding/memory-scaffold.js +2 -2
  290. package/dist/src/onboarding/memory-scaffold.js.map +1 -1
  291. package/dist/src/onboarding/nested-agents-generate.d.ts +4 -1
  292. package/dist/src/onboarding/nested-agents-generate.d.ts.map +1 -1
  293. package/dist/src/onboarding/nested-agents-generate.js +35 -6
  294. package/dist/src/onboarding/nested-agents-generate.js.map +1 -1
  295. package/dist/src/onboarding/nested-agents-templates.d.ts.map +1 -1
  296. package/dist/src/onboarding/nested-agents-templates.js +8 -12
  297. package/dist/src/onboarding/nested-agents-templates.js.map +1 -1
  298. package/dist/src/onboarding/npm-token-check.js +2 -2
  299. package/dist/src/onboarding/npm-token-check.js.map +1 -1
  300. package/dist/src/onboarding/prettierignore.d.ts +29 -0
  301. package/dist/src/onboarding/prettierignore.d.ts.map +1 -0
  302. package/dist/src/onboarding/prettierignore.js +231 -0
  303. package/dist/src/onboarding/prettierignore.js.map +1 -0
  304. package/dist/src/onboarding/profile-validate.d.ts.map +1 -1
  305. package/dist/src/onboarding/profile-validate.js +5 -4
  306. package/dist/src/onboarding/profile-validate.js.map +1 -1
  307. package/dist/src/onboarding/scaffold-project.d.ts.map +1 -1
  308. package/dist/src/onboarding/scaffold-project.js +35 -27
  309. package/dist/src/onboarding/scaffold-project.js.map +1 -1
  310. package/dist/src/onboarding/scaffold.js +1 -1
  311. package/dist/src/onboarding/scaffold.js.map +1 -1
  312. package/dist/src/onboarding/skill-markers.d.ts +27 -0
  313. package/dist/src/onboarding/skill-markers.d.ts.map +1 -0
  314. package/dist/src/onboarding/skill-markers.js +131 -0
  315. package/dist/src/onboarding/skill-markers.js.map +1 -0
  316. package/dist/src/onboarding/upgrade.d.ts +10 -0
  317. package/dist/src/onboarding/upgrade.d.ts.map +1 -1
  318. package/dist/src/onboarding/upgrade.js +215 -74
  319. package/dist/src/onboarding/upgrade.js.map +1 -1
  320. package/dist/src/onboarding/workspace-discovery.d.ts +1 -1
  321. package/dist/src/onboarding/workspace-discovery.d.ts.map +1 -1
  322. package/dist/src/onboarding/workspace-discovery.js +15 -3
  323. package/dist/src/onboarding/workspace-discovery.js.map +1 -1
  324. package/dist/src/pipeline-status.d.ts +6 -5
  325. package/dist/src/pipeline-status.d.ts.map +1 -1
  326. package/dist/src/pipeline-status.js +24 -19
  327. package/dist/src/pipeline-status.js.map +1 -1
  328. package/dist/src/profiles/stack-profile.js +1 -1
  329. package/dist/src/profiles/stack-profile.js.map +1 -1
  330. package/dist/src/registry.d.ts +1 -1
  331. package/dist/src/registry.d.ts.map +1 -1
  332. package/dist/src/registry.js +3 -3
  333. package/dist/src/registry.js.map +1 -1
  334. package/dist/src/skill-schema.d.ts +1 -1
  335. package/dist/src/skill-schema.d.ts.map +1 -1
  336. package/dist/src/skill-schema.js +4 -1
  337. package/dist/src/skill-schema.js.map +1 -1
  338. package/dist/src/types.d.ts +116 -0
  339. package/dist/src/types.d.ts.map +1 -1
  340. package/dist/src/utils/editable-region.d.ts +46 -0
  341. package/dist/src/utils/editable-region.d.ts.map +1 -0
  342. package/dist/src/utils/editable-region.js +125 -0
  343. package/dist/src/utils/editable-region.js.map +1 -0
  344. package/dist/src/utils/fs-idempotent.d.ts +2 -1
  345. package/dist/src/utils/fs-idempotent.d.ts.map +1 -1
  346. package/dist/src/utils/fs-idempotent.js +11 -7
  347. package/dist/src/utils/fs-idempotent.js.map +1 -1
  348. package/dist/src/utils/generated-marker.d.ts +17 -0
  349. package/dist/src/utils/generated-marker.d.ts.map +1 -1
  350. package/dist/src/utils/generated-marker.js +29 -1
  351. package/dist/src/utils/generated-marker.js.map +1 -1
  352. package/dist/src/utils/index.d.ts +3 -1
  353. package/dist/src/utils/index.d.ts.map +1 -1
  354. package/dist/src/utils/index.js +3 -1
  355. package/dist/src/utils/index.js.map +1 -1
  356. package/dist/src/utils/io.d.ts +9 -0
  357. package/dist/src/utils/io.d.ts.map +1 -0
  358. package/dist/src/utils/io.js +130 -0
  359. package/dist/src/utils/io.js.map +1 -0
  360. package/dist/src/utils/markdown-table.d.ts +21 -0
  361. package/dist/src/utils/markdown-table.d.ts.map +1 -0
  362. package/dist/src/utils/markdown-table.js +116 -0
  363. package/dist/src/utils/markdown-table.js.map +1 -0
  364. package/dist/src/utils/sync-fs.d.ts +5 -0
  365. package/dist/src/utils/sync-fs.d.ts.map +1 -0
  366. package/dist/src/utils/sync-fs.js +26 -0
  367. package/dist/src/utils/sync-fs.js.map +1 -0
  368. package/dist/src/validators/note-frontmatter-validate.js +1 -1
  369. package/dist/src/validators/note-frontmatter-validate.js.map +1 -1
  370. package/dist/src/validators/note-link-validate.js +1 -1
  371. package/dist/src/validators/note-link-validate.js.map +1 -1
  372. package/dist/src/validators/note-orphan-detect.js +1 -1
  373. package/dist/src/validators/note-orphan-detect.js.map +1 -1
  374. package/dist/src/validators/port-validate.js +1 -1
  375. package/dist/src/validators/port-validate.js.map +1 -1
  376. package/dist/src/validators/skill-validate.d.ts.map +1 -1
  377. package/dist/src/validators/skill-validate.js +34 -13
  378. package/dist/src/validators/skill-validate.js.map +1 -1
  379. package/docs/reference/forge-yaml.md +12 -0
  380. package/os/adr/adr.module.ts +136 -132
  381. package/os/adr/frontmatter-io.ts +5 -5
  382. package/os/adr/handlers/archive.ts +8 -4
  383. package/os/adr/handlers/implement-stamp.ts +14 -9
  384. package/os/adr/handlers/list-create.ts +5 -5
  385. package/os/adr/handlers/validate.ts +1 -1
  386. package/os/audit/audit.module.ts +33 -34
  387. package/os/audit/frontmatter-io.ts +5 -5
  388. package/os/audit/handlers/archive.ts +8 -4
  389. package/os/compass/compass.module.ts +17 -1
  390. package/os/compass/handlers/compass-audit-handler.ts +13 -5
  391. package/os/compass/handlers/compass-change-summary-handler.ts +4 -2
  392. package/os/compass/handlers/compass-inventory-handler.ts +7 -4
  393. package/os/compass/handlers/compass-inventory.ts +11 -8
  394. package/os/compass/handlers/compass-migrate-handler.ts +1 -1
  395. package/os/compass/handlers/compass-migrate.ts +7 -3
  396. package/os/compass/handlers/git-revision.ts +11 -6
  397. package/os/compass/handlers/resolve-scan-root.ts +1 -1
  398. package/os/compass/handlers/summary-record.ts +10 -4
  399. package/os/compass/handlers/tests/compass-audit-plan.test.ts +2 -1
  400. package/os/core/core.module.ts +58 -4
  401. package/os/core/handlers/assets-helpers.ts +7 -3
  402. package/os/core/handlers/build.ts +1 -1
  403. package/os/core/handlers/determinism-check.ts +12 -6
  404. package/os/core/handlers/dev.ts +1 -1
  405. package/os/core/handlers/file-size-lint.ts +16 -9
  406. package/os/core/handlers/forge-autonomy-validate.ts +10 -5
  407. package/os/core/handlers/knowledge-compact.ts +1 -1
  408. package/os/core/handlers/package-health.ts +1 -1
  409. package/os/core/handlers/pinned-check.ts +2 -2
  410. package/os/core/handlers/pinned-init.ts +9 -8
  411. package/os/core/handlers/pinned-validate.ts +3 -3
  412. package/os/core/handlers/profile-resolve.ts +1 -1
  413. package/os/core/handlers/public-surface.ts +1 -1
  414. package/os/core/handlers/release-prepare.ts +11 -6
  415. package/os/core/handlers/release-publish.ts +6 -6
  416. package/os/core/handlers/validate.ts +1 -1
  417. package/os/exploration/exploration.module.ts +1 -0
  418. package/os/exploration/frontmatter-io.ts +4 -4
  419. package/os/exploration/handlers/archive.ts +3 -3
  420. package/os/mission/handlers/archive.ts +27 -19
  421. package/os/mission/mission.module.ts +38 -39
  422. package/os/naming/naming-convention.ts +9 -3
  423. package/os/naming/naming.module.ts +25 -25
  424. package/os/notes/notes.module.ts +87 -85
  425. package/os/plan/frontmatter-io.ts +5 -5
  426. package/os/plan/handlers/archive.ts +8 -4
  427. package/os/plan/plan.module.ts +33 -34
  428. package/os/plugin/plugin.module.ts +8 -6
  429. package/os/program/discovery.ts +2 -2
  430. package/os/program/handlers/complete.ts +1 -1
  431. package/os/program/handlers/lease.ts +1 -1
  432. package/os/program/handlers/seal.ts +1 -1
  433. package/os/program/lease.ts +1 -1
  434. package/os/program/program.module.ts +198 -193
  435. package/os/queue/index.ts +1 -1
  436. package/os/queue/manifest.ts +10 -9
  437. package/os/queue/queue-validate.test.ts +6 -15
  438. package/os/rfc/acceptance.ts +12 -6
  439. package/os/rfc/decision-log.ts +4 -3
  440. package/os/rfc/dna-trace.ts +8 -2
  441. package/os/rfc/frontmatter-io.ts +5 -5
  442. package/os/rfc/handlers/archive.ts +9 -5
  443. package/os/rfc/handlers/check.ts +5 -3
  444. package/os/rfc/handlers/implement-stamp.ts +15 -10
  445. package/os/rfc/handlers/index-graph.ts +3 -3
  446. package/os/rfc/handlers/lifecycle.ts +7 -2
  447. package/os/rfc/handlers/list-create.ts +7 -6
  448. package/os/rfc/handlers/shared.ts +3 -3
  449. package/os/rfc/handlers/supersede-propose.ts +8 -3
  450. package/os/rfc/handlers/validate-rules-rfc1006.test.ts +18 -6
  451. package/os/rfc/handlers/validate-rules.ts +10 -5
  452. package/os/rfc/rfc-create-concurrent.test.ts +11 -3
  453. package/os/rfc/rfc.module.ts +413 -374
  454. package/os/rfc/verification-evidence.ts +11 -5
  455. package/os/rfc/verification-refresh.ts +4 -3
  456. package/os/session/frontmatter-io.ts +14 -14
  457. package/os/session/handlers/archive.ts +8 -4
  458. package/os/session/handlers/metrics-aggregate.ts +34 -13
  459. package/os/session/handlers/metrics-rfc.ts +13 -8
  460. package/os/session/handlers/metrics-session.ts +7 -3
  461. package/os/session/handlers/save.ts +12 -8
  462. package/os/session/session.module.ts +6 -0
  463. package/os/spec/live-spec-list.ts +4 -4
  464. package/os/spec/live-spec-merge.ts +5 -5
  465. package/os/spec/live-spec-show.ts +3 -3
  466. package/os/spec/live-spec-validate.ts +4 -4
  467. package/os/spec/spec-materialize.ts +9 -9
  468. package/os/spec/spec-status.ts +9 -9
  469. package/os/spec/spec-validate.ts +7 -7
  470. package/os/spec/spec.module.ts +8 -0
  471. package/os/werkstatt/handlers/lock.ts +16 -16
  472. package/os/werkstatt/handlers/werkstatt-lock-recover.ts +3 -3
  473. package/os/werkstatt/handlers/werkstatt-operation-validate.ts +4 -2
  474. package/os/werkstatt/werkstatt.module.ts +8 -5
  475. package/os/workflow/handlers.ts +7 -5
  476. package/os/workflow/workflow.module.ts +45 -44
  477. package/package.json +1 -1
  478. package/profiles/forge-shell.yaml +3 -0
  479. package/profiles/godot-game.yaml +3 -0
  480. package/profiles/phaser-game.yaml +3 -0
  481. package/profiles/site-workshop.yaml +567 -564
  482. package/skills/fo/fo-add-tests/SKILL.md +2 -2
  483. package/skills/fo/fo-architecture/SKILL.md +2 -2
  484. package/skills/fo/fo-compass-annotate/SKILL.md +2 -2
  485. package/skills/fo/fo-design-summit/SKILL.md +2 -2
  486. package/skills/fo/fo-doc-audit/SKILL.md +2 -2
  487. package/skills/fo/fo-explore/SKILL.md +2 -2
  488. package/skills/fo/fo-extract-dna/SKILL.md +2 -2
  489. package/skills/fo/fo-fix/SKILL.md +2 -2
  490. package/skills/fo/fo-handoff/SKILL.md +2 -2
  491. package/skills/fo/fo-harvest/SKILL.md +2 -2
  492. package/skills/fo/fo-idea/SKILL.md +2 -2
  493. package/skills/fo/fo-idea-audit/SKILL.md +2 -2
  494. package/skills/fo/fo-idea-create-adr/SKILL.md +3 -3
  495. package/skills/fo/fo-idea-create-rfc/SKILL.md +3 -3
  496. package/skills/fo/fo-idea-enhance/SKILL.md +2 -2
  497. package/skills/fo/fo-idea-i-just-want-to-see-the-plan/SKILL.md +2 -2
  498. package/skills/fo/fo-idea-i-just-want-to-see-the-result/SKILL.md +1 -1
  499. package/skills/fo/fo-idea-implement/SKILL.md +2 -2
  500. package/skills/fo/fo-idea-plan/SKILL.md +2 -2
  501. package/skills/fo/fo-idea-status/SKILL.md +2 -2
  502. package/skills/fo/fo-knowledge-distill/SKILL.md +2 -2
  503. package/skills/fo/fo-memory-sync/SKILL.md +2 -2
  504. package/skills/fo/fo-qa/SKILL.md +2 -2
  505. package/skills/fo/fo-review/SKILL.md +2 -2
  506. package/skills/fo/fo-session-retro/SKILL.md +2 -2
  507. package/skills/fo/fo-session-save/SKILL.md +2 -2
  508. package/skills/fo/fo-spec-ingest/SKILL.md +2 -2
  509. package/skills/fo/fo-step-commit/SKILL.md +1 -1
  510. package/skills/fo/fo-triage/SKILL.md +2 -2
  511. package/skills/meta/forge-bootstrap/SKILL.md +1 -1
  512. package/skills/meta/port-to-forge/SKILL.md +1 -1
  513. package/skills/meta/skill-create/SKILL.md +1 -1
  514. package/skills/shared/grilling/SKILL.md +1 -1
  515. package/skills/shared/grilling/learned-principles.archive.md +17 -0
  516. package/skills/shared/grilling/learned-principles.md +0 -1
  517. package/skills/shared/knowledge/learned-principles.md +6 -0
  518. package/skills/shared/my-preferences/SKILL.md +1 -1
  519. package/skills/shared/windows-ai-tooling/SKILL.md +1 -1
  520. package/skills/shared/writing-great-skills/SKILL.md +1 -1
  521. package/src/compass/contract-registry.ts +1 -1
  522. package/src/config/forge-config.ts +12 -1
  523. package/src/knowledge/__tests__/sync.test.ts +2 -7
  524. package/src/knowledge/budgets.ts +1 -1
  525. package/src/knowledge/compact.ts +1 -1
  526. package/src/knowledge/parse.ts +1 -1
  527. package/src/knowledge/sync.ts +3 -5
  528. package/src/migration-adapters/git-utils.ts +2 -2
  529. package/src/migration-adapters/ignored-files.ts +2 -2
  530. package/src/migration-adapters/node-typescript-pnpm/index.ts +1 -1
  531. package/src/migration-adapters/phaser-pnpm/index.ts +1 -1
  532. package/src/onboarding/agents-generate.ts +91 -50
  533. package/src/onboarding/create.ts +10 -10
  534. package/src/onboarding/doctor.ts +199 -59
  535. package/src/onboarding/init.ts +38 -1
  536. package/src/onboarding/invariant-engine.ts +1 -1
  537. package/src/onboarding/memory-compact.ts +189 -0
  538. package/src/onboarding/memory-scaffold.ts +2 -2
  539. package/src/onboarding/nested-agents-generate.ts +50 -5
  540. package/src/onboarding/nested-agents-templates.ts +19 -13
  541. package/src/onboarding/npm-token-check.ts +2 -2
  542. package/src/onboarding/prettierignore.ts +263 -0
  543. package/src/onboarding/profile-validate.ts +5 -4
  544. package/src/onboarding/scaffold-project.ts +38 -27
  545. package/src/onboarding/scaffold.ts +1 -1
  546. package/src/onboarding/skill-markers.ts +162 -0
  547. package/src/onboarding/templates/behavioral-layer-core.md +2 -4
  548. package/src/onboarding/upgrade.ts +285 -89
  549. package/src/onboarding/workspace-discovery.ts +16 -2
  550. package/src/pipeline-status.test.ts +1 -4
  551. package/src/pipeline-status.ts +30 -13
  552. package/src/profiles/stack-profile.ts +1 -1
  553. package/src/registry.ts +4 -4
  554. package/src/skill-schema.ts +4 -1
  555. package/src/tests/acceptance-probe-kinds.test.ts +5 -15
  556. package/src/tests/agents-generate.test.ts +32 -7
  557. package/src/tests/contract-registry.test.ts +12 -6
  558. package/src/tests/doctor-dist-freshness.test.ts +110 -0
  559. package/src/tests/doctor-fix.test.ts +142 -0
  560. package/src/tests/doctor-nested-agents.test.ts +160 -0
  561. package/src/tests/editable-generated-region.test.ts +231 -0
  562. package/src/tests/file-size-lint.test.ts +8 -12
  563. package/src/tests/fixtures/agents-generate-business-before.txt +54 -54
  564. package/src/tests/markdown-table.test.ts +107 -0
  565. package/src/tests/memory-compact.test.ts +143 -0
  566. package/src/tests/prettierignore-manage.test.ts +134 -0
  567. package/src/tests/skill-agents-sync.test.ts +168 -0
  568. package/src/tests/skill-sync-marker.test.ts +134 -0
  569. package/src/tests/skill-validate.test.ts +12 -5
  570. package/src/tests/upgrade.test.ts +87 -41
  571. package/src/tests/workspace-discovery.test.ts +28 -0
  572. package/src/types.ts +123 -0
  573. package/src/utils/editable-region.ts +156 -0
  574. package/src/utils/fs-idempotent.ts +12 -6
  575. package/src/utils/generated-marker.ts +36 -2
  576. package/src/utils/index.ts +17 -0
  577. package/src/utils/io.ts +143 -0
  578. package/src/utils/markdown-table.ts +121 -0
  579. package/src/utils/sync-fs.ts +43 -0
  580. package/src/validators/note-frontmatter-validate.ts +1 -1
  581. package/src/validators/note-link-validate.ts +1 -1
  582. package/src/validators/note-orphan-detect.ts +1 -1
  583. package/src/validators/port-validate.ts +1 -1
  584. package/src/validators/skill-validate.ts +38 -13
@@ -23,56 +23,59 @@ Sweep batch 4: 73 Compass headers on headerless engine files (certification, com
23
23
  <history>RFC-0543</history>
24
24
  </CHANGE_SUMMARY>
25
25
  */
26
- import fs from "node:fs";
26
+ import { resolveIo } from "../utils/io.js";
27
+ import { hasGeneratedMarker, mergeEditableGenerated } from "../utils/index.js";
27
28
  import path from "node:path";
28
- import { execSync } from "node:child_process";
29
29
  import { stringify as stringifyYaml, parse as parseYaml } from "yaml";
30
30
  import { FORGE_CLI_BINDING_DEFAULTS, resolveForgeRoot, loadForgeConfig, serializeForgeConfig, resolvePmRunner, resolvePmInstall, } from "../config/forge-config.js";
31
31
  import { FORGE_SKILLS, discoverPackSkills } from "../registry.js";
32
32
  import { syncKnowledgeFile } from "../knowledge/index.js";
33
+ import { writeFileIfChanged } from "../utils/fs-idempotent.js";
34
+ import { writeSkillMarker, pruneStaleSkillDirs } from "./skill-markers.js";
35
+ import { planPrettierignore, applyPrettierignore, } from "./prettierignore.js";
33
36
  import { generateNestedAgentsMd } from "./nested-agents-generate.js";
34
37
  import { scaffoldMemoryLayer } from "./memory-scaffold.js";
35
- function isMonorepoForge(workspaceRoot) {
36
- return fs.existsSync(path.join(workspaceRoot, "packages", "forge", "package.json"));
38
+ async function isMonorepoForge(workspaceRoot, io) {
39
+ return io.exists(path.join(workspaceRoot, "packages", "forge", "package.json"));
37
40
  }
38
- function updateNpmPackage(workspaceRoot, config, isDryRun) {
39
- if (isMonorepoForge(workspaceRoot)) {
41
+ async function updateNpmPackage(workspaceRoot, config, isDryRun, io) {
42
+ if (await isMonorepoForge(workspaceRoot, io)) {
40
43
  return { updated: false, skipped: "monorepo (local package, not npm-installed)" };
41
44
  }
42
45
  const pm = config.project.packageManager;
43
46
  const installCmd = resolvePmInstall(pm);
44
- const fullCmd = `${installCmd} @warpgogol/forge@latest`;
47
+ const installArgs = installCmd.split(/\s+/);
45
48
  if (isDryRun) {
46
49
  return { updated: false, skipped: "dry-run" };
47
50
  }
48
- try {
49
- execSync(fullCmd, {
50
- cwd: workspaceRoot,
51
- stdio: "pipe",
52
- timeout: 120_000,
53
- });
51
+ const result = await io
52
+ .exec(installArgs[0], [...installArgs.slice(1), "@warpgogol/forge@latest"], {
53
+ cwd: workspaceRoot,
54
+ timeoutMs: 120_000,
55
+ })
56
+ .catch(() => null);
57
+ if (result && result.exitCode === 0) {
54
58
  return { updated: true, skipped: null };
55
59
  }
56
- catch {
57
- return { updated: false, skipped: "install failed (network error or registry unavailable)" };
58
- }
60
+ return { updated: false, skipped: "install failed (network error or registry unavailable)" };
59
61
  }
60
- function readForgePackageVersion(forgeRoot) {
62
+ async function readForgePackageVersion(forgeRoot, io) {
61
63
  const pkgPath = path.join(forgeRoot, "package.json");
62
- const pkg = JSON.parse(fs.readFileSync(pkgPath, "utf8"));
64
+ const pkg = JSON.parse(await io.readFile(pkgPath));
63
65
  return pkg.version ?? "0.0.0-unknown";
64
66
  }
65
- function checkLatestNpmVersion(workspaceRoot, installedVersion, isMonorepo) {
67
+ async function checkLatestNpmVersion(workspaceRoot, installedVersion, isMonorepo, io) {
66
68
  if (isMonorepo) {
67
69
  return { latest: null, warning: null };
68
70
  }
69
71
  try {
70
- const latest = execSync("npm view @warpgogol/forge version", {
72
+ const result = await io.exec("npm", ["view", "@warpgogol/forge", "version"], {
71
73
  cwd: workspaceRoot,
72
- stdio: "pipe",
73
- timeout: 15_000,
74
- encoding: "utf8",
75
- }).trim();
74
+ timeoutMs: 15_000,
75
+ });
76
+ if (result.exitCode !== 0)
77
+ throw new Error(result.stderr || "npm view failed");
78
+ const latest = result.stdout.trim();
76
79
  if (!latest || !/^\d+\.\d+\.\d+/.test(latest)) {
77
80
  return { latest: null, warning: null };
78
81
  }
@@ -97,21 +100,25 @@ function checkLatestNpmVersion(workspaceRoot, installedVersion, isMonorepo) {
97
100
  return { latest: null, warning: null };
98
101
  }
99
102
  }
100
- function syncForgeSkills(workspaceRoot, forgeRoot, skillsDir, dryRun) {
103
+ async function syncForgeSkills(workspaceRoot, forgeRoot, skillsDir, dryRun, io) {
101
104
  const updated = [];
102
105
  const knowledgeConflicts = [];
103
106
  const agentsSkillsDir = path.join(workspaceRoot, skillsDir);
104
107
  for (const skill of FORGE_SKILLS) {
105
108
  const srcPath = path.join(forgeRoot, skill.path);
106
- if (!fs.existsSync(srcPath))
109
+ if (!(await io.exists(srcPath)))
107
110
  continue;
108
111
  const skillName = skill.name;
109
112
  const destDir = path.join(agentsSkillsDir, skillName);
110
113
  const destPath = path.join(destDir, "SKILL.md");
111
114
  if (!dryRun) {
112
- fs.mkdirSync(destDir, { recursive: true });
113
- const content = fs.readFileSync(srcPath, "utf8");
114
- fs.writeFileSync(destPath, content, "utf8");
115
+ await io.mkdir(destDir);
116
+ const content = await io.readFile(srcPath);
117
+ await writeFileIfChanged(destPath, content, io);
118
+ // RFC-1154: marker manifest lists SKILL.md + knowledge files that carry
119
+ // pure forge content. Merged/skipped knowledge files hold consumer
120
+ // entries — excluded so a stale dir is kept rather than deleted.
121
+ const markerFiles = ["SKILL.md"];
115
122
  // Sync knowledge files (append-only — never overwrite local entries)
116
123
  const fmMatch = content.match(/^---\r?\n([\s\S]*?)\r?\n---/);
117
124
  if (fmMatch) {
@@ -125,11 +132,14 @@ function syncForgeSkills(workspaceRoot, forgeRoot, skillsDir, dryRun) {
125
132
  continue;
126
133
  const kfSrcPath = path.join(skillSrcDir, kf);
127
134
  const kfDestPath = path.join(destDir, kf);
128
- if (fs.existsSync(kfSrcPath)) {
135
+ if (await io.exists(kfSrcPath)) {
129
136
  const syncResult = syncKnowledgeFile(kfSrcPath, kfDestPath);
130
137
  for (const id of syncResult.conflicts) {
131
138
  knowledgeConflicts.push(`${skillName}/${kf}#${id}`);
132
139
  }
140
+ if (syncResult.action === "copied" || syncResult.action === "unchanged") {
141
+ markerFiles.push(kf);
142
+ }
133
143
  }
134
144
  }
135
145
  }
@@ -138,30 +148,36 @@ function syncForgeSkills(workspaceRoot, forgeRoot, skillsDir, dryRun) {
138
148
  // Frontmatter parse error — SKILL-01 will catch in validation
139
149
  }
140
150
  }
151
+ await writeSkillMarker(destDir, markerFiles, io);
141
152
  }
142
153
  updated.push(skillName);
143
154
  }
144
155
  return { updated, knowledgeConflicts };
145
156
  }
146
- function syncSharedKnowledge(workspaceRoot, forgeRoot, skillsDir, dryRun) {
157
+ async function syncSharedKnowledge(workspaceRoot, forgeRoot, skillsDir, dryRun, io) {
147
158
  const updated = [];
148
159
  const knowledgeConflicts = [];
149
160
  const srcPath = path.join(forgeRoot, "skills", "shared", "knowledge", "learned-principles.md");
150
- if (!fs.existsSync(srcPath))
161
+ if (!(await io.exists(srcPath)))
151
162
  return { updated, knowledgeConflicts };
152
163
  const destDir = path.join(workspaceRoot, skillsDir, "shared-knowledge");
153
164
  const destPath = path.join(destDir, "learned-principles.md");
154
165
  if (!dryRun) {
155
- fs.mkdirSync(destDir, { recursive: true });
166
+ await io.mkdir(destDir);
156
167
  const syncResult = syncKnowledgeFile(srcPath, destPath);
157
168
  for (const id of syncResult.conflicts) {
158
169
  knowledgeConflicts.push(`shared-knowledge/learned-principles.md#${id}`);
159
170
  }
171
+ // RFC-1154: marker lists the file only when its content is purely forge's.
172
+ const markerFiles = syncResult.action === "copied" || syncResult.action === "unchanged"
173
+ ? ["learned-principles.md"]
174
+ : [];
175
+ await writeSkillMarker(destDir, markerFiles, io);
160
176
  }
161
177
  updated.push("shared-knowledge");
162
178
  return { updated, knowledgeConflicts };
163
179
  }
164
- function syncPackSkills(workspaceRoot, config, skillsDir, dryRun) {
180
+ async function syncPackSkills(workspaceRoot, config, skillsDir, dryRun, io) {
165
181
  const updated = [];
166
182
  const skipped = [];
167
183
  const knowledgeConflicts = [];
@@ -176,7 +192,7 @@ function syncPackSkills(workspaceRoot, config, skillsDir, dryRun) {
176
192
  const forgeSkillNames = new Set(FORGE_SKILLS.map((s) => s.name));
177
193
  for (const skill of packSkills) {
178
194
  const srcPath = path.join(workspaceRoot, skill.dir, skill.path);
179
- if (!fs.existsSync(srcPath))
195
+ if (!(await io.exists(srcPath)))
180
196
  continue;
181
197
  const skillName = skill.name;
182
198
  if (forgeSkillNames.has(skillName)) {
@@ -186,9 +202,12 @@ function syncPackSkills(workspaceRoot, config, skillsDir, dryRun) {
186
202
  const destDir = path.join(agentsSkillsDir, skillName);
187
203
  const destPath = path.join(destDir, "SKILL.md");
188
204
  if (!dryRun) {
189
- fs.mkdirSync(destDir, { recursive: true });
190
- const content = fs.readFileSync(srcPath, "utf8");
191
- fs.writeFileSync(destPath, content, "utf8");
205
+ await io.mkdir(destDir);
206
+ const content = await io.readFile(srcPath);
207
+ await writeFileIfChanged(destPath, content, io);
208
+ // RFC-1154: same marker rule as forge skills — merged/skipped knowledge
209
+ // files carry consumer entries and are excluded from the manifest.
210
+ const markerFiles = ["SKILL.md"];
192
211
  // Sync knowledge files (append-only — never overwrite local entries)
193
212
  const fmMatch = content.match(/^---\r?\n([\s\S]*?)\r?\n---/);
194
213
  if (fmMatch) {
@@ -202,11 +221,14 @@ function syncPackSkills(workspaceRoot, config, skillsDir, dryRun) {
202
221
  continue;
203
222
  const kfSrcPath = path.join(skillSrcDir, kf);
204
223
  const kfDestPath = path.join(destDir, kf);
205
- if (fs.existsSync(kfSrcPath)) {
224
+ if (await io.exists(kfSrcPath)) {
206
225
  const syncResult = syncKnowledgeFile(kfSrcPath, kfDestPath);
207
226
  for (const id of syncResult.conflicts) {
208
227
  knowledgeConflicts.push(`${skillName}/${kf}#${id}`);
209
228
  }
229
+ if (syncResult.action === "copied" || syncResult.action === "unchanged") {
230
+ markerFiles.push(kf);
231
+ }
210
232
  }
211
233
  }
212
234
  }
@@ -215,11 +237,62 @@ function syncPackSkills(workspaceRoot, config, skillsDir, dryRun) {
215
237
  // Frontmatter parse error
216
238
  }
217
239
  }
240
+ await writeSkillMarker(destDir, markerFiles, io);
218
241
  }
219
242
  updated.push(skillName);
220
243
  }
221
244
  return { updated, skipped, knowledgeConflicts };
222
245
  }
246
+ /**
247
+ * RFC-1154 reconcile phase — runs on every forge upgrade, including the
248
+ * same-version noop path: markers for synced dirs, prune stale marked dirs,
249
+ * managed .prettierignore block. Idempotent; dry-run passes through.
250
+ */
251
+ async function reconcileGeneratedSurface(workspaceRoot, forgeRoot, config, dryRun, io) {
252
+ const forgeSkillsResult = await syncForgeSkills(workspaceRoot, forgeRoot, config.paths.skillsDir, dryRun, io);
253
+ const packResult = await syncPackSkills(workspaceRoot, config, config.paths.skillsDir, dryRun, io);
254
+ const sharedKnowledgeResult = await syncSharedKnowledge(workspaceRoot, forgeRoot, config.paths.skillsDir, dryRun, io);
255
+ const currentSyncSet = new Set([
256
+ ...forgeSkillsResult.updated,
257
+ ...packResult.updated,
258
+ ...sharedKnowledgeResult.updated,
259
+ ]);
260
+ const warnings = [];
261
+ let prune = { pruned: [], keptWithConsumerFiles: [] };
262
+ if (!dryRun) {
263
+ try {
264
+ prune = await pruneStaleSkillDirs(path.join(workspaceRoot, config.paths.skillsDir), currentSyncSet, io);
265
+ }
266
+ catch (err) {
267
+ warnings.push(`stale skill dir prune failed: ${err.message}`);
268
+ }
269
+ }
270
+ let prettierignore = "skipped";
271
+ if (!dryRun) {
272
+ try {
273
+ prettierignore = await applyPrettierignore(workspaceRoot, await planPrettierignore(workspaceRoot, config.paths.skillsDir, io), io);
274
+ }
275
+ catch (err) {
276
+ warnings.push(`.prettierignore reconcile failed: ${err.message}`);
277
+ }
278
+ }
279
+ return {
280
+ updated: [
281
+ ...forgeSkillsResult.updated,
282
+ ...packResult.updated,
283
+ ...sharedKnowledgeResult.updated,
284
+ ],
285
+ knowledgeConflicts: [
286
+ ...forgeSkillsResult.knowledgeConflicts,
287
+ ...packResult.knowledgeConflicts,
288
+ ...sharedKnowledgeResult.knowledgeConflicts,
289
+ ],
290
+ skipped: packResult.skipped,
291
+ prune,
292
+ prettierignore,
293
+ warnings,
294
+ };
295
+ }
223
296
  function addMissingBindingDefaults(config, dryRun) {
224
297
  if (!config.bindings)
225
298
  return [];
@@ -239,7 +312,7 @@ function addMissingBindingDefaults(config, dryRun) {
239
312
  }
240
313
  return added;
241
314
  }
242
- function updateSyncedVersion(workspaceRoot, config, version, dryRun) {
315
+ async function updateSyncedVersion(workspaceRoot, config, version, dryRun, io) {
243
316
  if (dryRun)
244
317
  return;
245
318
  // Set the syncedVersion on the in-memory config (bindings already updated)
@@ -248,15 +321,16 @@ function updateSyncedVersion(workspaceRoot, config, version, dryRun) {
248
321
  // RFC-1118: serializeForgeConfig writes the declared profile id verbatim —
249
322
  // never the resolved StackProfile object, never drops an unresolvable id.
250
323
  const forgeYamlPath = path.join(workspaceRoot, "forge.yaml");
251
- fs.writeFileSync(forgeYamlPath, stringifyYaml(serializeForgeConfig(config)), "utf8");
324
+ await io.writeFile(forgeYamlPath, stringifyYaml(serializeForgeConfig(config)));
252
325
  }
253
326
  export async function runUpgrade(input, context) {
254
327
  const { workspaceRoot, dryRun } = context;
328
+ const fio = resolveIo(context.io);
255
329
  const isDryRun = dryRun || input.flags["dry-run"] === true;
256
330
  const isUpdateNpm = input.flags["update-npm"] === true;
257
331
  // Step 0: Check forge.yaml exists
258
332
  const forgeYamlPath = path.join(workspaceRoot, "forge.yaml");
259
- if (!fs.existsSync(forgeYamlPath)) {
333
+ if (!(await fio.exists(forgeYamlPath))) {
260
334
  return {
261
335
  data: {
262
336
  command: "forge.upgrade",
@@ -267,12 +341,18 @@ export async function runUpgrade(input, context) {
267
341
  bindingsAdded: [],
268
342
  skippedSkills: [],
269
343
  nestedAgentsGenerated: [],
344
+ nestedAgentsPlanned: [],
345
+ nestedAgentsPreserved: [],
346
+ nestedAgentsSkipped: [],
270
347
  memoryScaffold: { created: [], gitignoreUpdated: false, skipped: [] },
271
348
  npmUpdated: false,
272
349
  npmUpdateSkipped: null,
273
350
  latestNpmVersion: null,
274
351
  npmVersionWarning: null,
275
352
  doctorReport: null,
353
+ skillsPruned: [],
354
+ skillsKeptWithConsumerFiles: [],
355
+ prettierignore: "skipped",
276
356
  },
277
357
  nextSteps: [{ action: "Run 'forge create' to create forge.yaml first", kind: "required" }],
278
358
  exitCode: 1,
@@ -290,7 +370,7 @@ export async function runUpgrade(input, context) {
290
370
  catch {
291
371
  configForNpm = { project: { packageManager: "npm" } };
292
372
  }
293
- const npmResult = updateNpmPackage(workspaceRoot, configForNpm, isDryRun);
373
+ const npmResult = await updateNpmPackage(workspaceRoot, configForNpm, isDryRun, fio);
294
374
  npmUpdated = npmResult.updated;
295
375
  npmUpdateSkipped = npmResult.skipped;
296
376
  }
@@ -299,7 +379,7 @@ export async function runUpgrade(input, context) {
299
379
  let toVersion;
300
380
  try {
301
381
  forgeRoot = context.forgeRoot ?? resolveForgeRoot(workspaceRoot);
302
- toVersion = readForgePackageVersion(forgeRoot);
382
+ toVersion = await readForgePackageVersion(forgeRoot, fio);
303
383
  }
304
384
  catch (err) {
305
385
  return {
@@ -312,12 +392,18 @@ export async function runUpgrade(input, context) {
312
392
  bindingsAdded: [],
313
393
  skippedSkills: [],
314
394
  nestedAgentsGenerated: [],
395
+ nestedAgentsPlanned: [],
396
+ nestedAgentsPreserved: [],
397
+ nestedAgentsSkipped: [],
315
398
  memoryScaffold: { created: [], gitignoreUpdated: false, skipped: [] },
316
399
  npmUpdated: false,
317
400
  npmUpdateSkipped: null,
318
401
  latestNpmVersion: null,
319
402
  npmVersionWarning: null,
320
403
  doctorReport: null,
404
+ skillsPruned: [],
405
+ skillsKeptWithConsumerFiles: [],
406
+ prettierignore: "skipped",
321
407
  },
322
408
  nextSteps: [
323
409
  { action: "Install @warpgogol/forge first: npm install @warpgogol/forge", kind: "required" },
@@ -327,7 +413,7 @@ export async function runUpgrade(input, context) {
327
413
  };
328
414
  }
329
415
  // Step 1.5: Check npm for newer version (non-fatal)
330
- const npmCheck = checkLatestNpmVersion(workspaceRoot, toVersion, isMonorepoForge(workspaceRoot));
416
+ const npmCheck = await checkLatestNpmVersion(workspaceRoot, toVersion, await isMonorepoForge(workspaceRoot, fio), fio);
331
417
  if (npmCheck.warning && context.outputFormat === "pretty") {
332
418
  context.logger.warn(`⚠ ${npmCheck.warning}`);
333
419
  }
@@ -347,12 +433,18 @@ export async function runUpgrade(input, context) {
347
433
  bindingsAdded: [],
348
434
  skippedSkills: [],
349
435
  nestedAgentsGenerated: [],
436
+ nestedAgentsPlanned: [],
437
+ nestedAgentsPreserved: [],
438
+ nestedAgentsSkipped: [],
350
439
  memoryScaffold: { created: [], gitignoreUpdated: false, skipped: [] },
351
440
  npmUpdated: false,
352
441
  npmUpdateSkipped: null,
353
442
  latestNpmVersion: npmCheck.latest,
354
443
  npmVersionWarning: npmCheck.warning,
355
444
  doctorReport: null,
445
+ skillsPruned: [],
446
+ skillsKeptWithConsumerFiles: [],
447
+ prettierignore: "skipped",
356
448
  },
357
449
  nextSteps: [
358
450
  { action: `Fix forge.yaml: ${err.message}`, kind: "required" },
@@ -363,23 +455,37 @@ export async function runUpgrade(input, context) {
363
455
  }
364
456
  const fromVersion = config.forge?.syncedVersion ?? null;
365
457
  if (fromVersion === toVersion) {
366
- // Noop — versions match
458
+ // Noop version-wise — but the RFC-1154 reconcile (markers, stale-dir prune,
459
+ // managed .prettierignore) still runs so a same-version upgrade fixes lint debt.
460
+ const reconcile = await reconcileGeneratedSurface(workspaceRoot, forgeRoot, config, isDryRun, fio);
461
+ for (const kept of reconcile.prune.keptWithConsumerFiles) {
462
+ context.logger.warn(`forge.upgrade: kept stale skill dir ${kept}`);
463
+ }
464
+ for (const warn of reconcile.warnings) {
465
+ context.logger.warn(`forge.upgrade: ${warn}`);
466
+ }
367
467
  return {
368
468
  data: {
369
469
  command: "forge.upgrade",
370
470
  status: "noop",
371
471
  fromVersion,
372
472
  toVersion,
373
- skillsUpdated: [],
473
+ skillsUpdated: reconcile.updated,
374
474
  bindingsAdded: [],
375
- skippedSkills: [],
475
+ skippedSkills: reconcile.skipped,
376
476
  nestedAgentsGenerated: [],
477
+ nestedAgentsPlanned: [],
478
+ nestedAgentsPreserved: [],
479
+ nestedAgentsSkipped: [],
377
480
  memoryScaffold: { created: [], gitignoreUpdated: false, skipped: [] },
378
481
  npmUpdated: npmUpdated,
379
482
  npmUpdateSkipped: npmUpdateSkipped,
380
483
  latestNpmVersion: npmCheck.latest,
381
484
  npmVersionWarning: npmCheck.warning,
382
485
  doctorReport: null,
486
+ skillsPruned: reconcile.prune.pruned,
487
+ skillsKeptWithConsumerFiles: reconcile.prune.keptWithConsumerFiles,
488
+ prettierignore: reconcile.prettierignore,
383
489
  },
384
490
  nextSteps: npmCheck.warning
385
491
  ? [{ action: npmCheck.warning, kind: "optional" }]
@@ -390,22 +496,19 @@ export async function runUpgrade(input, context) {
390
496
  : `[forge.upgrade] Already up to date (v${toVersion})`,
391
497
  };
392
498
  }
393
- // Step 3: Sync forge skills
394
- const forgeSkillsResult = syncForgeSkills(workspaceRoot, forgeRoot, config.paths.skillsDir, isDryRun);
395
- // Step 3b: Sync pack skills
396
- const packResult = syncPackSkills(workspaceRoot, config, config.paths.skillsDir, isDryRun);
397
- // Step 3c: Sync shared knowledge layer (RFC-0663)
398
- const sharedKnowledgeResult = syncSharedKnowledge(workspaceRoot, forgeRoot, config.paths.skillsDir, isDryRun);
399
- const skillsUpdated = [
400
- ...forgeSkillsResult.updated,
401
- ...packResult.updated,
402
- ...sharedKnowledgeResult.updated,
403
- ];
404
- const knowledgeConflicts = [
405
- ...forgeSkillsResult.knowledgeConflicts,
406
- ...packResult.knowledgeConflicts,
407
- ...sharedKnowledgeResult.knowledgeConflicts,
408
- ];
499
+ // Step 3: RFC-1154 reconcile — sync forge+pack skills + shared knowledge,
500
+ // write .forge-managed markers, prune stale marked dirs, reconcile the
501
+ // managed .prettierignore block.
502
+ const reconcile = await reconcileGeneratedSurface(workspaceRoot, forgeRoot, config, isDryRun, fio);
503
+ const skillsUpdated = reconcile.updated;
504
+ const knowledgeConflicts = reconcile.knowledgeConflicts;
505
+ const packSkipped = reconcile.skipped;
506
+ for (const kept of reconcile.prune.keptWithConsumerFiles) {
507
+ context.logger.warn(`forge.upgrade: kept stale skill dir ${kept}`);
508
+ }
509
+ for (const warn of reconcile.warnings) {
510
+ context.logger.warn(`forge.upgrade: ${warn}`);
511
+ }
409
512
  if (knowledgeConflicts.length > 0) {
410
513
  context.logger.warn(`forge.upgrade: ${knowledgeConflicts.length} knowledge entr${knowledgeConflicts.length === 1 ? "y" : "ies"} ` +
411
514
  `diverge between package and project — local versions kept: ${knowledgeConflicts.join(", ")}`);
@@ -416,19 +519,51 @@ export async function runUpgrade(input, context) {
416
519
  const bindingsAdded = addMissingBindingDefaults(config, isDryRun);
417
520
  // Step 5: Update forge.syncedVersion
418
521
  if (!isDryRun) {
419
- updateSyncedVersion(workspaceRoot, config, toVersion, false);
522
+ await updateSyncedVersion(workspaceRoot, config, toVersion, false, fio);
420
523
  }
421
- // Step 5b: Generate nested AGENTS.md (RFC-0611)
524
+ // Step 5b: Generate nested AGENTS.md (RFC-0611). RFC-1153: the write path
525
+ // merges at the forge:custom boundary, and --dry-run previews which guides
526
+ // would be rewritten vs. skipped (the destructive step is no longer silent).
422
527
  let nestedAgentsGenerated = [];
423
- if (!isDryRun) {
424
- try {
425
- const nestedResult = await generateNestedAgentsMd(workspaceRoot, config, false);
426
- nestedAgentsGenerated = nestedResult.generated;
528
+ const nestedAgentsPlanned = [];
529
+ let nestedAgentsPreserved = [];
530
+ const nestedAgentsSkipped = [];
531
+ try {
532
+ const nestedResult = await generateNestedAgentsMd(workspaceRoot, config, isDryRun, undefined, fio);
533
+ if (isDryRun) {
534
+ for (const [relPath, rendered] of Object.entries(nestedResult.renderedFiles)) {
535
+ const absPath = path.join(workspaceRoot, relPath);
536
+ let existing = null;
537
+ if (await fio.exists(absPath)) {
538
+ try {
539
+ existing = await fio.readFile(absPath);
540
+ }
541
+ catch {
542
+ // Unreadable — treat as absent; merge will emit a fresh file.
543
+ }
544
+ }
545
+ if (existing !== null && !hasGeneratedMarker(existing)) {
546
+ nestedAgentsSkipped.push(`${relPath} (hand-written)`);
547
+ continue;
548
+ }
549
+ const merged = mergeEditableGenerated(rendered, existing, relPath);
550
+ if (merged === null) {
551
+ nestedAgentsSkipped.push(`${relPath} (unmapped-customization)`);
552
+ }
553
+ else if (merged !== existing) {
554
+ nestedAgentsPlanned.push(relPath);
555
+ }
556
+ }
427
557
  }
428
- catch {
429
- // Nested generation failure is non-fatal
558
+ else {
559
+ nestedAgentsGenerated = nestedResult.generated;
560
+ nestedAgentsPreserved = nestedResult.preserved;
561
+ nestedAgentsSkipped.push(...nestedResult.skipped);
430
562
  }
431
563
  }
564
+ catch {
565
+ // Nested generation failure is non-fatal
566
+ }
432
567
  // Step 6: Run doctor
433
568
  let doctorReport = null;
434
569
  if (!isDryRun) {
@@ -464,19 +599,25 @@ export async function runUpgrade(input, context) {
464
599
  toVersion,
465
600
  skillsUpdated,
466
601
  bindingsAdded,
467
- skippedSkills: packResult.skipped,
602
+ skippedSkills: packSkipped,
468
603
  nestedAgentsGenerated,
604
+ nestedAgentsPlanned,
605
+ nestedAgentsPreserved,
606
+ nestedAgentsSkipped,
469
607
  memoryScaffold,
470
608
  npmUpdated,
471
609
  npmUpdateSkipped,
472
610
  latestNpmVersion: npmCheck.latest,
473
611
  npmVersionWarning: npmCheck.warning,
474
612
  doctorReport,
613
+ skillsPruned: reconcile.prune.pruned,
614
+ skillsKeptWithConsumerFiles: reconcile.prune.keptWithConsumerFiles,
615
+ prettierignore: reconcile.prettierignore,
475
616
  },
476
617
  nextSteps,
477
618
  exitCode: 0,
478
619
  summary: isDryRun
479
- ? `[dry-run] forge.upgrade: would sync ${skillsUpdated.length} skill(s), add ${bindingsAdded.length} binding(s), update syncedVersion to ${toVersion}`
620
+ ? `[dry-run] forge.upgrade: would sync ${skillsUpdated.length} skill(s), add ${bindingsAdded.length} binding(s), update syncedVersion to ${toVersion}, rewrite ${nestedAgentsPlanned.length} nested AGENTS.md file(s)`
480
621
  : npmCheck.warning
481
622
  ? `[forge.upgrade] OK — ${skillsUpdated.length} skill(s) synced, ${bindingsAdded.length} binding(s) added, syncedVersion → ${toVersion} — ⚠ ${npmCheck.warning}`
482
623
  : `[forge.upgrade] OK — ${skillsUpdated.length} skill(s) synced, ${bindingsAdded.length} binding(s) added, syncedVersion → ${toVersion}` +
@@ -1 +1 @@
1
- {"version":3,"file":"upgrade.js","sourceRoot":"","sources":["../../../src/onboarding/upgrade.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;EAwBE;AAEF,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AACtE,OAAO,EACL,0BAA0B,EAC1B,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACpB,eAAe,EACf,gBAAgB,GAGjB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAqB3D,SAAS,eAAe,CAAC,aAAqB;IAC5C,OAAO,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC;AACtF,CAAC;AAED,SAAS,gBAAgB,CACvB,aAAqB,EACrB,MAAmB,EACnB,QAAiB;IAEjB,IAAI,eAAe,CAAC,aAAa,CAAC,EAAE,CAAC;QACnC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,6CAA6C,EAAE,CAAC;IACpF,CAAC;IAED,MAAM,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC;IACzC,MAAM,UAAU,GAAG,gBAAgB,CAAC,EAAE,CAAC,CAAC;IACxC,MAAM,OAAO,GAAG,GAAG,UAAU,0BAA0B,CAAC;IAExD,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;IAChD,CAAC;IAED,IAAI,CAAC;QACH,QAAQ,CAAC,OAAO,EAAE;YAChB,GAAG,EAAE,aAAa;YAClB,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,wDAAwD,EAAE,CAAC;IAC/F,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAAC,SAAiB;IAChD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IACrD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAyB,CAAC;IACjF,OAAO,GAAG,CAAC,OAAO,IAAI,eAAe,CAAC;AACxC,CAAC;AAED,SAAS,qBAAqB,CAC5B,aAAqB,EACrB,gBAAwB,EACxB,UAAmB;IAEnB,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACzC,CAAC;IACD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,mCAAmC,EAAE;YAC3D,GAAG,EAAE,aAAa;YAClB,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,MAAM;YACf,QAAQ,EAAE,MAAM;SACjB,CAAC,CAAC,IAAI,EAAE,CAAC;QACV,IAAI,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9C,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACzC,CAAC;QACD,IAAI,MAAM,KAAK,gBAAgB,EAAE,CAAC;YAChC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE;gBACf,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;oBAC9C,OAAO,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;gBACzD,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,aAAa,CAAC;gBACvB,CAAC;YACH,CAAC,CAAC,EAAE,CAAC;YACL,OAAO;gBACL,MAAM;gBACN,OAAO,EAAE,SAAS,gBAAgB,sBAAsB,MAAM,8BAA8B,EAAE,0BAA0B;aACzH,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACzC,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CACtB,aAAqB,EACrB,SAAiB,EACjB,SAAiB,EACjB,MAAe;IAEf,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,kBAAkB,GAAa,EAAE,CAAC;IACxC,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IAE5D,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;YAAE,SAAS;QAEtC,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;QACtD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAEhD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3C,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YACjD,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAE5C,qEAAqE;YACrE,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC7D,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,CAAC;oBACH,MAAM,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAA4B,CAAC;oBAC5D,MAAM,cAAc,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC;oBACvC,IAAI,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;wBAClC,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;wBAC1C,KAAK,MAAM,EAAE,IAAI,cAAc,EAAE,CAAC;4BAChC,IAAI,OAAO,EAAE,KAAK,QAAQ;gCAAE,SAAS;4BACrC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;4BAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;4BAC1C,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gCAC7B,MAAM,UAAU,GAAG,iBAAiB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;gCAC5D,KAAK,MAAM,EAAE,IAAI,UAAU,CAAC,SAAS,EAAE,CAAC;oCACtC,kBAAkB,CAAC,IAAI,CAAC,GAAG,SAAS,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;gCACtD,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,8DAA8D;gBAChE,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC;AACzC,CAAC;AAED,SAAS,mBAAmB,CAC1B,aAAqB,EACrB,SAAiB,EACjB,SAAiB,EACjB,MAAe;IAEf,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,kBAAkB,GAAa,EAAE,CAAC;IACxC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,uBAAuB,CAAC,CAAC;IAC/F,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAEpE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,EAAE,kBAAkB,CAAC,CAAC;IACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAC;IAE7D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3C,MAAM,UAAU,GAAG,iBAAiB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACxD,KAAK,MAAM,EAAE,IAAI,UAAU,CAAC,SAAS,EAAE,CAAC;YACtC,kBAAkB,CAAC,IAAI,CAAC,0CAA0C,EAAE,EAAE,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACjC,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC;AACzC,CAAC;AAED,SAAS,cAAc,CACrB,aAAqB,EACrB,MAAmB,EACnB,SAAiB,EACjB,MAAe;IAEf,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAmB,EAAE,CAAC;IACnC,MAAM,kBAAkB,GAAa,EAAE,CAAC;IACxC,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IAC5D,IAAI,UAAU,GAA0C,EAAE,CAAC;IAC3D,IAAI,CAAC;QACH,UAAU,GAAG,kBAAkB,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACzD,CAAC;IAAC,MAAM,CAAC;QACP,qDAAqD;IACvD,CAAC;IACD,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAEjE,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAChE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;YAAE,SAAS;QAEtC,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC;QAE7B,IAAI,eAAe,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YACnC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,2BAA2B,EAAE,CAAC,CAAC;YACvE,SAAS;QACX,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;QACtD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAEhD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3C,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YACjD,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAE5C,qEAAqE;YACrE,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC7D,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,CAAC;oBACH,MAAM,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAA4B,CAAC;oBAC5D,MAAM,cAAc,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC;oBACvC,IAAI,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;wBAClC,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;wBAC1C,KAAK,MAAM,EAAE,IAAI,cAAc,EAAE,CAAC;4BAChC,IAAI,OAAO,EAAE,KAAK,QAAQ;gCAAE,SAAS;4BACrC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;4BAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;4BAC1C,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gCAC7B,MAAM,UAAU,GAAG,iBAAiB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;gCAC5D,KAAK,MAAM,EAAE,IAAI,UAAU,CAAC,SAAS,EAAE,CAAC;oCACtC,kBAAkB,CAAC,IAAI,CAAC,GAAG,SAAS,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;gCACtD,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,0BAA0B;gBAC5B,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAClD,CAAC;AAED,SAAS,yBAAyB,CAChC,MAAmB,EACnB,MAAe;IAEf,IAAI,CAAC,MAAM,CAAC,QAAQ;QAAE,OAAO,EAAE,CAAC;IAEhC,MAAM,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC;IACzC,MAAM,MAAM,GAAG,eAAe,CAAC,EAAE,CAAC,CAAC;IACnC,MAAM,KAAK,GAAqC,EAAE,CAAC;IAEnD,KAAK,MAAM,KAAK,IAAI,0BAA0B,EAAE,CAAC;QAC/C,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAoC,CAAC;QACtF,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEvD,IAAI,YAAY,KAAK,IAAI,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YACxD,MAAM,aAAa,GAAG,GAAG,MAAM,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpD,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;YAErD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,aAAa,CAAC;YACpD,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,mBAAmB,CAC1B,aAAqB,EACrB,MAAmB,EACnB,OAAe,EACf,MAAe;IAEf,IAAI,MAAM;QAAE,OAAO;IAEnB,2EAA2E;IAC3E,MAAM,CAAC,KAAK,GAAG,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC;IAE1C,2CAA2C;IAC3C,2EAA2E;IAC3E,0EAA0E;IAC1E,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IAC7D,EAAE,CAAC,aAAa,CAAC,aAAa,EAAE,aAAa,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AACvF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,KAAwB,EACxB,OAA4B;IAE5B,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAC1C,MAAM,QAAQ,GAAG,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC;IAC3D,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC;IAEvD,kCAAkC;IAClC,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IAC7D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAClC,OAAO;YACL,IAAI,EAAE;gBACJ,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,MAAM;gBACd,WAAW,EAAE,EAAE;gBACf,SAAS,EAAE,EAAE;gBACb,aAAa,EAAE,EAAE;gBACjB,aAAa,EAAE,EAAE;gBACjB,aAAa,EAAE,EAAE;gBACjB,qBAAqB,EAAE,EAAE;gBACzB,cAAc,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,gBAAgB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;gBACrE,UAAU,EAAE,KAAK;gBACjB,gBAAgB,EAAE,IAAI;gBACtB,gBAAgB,EAAE,IAAI;gBACtB,iBAAiB,EAAE,IAAI;gBACvB,YAAY,EAAE,IAAI;aACnB;YACD,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,+CAA+C,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;YAC1F,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,wEAAwE;SAClF,CAAC;IACJ,CAAC;IAED,2DAA2D;IAC3D,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,IAAI,gBAAgB,GAAkB,IAAI,CAAC;IAC3C,IAAI,WAAW,EAAE,CAAC;QAChB,IAAI,YAAyB,CAAC;QAC9B,IAAI,CAAC;YACH,YAAY,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;QAChD,CAAC;QAAC,MAAM,CAAC;YACP,YAAY,GAAG,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,EAA4B,CAAC;QAClF,CAAC;QACD,MAAM,SAAS,GAAG,gBAAgB,CAAC,aAAa,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;QAC1E,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC;QAC/B,gBAAgB,GAAG,SAAS,CAAC,OAAO,CAAC;IACvC,CAAC;IAED,wDAAwD;IACxD,IAAI,SAAiB,CAAC;IACtB,IAAI,SAAiB,CAAC;IACtB,IAAI,CAAC;QACH,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,gBAAgB,CAAC,aAAa,CAAC,CAAC;QACjE,SAAS,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAC;IACjD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,IAAI,EAAE;gBACJ,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,MAAM;gBACd,WAAW,EAAE,EAAE;gBACf,SAAS,EAAE,EAAE;gBACb,aAAa,EAAE,EAAE;gBACjB,aAAa,EAAE,EAAE;gBACjB,aAAa,EAAE,EAAE;gBACjB,qBAAqB,EAAE,EAAE;gBACzB,cAAc,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,gBAAgB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;gBACrE,UAAU,EAAE,KAAK;gBACjB,gBAAgB,EAAE,IAAI;gBACtB,gBAAgB,EAAE,IAAI;gBACtB,iBAAiB,EAAE,IAAI;gBACvB,YAAY,EAAE,IAAI;aACnB;YACD,SAAS,EAAE;gBACT,EAAE,MAAM,EAAE,8DAA8D,EAAE,IAAI,EAAE,UAAU,EAAE;aAC7F;YACD,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,0BAA2B,GAAa,CAAC,OAAO,EAAE;SAC5D,CAAC;IACJ,CAAC;IAED,oDAAoD;IACpD,MAAM,QAAQ,GAAG,qBAAqB,CAAC,aAAa,EAAE,SAAS,EAAE,eAAe,CAAC,aAAa,CAAC,CAAC,CAAC;IACjG,IAAI,QAAQ,CAAC,OAAO,IAAI,OAAO,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;QAC1D,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,8CAA8C;IAC9C,IAAI,MAAmB,CAAC;IACxB,IAAI,CAAC;QACH,MAAM,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;IAC1C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,IAAI,EAAE;gBACJ,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,MAAM;gBACd,WAAW,EAAE,EAAE;gBACf,SAAS;gBACT,aAAa,EAAE,EAAE;gBACjB,aAAa,EAAE,EAAE;gBACjB,aAAa,EAAE,EAAE;gBACjB,qBAAqB,EAAE,EAAE;gBACzB,cAAc,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,gBAAgB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;gBACrE,UAAU,EAAE,KAAK;gBACjB,gBAAgB,EAAE,IAAI;gBACtB,gBAAgB,EAAE,QAAQ,CAAC,MAAM;gBACjC,iBAAiB,EAAE,QAAQ,CAAC,OAAO;gBACnC,YAAY,EAAE,IAAI;aACnB;YACD,SAAS,EAAE;gBACT,EAAE,MAAM,EAAE,mBAAoB,GAAa,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE;aAC1E;YACD,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,8CAA+C,GAAa,CAAC,OAAO,EAAE;SAChF,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,EAAE,aAAa,IAAI,IAAI,CAAC;IAExD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,wBAAwB;QACxB,OAAO;YACL,IAAI,EAAE;gBACJ,OAAO,EAAE,eAAe;gBACxB,MAAM,EAAE,MAAM;gBACd,WAAW;gBACX,SAAS;gBACT,aAAa,EAAE,EAAE;gBACjB,aAAa,EAAE,EAAE;gBACjB,aAAa,EAAE,EAAE;gBACjB,qBAAqB,EAAE,EAAE;gBACzB,cAAc,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,gBAAgB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;gBACrE,UAAU,EAAE,UAAU;gBACtB,gBAAgB,EAAE,gBAAgB;gBAClC,gBAAgB,EAAE,QAAQ,CAAC,MAAM;gBACjC,iBAAiB,EAAE,QAAQ,CAAC,OAAO;gBACnC,YAAY,EAAE,IAAI;aACnB;YACD,SAAS,EAAE,QAAQ,CAAC,OAAO;gBACzB,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;gBAClD,CAAC,CAAC,EAAE;YACN,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACvB,CAAC,CAAC,wCAAwC,SAAS,SAAS,QAAQ,CAAC,OAAO,EAAE;gBAC9E,CAAC,CAAC,wCAAwC,SAAS,GAAG;SACzD,CAAC;IACJ,CAAC;IAED,4BAA4B;IAC5B,MAAM,iBAAiB,GAAG,eAAe,CACvC,aAAa,EACb,SAAS,EACT,MAAM,CAAC,KAAK,CAAC,SAAS,EACtB,QAAQ,CACT,CAAC;IAEF,4BAA4B;IAC5B,MAAM,UAAU,GAAG,cAAc,CAC/B,aAAa,EACb,MAAM,EACN,MAAM,CAAC,KAAK,CAAC,SAAS,EACtB,QAAQ,CACT,CAAC;IAEF,kDAAkD;IAClD,MAAM,qBAAqB,GAAG,mBAAmB,CAC/C,aAAa,EACb,SAAS,EACT,MAAM,CAAC,KAAK,CAAC,SAAS,EACtB,QAAQ,CACT,CAAC;IAEF,MAAM,aAAa,GAAG;QACpB,GAAG,iBAAiB,CAAC,OAAO;QAC5B,GAAG,UAAU,CAAC,OAAO;QACrB,GAAG,qBAAqB,CAAC,OAAO;KACjC,CAAC;IACF,MAAM,kBAAkB,GAAG;QACzB,GAAG,iBAAiB,CAAC,kBAAkB;QACvC,GAAG,UAAU,CAAC,kBAAkB;QAChC,GAAG,qBAAqB,CAAC,kBAAkB;KAC5C,CAAC;IACF,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClC,OAAO,CAAC,MAAM,CAAC,IAAI,CACjB,kBAAkB,kBAAkB,CAAC,MAAM,kBAAkB,kBAAkB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG;YAC3G,8DAA8D,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAChG,CAAC;IACJ,CAAC;IAED,4CAA4C;IAC5C,MAAM,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,gBAAgB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC;IAE7H,uCAAuC;IACvC,MAAM,aAAa,GAAG,yBAAyB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAElE,qCAAqC;IACrC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,mBAAmB,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC;IAED,gDAAgD;IAChD,IAAI,qBAAqB,GAAa,EAAE,CAAC;IACzC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;YAChF,qBAAqB,GAAG,YAAY,CAAC,SAAS,CAAC;QACjD,CAAC;QAAC,MAAM,CAAC;YACP,yCAAyC;QAC3C,CAAC;IACH,CAAC;IAED,qBAAqB;IACrB,IAAI,YAAY,GAAY,IAAI,CAAC;IACjC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,IAAI,CAAC;YACH,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;YAClD,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACrD,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC;QACnC,CAAC;QAAC,MAAM,CAAC;YACP,+CAA+C;QACjD,CAAC;IACH,CAAC;IAED,0BAA0B;IAC1B,MAAM,SAAS,GAAoB,EAAE,CAAC;IACtC,IAAI,QAAQ,EAAE,CAAC;QACb,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,2CAA2C,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;IAC5F,CAAC;SAAM,CAAC;QACN,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,0CAA0C,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;QACzF,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,SAAS,CAAC,IAAI,CAAC;gBACb,MAAM,EAAE,mDAAmD;gBAC3D,IAAI,EAAE,UAAU;aACjB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAA4B,MAAM,CAAC;IAE/C,OAAO;QACL,IAAI,EAAE;YACJ,OAAO,EAAE,eAAe;YACxB,MAAM;YACN,WAAW,EAAE,WAAW,IAAI,cAAc;YAC1C,SAAS;YACT,aAAa;YACb,aAAa;YACb,aAAa,EAAE,UAAU,CAAC,OAAO;YACjC,qBAAqB;YACrB,cAAc;YACd,UAAU;YACV,gBAAgB;YAChB,gBAAgB,EAAE,QAAQ,CAAC,MAAM;YACjC,iBAAiB,EAAE,QAAQ,CAAC,OAAO;YACnC,YAAY;SACb;QACD,SAAS;QACT,QAAQ,EAAE,CAAC;QACX,OAAO,EAAE,QAAQ;YACf,CAAC,CAAC,uCAAuC,aAAa,CAAC,MAAM,kBAAkB,aAAa,CAAC,MAAM,wCAAwC,SAAS,EAAE;YACtJ,CAAC,CAAC,QAAQ,CAAC,OAAO;gBAChB,CAAC,CAAC,wBAAwB,aAAa,CAAC,MAAM,qBAAqB,aAAa,CAAC,MAAM,sCAAsC,SAAS,QAAQ,QAAQ,CAAC,OAAO,EAAE;gBAChK,CAAC,CAAC,wBAAwB,aAAa,CAAC,MAAM,qBAAqB,aAAa,CAAC,MAAM,sCAAsC,SAAS,EAAE;oBACtI,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC;wBAC5B,CAAC,CAAC,MAAM,kBAAkB,CAAC,MAAM,oCAAoC;wBACrE,CAAC,CAAC,EAAE,CAAC;KACd,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"upgrade.js","sourceRoot":"","sources":["../../../src/onboarding/upgrade.ts"],"names":[],"mappings":"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"}
@@ -7,5 +7,5 @@ export interface WorkspaceDir {
7
7
  isGenerated: boolean;
8
8
  }
9
9
  export declare function detectWorkspaceType(dirPath: string, workspaceTypes?: ProfileWorkspaceType[]): WorkspaceType | null;
10
- export declare function discoverWorkspaces(workspaceRoot: string, workspaceTypes?: ProfileWorkspaceType[]): WorkspaceDir[];
10
+ export declare function discoverWorkspaces(workspaceRoot: string, workspaceTypes?: ProfileWorkspaceType[], extraSkipDirs?: readonly string[]): WorkspaceDir[];
11
11
  //# sourceMappingURL=workspace-discovery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-discovery.d.ts","sourceRoot":"","sources":["../../../src/onboarding/workspace-discovery.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAE1E,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;AAEnE,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,aAAa,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;CACtB;AAWD,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,cAAc,CAAC,EAAE,oBAAoB,EAAE,GACtC,aAAa,GAAG,IAAI,CAiCtB;AAiCD,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,MAAM,EACrB,cAAc,CAAC,EAAE,oBAAoB,EAAE,GACtC,YAAY,EAAE,CAiDhB"}
1
+ {"version":3,"file":"workspace-discovery.d.ts","sourceRoot":"","sources":["../../../src/onboarding/workspace-discovery.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAE1E,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;AAEnE,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,aAAa,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;CACtB;AAkBD,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,EACf,cAAc,CAAC,EAAE,oBAAoB,EAAE,GACtC,aAAa,GAAG,IAAI,CAiCtB;AAiCD,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,MAAM,EACrB,cAAc,CAAC,EAAE,oBAAoB,EAAE,EACvC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,GAChC,YAAY,EAAE,CAuDhB"}