@zigrivers/scaffold 3.16.0 → 3.18.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 (385) hide show
  1. package/README.md +28 -0
  2. package/content/knowledge/backend/backend-fintech-broker-integration.md +244 -0
  3. package/content/knowledge/backend/backend-fintech-compliance.md +181 -0
  4. package/content/knowledge/backend/backend-fintech-data-modeling.md +210 -0
  5. package/content/knowledge/backend/backend-fintech-ledger.md +226 -0
  6. package/content/knowledge/backend/backend-fintech-observability.md +151 -0
  7. package/content/knowledge/backend/backend-fintech-order-lifecycle.md +213 -0
  8. package/content/knowledge/backend/backend-fintech-risk-management.md +150 -0
  9. package/content/knowledge/backend/backend-fintech-testing.md +197 -0
  10. package/content/knowledge/core/automated-review-tooling.md +10 -0
  11. package/content/knowledge/core/multi-service-api-contracts.md +634 -0
  12. package/content/knowledge/core/multi-service-architecture.md +492 -0
  13. package/content/knowledge/core/multi-service-auth.md +706 -0
  14. package/content/knowledge/core/multi-service-data-ownership.md +539 -0
  15. package/content/knowledge/core/multi-service-observability.md +545 -0
  16. package/content/knowledge/core/multi-service-resilience.md +710 -0
  17. package/content/knowledge/core/multi-service-task-decomposition.md +615 -0
  18. package/content/knowledge/core/multi-service-testing.md +728 -0
  19. package/content/methodology/backend-fintech.yml +46 -0
  20. package/content/methodology/custom-defaults.yml +6 -0
  21. package/content/methodology/deep.yml +6 -0
  22. package/content/methodology/multi-service-overlay.yml +103 -0
  23. package/content/methodology/mvp.yml +6 -0
  24. package/content/pipeline/architecture/service-ownership-map.md +83 -0
  25. package/content/pipeline/quality/cross-service-auth.md +96 -0
  26. package/content/pipeline/quality/cross-service-observability.md +104 -0
  27. package/content/pipeline/quality/integration-test-plan.md +106 -0
  28. package/content/pipeline/specification/inter-service-contracts.md +95 -0
  29. package/dist/cli/commands/adopt.cli-flags.test.js +20 -0
  30. package/dist/cli/commands/adopt.cli-flags.test.js.map +1 -1
  31. package/dist/cli/commands/adopt.d.ts.map +1 -1
  32. package/dist/cli/commands/adopt.js +11 -3
  33. package/dist/cli/commands/adopt.js.map +1 -1
  34. package/dist/cli/commands/complete.d.ts +1 -0
  35. package/dist/cli/commands/complete.d.ts.map +1 -1
  36. package/dist/cli/commands/complete.js +26 -8
  37. package/dist/cli/commands/complete.js.map +1 -1
  38. package/dist/cli/commands/dashboard.d.ts +1 -0
  39. package/dist/cli/commands/dashboard.d.ts.map +1 -1
  40. package/dist/cli/commands/dashboard.js +19 -6
  41. package/dist/cli/commands/dashboard.js.map +1 -1
  42. package/dist/cli/commands/decisions.d.ts +1 -0
  43. package/dist/cli/commands/decisions.d.ts.map +1 -1
  44. package/dist/cli/commands/decisions.js +18 -4
  45. package/dist/cli/commands/decisions.js.map +1 -1
  46. package/dist/cli/commands/info.d.ts +1 -0
  47. package/dist/cli/commands/info.d.ts.map +1 -1
  48. package/dist/cli/commands/info.js +25 -3
  49. package/dist/cli/commands/info.js.map +1 -1
  50. package/dist/cli/commands/init-from.test.d.ts +2 -0
  51. package/dist/cli/commands/init-from.test.d.ts.map +1 -0
  52. package/dist/cli/commands/init-from.test.js +315 -0
  53. package/dist/cli/commands/init-from.test.js.map +1 -0
  54. package/dist/cli/commands/init.d.ts +3 -0
  55. package/dist/cli/commands/init.d.ts.map +1 -1
  56. package/dist/cli/commands/init.js +239 -129
  57. package/dist/cli/commands/init.js.map +1 -1
  58. package/dist/cli/commands/init.test.js +20 -0
  59. package/dist/cli/commands/init.test.js.map +1 -1
  60. package/dist/cli/commands/next.d.ts +1 -0
  61. package/dist/cli/commands/next.d.ts.map +1 -1
  62. package/dist/cli/commands/next.js +40 -4
  63. package/dist/cli/commands/next.js.map +1 -1
  64. package/dist/cli/commands/next.test.js +153 -0
  65. package/dist/cli/commands/next.test.js.map +1 -1
  66. package/dist/cli/commands/reset.d.ts +1 -0
  67. package/dist/cli/commands/reset.d.ts.map +1 -1
  68. package/dist/cli/commands/reset.js +77 -29
  69. package/dist/cli/commands/reset.js.map +1 -1
  70. package/dist/cli/commands/rework.d.ts +1 -0
  71. package/dist/cli/commands/rework.d.ts.map +1 -1
  72. package/dist/cli/commands/rework.js +16 -2
  73. package/dist/cli/commands/rework.js.map +1 -1
  74. package/dist/cli/commands/run.d.ts +1 -0
  75. package/dist/cli/commands/run.d.ts.map +1 -1
  76. package/dist/cli/commands/run.js +65 -13
  77. package/dist/cli/commands/run.js.map +1 -1
  78. package/dist/cli/commands/run.test.js +255 -3
  79. package/dist/cli/commands/run.test.js.map +1 -1
  80. package/dist/cli/commands/skip.d.ts +1 -0
  81. package/dist/cli/commands/skip.d.ts.map +1 -1
  82. package/dist/cli/commands/skip.js +24 -7
  83. package/dist/cli/commands/skip.js.map +1 -1
  84. package/dist/cli/commands/status.d.ts +1 -0
  85. package/dist/cli/commands/status.d.ts.map +1 -1
  86. package/dist/cli/commands/status.js +51 -4
  87. package/dist/cli/commands/status.js.map +1 -1
  88. package/dist/cli/commands/status.test.js +130 -0
  89. package/dist/cli/commands/status.test.js.map +1 -1
  90. package/dist/cli/guards-coverage.test.d.ts +2 -0
  91. package/dist/cli/guards-coverage.test.d.ts.map +1 -0
  92. package/dist/cli/guards-coverage.test.js +26 -0
  93. package/dist/cli/guards-coverage.test.js.map +1 -0
  94. package/dist/cli/guards-integration.test.d.ts +2 -0
  95. package/dist/cli/guards-integration.test.d.ts.map +1 -0
  96. package/dist/cli/guards-integration.test.js +178 -0
  97. package/dist/cli/guards-integration.test.js.map +1 -0
  98. package/dist/cli/guards.d.ts +13 -0
  99. package/dist/cli/guards.d.ts.map +1 -0
  100. package/dist/cli/guards.js +70 -0
  101. package/dist/cli/guards.js.map +1 -0
  102. package/dist/cli/guards.test.d.ts +2 -0
  103. package/dist/cli/guards.test.d.ts.map +1 -0
  104. package/dist/cli/guards.test.js +136 -0
  105. package/dist/cli/guards.test.js.map +1 -0
  106. package/dist/cli/init-flag-families.d.ts +1 -1
  107. package/dist/cli/init-flag-families.d.ts.map +1 -1
  108. package/dist/cli/init-flag-families.js +4 -1
  109. package/dist/cli/init-flag-families.js.map +1 -1
  110. package/dist/cli/init-flag-families.test.js +10 -0
  111. package/dist/cli/init-flag-families.test.js.map +1 -1
  112. package/dist/cli/shutdown.d.ts +2 -3
  113. package/dist/cli/shutdown.d.ts.map +1 -1
  114. package/dist/cli/shutdown.js +14 -11
  115. package/dist/cli/shutdown.js.map +1 -1
  116. package/dist/cli/shutdown.test.js +2 -4
  117. package/dist/cli/shutdown.test.js.map +1 -1
  118. package/dist/config/schema.d.ts +12122 -288
  119. package/dist/config/schema.d.ts.map +1 -1
  120. package/dist/config/schema.js +74 -79
  121. package/dist/config/schema.js.map +1 -1
  122. package/dist/config/schema.test.js +230 -1
  123. package/dist/config/schema.test.js.map +1 -1
  124. package/dist/config/validators/backend.d.ts +4 -0
  125. package/dist/config/validators/backend.d.ts.map +1 -0
  126. package/dist/config/validators/backend.js +14 -0
  127. package/dist/config/validators/backend.js.map +1 -0
  128. package/dist/config/validators/browser-extension.d.ts +4 -0
  129. package/dist/config/validators/browser-extension.d.ts.map +1 -0
  130. package/dist/config/validators/browser-extension.js +24 -0
  131. package/dist/config/validators/browser-extension.js.map +1 -0
  132. package/dist/config/validators/cli.d.ts +4 -0
  133. package/dist/config/validators/cli.d.ts.map +1 -0
  134. package/dist/config/validators/cli.js +14 -0
  135. package/dist/config/validators/cli.js.map +1 -0
  136. package/dist/config/validators/data-pipeline.d.ts +4 -0
  137. package/dist/config/validators/data-pipeline.d.ts.map +1 -0
  138. package/dist/config/validators/data-pipeline.js +14 -0
  139. package/dist/config/validators/data-pipeline.js.map +1 -0
  140. package/dist/config/validators/game.d.ts +4 -0
  141. package/dist/config/validators/game.d.ts.map +1 -0
  142. package/dist/config/validators/game.js +14 -0
  143. package/dist/config/validators/game.js.map +1 -0
  144. package/dist/config/validators/index.d.ts +7 -0
  145. package/dist/config/validators/index.d.ts.map +1 -0
  146. package/dist/config/validators/index.js +27 -0
  147. package/dist/config/validators/index.js.map +1 -0
  148. package/dist/config/validators/library.d.ts +4 -0
  149. package/dist/config/validators/library.d.ts.map +1 -0
  150. package/dist/config/validators/library.js +25 -0
  151. package/dist/config/validators/library.js.map +1 -0
  152. package/dist/config/validators/ml.d.ts +4 -0
  153. package/dist/config/validators/ml.d.ts.map +1 -0
  154. package/dist/config/validators/ml.js +31 -0
  155. package/dist/config/validators/ml.js.map +1 -0
  156. package/dist/config/validators/mobile-app.d.ts +4 -0
  157. package/dist/config/validators/mobile-app.d.ts.map +1 -0
  158. package/dist/config/validators/mobile-app.js +14 -0
  159. package/dist/config/validators/mobile-app.js.map +1 -0
  160. package/dist/config/validators/registry.test.d.ts +2 -0
  161. package/dist/config/validators/registry.test.d.ts.map +1 -0
  162. package/dist/config/validators/registry.test.js +26 -0
  163. package/dist/config/validators/registry.test.js.map +1 -0
  164. package/dist/config/validators/research.d.ts +4 -0
  165. package/dist/config/validators/research.d.ts.map +1 -0
  166. package/dist/config/validators/research.js +24 -0
  167. package/dist/config/validators/research.js.map +1 -0
  168. package/dist/config/validators/research.test.d.ts +2 -0
  169. package/dist/config/validators/research.test.d.ts.map +1 -0
  170. package/dist/config/validators/research.test.js +44 -0
  171. package/dist/config/validators/research.test.js.map +1 -0
  172. package/dist/config/validators/types.d.ts +19 -0
  173. package/dist/config/validators/types.d.ts.map +1 -0
  174. package/dist/config/validators/types.js +2 -0
  175. package/dist/config/validators/types.js.map +1 -0
  176. package/dist/config/validators/validators.test.d.ts +2 -0
  177. package/dist/config/validators/validators.test.d.ts.map +1 -0
  178. package/dist/config/validators/validators.test.js +25 -0
  179. package/dist/config/validators/validators.test.js.map +1 -0
  180. package/dist/config/validators/web-app.d.ts +4 -0
  181. package/dist/config/validators/web-app.d.ts.map +1 -0
  182. package/dist/config/validators/web-app.js +31 -0
  183. package/dist/config/validators/web-app.js.map +1 -0
  184. package/dist/core/assembly/context-gatherer.d.ts.map +1 -1
  185. package/dist/core/assembly/context-gatherer.js +4 -2
  186. package/dist/core/assembly/context-gatherer.js.map +1 -1
  187. package/dist/core/assembly/cross-reads.d.ts +61 -0
  188. package/dist/core/assembly/cross-reads.d.ts.map +1 -0
  189. package/dist/core/assembly/cross-reads.js +190 -0
  190. package/dist/core/assembly/cross-reads.js.map +1 -0
  191. package/dist/core/assembly/cross-reads.test.d.ts +2 -0
  192. package/dist/core/assembly/cross-reads.test.d.ts.map +1 -0
  193. package/dist/core/assembly/cross-reads.test.js +497 -0
  194. package/dist/core/assembly/cross-reads.test.js.map +1 -0
  195. package/dist/core/assembly/overlay-loader-structural.test.d.ts +2 -0
  196. package/dist/core/assembly/overlay-loader-structural.test.d.ts.map +1 -0
  197. package/dist/core/assembly/overlay-loader-structural.test.js +173 -0
  198. package/dist/core/assembly/overlay-loader-structural.test.js.map +1 -0
  199. package/dist/core/assembly/overlay-loader.d.ts +19 -3
  200. package/dist/core/assembly/overlay-loader.d.ts.map +1 -1
  201. package/dist/core/assembly/overlay-loader.js +135 -4
  202. package/dist/core/assembly/overlay-loader.js.map +1 -1
  203. package/dist/core/assembly/overlay-loader.test.js +204 -1
  204. package/dist/core/assembly/overlay-loader.test.js.map +1 -1
  205. package/dist/core/assembly/overlay-resolver.d.ts +9 -2
  206. package/dist/core/assembly/overlay-resolver.d.ts.map +1 -1
  207. package/dist/core/assembly/overlay-resolver.js +32 -1
  208. package/dist/core/assembly/overlay-resolver.js.map +1 -1
  209. package/dist/core/assembly/overlay-resolver.test.js +135 -17
  210. package/dist/core/assembly/overlay-resolver.test.js.map +1 -1
  211. package/dist/core/assembly/overlay-state-resolver.d.ts +9 -0
  212. package/dist/core/assembly/overlay-state-resolver.d.ts.map +1 -1
  213. package/dist/core/assembly/overlay-state-resolver.js +43 -2
  214. package/dist/core/assembly/overlay-state-resolver.js.map +1 -1
  215. package/dist/core/assembly/overlay-state-resolver.test.js +321 -0
  216. package/dist/core/assembly/overlay-state-resolver.test.js.map +1 -1
  217. package/dist/core/assembly/update-mode.d.ts +1 -0
  218. package/dist/core/assembly/update-mode.d.ts.map +1 -1
  219. package/dist/core/assembly/update-mode.js +17 -9
  220. package/dist/core/assembly/update-mode.js.map +1 -1
  221. package/dist/core/dependency/eligibility.d.ts +10 -1
  222. package/dist/core/dependency/eligibility.d.ts.map +1 -1
  223. package/dist/core/dependency/eligibility.js +19 -1
  224. package/dist/core/dependency/eligibility.js.map +1 -1
  225. package/dist/core/dependency/eligibility.test.js +82 -0
  226. package/dist/core/dependency/eligibility.test.js.map +1 -1
  227. package/dist/core/dependency/graph.d.ts +4 -1
  228. package/dist/core/dependency/graph.d.ts.map +1 -1
  229. package/dist/core/dependency/graph.js +7 -1
  230. package/dist/core/dependency/graph.js.map +1 -1
  231. package/dist/core/dependency/graph.test.js +48 -0
  232. package/dist/core/dependency/graph.test.js.map +1 -1
  233. package/dist/core/pipeline/global-steps.d.ts +7 -0
  234. package/dist/core/pipeline/global-steps.d.ts.map +1 -0
  235. package/dist/core/pipeline/global-steps.js +18 -0
  236. package/dist/core/pipeline/global-steps.js.map +1 -0
  237. package/dist/core/pipeline/resolver.d.ts +1 -0
  238. package/dist/core/pipeline/resolver.d.ts.map +1 -1
  239. package/dist/core/pipeline/resolver.js +54 -7
  240. package/dist/core/pipeline/resolver.js.map +1 -1
  241. package/dist/core/pipeline/resolver.test.js +51 -1
  242. package/dist/core/pipeline/resolver.test.js.map +1 -1
  243. package/dist/core/pipeline/types.d.ts +5 -1
  244. package/dist/core/pipeline/types.d.ts.map +1 -1
  245. package/dist/e2e/cross-service-references.test.d.ts +22 -0
  246. package/dist/e2e/cross-service-references.test.d.ts.map +1 -0
  247. package/dist/e2e/cross-service-references.test.js +230 -0
  248. package/dist/e2e/cross-service-references.test.js.map +1 -0
  249. package/dist/e2e/multi-service-pipeline.test.d.ts +10 -0
  250. package/dist/e2e/multi-service-pipeline.test.d.ts.map +1 -0
  251. package/dist/e2e/multi-service-pipeline.test.js +185 -0
  252. package/dist/e2e/multi-service-pipeline.test.js.map +1 -0
  253. package/dist/e2e/project-type-overlays.test.js +68 -0
  254. package/dist/e2e/project-type-overlays.test.js.map +1 -1
  255. package/dist/e2e/service-execution.test.d.ts +15 -0
  256. package/dist/e2e/service-execution.test.d.ts.map +1 -0
  257. package/dist/e2e/service-execution.test.js +219 -0
  258. package/dist/e2e/service-execution.test.js.map +1 -0
  259. package/dist/e2e/service-manifest.test.d.ts +19 -0
  260. package/dist/e2e/service-manifest.test.d.ts.map +1 -0
  261. package/dist/e2e/service-manifest.test.js +166 -0
  262. package/dist/e2e/service-manifest.test.js.map +1 -0
  263. package/dist/project/__frozen-schemas__/schema-v3.9.2.d.ts +224 -224
  264. package/dist/project/frontmatter.d.ts.map +1 -1
  265. package/dist/project/frontmatter.js +11 -0
  266. package/dist/project/frontmatter.js.map +1 -1
  267. package/dist/project/frontmatter.test.js +71 -0
  268. package/dist/project/frontmatter.test.js.map +1 -1
  269. package/dist/state/completion.d.ts +1 -1
  270. package/dist/state/completion.d.ts.map +1 -1
  271. package/dist/state/completion.js +10 -8
  272. package/dist/state/completion.js.map +1 -1
  273. package/dist/state/decision-logger.d.ts +3 -2
  274. package/dist/state/decision-logger.d.ts.map +1 -1
  275. package/dist/state/decision-logger.js +12 -11
  276. package/dist/state/decision-logger.js.map +1 -1
  277. package/dist/state/ensure-v3-migration.d.ts +9 -0
  278. package/dist/state/ensure-v3-migration.d.ts.map +1 -0
  279. package/dist/state/ensure-v3-migration.js +35 -0
  280. package/dist/state/ensure-v3-migration.js.map +1 -0
  281. package/dist/state/lock-manager.d.ts +5 -4
  282. package/dist/state/lock-manager.d.ts.map +1 -1
  283. package/dist/state/lock-manager.js +11 -11
  284. package/dist/state/lock-manager.js.map +1 -1
  285. package/dist/state/rework-manager.d.ts +1 -2
  286. package/dist/state/rework-manager.d.ts.map +1 -1
  287. package/dist/state/rework-manager.js +4 -5
  288. package/dist/state/rework-manager.js.map +1 -1
  289. package/dist/state/state-manager.d.ts +25 -1
  290. package/dist/state/state-manager.d.ts.map +1 -1
  291. package/dist/state/state-manager.js +86 -12
  292. package/dist/state/state-manager.js.map +1 -1
  293. package/dist/state/state-manager.test.js +278 -0
  294. package/dist/state/state-manager.test.js.map +1 -1
  295. package/dist/state/state-migration-v3.d.ts +22 -0
  296. package/dist/state/state-migration-v3.d.ts.map +1 -0
  297. package/dist/state/state-migration-v3.js +82 -0
  298. package/dist/state/state-migration-v3.js.map +1 -0
  299. package/dist/state/state-migration-v3.test.d.ts +2 -0
  300. package/dist/state/state-migration-v3.test.d.ts.map +1 -0
  301. package/dist/state/state-migration-v3.test.js +196 -0
  302. package/dist/state/state-migration-v3.test.js.map +1 -0
  303. package/dist/state/state-migration.d.ts.map +1 -1
  304. package/dist/state/state-migration.js +11 -6
  305. package/dist/state/state-migration.js.map +1 -1
  306. package/dist/state/state-migration.test.js +47 -2
  307. package/dist/state/state-migration.test.js.map +1 -1
  308. package/dist/state/state-path-resolver.d.ts +23 -0
  309. package/dist/state/state-path-resolver.d.ts.map +1 -0
  310. package/dist/state/state-path-resolver.js +36 -0
  311. package/dist/state/state-path-resolver.js.map +1 -0
  312. package/dist/state/state-path-resolver.test.d.ts +2 -0
  313. package/dist/state/state-path-resolver.test.d.ts.map +1 -0
  314. package/dist/state/state-path-resolver.test.js +78 -0
  315. package/dist/state/state-path-resolver.test.js.map +1 -0
  316. package/dist/state/state-version-dispatch.d.ts +17 -0
  317. package/dist/state/state-version-dispatch.d.ts.map +1 -0
  318. package/dist/state/state-version-dispatch.js +27 -0
  319. package/dist/state/state-version-dispatch.js.map +1 -0
  320. package/dist/state/state-version-dispatch.test.d.ts +2 -0
  321. package/dist/state/state-version-dispatch.test.d.ts.map +1 -0
  322. package/dist/state/state-version-dispatch.test.js +40 -0
  323. package/dist/state/state-version-dispatch.test.js.map +1 -0
  324. package/dist/types/config.d.ts +33 -3
  325. package/dist/types/config.d.ts.map +1 -1
  326. package/dist/types/config.test.js +62 -1
  327. package/dist/types/config.test.js.map +1 -1
  328. package/dist/types/dependency.d.ts +9 -0
  329. package/dist/types/dependency.d.ts.map +1 -1
  330. package/dist/types/frontmatter.d.ts +5 -0
  331. package/dist/types/frontmatter.d.ts.map +1 -1
  332. package/dist/types/lock.d.ts +1 -1
  333. package/dist/types/lock.d.ts.map +1 -1
  334. package/dist/types/state.d.ts +1 -1
  335. package/dist/types/state.d.ts.map +1 -1
  336. package/dist/utils/artifact-path.d.ts +19 -0
  337. package/dist/utils/artifact-path.d.ts.map +1 -0
  338. package/dist/utils/artifact-path.js +95 -0
  339. package/dist/utils/artifact-path.js.map +1 -0
  340. package/dist/utils/artifact-path.test.d.ts +2 -0
  341. package/dist/utils/artifact-path.test.d.ts.map +1 -0
  342. package/dist/utils/artifact-path.test.js +138 -0
  343. package/dist/utils/artifact-path.test.js.map +1 -0
  344. package/dist/utils/errors.d.ts +3 -1
  345. package/dist/utils/errors.d.ts.map +1 -1
  346. package/dist/utils/errors.js +21 -2
  347. package/dist/utils/errors.js.map +1 -1
  348. package/dist/utils/errors.test.js +27 -1
  349. package/dist/utils/errors.test.js.map +1 -1
  350. package/dist/utils/user-errors.d.ts +46 -0
  351. package/dist/utils/user-errors.d.ts.map +1 -0
  352. package/dist/utils/user-errors.js +76 -0
  353. package/dist/utils/user-errors.js.map +1 -0
  354. package/dist/utils/user-errors.test.d.ts +2 -0
  355. package/dist/utils/user-errors.test.d.ts.map +1 -0
  356. package/dist/utils/user-errors.test.js +74 -0
  357. package/dist/utils/user-errors.test.js.map +1 -0
  358. package/dist/validation/index.d.ts.map +1 -1
  359. package/dist/validation/index.js +16 -0
  360. package/dist/validation/index.js.map +1 -1
  361. package/dist/validation/index.test.js +48 -0
  362. package/dist/validation/index.test.js.map +1 -1
  363. package/dist/validation/state-validator.d.ts +5 -2
  364. package/dist/validation/state-validator.d.ts.map +1 -1
  365. package/dist/validation/state-validator.js +18 -20
  366. package/dist/validation/state-validator.js.map +1 -1
  367. package/dist/validation/state-validator.test.js +31 -2
  368. package/dist/validation/state-validator.test.js.map +1 -1
  369. package/dist/wizard/copy/backend.d.ts.map +1 -1
  370. package/dist/wizard/copy/backend.js +12 -0
  371. package/dist/wizard/copy/backend.js.map +1 -1
  372. package/dist/wizard/flags.d.ts +1 -0
  373. package/dist/wizard/flags.d.ts.map +1 -1
  374. package/dist/wizard/questions.d.ts.map +1 -1
  375. package/dist/wizard/questions.js +5 -1
  376. package/dist/wizard/questions.js.map +1 -1
  377. package/dist/wizard/questions.test.js +45 -2
  378. package/dist/wizard/questions.test.js.map +1 -1
  379. package/dist/wizard/wizard.d.ts +23 -0
  380. package/dist/wizard/wizard.d.ts.map +1 -1
  381. package/dist/wizard/wizard.js +85 -47
  382. package/dist/wizard/wizard.js.map +1 -1
  383. package/dist/wizard/wizard.test.js +186 -1
  384. package/dist/wizard/wizard.test.js.map +1 -1
  385. package/package.json +1 -1
@@ -1,12 +1,57 @@
1
+ import fs from 'node:fs';
2
+ import path from 'node:path';
3
+ import { parse as parseYaml } from 'yaml';
1
4
  import { resolveOutputMode } from '../middleware/output-mode.js';
2
5
  import { createOutputContext } from '../output/context.js';
3
- import { runWizard } from '../../wizard/wizard.js';
6
+ import { runWizard, materializeScaffoldProject, readOldStateIfExists } from '../../wizard/wizard.js';
4
7
  import { runBuild } from './build.js';
5
8
  import { syncSkillsIfNeeded } from '../../core/skills/sync.js';
6
9
  import { shutdown } from '../shutdown.js';
7
- import { ProjectTypeSchema } from '../../config/schema.js';
10
+ import { ProjectTypeSchema, ConfigSchema } from '../../config/schema.js';
8
11
  import { coerceCSV } from '../utils/coerce.js';
12
+ import { InvalidYamlError, InvalidConfigError, FromPathReadError, TTYStdinError, isScaffoldUserError, } from '../../utils/user-errors.js';
9
13
  import { GAME_FLAGS, WEB_FLAGS, BACKEND_FLAGS, CLI_TYPE_FLAGS, LIB_FLAGS, MOBILE_FLAGS, PIPELINE_FLAGS, ML_FLAGS, EXT_FLAGS, RESEARCH_FLAGS, applyFlagFamilyValidation, } from '../init-flag-families.js';
14
+ // ---------------------------------------------------------------------------
15
+ // CONFIG_SETTING_FLAGS — every flag that --from is mutually exclusive with
16
+ // ---------------------------------------------------------------------------
17
+ export const CONFIG_SETTING_FLAGS = [
18
+ 'methodology', 'depth', 'adapters', 'traits', 'project-type', 'idea',
19
+ ...GAME_FLAGS, ...WEB_FLAGS, ...BACKEND_FLAGS, ...CLI_TYPE_FLAGS,
20
+ ...LIB_FLAGS, ...MOBILE_FLAGS, ...PIPELINE_FLAGS, ...ML_FLAGS,
21
+ ...EXT_FLAGS, ...RESEARCH_FLAGS,
22
+ ];
23
+ // ---------------------------------------------------------------------------
24
+ // --from helpers
25
+ // ---------------------------------------------------------------------------
26
+ function readFromPath(pathArg) {
27
+ try {
28
+ return fs.readFileSync(path.resolve(process.cwd(), pathArg), 'utf-8');
29
+ }
30
+ catch (err) {
31
+ const code = err.code ?? err.message;
32
+ throw new FromPathReadError(pathArg, code);
33
+ }
34
+ }
35
+ function readStdinOrError() {
36
+ if (process.stdin.isTTY) {
37
+ throw new TTYStdinError();
38
+ }
39
+ try {
40
+ return fs.readFileSync(0, 'utf-8');
41
+ }
42
+ catch (err) {
43
+ throw new FromPathReadError('-', err.message);
44
+ }
45
+ }
46
+ function formatZodError(error) {
47
+ return error.issues.map(issue => {
48
+ const p = issue.path.join('.') || '(root)';
49
+ return ` ${p}: ${issue.message}`;
50
+ }).join('\n');
51
+ }
52
+ // ---------------------------------------------------------------------------
53
+ // Command
54
+ // ---------------------------------------------------------------------------
10
55
  const initCommand = {
11
56
  command: 'init',
12
57
  describe: 'Initialize scaffold for this project',
@@ -19,6 +64,10 @@ const initCommand = {
19
64
  .option('idea', { type: 'string', describe: 'One-line project idea for methodology suggestion' })
20
65
  .option('format', { type: 'string', describe: 'Output format (json/auto/interactive)' })
21
66
  .option('verbose', { type: 'boolean', default: false, describe: 'Verbose output' })
67
+ .option('from', {
68
+ type: 'string',
69
+ describe: 'Path to a ScaffoldConfig YAML file, or "-" for stdin. Exclusive with config-setting flags.',
70
+ })
22
71
  // Configuration options
23
72
  .option('methodology', {
24
73
  type: 'string',
@@ -94,6 +143,11 @@ const initCommand = {
94
143
  type: 'string',
95
144
  describe: 'Deploy target',
96
145
  choices: ['serverless', 'container', 'long-running'],
146
+ })
147
+ .option('backend-domain', {
148
+ type: 'string',
149
+ describe: 'Backend domain (none | fintech)',
150
+ choices: ['none', 'fintech'],
97
151
  })
98
152
  // CLI Configuration
99
153
  .option('cli-interactivity', {
@@ -312,6 +366,15 @@ const initCommand = {
312
366
  })
313
367
  // Validation
314
368
  .check((argv) => {
369
+ // --from is exclusive with all config-setting flags
370
+ if (argv.from !== undefined) {
371
+ const conflicts = CONFIG_SETTING_FLAGS.filter(f => argv[f] !== undefined);
372
+ if (conflicts.length > 0) {
373
+ const summary = conflicts.map(f => '--' + f).join(', ');
374
+ throw new Error(`--from cannot be combined with: ${summary}. Edit services.yml and re-run.`);
375
+ }
376
+ return true; // skip all other validation when --from is set
377
+ }
315
378
  // --depth requires --methodology custom (init-only)
316
379
  if (argv.depth !== undefined && argv.methodology !== 'custom') {
317
380
  throw new Error('--depth requires --methodology custom');
@@ -339,7 +402,7 @@ const initCommand = {
339
402
  .group(['methodology', 'depth', 'adapters', 'traits', 'project-type'], 'Configuration:')
340
403
  .group(['web-rendering', 'web-deploy-target', 'web-realtime', 'web-auth-flow'], 'Web-App Configuration:')
341
404
  .group(['backend-api-style', 'backend-data-store', 'backend-auth',
342
- 'backend-messaging', 'backend-deploy-target'], 'Backend Configuration:')
405
+ 'backend-messaging', 'backend-deploy-target', 'backend-domain'], 'Backend Configuration:')
343
406
  .group(['cli-interactivity', 'cli-distribution', 'cli-structured-output'], 'CLI Configuration:')
344
407
  .group([...LIB_FLAGS], 'Library Configuration:')
345
408
  .group([...MOBILE_FLAGS], 'Mobile-App Configuration:')
@@ -352,137 +415,172 @@ const initCommand = {
352
415
  'game-content-structure', 'game-economy', 'game-narrative', 'game-locales',
353
416
  'game-npc-ai', 'game-modding', 'game-persistence',
354
417
  ], 'Game Configuration:')
355
- .group(['root', 'force', 'auto', 'idea', 'format', 'verbose'], 'General:');
418
+ .group(['root', 'force', 'auto', 'from', 'idea', 'format', 'verbose'], 'General:');
356
419
  },
357
420
  handler: async (argv) => {
358
421
  const projectRoot = argv.root ?? process.cwd();
359
422
  const outputMode = resolveOutputMode(argv);
360
423
  const output = createOutputContext(outputMode);
361
- // Auto-detect project type from flags
362
- const hasGameFlag = GAME_FLAGS.some((f) => argv[f] !== undefined);
363
- const hasWebFlag = WEB_FLAGS.some((f) => argv[f] !== undefined);
364
- const hasBackendFlag = BACKEND_FLAGS.some((f) => argv[f] !== undefined);
365
- const hasCliTypeFlag = CLI_TYPE_FLAGS.some((f) => argv[f] !== undefined);
366
- const hasLibFlag = LIB_FLAGS.some((f) => argv[f] !== undefined);
367
- const hasMobileFlag = MOBILE_FLAGS.some((f) => argv[f] !== undefined);
368
- const hasPipelineFlag = PIPELINE_FLAGS.some((f) => argv[f] !== undefined);
369
- const hasMlFlag = ML_FLAGS.some((f) => argv[f] !== undefined);
370
- const hasExtFlag = EXT_FLAGS.some((f) => argv[f] !== undefined);
371
- const hasResearchFlag = RESEARCH_FLAGS.some((f) => argv[f] !== undefined);
372
- const detectedType = hasGameFlag
373
- ? 'game'
374
- : hasWebFlag
375
- ? 'web-app'
376
- : hasBackendFlag
377
- ? 'backend'
378
- : hasCliTypeFlag
379
- ? 'cli'
380
- : hasLibFlag
381
- ? 'library'
382
- : hasMobileFlag
383
- ? 'mobile-app'
384
- : hasPipelineFlag
385
- ? 'data-pipeline'
386
- : hasMlFlag
387
- ? 'ml'
388
- : hasExtFlag
389
- ? 'browser-extension'
390
- : hasResearchFlag
391
- ? 'research'
392
- : undefined;
393
- const projectType = argv['project-type'] ?? detectedType;
424
+ // Track whether Phase 1 succeeded so we know to run Phase 2
425
+ let phase1Success = false;
426
+ // Wizard result populated by the wizard path, undefined for --from path
394
427
  let result;
395
- await shutdown.withContext('Cancelled. No changes were made.', async () => {
396
- result = await shutdown.withPrompt(async () => runWizard({
397
- projectRoot,
398
- auto: argv.auto ?? false,
399
- force: argv.force ?? false,
400
- methodology: argv.methodology,
401
- projectType,
402
- idea: argv.idea,
403
- output,
404
- depth: argv.depth,
405
- adapters: argv.adapters,
406
- traits: argv.traits,
407
- // yargs `choices:` validates these at runtime, so the narrow casts at
408
- // this CLI boundary are safe. See src/wizard/flags.ts for rationale.
409
- gameFlags: hasGameFlag ? {
410
- engine: argv.engine,
411
- multiplayer: argv.multiplayer,
412
- targetPlatforms: argv['target-platforms'],
413
- onlineServices: argv['online-services'],
414
- contentStructure: argv['content-structure'],
415
- economy: argv.economy,
416
- narrative: argv.narrative,
417
- locales: argv.locales,
418
- npcAi: argv['npc-ai'],
419
- modding: argv.modding,
420
- persistence: argv.persistence,
421
- } : undefined,
422
- webAppFlags: hasWebFlag ? {
423
- webRendering: argv['web-rendering'],
424
- webDeployTarget: argv['web-deploy-target'],
425
- webRealtime: argv['web-realtime'],
426
- webAuthFlow: argv['web-auth-flow'],
427
- } : undefined,
428
- backendFlags: hasBackendFlag ? {
429
- backendApiStyle: argv['backend-api-style'],
430
- backendDataStore: argv['backend-data-store'],
431
- backendAuth: argv['backend-auth'],
432
- backendMessaging: argv['backend-messaging'],
433
- backendDeployTarget: argv['backend-deploy-target'],
434
- } : undefined,
435
- cliFlags: hasCliTypeFlag ? {
436
- cliInteractivity: argv['cli-interactivity'],
437
- cliDistribution: argv['cli-distribution'],
438
- cliStructuredOutput: argv['cli-structured-output'],
439
- } : undefined,
440
- libraryFlags: hasLibFlag ? {
441
- libVisibility: argv['lib-visibility'],
442
- libRuntimeTarget: argv['lib-runtime-target'],
443
- libBundleFormat: argv['lib-bundle-format'],
444
- libTypeDefinitions: argv['lib-type-definitions'],
445
- libDocLevel: argv['lib-doc-level'],
446
- } : undefined,
447
- mobileAppFlags: hasMobileFlag ? {
448
- mobilePlatform: argv['mobile-platform'],
449
- mobileDistribution: argv['mobile-distribution'],
450
- mobileOffline: argv['mobile-offline'],
451
- mobilePushNotifications: argv['mobile-push-notifications'],
452
- } : undefined,
453
- dataPipelineFlags: hasPipelineFlag ? {
454
- pipelineProcessing: argv['pipeline-processing'],
455
- pipelineOrchestration: argv['pipeline-orchestration'],
456
- pipelineQuality: argv['pipeline-quality'],
457
- pipelineSchema: argv['pipeline-schema'],
458
- pipelineCatalog: argv['pipeline-catalog'],
459
- } : undefined,
460
- mlFlags: hasMlFlag ? {
461
- mlPhase: argv['ml-phase'],
462
- mlModelType: argv['ml-model-type'],
463
- mlServing: argv['ml-serving'],
464
- mlExperimentTracking: argv['ml-experiment-tracking'],
465
- } : undefined,
466
- browserExtensionFlags: hasExtFlag ? {
467
- extManifest: argv['ext-manifest'],
468
- extUiSurfaces: argv['ext-ui-surfaces'],
469
- extContentScript: argv['ext-content-script'],
470
- extBackgroundWorker: argv['ext-background-worker'],
471
- } : undefined,
472
- researchFlags: hasResearchFlag ? {
473
- researchDriver: argv['research-driver'],
474
- researchInteraction: argv['research-interaction'],
475
- researchDomain: argv['research-domain'],
476
- researchTracking: argv['research-tracking'],
477
- } : undefined,
478
- }));
479
- if (!result.success) {
480
- for (const err of result.errors) {
481
- output.error(err);
428
+ try {
429
+ // Phase 1: collect or parse config (Ctrl-C clean exit, no changes)
430
+ await shutdown.withContext('Cancelled. No changes were made.', async () => {
431
+ if (argv.from !== undefined) {
432
+ // --from declarative path: read YAML, validate, materialize
433
+ const sourceLabel = argv.from === '-' ? '<stdin>' : argv.from;
434
+ const raw = argv.from === '-' ? readStdinOrError() : readFromPath(argv.from);
435
+ let parsedYaml;
436
+ try {
437
+ parsedYaml = parseYaml(raw);
438
+ }
439
+ catch (err) {
440
+ throw new InvalidYamlError(sourceLabel, err.message);
441
+ }
442
+ const parseResult = ConfigSchema.safeParse(parsedYaml);
443
+ if (!parseResult.success) {
444
+ throw new InvalidConfigError(sourceLabel, formatZodError(parseResult.error));
445
+ }
446
+ const config = parseResult.data;
447
+ const oldState = readOldStateIfExists(projectRoot);
448
+ await materializeScaffoldProject(config, {
449
+ projectRoot, force: argv.force ?? false, oldState, output,
450
+ });
451
+ phase1Success = true;
482
452
  }
483
- process.exitCode = 1;
453
+ else {
454
+ // Interactive wizard path
455
+ const hasGameFlag = GAME_FLAGS.some((f) => argv[f] !== undefined);
456
+ const hasWebFlag = WEB_FLAGS.some((f) => argv[f] !== undefined);
457
+ const hasBackendFlag = BACKEND_FLAGS.some((f) => argv[f] !== undefined);
458
+ const hasCliTypeFlag = CLI_TYPE_FLAGS.some((f) => argv[f] !== undefined);
459
+ const hasLibFlag = LIB_FLAGS.some((f) => argv[f] !== undefined);
460
+ const hasMobileFlag = MOBILE_FLAGS.some((f) => argv[f] !== undefined);
461
+ const hasPipelineFlag = PIPELINE_FLAGS.some((f) => argv[f] !== undefined);
462
+ const hasMlFlag = ML_FLAGS.some((f) => argv[f] !== undefined);
463
+ const hasExtFlag = EXT_FLAGS.some((f) => argv[f] !== undefined);
464
+ const hasResearchFlag = RESEARCH_FLAGS.some((f) => argv[f] !== undefined);
465
+ const detectedType = hasGameFlag
466
+ ? 'game'
467
+ : hasWebFlag
468
+ ? 'web-app'
469
+ : hasBackendFlag
470
+ ? 'backend'
471
+ : hasCliTypeFlag
472
+ ? 'cli'
473
+ : hasLibFlag
474
+ ? 'library'
475
+ : hasMobileFlag
476
+ ? 'mobile-app'
477
+ : hasPipelineFlag
478
+ ? 'data-pipeline'
479
+ : hasMlFlag
480
+ ? 'ml'
481
+ : hasExtFlag
482
+ ? 'browser-extension'
483
+ : hasResearchFlag
484
+ ? 'research'
485
+ : undefined;
486
+ const projectType = argv['project-type'] ?? detectedType;
487
+ result = await shutdown.withPrompt(async () => runWizard({
488
+ projectRoot,
489
+ auto: argv.auto ?? false,
490
+ force: argv.force ?? false,
491
+ methodology: argv.methodology,
492
+ projectType,
493
+ idea: argv.idea,
494
+ output,
495
+ depth: argv.depth,
496
+ adapters: argv.adapters,
497
+ traits: argv.traits,
498
+ // yargs `choices:` validates these at runtime, so the narrow casts at
499
+ // this CLI boundary are safe. See src/wizard/flags.ts for rationale.
500
+ gameFlags: hasGameFlag ? {
501
+ engine: argv.engine,
502
+ multiplayer: argv.multiplayer,
503
+ targetPlatforms: argv['target-platforms'],
504
+ onlineServices: argv['online-services'],
505
+ contentStructure: argv['content-structure'],
506
+ economy: argv.economy,
507
+ narrative: argv.narrative,
508
+ locales: argv.locales,
509
+ npcAi: argv['npc-ai'],
510
+ modding: argv.modding,
511
+ persistence: argv.persistence,
512
+ } : undefined,
513
+ webAppFlags: hasWebFlag ? {
514
+ webRendering: argv['web-rendering'],
515
+ webDeployTarget: argv['web-deploy-target'],
516
+ webRealtime: argv['web-realtime'],
517
+ webAuthFlow: argv['web-auth-flow'],
518
+ } : undefined,
519
+ backendFlags: hasBackendFlag ? {
520
+ backendApiStyle: argv['backend-api-style'],
521
+ backendDataStore: argv['backend-data-store'],
522
+ backendAuth: argv['backend-auth'],
523
+ backendMessaging: argv['backend-messaging'],
524
+ backendDeployTarget: argv['backend-deploy-target'],
525
+ backendDomain: argv['backend-domain'],
526
+ } : undefined,
527
+ cliFlags: hasCliTypeFlag ? {
528
+ cliInteractivity: argv['cli-interactivity'],
529
+ cliDistribution: argv['cli-distribution'],
530
+ cliStructuredOutput: argv['cli-structured-output'],
531
+ } : undefined,
532
+ libraryFlags: hasLibFlag ? {
533
+ libVisibility: argv['lib-visibility'],
534
+ libRuntimeTarget: argv['lib-runtime-target'],
535
+ libBundleFormat: argv['lib-bundle-format'],
536
+ libTypeDefinitions: argv['lib-type-definitions'],
537
+ libDocLevel: argv['lib-doc-level'],
538
+ } : undefined,
539
+ mobileAppFlags: hasMobileFlag ? {
540
+ mobilePlatform: argv['mobile-platform'],
541
+ mobileDistribution: argv['mobile-distribution'],
542
+ mobileOffline: argv['mobile-offline'],
543
+ mobilePushNotifications: argv['mobile-push-notifications'],
544
+ } : undefined,
545
+ dataPipelineFlags: hasPipelineFlag ? {
546
+ pipelineProcessing: argv['pipeline-processing'],
547
+ pipelineOrchestration: argv['pipeline-orchestration'],
548
+ pipelineQuality: argv['pipeline-quality'],
549
+ pipelineSchema: argv['pipeline-schema'],
550
+ pipelineCatalog: argv['pipeline-catalog'],
551
+ } : undefined,
552
+ mlFlags: hasMlFlag ? {
553
+ mlPhase: argv['ml-phase'],
554
+ mlModelType: argv['ml-model-type'],
555
+ mlServing: argv['ml-serving'],
556
+ mlExperimentTracking: argv['ml-experiment-tracking'],
557
+ } : undefined,
558
+ browserExtensionFlags: hasExtFlag ? {
559
+ extManifest: argv['ext-manifest'],
560
+ extUiSurfaces: argv['ext-ui-surfaces'],
561
+ extContentScript: argv['ext-content-script'],
562
+ extBackgroundWorker: argv['ext-background-worker'],
563
+ } : undefined,
564
+ researchFlags: hasResearchFlag ? {
565
+ researchDriver: argv['research-driver'],
566
+ researchInteraction: argv['research-interaction'],
567
+ researchDomain: argv['research-domain'],
568
+ researchTracking: argv['research-tracking'],
569
+ } : undefined,
570
+ }));
571
+ if (!result.success) {
572
+ for (const err of result.errors) {
573
+ output.error(err);
574
+ }
575
+ process.exitCode = 1;
576
+ return;
577
+ }
578
+ phase1Success = true;
579
+ }
580
+ });
581
+ // Phase 2: build + skill sync (Ctrl-C → partial output warning)
582
+ if (!phase1Success)
484
583
  return;
485
- }
486
584
  await shutdown.withContext('Cancelled. Partial output may exist. Run `scaffold build` to regenerate.', async () => {
487
585
  const buildResult = await runBuild({
488
586
  'validate-only': false,
@@ -507,17 +605,29 @@ const initCommand = {
507
605
  catch {
508
606
  // best-effort — don't fail init if skill sync fails
509
607
  }
510
- if (outputMode === 'json') {
608
+ if (outputMode === 'json' && result) {
511
609
  output.result({
512
610
  ...result,
513
611
  buildResult: buildResult.data ?? null,
514
612
  });
515
613
  }
516
- else {
614
+ else if (result) {
517
615
  output.success(`Scaffold initialized at ${result.configPath}`);
518
616
  }
617
+ else {
618
+ // --from path: no WizardResult, just confirm success
619
+ output.success(`Scaffold initialized at ${path.join(projectRoot, '.scaffold', 'config.yml')}`);
620
+ }
519
621
  });
520
- });
622
+ }
623
+ catch (err) {
624
+ if (isScaffoldUserError(err)) {
625
+ output.error(err.message);
626
+ process.exitCode = 2;
627
+ return;
628
+ }
629
+ throw err;
630
+ }
521
631
  },
522
632
  };
523
633
  export default initCommand;
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,8 @@ import yargs from 'yargs';
8
8
  // ---------------------------------------------------------------------------
9
9
  vi.mock('../../wizard/wizard.js', () => ({
10
10
  runWizard: vi.fn(),
11
+ materializeScaffoldProject: vi.fn(),
12
+ readOldStateIfExists: vi.fn().mockReturnValue(undefined),
11
13
  }));
12
14
  vi.mock('../middleware/output-mode.js', () => ({
13
15
  resolveOutputMode: vi.fn(() => 'auto'),
@@ -295,6 +297,13 @@ describe('init command — .check() validation', () => {
295
297
  'backend-api-style': 'rest',
296
298
  });
297
299
  });
300
+ it('rejects --backend-domain with a value outside declared choices', async () => {
301
+ await expect(parseInitArgs([
302
+ '--project-type', 'backend',
303
+ '--backend-api-style', 'rest',
304
+ '--backend-domain', 'bogus',
305
+ ])).rejects.toThrow(/Invalid values|Choices/);
306
+ });
298
307
  it('accepts --cli-interactivity hybrid without explicit --project-type', async () => {
299
308
  await expect(parseInitArgs(['--cli-interactivity', 'hybrid'])).resolves.toMatchObject({
300
309
  'cli-interactivity': 'hybrid',
@@ -331,6 +340,17 @@ describe('init command — .check() validation', () => {
331
340
  }),
332
341
  }));
333
342
  });
343
+ it('forwards --backend-domain=fintech into the wizard\'s backendFlags', async () => {
344
+ const argv = defaultArgv({
345
+ root: os.tmpdir(),
346
+ 'backend-api-style': 'rest',
347
+ 'backend-domain': 'fintech',
348
+ });
349
+ await initCommand.handler(argv);
350
+ expect(runWizard).toHaveBeenCalledWith(expect.objectContaining({
351
+ backendFlags: expect.objectContaining({ backendDomain: 'fintech' }),
352
+ }));
353
+ });
334
354
  it('handler auto-detects cli from --cli-interactivity flag', async () => {
335
355
  const argv = defaultArgv({
336
356
  root: os.tmpdir(),