@runa-ai/runa-cli 0.5.72 → 0.6.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 (508) hide show
  1. package/dist/build-BXUJKYHC.js +1730 -0
  2. package/dist/cache-H63JKFYH.js +112 -0
  3. package/dist/check-6AB5NGWK.js +207 -0
  4. package/dist/chunk-22CS6EMA.js +31 -0
  5. package/dist/chunk-3FDQW524.js +544 -0
  6. package/dist/chunk-5NKWR4FF.js +254 -0
  7. package/dist/chunk-6AALH2ED.js +121 -0
  8. package/dist/chunk-6Y3LAUGL.js +35 -0
  9. package/dist/chunk-7QV7U6NI.js +62 -0
  10. package/dist/chunk-AAIE4F2U.js +140 -0
  11. package/dist/chunk-CCKG5R4Y.js +59 -0
  12. package/dist/chunk-CE3DEYFT.js +480 -0
  13. package/dist/chunk-DRSUEMAK.js +123 -0
  14. package/dist/chunk-GOGRLQNP.js +12 -0
  15. package/dist/chunk-HD74F6W2.js +460 -0
  16. package/dist/chunk-HKUWEGUX.js +36 -0
  17. package/dist/chunk-HPYJPB5Y.js +408 -0
  18. package/dist/chunk-IBVVGH6X.js +33 -0
  19. package/dist/chunk-II7VYQEM.js +179 -0
  20. package/dist/chunk-JMJP4A47.js +204 -0
  21. package/dist/chunk-JQXOVCOP.js +574 -0
  22. package/dist/chunk-JT5SUTWE.js +9 -0
  23. package/dist/chunk-KWX3JHCY.js +85 -0
  24. package/dist/chunk-M47WJJVS.js +71 -0
  25. package/dist/chunk-MNPMZERI.js +194 -0
  26. package/dist/chunk-MXRWBNIY.js +74 -0
  27. package/dist/chunk-NPSRD26F.js +149 -0
  28. package/dist/chunk-P7U52PBY.js +1149 -0
  29. package/dist/chunk-QDF7QXBL.js +67 -0
  30. package/dist/chunk-RRGQCUKT.js +48 -0
  31. package/dist/chunk-RZLYEO4U.js +219 -0
  32. package/dist/chunk-TYIAD6SB.js +74 -0
  33. package/dist/chunk-UU55OH7P.js +42 -0
  34. package/dist/chunk-UWWSAPDR.js +31 -0
  35. package/dist/chunk-VM3IWOT5.js +458 -0
  36. package/dist/chunk-VRXHCR5K.js +42 -0
  37. package/dist/chunk-XJBQINSA.js +351 -0
  38. package/dist/chunk-ZZOXM6Q4.js +8 -0
  39. package/dist/ci-V3PIG2GI.js +8322 -0
  40. package/dist/cli/index.d.ts +7 -1
  41. package/dist/cli/requested-command.d.ts +8 -0
  42. package/dist/cli-GFRZCJQR.js +661 -0
  43. package/dist/commands/build/actors/db-sync.d.ts +2 -0
  44. package/dist/commands/build/actors/static-checks.d.ts +7 -6
  45. package/dist/commands/build/contract.d.ts +30 -30
  46. package/dist/commands/build/machine-dry-run.d.ts +3 -0
  47. package/dist/commands/build/machine-e2e-meta.d.ts +120 -0
  48. package/dist/commands/build/machine.d.ts +22 -22
  49. package/dist/commands/build/types.d.ts +2 -4
  50. package/dist/commands/ci/machine/contract.d.ts +26 -26
  51. package/dist/commands/ci/machine/formatters/sections/final-comment.d.ts +1 -5
  52. package/dist/commands/ci/machine/formatters/sections/format-helpers.d.ts +5 -0
  53. package/dist/commands/ci/machine/formatters/sections/index.d.ts +2 -2
  54. package/dist/commands/ci/machine/machine-execution-helpers.d.ts +40 -0
  55. package/dist/commands/ci/machine/machine-state-helpers.d.ts +14 -0
  56. package/dist/commands/ci/machine/machine.d.ts +12 -12
  57. package/dist/commands/ci/machine/types.d.ts +0 -5
  58. package/dist/commands/ci/utils/ci-summary.d.ts +15 -15
  59. package/dist/commands/ci/utils/execa-helpers.d.ts +1 -0
  60. package/dist/commands/db/apply/actors/idempotent-actors.d.ts +34 -0
  61. package/dist/commands/db/apply/actors/lock-actors.d.ts +16 -0
  62. package/dist/commands/db/apply/actors/pg-schema-diff-actors.d.ts +31 -0
  63. package/dist/commands/db/apply/actors/seed-actors.d.ts +11 -0
  64. package/dist/commands/db/apply/actors/shared.d.ts +9 -0
  65. package/dist/commands/db/apply/actors.d.ts +16 -65
  66. package/dist/commands/db/apply/contract.d.ts +8 -1
  67. package/dist/commands/db/apply/helpers/data-compatibility-checker.d.ts +3 -4
  68. package/dist/commands/db/apply/helpers/data-integrity-verifier.d.ts +37 -0
  69. package/dist/commands/db/apply/helpers/fresh-db-handler.d.ts +34 -0
  70. package/dist/commands/db/apply/helpers/hazard-handler.d.ts +60 -0
  71. package/dist/commands/db/apply/helpers/idempotent-object-registry.d.ts +96 -0
  72. package/dist/commands/db/apply/helpers/idempotent-transaction.d.ts +20 -0
  73. package/dist/commands/db/apply/helpers/index.d.ts +6 -0
  74. package/dist/commands/db/apply/helpers/partition-validator.d.ts +2 -15
  75. package/dist/commands/db/apply/helpers/pg-schema-diff-helpers.d.ts +18 -162
  76. package/dist/commands/db/apply/helpers/pg-schema-diff-patterns.d.ts +55 -0
  77. package/dist/commands/db/apply/helpers/pg-schema-diff-version.d.ts +50 -0
  78. package/dist/commands/db/apply/helpers/plan-validator.d.ts +4 -10
  79. package/dist/commands/db/apply/helpers/rbac-password-manager.d.ts +34 -0
  80. package/dist/commands/db/apply/helpers/retry-logic.d.ts +16 -2
  81. package/dist/commands/db/apply/helpers/shadow-db-manager.d.ts +1 -1
  82. package/dist/commands/db/apply/helpers/sql-utils.d.ts +26 -0
  83. package/dist/commands/db/apply/machine.d.ts +52 -1
  84. package/dist/commands/db/commands/db-apply.d.ts +18 -0
  85. package/dist/commands/db/commands/db-sync/boundary-classifier.d.ts +21 -0
  86. package/dist/commands/db/commands/db-sync/plan-hazard-analyzer.d.ts +13 -0
  87. package/dist/commands/db/commands/db-sync/risk-reporter.d.ts +19 -0
  88. package/dist/commands/db/commands/db-sync/sql-parser.d.ts +25 -0
  89. package/dist/commands/db/commands/db-sync/types.d.ts +47 -0
  90. package/dist/commands/db/commands/db-sync.d.ts +14 -0
  91. package/dist/commands/db/sync/contract.d.ts +6 -2
  92. package/dist/commands/db/sync/machine.d.ts +2 -1
  93. package/dist/commands/db/types.d.ts +2 -0
  94. package/dist/commands/db/utils/boundary-policy/rule-compiler.d.ts +11 -0
  95. package/dist/commands/db/utils/boundary-policy/types.d.ts +105 -0
  96. package/dist/commands/db/utils/boundary-policy/validation.d.ts +20 -0
  97. package/dist/commands/db/utils/boundary-policy-runtime.d.ts +28 -0
  98. package/dist/commands/db/utils/boundary-policy.d.ts +5 -0
  99. package/dist/commands/db/utils/idempotent-risk-context.d.ts +29 -0
  100. package/dist/commands/db/utils/preflight-check.d.ts +14 -0
  101. package/dist/commands/db/utils/preflight-checks/domain-naming-checks.d.ts +106 -0
  102. package/dist/commands/db/utils/preflight-checks/orphan-checks.d.ts +36 -0
  103. package/dist/commands/db/utils/preflight-checks/schema-risk-checks.d.ts +22 -0
  104. package/dist/commands/db/utils/preflight-checks/supabase-checks.d.ts +55 -0
  105. package/dist/commands/db/utils/risk-detector-loader.d.ts +8 -0
  106. package/dist/commands/db/utils/schema-precheck-budget.d.ts +17 -0
  107. package/dist/commands/db/utils/sql-boundary-parser.d.ts +12 -0
  108. package/dist/commands/db/utils/sql-file-collector.d.ts +8 -0
  109. package/dist/commands/db/utils/sql-filename-parser.d.ts +20 -0
  110. package/dist/commands/db/utils/sql-table-extractor-ast.d.ts +19 -0
  111. package/dist/commands/db/utils/sql-table-extractor-regex.d.ts +50 -0
  112. package/dist/commands/db/utils/sql-table-extractor-rls.d.ts +13 -0
  113. package/dist/commands/db/utils/sql-table-extractor.d.ts +79 -1
  114. package/dist/commands/db/utils/table-registry-introspection.d.ts +68 -0
  115. package/dist/commands/db/utils/table-registry.d.ts +3 -38
  116. package/dist/commands/dev/actors/app-lifecycle.d.ts +18 -0
  117. package/dist/commands/dev/actors/index.d.ts +7 -2
  118. package/dist/commands/dev/actors/process-check.d.ts +12 -0
  119. package/dist/commands/dev/actors/shared.d.ts +15 -0
  120. package/dist/commands/dev/contract.d.ts +2 -2
  121. package/dist/commands/dev/machine.d.ts +7 -31
  122. package/dist/commands/env/commands/env-pull/auth.d.ts +13 -0
  123. package/dist/commands/env/commands/env-pull/dotenv-files.d.ts +14 -0
  124. package/dist/commands/env/commands/env-pull/security.d.ts +12 -0
  125. package/dist/commands/env/commands/env-pull/service.d.ts +8 -0
  126. package/dist/commands/env/commands/env-pull/shared.d.ts +79 -0
  127. package/dist/commands/env/commands/setup/types.d.ts +1 -1
  128. package/dist/commands/env/constants/local-supabase.d.ts +2 -0
  129. package/dist/commands/template-check/contract.d.ts +6 -6
  130. package/dist/commands/template-check/machine.d.ts +2 -2
  131. package/dist/commands/template-check/types.d.ts +0 -4
  132. package/dist/commands/template-check/utils/diff-analyzer.d.ts +0 -4
  133. package/dist/config/env.d.ts +4 -4
  134. package/dist/config-loader-GT3HAQ7U.js +7 -0
  135. package/dist/db-HR7CREX2.js +15913 -0
  136. package/dist/dev-A7RW6XQV.js +873 -0
  137. package/dist/env-B47Z4747.js +2624 -0
  138. package/dist/env-HMMRSYCI.js +7 -0
  139. package/dist/env-files-K2C7O7L5.js +8 -0
  140. package/dist/error-handler-4EYSDOSE.js +460 -0
  141. package/dist/hotfix-CULKKMGS.js +1477 -0
  142. package/dist/index.d.ts +5 -1
  143. package/dist/index.js +48 -42995
  144. package/dist/init-ELK5QCWR.js +632 -0
  145. package/dist/inject-test-attrs-Y5UD5P7Q.js +36 -0
  146. package/dist/internal/machines/snapshot-helpers.d.ts +6 -0
  147. package/dist/lib/sql-comment-utils.d.ts +25 -0
  148. package/dist/license-OB7GVJQ2.js +468 -0
  149. package/dist/link-C43JRZWY.js +60 -0
  150. package/dist/manifest-2NOQ2IMK.js +32 -0
  151. package/dist/prepare-32DOVHTE.js +250 -0
  152. package/dist/risk-detector-BXUY2WKS.js +6 -0
  153. package/dist/risk-detector-core-O7I7SPR7.js +166 -0
  154. package/dist/risk-detector-plpgsql-SGMVKYJP.js +1856 -0
  155. package/dist/sdk-XK6HQU7S.js +348 -0
  156. package/dist/services-7VK5KZTO.js +177 -0
  157. package/dist/session-SFW5QSXZ.js +142 -0
  158. package/dist/signal-handler-DO3OANW5.js +6 -0
  159. package/dist/status-IJ4ZWHMX.js +95 -0
  160. package/dist/telemetry-FN7V727Y.js +94 -0
  161. package/dist/template-check-PNG5NQ5H.js +1933 -0
  162. package/dist/test-QYXE5UVW.js +626 -0
  163. package/dist/test-gen-QPWOIEHU.js +89 -0
  164. package/dist/ui-RJAMCWUI.js +331 -0
  165. package/dist/upgrade-3SLWVNAC.js +625 -0
  166. package/dist/utils/config-loader.d.ts +0 -3
  167. package/dist/validate-SM4PXPS7.js +55 -0
  168. package/dist/validators/risk-detector-content-risks.d.ts +13 -0
  169. package/dist/validators/risk-detector-core.d.ts +25 -0
  170. package/dist/validators/risk-detector-patterns.d.ts +15 -0
  171. package/dist/validators/risk-detector-plpgsql-expression-resolver.d.ts +22 -0
  172. package/dist/validators/risk-detector-plpgsql-parser.d.ts +5 -0
  173. package/dist/validators/risk-detector-plpgsql-tokenizer.d.ts +18 -0
  174. package/dist/validators/risk-detector-plpgsql.d.ts +9 -0
  175. package/dist/validators/risk-detector-text-utils.d.ts +6 -0
  176. package/dist/validators/risk-detector-types.d.ts +16 -0
  177. package/dist/validators/risk-detector.d.ts +7 -26
  178. package/dist/vuln-check-TYQNEFS7.js +122 -0
  179. package/dist/vuln-checker-2QXGN5YT.js +2950 -0
  180. package/dist/watch-UCDVOQAH.js +911 -0
  181. package/dist/workflow-ZB5Q2PFY.js +898 -0
  182. package/package.json +4 -1
  183. package/dist/cli/contract-mode.d.ts.map +0 -1
  184. package/dist/cli/contract-output.d.ts.map +0 -1
  185. package/dist/cli/early-flags.d.ts.map +0 -1
  186. package/dist/cli/error-handler.d.ts.map +0 -1
  187. package/dist/cli/exec.d.ts.map +0 -1
  188. package/dist/cli/index.d.ts.map +0 -1
  189. package/dist/cli/json-output.d.ts.map +0 -1
  190. package/dist/cli/non-interactive.d.ts.map +0 -1
  191. package/dist/cli/output-format.d.ts.map +0 -1
  192. package/dist/cli/signal-handler.d.ts.map +0 -1
  193. package/dist/commands/build/actors/build.d.ts.map +0 -1
  194. package/dist/commands/build/actors/clean.d.ts.map +0 -1
  195. package/dist/commands/build/actors/db-sync.d.ts.map +0 -1
  196. package/dist/commands/build/actors/index.d.ts.map +0 -1
  197. package/dist/commands/build/actors/manifest.d.ts.map +0 -1
  198. package/dist/commands/build/actors/setup.d.ts.map +0 -1
  199. package/dist/commands/build/actors/static-checks.d.ts.map +0 -1
  200. package/dist/commands/build/actors/validate.d.ts.map +0 -1
  201. package/dist/commands/build/commands/build.d.ts.map +0 -1
  202. package/dist/commands/build/contract.d.ts.map +0 -1
  203. package/dist/commands/build/guards.d.ts.map +0 -1
  204. package/dist/commands/build/index.d.ts.map +0 -1
  205. package/dist/commands/build/machine.d.ts.map +0 -1
  206. package/dist/commands/build/types.d.ts.map +0 -1
  207. package/dist/commands/cache.d.ts.map +0 -1
  208. package/dist/commands/check/commands/check.d.ts.map +0 -1
  209. package/dist/commands/check/index.d.ts.map +0 -1
  210. package/dist/commands/ci/commands/ci-checks.d.ts.map +0 -1
  211. package/dist/commands/ci/commands/ci-layer-content.d.ts.map +0 -1
  212. package/dist/commands/ci/commands/ci-pr-capabilities.d.ts.map +0 -1
  213. package/dist/commands/ci/commands/ci-prod-apply.d.ts.map +0 -1
  214. package/dist/commands/ci/commands/ci-prod-db-operations.d.ts.map +0 -1
  215. package/dist/commands/ci/commands/ci-prod-github.d.ts.map +0 -1
  216. package/dist/commands/ci/commands/ci-prod-types.d.ts.map +0 -1
  217. package/dist/commands/ci/commands/ci-prod-utils.d.ts.map +0 -1
  218. package/dist/commands/ci/commands/ci-prod-workflow.d.ts.map +0 -1
  219. package/dist/commands/ci/commands/ci-resolvers.d.ts.map +0 -1
  220. package/dist/commands/ci/commands/ci-static.d.ts.map +0 -1
  221. package/dist/commands/ci/commands/ci-supabase-local.d.ts.map +0 -1
  222. package/dist/commands/ci/index.d.ts.map +0 -1
  223. package/dist/commands/ci/machine/actors/build/app-build.d.ts.map +0 -1
  224. package/dist/commands/ci/machine/actors/build/app-start.d.ts.map +0 -1
  225. package/dist/commands/ci/machine/actors/build/build-and-playwright.d.ts.map +0 -1
  226. package/dist/commands/ci/machine/actors/build/index.d.ts.map +0 -1
  227. package/dist/commands/ci/machine/actors/build/playwright-install.d.ts.map +0 -1
  228. package/dist/commands/ci/machine/actors/build/static-checks.d.ts.map +0 -1
  229. package/dist/commands/ci/machine/actors/db/apply-seeds.d.ts.map +0 -1
  230. package/dist/commands/ci/machine/actors/db/collect-schema-stats.d.ts.map +0 -1
  231. package/dist/commands/ci/machine/actors/db/index.d.ts.map +0 -1
  232. package/dist/commands/ci/machine/actors/db/pgtap-install.d.ts.map +0 -1
  233. package/dist/commands/ci/machine/actors/db/production-preview.d.ts.map +0 -1
  234. package/dist/commands/ci/machine/actors/db/pull-production.d.ts.map +0 -1
  235. package/dist/commands/ci/machine/actors/db/reset.d.ts.map +0 -1
  236. package/dist/commands/ci/machine/actors/db/schema-stats.d.ts.map +0 -1
  237. package/dist/commands/ci/machine/actors/db/setup-roles.d.ts.map +0 -1
  238. package/dist/commands/ci/machine/actors/db/sync-schema.d.ts.map +0 -1
  239. package/dist/commands/ci/machine/actors/finalize/github.d.ts.map +0 -1
  240. package/dist/commands/ci/machine/actors/finalize/index.d.ts.map +0 -1
  241. package/dist/commands/ci/machine/actors/finalize/summary.d.ts.map +0 -1
  242. package/dist/commands/ci/machine/actors/index.d.ts.map +0 -1
  243. package/dist/commands/ci/machine/actors/setup/index.d.ts.map +0 -1
  244. package/dist/commands/ci/machine/actors/setup/local.d.ts.map +0 -1
  245. package/dist/commands/ci/machine/actors/setup/pr-common.d.ts.map +0 -1
  246. package/dist/commands/ci/machine/actors/setup/pr-local.d.ts.map +0 -1
  247. package/dist/commands/ci/machine/actors/test/capabilities.d.ts.map +0 -1
  248. package/dist/commands/ci/machine/actors/test/index.d.ts.map +0 -1
  249. package/dist/commands/ci/machine/actors/test/run-layers.d.ts.map +0 -1
  250. package/dist/commands/ci/machine/commands/ci-local.d.ts.map +0 -1
  251. package/dist/commands/ci/machine/commands/ci-pr.d.ts.map +0 -1
  252. package/dist/commands/ci/machine/commands/index.d.ts.map +0 -1
  253. package/dist/commands/ci/machine/commands/machine-runner.d.ts.map +0 -1
  254. package/dist/commands/ci/machine/commands/runtime-env.d.ts.map +0 -1
  255. package/dist/commands/ci/machine/contract.d.ts.map +0 -1
  256. package/dist/commands/ci/machine/formatters/github-comment-types.d.ts.map +0 -1
  257. package/dist/commands/ci/machine/formatters/github-comment.d.ts.map +0 -1
  258. package/dist/commands/ci/machine/formatters/index.d.ts.map +0 -1
  259. package/dist/commands/ci/machine/formatters/sections/final-comment.d.ts.map +0 -1
  260. package/dist/commands/ci/machine/formatters/sections/format-helpers.d.ts.map +0 -1
  261. package/dist/commands/ci/machine/formatters/sections/index.d.ts.map +0 -1
  262. package/dist/commands/ci/machine/formatters/sections/progress-comment.d.ts.map +0 -1
  263. package/dist/commands/ci/machine/formatters/sections/schema-matrix.d.ts.map +0 -1
  264. package/dist/commands/ci/machine/formatters/summary.d.ts.map +0 -1
  265. package/dist/commands/ci/machine/guards.d.ts.map +0 -1
  266. package/dist/commands/ci/machine/helpers.d.ts.map +0 -1
  267. package/dist/commands/ci/machine/index.d.ts.map +0 -1
  268. package/dist/commands/ci/machine/machine.d.ts.map +0 -1
  269. package/dist/commands/ci/machine/types.d.ts.map +0 -1
  270. package/dist/commands/ci/utils/ai-report.d.ts.map +0 -1
  271. package/dist/commands/ci/utils/app-process.d.ts.map +0 -1
  272. package/dist/commands/ci/utils/app-runtime.d.ts.map +0 -1
  273. package/dist/commands/ci/utils/ci-config.d.ts.map +0 -1
  274. package/dist/commands/ci/utils/ci-env-schema.d.ts.map +0 -1
  275. package/dist/commands/ci/utils/ci-logging.d.ts.map +0 -1
  276. package/dist/commands/ci/utils/ci-summary.d.ts.map +0 -1
  277. package/dist/commands/ci/utils/config-readers.d.ts.map +0 -1
  278. package/dist/commands/ci/utils/db-url-utils.d.ts.map +0 -1
  279. package/dist/commands/ci/utils/e2e-auth-setup.d.ts.map +0 -1
  280. package/dist/commands/ci/utils/env-security.d.ts.map +0 -1
  281. package/dist/commands/ci/utils/execa-helpers.d.ts.map +0 -1
  282. package/dist/commands/ci/utils/exit-code-computation.d.ts.map +0 -1
  283. package/dist/commands/ci/utils/github-api.d.ts.map +0 -1
  284. package/dist/commands/ci/utils/github.d.ts.map +0 -1
  285. package/dist/commands/ci/utils/index.d.ts.map +0 -1
  286. package/dist/commands/ci/utils/pgtap-installer.d.ts.map +0 -1
  287. package/dist/commands/ci/utils/rls-verification.d.ts.map +0 -1
  288. package/dist/commands/ci/utils/schema-operations.d.ts.map +0 -1
  289. package/dist/commands/ci/utils/seed-operations.d.ts.map +0 -1
  290. package/dist/commands/ci/utils/test-parallel.d.ts.map +0 -1
  291. package/dist/commands/ci/utils/timestamp-invariants.d.ts.map +0 -1
  292. package/dist/commands/ci/utils/workflow-idempotency.d.ts.map +0 -1
  293. package/dist/commands/db/apply/actors.d.ts.map +0 -1
  294. package/dist/commands/db/apply/contract.d.ts.map +0 -1
  295. package/dist/commands/db/apply/helpers/advisory-lock.d.ts.map +0 -1
  296. package/dist/commands/db/apply/helpers/data-compatibility-checker.d.ts.map +0 -1
  297. package/dist/commands/db/apply/helpers/index.d.ts.map +0 -1
  298. package/dist/commands/db/apply/helpers/partition-acl-cleaner.d.ts.map +0 -1
  299. package/dist/commands/db/apply/helpers/partition-prefilter.d.ts.map +0 -1
  300. package/dist/commands/db/apply/helpers/partition-validator.d.ts.map +0 -1
  301. package/dist/commands/db/apply/helpers/pg-schema-diff-helpers.d.ts.map +0 -1
  302. package/dist/commands/db/apply/helpers/plan-validator.d.ts.map +0 -1
  303. package/dist/commands/db/apply/helpers/retry-logic.d.ts.map +0 -1
  304. package/dist/commands/db/apply/helpers/shadow-db-manager.d.ts.map +0 -1
  305. package/dist/commands/db/apply/index.d.ts.map +0 -1
  306. package/dist/commands/db/apply/machine.d.ts.map +0 -1
  307. package/dist/commands/db/commands/db-apply.d.ts.map +0 -1
  308. package/dist/commands/db/commands/db-audit.d.ts.map +0 -1
  309. package/dist/commands/db/commands/db-backup.d.ts.map +0 -1
  310. package/dist/commands/db/commands/db-cleanup.d.ts.map +0 -1
  311. package/dist/commands/db/commands/db-derive-role-passwords.d.ts.map +0 -1
  312. package/dist/commands/db/commands/db-derive-urls.d.ts.map +0 -1
  313. package/dist/commands/db/commands/db-diagram.d.ts.map +0 -1
  314. package/dist/commands/db/commands/db-drizzle.d.ts.map +0 -1
  315. package/dist/commands/db/commands/db-extension.d.ts.map +0 -1
  316. package/dist/commands/db/commands/db-generate-password.d.ts.map +0 -1
  317. package/dist/commands/db/commands/db-lifecycle.d.ts.map +0 -1
  318. package/dist/commands/db/commands/db-rollback.d.ts.map +0 -1
  319. package/dist/commands/db/commands/db-schema.d.ts.map +0 -1
  320. package/dist/commands/db/commands/db-seed-metadata.d.ts.map +0 -1
  321. package/dist/commands/db/commands/db-seed-verify.d.ts.map +0 -1
  322. package/dist/commands/db/commands/db-seed.d.ts.map +0 -1
  323. package/dist/commands/db/commands/db-snapshot.d.ts.map +0 -1
  324. package/dist/commands/db/commands/db-stack.d.ts.map +0 -1
  325. package/dist/commands/db/commands/db-stats.d.ts.map +0 -1
  326. package/dist/commands/db/commands/db-sync.d.ts.map +0 -1
  327. package/dist/commands/db/commands/db-test.d.ts.map +0 -1
  328. package/dist/commands/db/constants.d.ts.map +0 -1
  329. package/dist/commands/db/extension-registry.d.ts.map +0 -1
  330. package/dist/commands/db/index.d.ts.map +0 -1
  331. package/dist/commands/db/preflight/actors.d.ts.map +0 -1
  332. package/dist/commands/db/preflight/contract.d.ts.map +0 -1
  333. package/dist/commands/db/preflight/index.d.ts.map +0 -1
  334. package/dist/commands/db/sync/actors.d.ts.map +0 -1
  335. package/dist/commands/db/sync/contract.d.ts.map +0 -1
  336. package/dist/commands/db/sync/index.d.ts.map +0 -1
  337. package/dist/commands/db/sync/machine.d.ts.map +0 -1
  338. package/dist/commands/db/types.d.ts.map +0 -1
  339. package/dist/commands/db/utils/db-target.d.ts.map +0 -1
  340. package/dist/commands/db/utils/db-url-builder.d.ts.map +0 -1
  341. package/dist/commands/db/utils/error-handlers.d.ts.map +0 -1
  342. package/dist/commands/db/utils/import-impact-analyzer.d.ts.map +0 -1
  343. package/dist/commands/db/utils/preflight-check.d.ts.map +0 -1
  344. package/dist/commands/db/utils/psql.d.ts.map +0 -1
  345. package/dist/commands/db/utils/schema-detector.d.ts.map +0 -1
  346. package/dist/commands/db/utils/schema-sync.d.ts.map +0 -1
  347. package/dist/commands/db/utils/script-runner.d.ts.map +0 -1
  348. package/dist/commands/db/utils/seed-manager.d.ts.map +0 -1
  349. package/dist/commands/db/utils/semantic-mapper.d.ts.map +0 -1
  350. package/dist/commands/db/utils/sql-table-extractor.d.ts.map +0 -1
  351. package/dist/commands/db/utils/stack-detector.d.ts.map +0 -1
  352. package/dist/commands/db/utils/table-registry.d.ts.map +0 -1
  353. package/dist/commands/db/utils/table-source-classifier.d.ts.map +0 -1
  354. package/dist/commands/dev/actors/index.d.ts.map +0 -1
  355. package/dist/commands/dev/commands/dev.d.ts.map +0 -1
  356. package/dist/commands/dev/contract.d.ts.map +0 -1
  357. package/dist/commands/dev/guards.d.ts.map +0 -1
  358. package/dist/commands/dev/helpers/stale-process-detector.d.ts.map +0 -1
  359. package/dist/commands/dev/machine.d.ts.map +0 -1
  360. package/dist/commands/dev/types.d.ts.map +0 -1
  361. package/dist/commands/env/commands/env-check.d.ts.map +0 -1
  362. package/dist/commands/env/commands/env-encrypt.d.ts.map +0 -1
  363. package/dist/commands/env/commands/env-pull.d.ts.map +0 -1
  364. package/dist/commands/env/commands/env-setup.d.ts.map +0 -1
  365. package/dist/commands/env/commands/env-sync.d.ts.map +0 -1
  366. package/dist/commands/env/commands/setup/action.d.ts.map +0 -1
  367. package/dist/commands/env/commands/setup/auth.d.ts.map +0 -1
  368. package/dist/commands/env/commands/setup/file-export.d.ts.map +0 -1
  369. package/dist/commands/env/commands/setup/github-api.d.ts.map +0 -1
  370. package/dist/commands/env/commands/setup/helpers.d.ts.map +0 -1
  371. package/dist/commands/env/commands/setup/index.d.ts.map +0 -1
  372. package/dist/commands/env/commands/setup/parsers.d.ts.map +0 -1
  373. package/dist/commands/env/commands/setup/prompts.d.ts.map +0 -1
  374. package/dist/commands/env/commands/setup/supabase-api.d.ts.map +0 -1
  375. package/dist/commands/env/commands/setup/types.d.ts.map +0 -1
  376. package/dist/commands/env/commands/setup/vercel-api.d.ts.map +0 -1
  377. package/dist/commands/env/constants/local-supabase.d.ts.map +0 -1
  378. package/dist/commands/env/index.d.ts.map +0 -1
  379. package/dist/commands/hotfix/actors.d.ts.map +0 -1
  380. package/dist/commands/hotfix/commands/hotfix-complete.d.ts.map +0 -1
  381. package/dist/commands/hotfix/commands/hotfix-create.d.ts.map +0 -1
  382. package/dist/commands/hotfix/commands/hotfix-deploy.d.ts.map +0 -1
  383. package/dist/commands/hotfix/commands/hotfix-status.d.ts.map +0 -1
  384. package/dist/commands/hotfix/contract.d.ts.map +0 -1
  385. package/dist/commands/hotfix/index.d.ts.map +0 -1
  386. package/dist/commands/hotfix/machine.d.ts.map +0 -1
  387. package/dist/commands/hotfix/metadata.d.ts.map +0 -1
  388. package/dist/commands/hotfix/utils/hotfix-machine-helper.d.ts.map +0 -1
  389. package/dist/commands/init.d.ts.map +0 -1
  390. package/dist/commands/inject-test-attrs/action.d.ts.map +0 -1
  391. package/dist/commands/inject-test-attrs/commands/inject-test-attrs.d.ts.map +0 -1
  392. package/dist/commands/inject-test-attrs/contract.d.ts.map +0 -1
  393. package/dist/commands/inject-test-attrs/detection-diagnostics.d.ts.map +0 -1
  394. package/dist/commands/inject-test-attrs/formatter.d.ts.map +0 -1
  395. package/dist/commands/inject-test-attrs/index.d.ts.map +0 -1
  396. package/dist/commands/inject-test-attrs/manifest-generator.d.ts.map +0 -1
  397. package/dist/commands/inject-test-attrs/processor-utils.d.ts.map +0 -1
  398. package/dist/commands/inject-test-attrs/processor.d.ts.map +0 -1
  399. package/dist/commands/inject-test-attrs/types.d.ts.map +0 -1
  400. package/dist/commands/link.d.ts.map +0 -1
  401. package/dist/commands/manifest/index.d.ts.map +0 -1
  402. package/dist/commands/prepare/commands/prepare.d.ts.map +0 -1
  403. package/dist/commands/prepare/index.d.ts.map +0 -1
  404. package/dist/commands/sdk/commands/publish.d.ts.map +0 -1
  405. package/dist/commands/sdk/index.d.ts.map +0 -1
  406. package/dist/commands/services/index.d.ts.map +0 -1
  407. package/dist/commands/session/index.d.ts.map +0 -1
  408. package/dist/commands/status.d.ts.map +0 -1
  409. package/dist/commands/telemetry.d.ts.map +0 -1
  410. package/dist/commands/template-check/actors/compare.d.ts.map +0 -1
  411. package/dist/commands/template-check/actors/discover.d.ts.map +0 -1
  412. package/dist/commands/template-check/actors/index.d.ts.map +0 -1
  413. package/dist/commands/template-check/actors/report.d.ts.map +0 -1
  414. package/dist/commands/template-check/commands/template-check.d.ts.map +0 -1
  415. package/dist/commands/template-check/config.d.ts.map +0 -1
  416. package/dist/commands/template-check/contract.d.ts.map +0 -1
  417. package/dist/commands/template-check/index.d.ts.map +0 -1
  418. package/dist/commands/template-check/machine.d.ts.map +0 -1
  419. package/dist/commands/template-check/types.d.ts.map +0 -1
  420. package/dist/commands/template-check/utils/diff-analyzer.d.ts.map +0 -1
  421. package/dist/commands/template-check/utils/normalizer.d.ts.map +0 -1
  422. package/dist/commands/template-check/utils/path-mapping.d.ts.map +0 -1
  423. package/dist/commands/test/commands/test-db.d.ts.map +0 -1
  424. package/dist/commands/test/commands/test-e2e.d.ts.map +0 -1
  425. package/dist/commands/test/commands/test-fast.d.ts.map +0 -1
  426. package/dist/commands/test/commands/test-integration.d.ts.map +0 -1
  427. package/dist/commands/test/commands/test-layer.d.ts.map +0 -1
  428. package/dist/commands/test/commands/test-owasp-generate.d.ts.map +0 -1
  429. package/dist/commands/test/commands/test-service.d.ts.map +0 -1
  430. package/dist/commands/test/commands/test-static.d.ts.map +0 -1
  431. package/dist/commands/test/commands/test.d.ts.map +0 -1
  432. package/dist/commands/test/index.d.ts.map +0 -1
  433. package/dist/commands/test-gen.d.ts.map +0 -1
  434. package/dist/commands/ui.d.ts.map +0 -1
  435. package/dist/commands/upgrade.d.ts.map +0 -1
  436. package/dist/commands/validate.d.ts.map +0 -1
  437. package/dist/commands/vuln-check.d.ts.map +0 -1
  438. package/dist/commands/watch.d.ts.map +0 -1
  439. package/dist/commands/workflow/commands/deploy-production.d.ts.map +0 -1
  440. package/dist/commands/workflow/commands/final-status.d.ts.map +0 -1
  441. package/dist/commands/workflow/commands/log.d.ts.map +0 -1
  442. package/dist/commands/workflow/commands/notify.d.ts.map +0 -1
  443. package/dist/commands/workflow/commands/paths.d.ts.map +0 -1
  444. package/dist/commands/workflow/commands/sync.d.ts.map +0 -1
  445. package/dist/commands/workflow/commands/validate.d.ts.map +0 -1
  446. package/dist/commands/workflow/commands/verify-credentials.d.ts.map +0 -1
  447. package/dist/commands/workflow/index.d.ts.map +0 -1
  448. package/dist/commands/workflow/types.d.ts.map +0 -1
  449. package/dist/config/env-files.d.ts.map +0 -1
  450. package/dist/config/env.d.ts.map +0 -1
  451. package/dist/constants/versions.d.ts.map +0 -1
  452. package/dist/contracts/envelope.d.ts.map +0 -1
  453. package/dist/errors/catalog.d.ts.map +0 -1
  454. package/dist/errors/exit-codes.d.ts.map +0 -1
  455. package/dist/errors/index.d.ts.map +0 -1
  456. package/dist/incremental/affected-tests.d.ts.map +0 -1
  457. package/dist/index.d.ts.map +0 -1
  458. package/dist/internal/machines/index.d.ts.map +0 -1
  459. package/dist/internal/machines/machine-runner.d.ts.map +0 -1
  460. package/dist/internal/machines/snapshot-helpers.d.ts.map +0 -1
  461. package/dist/internal/machines/types.d.ts.map +0 -1
  462. package/dist/internal/vuln-checker/analyzers/dependency-analyzer.d.ts.map +0 -1
  463. package/dist/internal/vuln-checker/analyzers/rls-analyzer.d.ts.map +0 -1
  464. package/dist/internal/vuln-checker/analyzers/secret-analyzer.d.ts.map +0 -1
  465. package/dist/internal/vuln-checker/analyzers/typescript-analyzer.d.ts.map +0 -1
  466. package/dist/internal/vuln-checker/config/loader.d.ts.map +0 -1
  467. package/dist/internal/vuln-checker/constants.d.ts.map +0 -1
  468. package/dist/internal/vuln-checker/ignore/matcher.d.ts.map +0 -1
  469. package/dist/internal/vuln-checker/index.d.ts.map +0 -1
  470. package/dist/internal/vuln-checker/reporters/console-reporter.d.ts.map +0 -1
  471. package/dist/internal/vuln-checker/reporters/json-reporter.d.ts.map +0 -1
  472. package/dist/internal/vuln-checker/reporters/markdown-reporter.d.ts.map +0 -1
  473. package/dist/internal/vuln-checker/reporters/sarif-reporter.d.ts.map +0 -1
  474. package/dist/internal/vuln-checker/security/path-validation.d.ts.map +0 -1
  475. package/dist/internal/vuln-checker/types.d.ts.map +0 -1
  476. package/dist/notifiers/desktop-notifier.d.ts.map +0 -1
  477. package/dist/ui/components/db-panel.d.ts.map +0 -1
  478. package/dist/ui/components/status-bar.d.ts.map +0 -1
  479. package/dist/ui/components/test-panel.d.ts.map +0 -1
  480. package/dist/ui/dashboard.d.ts.map +0 -1
  481. package/dist/ui/index.d.ts.map +0 -1
  482. package/dist/utils/config-loader.d.ts.map +0 -1
  483. package/dist/utils/config-updater.d.ts.map +0 -1
  484. package/dist/utils/diagnostics.d.ts.map +0 -1
  485. package/dist/utils/dotenvx.d.ts.map +0 -1
  486. package/dist/utils/env-local-bridge.d.ts.map +0 -1
  487. package/dist/utils/execution-plan.d.ts.map +0 -1
  488. package/dist/utils/github-output-security.d.ts.map +0 -1
  489. package/dist/utils/help-system.d.ts.map +0 -1
  490. package/dist/utils/license/admin-auth.d.ts.map +0 -1
  491. package/dist/utils/license/allowlist-checker.d.ts.map +0 -1
  492. package/dist/utils/license/ci-detector.d.ts.map +0 -1
  493. package/dist/utils/license/index.d.ts.map +0 -1
  494. package/dist/utils/license/owner-resolver.d.ts.map +0 -1
  495. package/dist/utils/license/types.d.ts.map +0 -1
  496. package/dist/utils/license/validate-owner.d.ts.map +0 -1
  497. package/dist/utils/path-security.d.ts.map +0 -1
  498. package/dist/utils/port-allocator.d.ts.map +0 -1
  499. package/dist/utils/secure-exec.d.ts.map +0 -1
  500. package/dist/utils/template-fetcher.d.ts.map +0 -1
  501. package/dist/utils/type-guards.d.ts.map +0 -1
  502. package/dist/utils/vercel-project.d.ts.map +0 -1
  503. package/dist/utils/workspace-detector.d.ts.map +0 -1
  504. package/dist/validators/risk-detector.d.ts.map +0 -1
  505. package/dist/validators/schema-validator.d.ts.map +0 -1
  506. package/dist/version.d.ts.map +0 -1
  507. package/dist/watchers/schema-watcher.d.ts.map +0 -1
  508. package/dist/watchers/test-watcher.d.ts.map +0 -1
@@ -0,0 +1,254 @@
1
+ #!/usr/bin/env node
2
+ import { createRequire } from 'module';
3
+ import { findPackage, findWorkspaceRoot } from './chunk-JMJP4A47.js';
4
+ import { init_esm_shims } from './chunk-VRXHCR5K.js';
5
+ import { existsSync, readFileSync } from 'fs';
6
+ import path, { join } from 'path';
7
+ import { loadRunaConfigOrThrow } from '@runa-ai/runa';
8
+
9
+ createRequire(import.meta.url);
10
+
11
+ // src/utils/config-loader.ts
12
+ init_esm_shims();
13
+ function getDefaultDrizzlePaths(isMonorepo2) {
14
+ if (!isMonorepo2) {
15
+ return { schemaPath: "src/schema", outputPath: "src/zod" };
16
+ }
17
+ const workspaceRoot = findWorkspaceRoot(process.cwd()) || process.cwd();
18
+ const databaseSchemaDir = join(workspaceRoot, "packages", "database", "src", "schema");
19
+ if (existsSync(databaseSchemaDir)) {
20
+ return {
21
+ schemaPath: "packages/database/src/schema",
22
+ outputPath: "packages/database/src/zod"
23
+ };
24
+ }
25
+ return {
26
+ schemaPath: "packages/db/src/schema",
27
+ outputPath: "packages/db/src/zod"
28
+ };
29
+ }
30
+ var _configCache = /* @__PURE__ */ new Map();
31
+ function loadRunaConfig(cwd = process.cwd()) {
32
+ const cached = _configCache.get(cwd);
33
+ if (cached) return cached;
34
+ const config = loadRunaConfigOrThrow(cwd).config;
35
+ _configCache.set(cwd, config);
36
+ return config;
37
+ }
38
+ function getDatabaseConfig(config) {
39
+ const dbConfig = config.database;
40
+ if (!dbConfig) {
41
+ const defaults = getDefaultDrizzlePaths(config.project.monorepo ?? false);
42
+ return {
43
+ type: "supabase",
44
+ schemaPath: defaults.schemaPath,
45
+ outputPath: defaults.outputPath
46
+ };
47
+ }
48
+ if (dbConfig.type === "supabase" || dbConfig.type === void 0) {
49
+ const defaults = getDefaultDrizzlePaths(config.project.monorepo ?? false);
50
+ return {
51
+ type: "supabase",
52
+ schemaPath: dbConfig.drizzle?.schemaPath || defaults.schemaPath,
53
+ outputPath: dbConfig.drizzle?.outputPath || defaults.outputPath
54
+ };
55
+ }
56
+ return {
57
+ type: "none",
58
+ schemaPath: "",
59
+ outputPath: ""
60
+ };
61
+ }
62
+ function getAppConfig(config) {
63
+ return {
64
+ directory: config.app?.directory || ".",
65
+ framework: config.app?.framework || "next"
66
+ };
67
+ }
68
+ function getDeployConfig(config) {
69
+ const preview = config.deploy?.environments?.preview || "preview";
70
+ const production = config.deploy?.environments?.production || "production";
71
+ return {
72
+ provider: config.deploy?.provider || "vercel",
73
+ environments: {
74
+ preview,
75
+ production
76
+ }
77
+ };
78
+ }
79
+ function isMonorepo(config) {
80
+ return config.project.monorepo ?? false;
81
+ }
82
+ function validateProjectName(config, errors) {
83
+ if (!config.project.name) {
84
+ errors.push("project.name is required");
85
+ }
86
+ }
87
+ function validateFramework(config, errors) {
88
+ if (config.app?.framework) {
89
+ const validFrameworks = ["next", "vite", "remix"];
90
+ if (!validFrameworks.includes(config.app.framework)) {
91
+ errors.push(
92
+ `app.framework must be one of: ${validFrameworks.join(", ")} (got: ${config.app.framework})`
93
+ );
94
+ }
95
+ }
96
+ }
97
+ function validateDeploymentProvider(config, errors) {
98
+ if (config.deploy?.provider) {
99
+ const validProviders = ["vercel", "cloudflare", "amplify", "none"];
100
+ if (!validProviders.includes(config.deploy.provider)) {
101
+ errors.push(
102
+ `deploy.provider must be one of: ${validProviders.join(", ")} (got: ${config.deploy.provider})`
103
+ );
104
+ }
105
+ }
106
+ }
107
+ function validateDatabaseType(config, errors) {
108
+ if (config.database?.type) {
109
+ const validTypes = ["supabase", "none"];
110
+ if (!validTypes.includes(config.database.type)) {
111
+ errors.push(
112
+ `database.type must be one of: ${validTypes.join(", ")} (got: ${config.database.type})`
113
+ );
114
+ }
115
+ }
116
+ }
117
+ function validateDrizzleConfig(config, errors) {
118
+ if (config.database?.drizzle) {
119
+ if (config.database.drizzle.schemaPath && !config.database.drizzle.schemaPath.trim()) {
120
+ errors.push("database.drizzle.schemaPath cannot be empty");
121
+ }
122
+ if (config.database.drizzle.outputPath && !config.database.drizzle.outputPath.trim()) {
123
+ errors.push("database.drizzle.outputPath cannot be empty");
124
+ }
125
+ }
126
+ }
127
+ function validateAppDirectory(config, errors) {
128
+ if (config.app?.directory && !config.app.directory.trim()) {
129
+ errors.push("app.directory cannot be empty");
130
+ }
131
+ }
132
+ function validateRunaConfig(config) {
133
+ const errors = [];
134
+ validateProjectName(config, errors);
135
+ validateFramework(config, errors);
136
+ validateDeploymentProvider(config, errors);
137
+ validateDatabaseType(config, errors);
138
+ validateDrizzleConfig(config, errors);
139
+ validateAppDirectory(config, errors);
140
+ return {
141
+ valid: errors.length === 0,
142
+ errors
143
+ };
144
+ }
145
+ function hasValidDatabaseIndicators(dir) {
146
+ const hasPrimaryIndicator = existsSync(path.join(dir, "drizzle.config.ts")) || existsSync(path.join(dir, "supabase", "schemas")) || existsSync(path.join(dir, "src", "schema")) || existsSync(path.join(dir, "scripts", "db-sync.ts"));
147
+ if (hasPrimaryIndicator) {
148
+ return true;
149
+ }
150
+ const pkgJsonPath = path.join(dir, "package.json");
151
+ if (existsSync(pkgJsonPath)) {
152
+ try {
153
+ const pkgJson = JSON.parse(readFileSync(pkgJsonPath, "utf-8"));
154
+ const name = pkgJson.name?.toLowerCase() ?? "";
155
+ if (name.includes("database") || name.endsWith("-db") || name.endsWith("/db")) {
156
+ return true;
157
+ }
158
+ } catch {
159
+ }
160
+ }
161
+ return false;
162
+ }
163
+ function tryResolveFromConfig(cwd) {
164
+ try {
165
+ const loaded = loadRunaConfigOrThrow(cwd);
166
+ const configDir = path.dirname(loaded.configPath);
167
+ const config = loaded.config;
168
+ if (config.project.monorepo === false && hasValidDatabaseIndicators(configDir)) {
169
+ return configDir;
170
+ }
171
+ const dbConfig = getDatabaseConfig(config);
172
+ const schemaPath = dbConfig.schemaPath;
173
+ const dbPath = schemaPath.includes("/src/") ? schemaPath.split("/src/")[0] : schemaPath.startsWith("src/") ? "." : path.dirname(schemaPath);
174
+ const fullPath = dbPath === "." ? configDir : path.join(configDir, dbPath);
175
+ return existsSync(fullPath) ? fullPath : null;
176
+ } catch {
177
+ return null;
178
+ }
179
+ }
180
+ async function getDatabasePackagePath(cwd = process.cwd()) {
181
+ const configResult = tryResolveFromConfig(cwd);
182
+ if (configResult) return configResult;
183
+ const dbPackage = findPackage("database", cwd) ?? findPackage("db", cwd);
184
+ if (dbPackage) return dbPackage;
185
+ const baseDir = findWorkspaceRoot(cwd) || cwd;
186
+ const conventionalPaths = [
187
+ path.join(baseDir, "packages", "database"),
188
+ path.join(baseDir, "packages", "db"),
189
+ path.join(baseDir, "db"),
190
+ baseDir
191
+ ];
192
+ for (const candidate of conventionalPaths) {
193
+ if (existsSync(candidate) && hasValidDatabaseIndicators(candidate)) {
194
+ return candidate;
195
+ }
196
+ }
197
+ throw new Error(`\u274C Database package not found
198
+
199
+ Expected locations:
200
+ - packages/database/ (monorepo structure, recommended)
201
+ - packages/db/ (monorepo structure, legacy)
202
+ - db/ (single-package structure)
203
+ - . (project root with drizzle.config.ts or supabase/schemas/)
204
+
205
+ Valid indicators (at least one required):
206
+ - package.json
207
+ - drizzle.config.ts (Drizzle ORM)
208
+ - supabase/schemas/ (Supabase SQL-First)
209
+ - src/schema/ (TypeScript schemas)
210
+
211
+ Solutions:
212
+ 1. Run: runa init (generates structure)
213
+ 2. Set project.monorepo: false in runa.config.ts for single-app
214
+ 3. Ensure supabase/schemas/ exists for Supabase projects
215
+ `);
216
+ }
217
+ async function getSDKScriptsPath(cwd = process.cwd()) {
218
+ const sdkPackage = findPackage("sdk", cwd);
219
+ if (sdkPackage) {
220
+ const scriptsPath = path.join(sdkPackage, "scripts");
221
+ if (existsSync(scriptsPath)) {
222
+ return scriptsPath;
223
+ }
224
+ }
225
+ const workspaceRoot = findWorkspaceRoot(cwd);
226
+ const baseDir = workspaceRoot || cwd;
227
+ const installedPath = path.join(baseDir, "node_modules", "@runa-ai", "runa", "scripts");
228
+ if (existsSync(installedPath)) {
229
+ return installedPath;
230
+ }
231
+ throw new Error(
232
+ "\u274C SDK scripts directory not found\n\nExpected locations:\n - packages/sdk/scripts (workspace development)\n - node_modules/@runa-ai/runa/scripts (npm installed)\n\nSolutions:\n 1. Install @runa-ai/runa: pnpm add @runa-ai/runa\n 2. Check workspace structure: pnpm list @runa-ai/runa\n 3. Run: pnpm install (reinstall dependencies)\n"
233
+ );
234
+ }
235
+ async function getSDKTemplatesPath(cwd = process.cwd()) {
236
+ const sdkPackage = findPackage("sdk", cwd);
237
+ if (sdkPackage) {
238
+ const templatesPath = path.join(sdkPackage, "templates");
239
+ if (existsSync(templatesPath)) {
240
+ return templatesPath;
241
+ }
242
+ }
243
+ const workspaceRoot = findWorkspaceRoot(cwd);
244
+ const baseDir = workspaceRoot || cwd;
245
+ const installedPath = path.join(baseDir, "node_modules", "@runa-ai", "runa", "templates");
246
+ if (existsSync(installedPath)) {
247
+ return installedPath;
248
+ }
249
+ throw new Error(
250
+ "\u274C SDK templates directory not found\n\nExpected locations:\n - packages/sdk/templates (workspace development)\n - node_modules/@runa-ai/runa/templates (npm installed)\n\nSolutions:\n 1. Install @runa-ai/runa: pnpm add @runa-ai/runa\n 2. Check: ls node_modules/@runa-ai/runa/templates\n 3. Run: pnpm install (reinstall dependencies)\n"
251
+ );
252
+ }
253
+
254
+ export { getAppConfig, getDatabaseConfig, getDatabasePackagePath, getDeployConfig, getSDKScriptsPath, getSDKTemplatesPath, isMonorepo, loadRunaConfig, validateRunaConfig };
@@ -0,0 +1,121 @@
1
+ #!/usr/bin/env node
2
+ import { createRequire } from 'module';
3
+ import { init_esm_shims } from './chunk-VRXHCR5K.js';
4
+ import { existsSync, readFileSync, writeFileSync } from 'fs';
5
+ import { resolve } from 'path';
6
+
7
+ createRequire(import.meta.url);
8
+
9
+ // src/utils/config-updater.ts
10
+ init_esm_shims();
11
+ var VALID_DIRECTORY_PATTERN = /^[a-zA-Z0-9.][a-zA-Z0-9/_.-]*$/;
12
+ var VALID_VERSION_PATTERN = /^[0-9]+\.[0-9]+\.[0-9]+(?:-[a-zA-Z0-9.-]+)?$/;
13
+ function isControlChar(charCode) {
14
+ return charCode <= 31 || charCode === 127;
15
+ }
16
+ function isValidDirectoryPath(dir) {
17
+ if (!dir || typeof dir !== "string") {
18
+ return false;
19
+ }
20
+ if (dir.trim() === "") {
21
+ return false;
22
+ }
23
+ if (/['"\\]/.test(dir)) {
24
+ return false;
25
+ }
26
+ for (let i = 0; i < dir.length; i++) {
27
+ if (isControlChar(dir.charCodeAt(i))) {
28
+ return false;
29
+ }
30
+ }
31
+ return VALID_DIRECTORY_PATTERN.test(dir);
32
+ }
33
+ function isValidVersion(version) {
34
+ if (!version || typeof version !== "string") {
35
+ return false;
36
+ }
37
+ return VALID_VERSION_PATTERN.test(version);
38
+ }
39
+ function escapeReplacementString(str) {
40
+ return str.replace(/\$/g, "$$$$");
41
+ }
42
+ function updateRunaConfigAppDirectory(appDirectory, targetDir = process.cwd()) {
43
+ if (!isValidDirectoryPath(appDirectory)) {
44
+ return { updated: false, reason: "Invalid directory path format" };
45
+ }
46
+ const configPath = resolve(targetDir, "runa.config.ts");
47
+ if (!existsSync(configPath)) {
48
+ return { updated: false, reason: "runa.config.ts not found" };
49
+ }
50
+ const content = readFileSync(configPath, "utf-8");
51
+ const currentMatch = content.match(/directory:\s*['"]([^'"]+)['"]/);
52
+ const currentValue = currentMatch?.[1];
53
+ if (currentValue && currentValue !== "." && currentValue !== "apps/web") {
54
+ if (currentValue === appDirectory) {
55
+ return { updated: false, reason: "Already set to the same value" };
56
+ }
57
+ return { updated: false, reason: `Already customized to '${currentValue}'` };
58
+ }
59
+ const directoryPattern = /(directory:\s*)(['"])([^'"]*)\2/;
60
+ if (!directoryPattern.test(content)) {
61
+ return { updated: false, reason: "Could not find directory field in config" };
62
+ }
63
+ const safeDirectory = escapeReplacementString(appDirectory);
64
+ const newContent = content.replace(directoryPattern, `$1'${safeDirectory}'`);
65
+ if (newContent === content) {
66
+ return { updated: false, reason: "No changes needed" };
67
+ }
68
+ writeFileSync(configPath, newContent, "utf-8");
69
+ return { updated: true, reason: `Updated to '${appDirectory}'` };
70
+ }
71
+ function syncRunaConfigWithVercel(targetDir, vercelRootDirectory) {
72
+ if (!vercelRootDirectory) {
73
+ return null;
74
+ }
75
+ const result = updateRunaConfigAppDirectory(vercelRootDirectory, targetDir);
76
+ return {
77
+ updated: result.updated,
78
+ field: "app.directory",
79
+ reason: result.reason
80
+ };
81
+ }
82
+ function updateRunaConfigSdkVersion(version, targetDir = process.cwd()) {
83
+ if (!isValidVersion(version)) {
84
+ return { updated: false, reason: "Invalid version format" };
85
+ }
86
+ const configPath = resolve(targetDir, "runa.config.ts");
87
+ if (!existsSync(configPath)) {
88
+ return { updated: false, reason: "runa.config.ts not found" };
89
+ }
90
+ const content = readFileSync(configPath, "utf-8");
91
+ const currentMatch = content.match(/sdkVersion:\s*['"]([^'"]+)['"]/);
92
+ const currentVersion = currentMatch?.[1];
93
+ if (currentVersion === version) {
94
+ return { updated: false, reason: "Already at this version" };
95
+ }
96
+ const sdkVersionPattern = /(sdkVersion:\s*)(['"])([^'"]*)\2/;
97
+ const safeVersion = escapeReplacementString(version);
98
+ if (sdkVersionPattern.test(content)) {
99
+ const newContent = content.replace(sdkVersionPattern, `$1'${safeVersion}'`);
100
+ if (newContent === content) {
101
+ return { updated: false, reason: "No changes needed" };
102
+ }
103
+ writeFileSync(configPath, newContent, "utf-8");
104
+ return {
105
+ updated: true,
106
+ reason: currentVersion ? `Updated from '${currentVersion}' to '${version}'` : `Set to '${version}'`
107
+ };
108
+ }
109
+ const configVersionPattern = /(configVersion:\s*\d+,?)(\s*\n)/;
110
+ if (configVersionPattern.test(content)) {
111
+ const newContent = content.replace(
112
+ configVersionPattern,
113
+ `$1$2 sdkVersion: '${safeVersion}',$2`
114
+ );
115
+ writeFileSync(configPath, newContent, "utf-8");
116
+ return { updated: true, reason: `Added sdkVersion: '${version}'` };
117
+ }
118
+ return { updated: false, reason: "Could not find appropriate location to add sdkVersion" };
119
+ }
120
+
121
+ export { syncRunaConfigWithVercel, updateRunaConfigSdkVersion };
@@ -0,0 +1,35 @@
1
+ #!/usr/bin/env node
2
+ import { createRequire } from 'module';
3
+ import { init_esm_shims } from './chunk-VRXHCR5K.js';
4
+ import { CLIError } from '@runa-ai/runa/cli-runtime';
5
+
6
+ createRequire(import.meta.url);
7
+
8
+ // src/cli/non-interactive.ts
9
+ init_esm_shims();
10
+ function isTrueEnv(value) {
11
+ return value === "1" || value === "true" || value === "yes";
12
+ }
13
+ function isNonInteractiveEnabled() {
14
+ if (isTrueEnv(process.env.RUNA_NON_INTERACTIVE)) return true;
15
+ if (process.env.CI === "true") return true;
16
+ if (process.env.RUNA_OUTPUT_FORMAT === "json") return true;
17
+ return false;
18
+ }
19
+ function enableNonInteractiveMode() {
20
+ process.env.RUNA_NON_INTERACTIVE = "true";
21
+ }
22
+ function assertTtyRequired(featureName) {
23
+ const stdinTty = process.stdin.isTTY === true;
24
+ const stdoutTty = process.stdout.isTTY === true;
25
+ if (stdinTty && stdoutTty) return;
26
+ throw new CLIError(
27
+ `${featureName} requires an interactive TTY`,
28
+ "TTY_REQUIRED",
29
+ ["Run in a terminal (TTY)", "Avoid piping stdin/stdout when using TUI features"],
30
+ void 0,
31
+ 2
32
+ );
33
+ }
34
+
35
+ export { assertTtyRequired, enableNonInteractiveMode, isNonInteractiveEnabled };
@@ -0,0 +1,62 @@
1
+ #!/usr/bin/env node
2
+ import { createRequire } from 'module';
3
+ import { redactSecrets } from './chunk-II7VYQEM.js';
4
+ import { init_esm_shims } from './chunk-VRXHCR5K.js';
5
+ import { createWriteStream } from 'fs';
6
+ import { mkdir } from 'fs/promises';
7
+ import path from 'path';
8
+ import { execa } from 'execa';
9
+
10
+ createRequire(import.meta.url);
11
+
12
+ // src/commands/ci/utils/execa-helpers.ts
13
+ init_esm_shims();
14
+ function redactArgsForLog(args) {
15
+ return args.map((a) => redactSecrets(a));
16
+ }
17
+ function pipeToSharedLog(params) {
18
+ let pending = 0;
19
+ const maybeEnd = () => {
20
+ if (pending !== 0) return;
21
+ try {
22
+ params.logStream.end();
23
+ } catch (error) {
24
+ }
25
+ };
26
+ for (const s of params.streams) {
27
+ if (!s) continue;
28
+ pending += 1;
29
+ s.pipe(params.logStream, { end: false });
30
+ const done = () => {
31
+ pending -= 1;
32
+ maybeEnd();
33
+ };
34
+ s.once("end", done);
35
+ s.once("close", done);
36
+ s.once("error", done);
37
+ }
38
+ maybeEnd();
39
+ }
40
+ async function ensureRunaTmpDir(cwd) {
41
+ const root = cwd ?? process.cwd();
42
+ const dir = path.join(root, ".runa", "tmp");
43
+ await mkdir(dir, { recursive: true });
44
+ return dir;
45
+ }
46
+ function runLogged(params) {
47
+ console.log(`\u25B6 ${params.label}: ${params.command} ${redactArgsForLog(params.args).join(" ")}`);
48
+ const proc = execa(params.command, params.args, {
49
+ cwd: params.cwd,
50
+ env: { DOTENVX_QUIET: "1", ...params.env },
51
+ stdio: ["ignore", "pipe", "pipe"],
52
+ shell: false,
53
+ timeout: params.timeoutMs
54
+ });
55
+ const stream = createWriteStream(params.logFile, { flags: "a" });
56
+ if (proc.stdout) proc.stdout.pipe(process.stdout, { end: false });
57
+ if (proc.stderr) proc.stderr.pipe(process.stderr, { end: false });
58
+ pipeToSharedLog({ streams: [proc.stdout, proc.stderr], logStream: stream });
59
+ return proc;
60
+ }
61
+
62
+ export { ensureRunaTmpDir, runLogged };
@@ -0,0 +1,140 @@
1
+ #!/usr/bin/env node
2
+ import { createRequire } from 'module';
3
+ import { secureDocker, secureExeca } from './chunk-RZLYEO4U.js';
4
+ import { init_esm_shims } from './chunk-VRXHCR5K.js';
5
+ import { existsSync, readFileSync } from 'fs';
6
+ import path from 'path';
7
+
8
+ createRequire(import.meta.url);
9
+
10
+ // src/utils/diagnostics.ts
11
+ init_esm_shims();
12
+ async function checkDocker() {
13
+ try {
14
+ await secureDocker(["ps"]);
15
+ return {
16
+ severity: "info",
17
+ message: "Docker is running"
18
+ };
19
+ } catch {
20
+ return {
21
+ severity: "error",
22
+ message: "Docker is not running or not installed",
23
+ fixInstructions: [
24
+ "Start Colima: colima start --cpu 4 --memory 8 --disk 60 --vm-type vz --mount-type virtiofs",
25
+ "Install Colima: brew install colima docker",
26
+ "Linux: sudo systemctl start docker"
27
+ ]
28
+ };
29
+ }
30
+ }
31
+ async function checkPort(port) {
32
+ try {
33
+ const result = await secureExeca("lsof", ["-i", `:${port}`]);
34
+ const stdout = typeof result.stdout === "string" ? result.stdout : "";
35
+ const lines = stdout.trim().split("\n");
36
+ if (lines.length > 1) {
37
+ const processInfo = lines[1].split(/\s+/);
38
+ const processName = processInfo[0];
39
+ const pid = processInfo[1];
40
+ return {
41
+ severity: "warning",
42
+ message: `Port ${port} is in use by ${processName} (PID: ${pid})`,
43
+ fixInstructions: [
44
+ `Kill the process: kill ${pid}`,
45
+ "Or use a different port in your configuration"
46
+ ]
47
+ };
48
+ }
49
+ } catch {
50
+ }
51
+ return {
52
+ severity: "info",
53
+ message: `Port ${port} is available`
54
+ };
55
+ }
56
+ function detectSupabasePortsFromConfig() {
57
+ const configPath = path.join(process.cwd(), "supabase", "config.toml");
58
+ const BASE_PORTS = { api: 54321, db: 54322, studio: 54323, inbucket: 54324 };
59
+ if (!existsSync(configPath)) {
60
+ return Object.values(BASE_PORTS);
61
+ }
62
+ try {
63
+ const content = readFileSync(configPath, "utf-8");
64
+ const ports = [];
65
+ const apiMatch = content.match(/\[api\][\s\S]*?port\s*=\s*(\d+)/);
66
+ ports.push(apiMatch ? Number.parseInt(apiMatch[1], 10) : BASE_PORTS.api);
67
+ const dbMatch = content.match(/\[db\][\s\S]*?port\s*=\s*(\d+)/);
68
+ ports.push(dbMatch ? Number.parseInt(dbMatch[1], 10) : BASE_PORTS.db);
69
+ const studioMatch = content.match(/\[studio\][\s\S]*?port\s*=\s*(\d+)/);
70
+ ports.push(studioMatch ? Number.parseInt(studioMatch[1], 10) : BASE_PORTS.studio);
71
+ const inbucketMatch = content.match(/\[inbucket\][\s\S]*?port\s*=\s*(\d+)/);
72
+ ports.push(inbucketMatch ? Number.parseInt(inbucketMatch[1], 10) : BASE_PORTS.inbucket);
73
+ return ports;
74
+ } catch {
75
+ return Object.values(BASE_PORTS);
76
+ }
77
+ }
78
+ async function checkSupabasePorts() {
79
+ const ports = detectSupabasePortsFromConfig();
80
+ const results = [];
81
+ for (const port of ports) {
82
+ const result = await checkPort(port);
83
+ if (result.severity !== "info") {
84
+ results.push(result);
85
+ }
86
+ }
87
+ return results;
88
+ }
89
+ function checkRequiredFiles(files) {
90
+ const results = [];
91
+ for (const file of files) {
92
+ if (!existsSync(file)) {
93
+ results.push({
94
+ severity: "error",
95
+ message: `Required file not found: ${file}`,
96
+ fixInstructions: [`Create ${file} or run 'runa init' to set up the project`]
97
+ });
98
+ }
99
+ }
100
+ return results;
101
+ }
102
+ async function diagnoseSupabaseStart() {
103
+ const results = [];
104
+ const dockerCheck = await checkDocker();
105
+ if (dockerCheck.severity === "error") {
106
+ results.push(dockerCheck);
107
+ }
108
+ const portChecks = await checkSupabasePorts();
109
+ results.push(...portChecks);
110
+ const configCheck = checkRequiredFiles(["supabase/config.toml"]);
111
+ results.push(...configCheck);
112
+ return results;
113
+ }
114
+ function diagnoseInitFailure(errorMessage) {
115
+ const results = [];
116
+ if (errorMessage.includes("templates directory not found")) {
117
+ results.push({
118
+ severity: "error",
119
+ message: "@runa-ai/runa is not installed correctly",
120
+ fixInstructions: [
121
+ "Verify installation: pnpm list @runa-ai/runa",
122
+ "Reinstall: pnpm add -D @runa-ai/runa",
123
+ "Ensure you are in the project root directory"
124
+ ]
125
+ });
126
+ }
127
+ if (errorMessage.includes("package.json")) {
128
+ results.push({
129
+ severity: "error",
130
+ message: "Not in a valid Node.js project",
131
+ fixInstructions: [
132
+ "Run from project root (where package.json exists)",
133
+ "Or initialize new project: pnpm init"
134
+ ]
135
+ });
136
+ }
137
+ return results;
138
+ }
139
+
140
+ export { diagnoseInitFailure, diagnoseSupabaseStart };
@@ -0,0 +1,59 @@
1
+ #!/usr/bin/env node
2
+ import { createRequire } from 'module';
3
+ import { getDatabasePackagePath } from './chunk-5NKWR4FF.js';
4
+ import { init_esm_shims } from './chunk-VRXHCR5K.js';
5
+ import { existsSync } from 'fs';
6
+ import { join } from 'path';
7
+
8
+ createRequire(import.meta.url);
9
+
10
+ // src/commands/db/utils/stack-detector.ts
11
+ init_esm_shims();
12
+ async function detectDatabaseStack(cwd = process.cwd()) {
13
+ try {
14
+ const dbPackagePath = await getDatabasePackagePath(cwd);
15
+ const drizzleConfig = join(dbPackagePath, "drizzle.config.ts");
16
+ if (existsSync(drizzleConfig)) {
17
+ return {
18
+ stack: "drizzle",
19
+ confidence: "high",
20
+ reason: `Found drizzle.config.ts at ${dbPackagePath}`,
21
+ paths: { drizzleConfig }
22
+ };
23
+ }
24
+ } catch {
25
+ }
26
+ const supabaseSchemas = join(cwd, "supabase/schemas");
27
+ if (existsSync(supabaseSchemas)) {
28
+ return {
29
+ stack: "supabase",
30
+ confidence: "high",
31
+ reason: "Found supabase/schemas/ directory",
32
+ paths: { supabaseSchemas }
33
+ };
34
+ }
35
+ throw new Error(
36
+ "Unable to detect database stack.\nExpected one of:\n - drizzle.config.ts in database package (Drizzle ORM)\n - supabase/schemas/ (Supabase SQL)\n\nRun `runa init` to set up your database structure."
37
+ );
38
+ }
39
+ async function getStackPaths(stack, cwd = process.cwd()) {
40
+ if (stack === "drizzle") {
41
+ const dbPath = await getDatabasePackagePath(cwd);
42
+ return {
43
+ rootDir: dbPath,
44
+ schemaDir: join(dbPath, "src/schema"),
45
+ configFile: join(dbPath, "drizzle.config.ts")
46
+ };
47
+ }
48
+ if (stack === "supabase") {
49
+ const schemasDir = join(cwd, "supabase/schemas");
50
+ return {
51
+ rootDir: join(cwd, "supabase"),
52
+ schemaDir: schemasDir,
53
+ configFile: join(cwd, "supabase/config.toml")
54
+ };
55
+ }
56
+ throw new Error(`Unknown stack: ${stack}`);
57
+ }
58
+
59
+ export { detectDatabaseStack, getStackPaths };