@geekmidas/cli 10.0.0-alpha.103 → 10.0.0-alpha.104

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 (146) hide show
  1. package/dist/{EndpointGenerator-By5_tYE9.cjs → EndpointGenerator-BwbYTMtB.cjs} +2 -2
  2. package/dist/{EndpointGenerator-By5_tYE9.cjs.map → EndpointGenerator-BwbYTMtB.cjs.map} +1 -1
  3. package/dist/{EndpointGenerator-Br97xgs_.mjs → EndpointGenerator-CvLX8bpx.mjs} +2 -2
  4. package/dist/{EndpointGenerator-Br97xgs_.mjs.map → EndpointGenerator-CvLX8bpx.mjs.map} +1 -1
  5. package/dist/{GoDaddyProvider-8gNDqaml.mjs → GoDaddyProvider-CuPEbbjl.mjs} +2 -2
  6. package/dist/{GoDaddyProvider-8gNDqaml.mjs.map → GoDaddyProvider-CuPEbbjl.mjs.map} +1 -1
  7. package/dist/{GoDaddyProvider-JITjarl9.cjs → GoDaddyProvider-dezqtUth.cjs} +2 -2
  8. package/dist/{GoDaddyProvider-JITjarl9.cjs.map → GoDaddyProvider-dezqtUth.cjs.map} +1 -1
  9. package/dist/{LegacyStateStore-C0WnyYy_.mjs → LegacyStateStore-Bc8FnHEB.mjs} +3 -3
  10. package/dist/{LegacyStateStore-C0WnyYy_.mjs.map → LegacyStateStore-Bc8FnHEB.mjs.map} +1 -1
  11. package/dist/{LegacyStateStore-D-mcT2Z7.cjs → LegacyStateStore-ecxYpm9-.cjs} +3 -3
  12. package/dist/{LegacyStateStore-D-mcT2Z7.cjs.map → LegacyStateStore-ecxYpm9-.cjs.map} +1 -1
  13. package/dist/{LocalStateStore-CUFfdu-v.cjs → LocalStateStore-Sf4B6kUn.cjs} +2 -2
  14. package/dist/{LocalStateStore-CUFfdu-v.cjs.map → LocalStateStore-Sf4B6kUn.cjs.map} +1 -1
  15. package/dist/{LocalStateStore-C_8QWB2r.mjs → LocalStateStore-wSKMDDh5.mjs} +2 -2
  16. package/dist/{LocalStateStore-C_8QWB2r.mjs.map → LocalStateStore-wSKMDDh5.mjs.map} +1 -1
  17. package/dist/{OpenApiTsGenerator-BgSX_Z-e.cjs → OpenApiTsGenerator-BD6ZOQ51.cjs} +2 -2
  18. package/dist/{OpenApiTsGenerator-BgSX_Z-e.cjs.map → OpenApiTsGenerator-BD6ZOQ51.cjs.map} +1 -1
  19. package/dist/{OpenApiTsGenerator-C8aTX--y.mjs → OpenApiTsGenerator-DXXFXSbO.mjs} +2 -2
  20. package/dist/{OpenApiTsGenerator-C8aTX--y.mjs.map → OpenApiTsGenerator-DXXFXSbO.mjs.map} +1 -1
  21. package/dist/{S3StateStore-B0Vy19db.mjs → S3StateStore-BPlVpTfg.mjs} +2 -2
  22. package/dist/{S3StateStore-B0Vy19db.mjs.map → S3StateStore-BPlVpTfg.mjs.map} +1 -1
  23. package/dist/{S3StateStore-DIJ6CCv_.cjs → S3StateStore-DQYjsYBl.cjs} +2 -2
  24. package/dist/{S3StateStore-DIJ6CCv_.cjs.map → S3StateStore-DQYjsYBl.cjs.map} +1 -1
  25. package/dist/{SSMStateStore-DgBlEqYO.mjs → SSMStateStore-De2PY12p.mjs} +2 -2
  26. package/dist/{SSMStateStore-DgBlEqYO.mjs.map → SSMStateStore-De2PY12p.mjs.map} +1 -1
  27. package/dist/{SSMStateStore-D577um0e.cjs → SSMStateStore-P9OMZHkp.cjs} +2 -2
  28. package/dist/{SSMStateStore-D577um0e.cjs.map → SSMStateStore-P9OMZHkp.cjs.map} +1 -1
  29. package/dist/{SubscriberGenerator-DmPM_3c5.cjs → SubscriberGenerator-CeH7wbYt.cjs} +3 -3
  30. package/dist/{SubscriberGenerator-DmPM_3c5.cjs.map → SubscriberGenerator-CeH7wbYt.cjs.map} +1 -1
  31. package/dist/{SubscriberGenerator-YK-7ewmi.mjs → SubscriberGenerator-DHnIYwUU.mjs} +3 -3
  32. package/dist/{SubscriberGenerator-YK-7ewmi.mjs.map → SubscriberGenerator-DHnIYwUU.mjs.map} +1 -1
  33. package/dist/{add-D97HfZ7z.cjs → add-C_lp7-oD.cjs} +8 -9
  34. package/dist/add-C_lp7-oD.cjs.map +1 -0
  35. package/dist/{add-BJJKhUnO.mjs → add-Dgdsb3ox.mjs} +8 -9
  36. package/dist/add-Dgdsb3ox.mjs.map +1 -0
  37. package/dist/{bundler-CtEQAnym.cjs → bundler-DBTA8gXs.cjs} +5 -5
  38. package/dist/{bundler-CtEQAnym.cjs.map → bundler-DBTA8gXs.cjs.map} +1 -1
  39. package/dist/{bundler-CzbrMpDf.mjs → bundler-DVPoeMRa.mjs} +5 -5
  40. package/dist/{bundler-CzbrMpDf.mjs.map → bundler-DVPoeMRa.mjs.map} +1 -1
  41. package/dist/{cli-D_zrFs9-.mjs → cli-CGXOvWRP.mjs} +3 -3
  42. package/dist/{cli-D_zrFs9-.mjs.map → cli-CGXOvWRP.mjs.map} +1 -1
  43. package/dist/{cli-CIv8PA-v.cjs → cli-D7FyFbeC.cjs} +3 -3
  44. package/dist/{cli-CIv8PA-v.cjs.map → cli-D7FyFbeC.cjs.map} +1 -1
  45. package/dist/{compose-DtPhKs0u.mjs → compose-B8ND6s9C.mjs} +14 -11
  46. package/dist/{compose-DtPhKs0u.mjs.map → compose-B8ND6s9C.mjs.map} +1 -1
  47. package/dist/{compose-BviikvXq.cjs → compose-qbPKKAMC.cjs} +14 -11
  48. package/dist/compose-qbPKKAMC.cjs.map +1 -0
  49. package/dist/config.cjs +1 -1
  50. package/dist/config.mjs +1 -1
  51. package/dist/{credentialSchemas-DvitraL-.mjs → credentialSchemas-Cf5Pf8VE.mjs} +2 -2
  52. package/dist/{credentialSchemas-DvitraL-.mjs.map → credentialSchemas-Cf5Pf8VE.mjs.map} +1 -1
  53. package/dist/{credentialSchemas-DDda4Mmm.cjs → credentialSchemas-D_VUCDUh.cjs} +2 -2
  54. package/dist/{credentialSchemas-DDda4Mmm.cjs.map → credentialSchemas-D_VUCDUh.cjs.map} +1 -1
  55. package/dist/deploy/public.cjs +7 -7
  56. package/dist/deploy/public.mjs +7 -7
  57. package/dist/{deploy-cv0i1yFo.cjs → deploy-Bsxl6nyG.cjs} +8 -8
  58. package/dist/{deploy-cv0i1yFo.cjs.map → deploy-Bsxl6nyG.cjs.map} +1 -1
  59. package/dist/{deploy-DyPt41Oq.mjs → deploy-yLGEWuam.mjs} +8 -8
  60. package/dist/{deploy-DyPt41Oq.mjs.map → deploy-yLGEWuam.mjs.map} +1 -1
  61. package/dist/{discover-BfhVW_kT.cjs → discover-Bsr7HjqJ.cjs} +18 -2
  62. package/dist/{discover-BfhVW_kT.cjs.map → discover-Bsr7HjqJ.cjs.map} +1 -1
  63. package/dist/{discover-kziEht4W.mjs → discover-Ca8U75dl.mjs} +13 -3
  64. package/dist/{discover-kziEht4W.mjs.map → discover-Ca8U75dl.mjs.map} +1 -1
  65. package/dist/{dns-B-wqZiyQ.mjs → dns-BQrhafpk.mjs} +2 -2
  66. package/dist/{dns-B-wqZiyQ.mjs.map → dns-BQrhafpk.mjs.map} +1 -1
  67. package/dist/{dns-_rxfINeq.cjs → dns-BUUEztBH.cjs} +2 -2
  68. package/dist/{dns-_rxfINeq.cjs.map → dns-BUUEztBH.cjs.map} +1 -1
  69. package/dist/{dokploy-BJQ9HjVv.mjs → dokploy-BuIvCaE1.mjs} +2 -2
  70. package/dist/{dokploy-BJQ9HjVv.mjs.map → dokploy-BuIvCaE1.mjs.map} +1 -1
  71. package/dist/{dokploy-DSvw-l5b.cjs → dokploy-CCnoXmGV.cjs} +2 -2
  72. package/dist/{dokploy-DSvw-l5b.cjs.map → dokploy-CCnoXmGV.cjs.map} +1 -1
  73. package/dist/{drivers-OXhPkaNB.mjs → drivers-D11JHxrD.mjs} +2 -2
  74. package/dist/{drivers-OXhPkaNB.mjs.map → drivers-D11JHxrD.mjs.map} +1 -1
  75. package/dist/{drivers-DEDL8vPE.cjs → drivers-GKaA6ITM.cjs} +2 -2
  76. package/dist/{drivers-DEDL8vPE.cjs.map → drivers-GKaA6ITM.cjs.map} +1 -1
  77. package/dist/{encryption-UgYs2YYM.cjs → encryption-2KOlWvfq.cjs} +2 -2
  78. package/dist/{encryption-UgYs2YYM.cjs.map → encryption-2KOlWvfq.cjs.map} +1 -1
  79. package/dist/{encryption-BUAZ3OEJ.mjs → encryption-BFs3ItV9.mjs} +2 -2
  80. package/dist/{encryption-BUAZ3OEJ.mjs.map → encryption-BFs3ItV9.mjs.map} +1 -1
  81. package/dist/{engine-Blx6G12-.cjs → engine-Bx_ea2_k.cjs} +6 -5
  82. package/dist/engine-Bx_ea2_k.cjs.map +1 -0
  83. package/dist/{engine-VnbN4VnX.mjs → engine-vvr2EpTb.mjs} +6 -5
  84. package/dist/engine-vvr2EpTb.mjs.map +1 -0
  85. package/dist/{github-C-L3qfYZ.cjs → github-BM6afosB.cjs} +5 -5
  86. package/dist/{github-C-L3qfYZ.cjs.map → github-BM6afosB.cjs.map} +1 -1
  87. package/dist/{github-D2uJ32Af.mjs → github-DuXBKTvr.mjs} +5 -5
  88. package/dist/{github-D2uJ32Af.mjs.map → github-DuXBKTvr.mjs.map} +1 -1
  89. package/dist/index.cjs +180 -101
  90. package/dist/index.cjs.map +1 -1
  91. package/dist/index.mjs +181 -102
  92. package/dist/index.mjs.map +1 -1
  93. package/dist/{migrate-DxAFe2EV.cjs → migrate-BQfq48xK.cjs} +2 -2
  94. package/dist/{migrate-DxAFe2EV.cjs.map → migrate-BQfq48xK.cjs.map} +1 -1
  95. package/dist/{migrate-Dqjr7rfs.mjs → migrate-BlLFYSIx.mjs} +2 -2
  96. package/dist/{migrate-Dqjr7rfs.mjs.map → migrate-BlLFYSIx.mjs.map} +1 -1
  97. package/dist/{migrate-BFH52jlU.mjs → migrate-CQal4P1q.mjs} +3 -3
  98. package/dist/{migrate-BFH52jlU.mjs.map → migrate-CQal4P1q.mjs.map} +1 -1
  99. package/dist/{migrate-DdociPvx.cjs → migrate-DXVzuw-s.cjs} +3 -3
  100. package/dist/{migrate-DdociPvx.cjs.map → migrate-DXVzuw-s.cjs.map} +1 -1
  101. package/dist/openapi.cjs +2 -2
  102. package/dist/openapi.mjs +2 -2
  103. package/dist/{ready-CuSU8Ap0.mjs → ready-CVNE5Pix.mjs} +6 -6
  104. package/dist/{ready-CuSU8Ap0.mjs.map → ready-CVNE5Pix.mjs.map} +1 -1
  105. package/dist/{ready-D38XpZ0L.cjs → ready-DU7wvxWk.cjs} +6 -6
  106. package/dist/{ready-D38XpZ0L.cjs.map → ready-DU7wvxWk.cjs.map} +1 -1
  107. package/dist/reconcile/public.cjs +1 -1
  108. package/dist/reconcile/public.mjs +1 -1
  109. package/dist/{resolve-aqhkZfDI.cjs → resolve-By_cw893.cjs} +3 -3
  110. package/dist/{resolve-aqhkZfDI.cjs.map → resolve-By_cw893.cjs.map} +1 -1
  111. package/dist/{resolve-BGgwxfCz.mjs → resolve-De9vfAnN.mjs} +3 -3
  112. package/dist/{resolve-BGgwxfCz.mjs.map → resolve-De9vfAnN.mjs.map} +1 -1
  113. package/dist/{rollback-DUbUQeoz.mjs → rollback-YCj4_q9l.mjs} +4 -4
  114. package/dist/{rollback-DUbUQeoz.mjs.map → rollback-YCj4_q9l.mjs.map} +1 -1
  115. package/dist/{rollback-qk3-knJ7.cjs → rollback-dkinZaOv.cjs} +4 -4
  116. package/dist/{rollback-qk3-knJ7.cjs.map → rollback-dkinZaOv.cjs.map} +1 -1
  117. package/dist/sandbox/credentials-worker.cjs +2 -2
  118. package/dist/sandbox/credentials-worker.mjs +2 -2
  119. package/dist/sandbox/discover-worker.cjs +1 -1
  120. package/dist/sandbox/discover-worker.mjs +1 -1
  121. package/dist/sandbox/migrate-worker.cjs +1 -1
  122. package/dist/sandbox/migrate-worker.mjs +1 -1
  123. package/dist/{seeds-a1H3kuqu.cjs → seeds-CjBwLvWY.cjs} +31 -46
  124. package/dist/seeds-CjBwLvWY.cjs.map +1 -0
  125. package/dist/{seeds-Cx8NmuQj.mjs → seeds-DZGuovWF.mjs} +26 -47
  126. package/dist/seeds-DZGuovWF.mjs.map +1 -0
  127. package/dist/{sniffer-Bt2H-BZ_.mjs → sniffer-bo0KeZsK.mjs} +7 -7
  128. package/dist/{sniffer-Bt2H-BZ_.mjs.map → sniffer-bo0KeZsK.mjs.map} +1 -1
  129. package/dist/{sniffer-DxYAi7bz.cjs → sniffer-t0NsMNNP.cjs} +7 -7
  130. package/dist/{sniffer-DxYAi7bz.cjs.map → sniffer-t0NsMNNP.cjs.map} +1 -1
  131. package/dist/target/public.cjs +1 -1
  132. package/dist/target/public.mjs +1 -1
  133. package/dist/{terminal-Bs_lNQhL.mjs → terminal-CvRLxz6g.mjs} +2 -2
  134. package/dist/{terminal-Bs_lNQhL.mjs.map → terminal-CvRLxz6g.mjs.map} +1 -1
  135. package/dist/{terminal-CsQz4oT0.cjs → terminal-D_NRPW4W.cjs} +2 -2
  136. package/dist/{terminal-CsQz4oT0.cjs.map → terminal-D_NRPW4W.cjs.map} +1 -1
  137. package/dist/vitest.cjs +1 -1
  138. package/dist/vitest.mjs +1 -1
  139. package/package.json +15 -15
  140. package/dist/add-BJJKhUnO.mjs.map +0 -1
  141. package/dist/add-D97HfZ7z.cjs.map +0 -1
  142. package/dist/compose-BviikvXq.cjs.map +0 -1
  143. package/dist/engine-Blx6G12-.cjs.map +0 -1
  144. package/dist/engine-VnbN4VnX.mjs.map +0 -1
  145. package/dist/seeds-Cx8NmuQj.mjs.map +0 -1
  146. package/dist/seeds-a1H3kuqu.cjs.map +0 -1
package/dist/index.cjs CHANGED
@@ -4,27 +4,27 @@ const require_rolldown_runtime = require("./rolldown-runtime-C0BPl7ul.cjs");
4
4
  const require_errors = require("./errors-DMC4Umsb.cjs");
5
5
  const require_run = require("./run-fVZ-rLnc.cjs");
6
6
  const require_credentials = require("./credentials-Zqr3QQYB.cjs");
7
- const require_compose = require("./compose-BviikvXq.cjs");
7
+ const require_compose = require("./compose-qbPKKAMC.cjs");
8
8
  const require_workspace = require("./workspace-BwqQnool.cjs");
9
- const require_dns = require("./dns-_rxfINeq.cjs");
10
- const require_seeds = require("./seeds-a1H3kuqu.cjs");
9
+ const require_dns = require("./dns-BUUEztBH.cjs");
10
+ const require_seeds = require("./seeds-CjBwLvWY.cjs");
11
11
  const require_derive = require("./derive-DAbo49sm.cjs");
12
- const require_SubscriberGenerator = require("./SubscriberGenerator-DmPM_3c5.cjs");
12
+ const require_SubscriberGenerator = require("./SubscriberGenerator-CeH7wbYt.cjs");
13
13
  const require_identity = require("./identity-CbLfgQNT.cjs");
14
- const require_EndpointGenerator = require("./EndpointGenerator-By5_tYE9.cjs");
15
- const require_discover = require("./discover-BfhVW_kT.cjs");
14
+ const require_EndpointGenerator = require("./EndpointGenerator-BwbYTMtB.cjs");
15
+ const require_discover = require("./discover-Bsr7HjqJ.cjs");
16
16
  const require_config = require("./config.cjs");
17
- const require_deploy = require("./deploy-cv0i1yFo.cjs");
17
+ const require_deploy = require("./deploy-Bsxl6nyG.cjs");
18
18
  const require_openapi = require("./openapi.cjs");
19
19
  const require_appPorts = require("./appPorts-Cu79hJF6.cjs");
20
- const require_drivers = require("./drivers-DEDL8vPE.cjs");
20
+ const require_drivers = require("./drivers-GKaA6ITM.cjs");
21
21
  const require_emit = require("./emit-Dmc1nvdS.cjs");
22
22
  const require_local = require("./local-DNhnkugT.cjs");
23
- const require_sniffer = require("./sniffer-DxYAi7bz.cjs");
24
- const require_credentialSchemas = require("./credentialSchemas-DDda4Mmm.cjs");
25
- const require_LocalStateStore = require("./LocalStateStore-CUFfdu-v.cjs");
23
+ const require_sniffer = require("./sniffer-t0NsMNNP.cjs");
24
+ const require_credentialSchemas = require("./credentialSchemas-D_VUCDUh.cjs");
25
+ const require_LocalStateStore = require("./LocalStateStore-Sf4B6kUn.cjs");
26
26
  const require_utils = require("./utils-D2Nk1Nv2.cjs");
27
- const require_ready = require("./ready-D38XpZ0L.cjs");
27
+ const require_ready = require("./ready-DU7wvxWk.cjs");
28
28
  let node_path = require("node:path");
29
29
  let commander = require("commander");
30
30
  let node_process = require("node:process");
@@ -57,7 +57,7 @@ crypto = require_rolldown_runtime.__toESM(crypto, 1);
57
57
  let _geekmidas_constructs_functions = require("@geekmidas/constructs/functions");
58
58
  let _geekmidas_constructs_topic = require("@geekmidas/constructs/topic");
59
59
  //#region package.json
60
- var version = "10.0.0-alpha.103";
60
+ var version = "10.0.0-alpha.104";
61
61
  //#endregion
62
62
  //#region src/prompt.ts
63
63
  /**
@@ -140,7 +140,7 @@ const logger$8 = console;
140
140
  * Validate Dokploy token by making a test API call
141
141
  */
142
142
  async function validateDokployToken(endpoint, token) {
143
- const { DokployApi } = await Promise.resolve().then(() => require("./sniffer-DxYAi7bz.cjs")).then((n) => n.dokploy_api_exports);
143
+ const { DokployApi } = await Promise.resolve().then(() => require("./sniffer-t0NsMNNP.cjs")).then((n) => n.dokploy_api_exports);
144
144
  return new DokployApi({
145
145
  baseUrl: endpoint,
146
146
  token
@@ -2353,7 +2353,8 @@ async function devCommand(options) {
2353
2353
  skipBundle: true,
2354
2354
  bustCache,
2355
2355
  serveEmpty: true,
2356
- workspaceName: workspace.name
2356
+ workspaceName: workspace.name,
2357
+ workspace
2357
2358
  }));
2358
2359
  logger$5.log(`🔨 Building ${workspaceAppName ?? "the app"}`);
2359
2360
  const initial = await build();
@@ -2381,8 +2382,9 @@ async function devCommand(options) {
2381
2382
  }
2382
2383
  }
2383
2384
  Object.assign(appSecrets, reconciled.env);
2385
+ const declared = reconciled.manifest;
2384
2386
  const scoped = require_seeds.scopeTelemetryEnv(appSecrets, {
2385
- uses: reconciled.manifest !== void 0 && require_seeds.appTelemetry(reconciled.manifest, workspaceAppName) !== void 0,
2387
+ uses: declared !== void 0 && (require_seeds.appTelemetry(declared, workspaceAppName) !== void 0 || (initial.workers ?? []).some((id) => require_seeds.telemetryOf(declared, id) !== void 0)),
2386
2388
  serviceName: workspaceAppName,
2387
2389
  telemetry: reconciled.env
2388
2390
  });
@@ -2734,9 +2736,9 @@ async function workspaceDevCommand(configured, options) {
2734
2736
  for (const { id, port } of fakes) logger$5.log(`🎭 ${id} fake: http://localhost:${port}`);
2735
2737
  logger$5.log(options.migrate || options.seed ? "🗄️ Migrating the databases" : "🗄️ Checking for pending migrations");
2736
2738
  if (options.migrate || options.seed) {
2737
- const { prepareDevDatabases } = await Promise.resolve().then(() => require("./migrate-DdociPvx.cjs"));
2739
+ const { prepareDevDatabases } = await Promise.resolve().then(() => require("./migrate-DXVzuw-s.cjs"));
2738
2740
  await prepareDevDatabases(workspace, reconciled.env, { seed: !!options.seed });
2739
- } else await Promise.resolve().then(() => require("./migrate-DdociPvx.cjs")).then(({ reportPendingMigrations }) => reportPendingMigrations(workspace, reconciled.env)).catch((error) => {
2741
+ } else await Promise.resolve().then(() => require("./migrate-DXVzuw-s.cjs")).then(({ reportPendingMigrations }) => reportPendingMigrations(workspace, reconciled.env)).catch((error) => {
2740
2742
  logger$5.log(`⚠️ Could not check for pending migrations: ${error instanceof Error ? error.message : String(error)}`);
2741
2743
  });
2742
2744
  const appUrls = {};
@@ -3472,6 +3474,29 @@ function restApis(declared) {
3472
3474
  function servedSurface(declared, workspaceRoot, appRoot) {
3473
3475
  return restApis(declared).find((d) => (0, node_path.resolve)(workspaceRoot, d.path) === (0, node_path.resolve)(appRoot));
3474
3476
  }
3477
+ /**
3478
+ * The declarations one process reaches: the constructs it runs as — a surface,
3479
+ * a worker — what each declared an edge to, and what each runnable it runs
3480
+ * depends on or consumes.
3481
+ *
3482
+ * What decides which drivers its entry registers: a process that reaches no
3483
+ * cache never resolves a cache client because another process in the
3484
+ * workspace does.
3485
+ */
3486
+ function reachedBy(declared, processes, runnables) {
3487
+ const reached = /* @__PURE__ */ new Set();
3488
+ for (const id of processes) {
3489
+ const declaration = declared[id];
3490
+ if (!declaration) continue;
3491
+ reached.add(id);
3492
+ for (const edge of (0, _geekmidas_manifest.dependenciesOf)(declaration)) reached.add(edge.target);
3493
+ }
3494
+ for (const { construct } of runnables) {
3495
+ for (const id of construct.constructs ?? []) reached.add((0, _geekmidas_manifest.canonicalId)(id));
3496
+ for (const id of require_discover.consumedBy(construct)) reached.add(id);
3497
+ }
3498
+ return Object.fromEntries(Object.entries(declared).filter(([id]) => reached.has(id)));
3499
+ }
3475
3500
  //#endregion
3476
3501
  //#region src/build/surfaceEntry.ts
3477
3502
  /** Whether a construct serves itself, asked of the construct. */
@@ -3789,7 +3814,7 @@ async function buildApp(input) {
3789
3814
  ...production,
3790
3815
  ...telemetry ? { telemetry } : {}
3791
3816
  });
3792
- const { bundleServer } = await Promise.resolve().then(() => require("./bundler-CtEQAnym.cjs"));
3817
+ const { bundleServer } = await Promise.resolve().then(() => require("./bundler-DBTA8gXs.cjs"));
3793
3818
  await bundleServer({
3794
3819
  entryPoint,
3795
3820
  outputDir: (0, node_path.join)(outputDir, "dist"),
@@ -3809,7 +3834,6 @@ async function buildApp(input) {
3809
3834
  appRoot,
3810
3835
  databaseApi
3811
3836
  });
3812
- const eventsBackends = require_drivers.eventsBackendsIn(declared, eventsBackend);
3813
3837
  const buildContext = {
3814
3838
  ...derived,
3815
3839
  telescope,
@@ -3818,12 +3842,6 @@ async function buildApp(input) {
3818
3842
  constructGlobs,
3819
3843
  cacheBackend,
3820
3844
  emailBackend: "ses",
3821
- storageDrivers: require_drivers.driversFor({
3822
- appRoot,
3823
- cache: require_drivers.cacheBackendsIn(declared, cacheBackend),
3824
- events: eventsBackends
3825
- }),
3826
- eventsBackends,
3827
3845
  markOptional: input.markOptional ?? false
3828
3846
  };
3829
3847
  const endpointGenerator = new require_EndpointGenerator.EndpointGenerator();
@@ -3842,8 +3860,39 @@ async function buildApp(input) {
3842
3860
  topicGenerator.load(code, appRoot, bustCache)
3843
3861
  ]);
3844
3862
  const allEndpoints = servedBy(loadedEndpoints, derived.surface);
3863
+ const appName = appNameOf(input);
3864
+ const hosted = require_seeds.workerUnits(input.workspace, declared, background).filter((unit) => unit.app === appName);
3865
+ const hostedIds = new Set(hosted.map((unit) => unit.id));
3866
+ const appRootAbs = (0, node_path.resolve)(appRoot);
3867
+ const hostedHere = (list) => list.filter(({ construct, path }) => construct.owner !== void 0 ? hostedIds.has(construct.owner) : require_seeds.isUnder(path.absolute, appRootAbs));
3868
+ const hostedCrons = hostedHere(allCrons);
3869
+ const hostedQueues = hostedHere(allQueues);
3870
+ const hostedSubscribers = hostedHere(allSubscribers);
3871
+ const servesOnly = Boolean(production?.enabled && derived.surface);
3872
+ const inProcess = servesOnly ? {
3873
+ crons: [],
3874
+ queues: [],
3875
+ subscribers: []
3876
+ } : {
3877
+ crons: hostedCrons,
3878
+ queues: hostedQueues,
3879
+ subscribers: hostedSubscribers
3880
+ };
3881
+ const reach = derived.surface ? reachedBy(declared, [derived.surface.id, ...servesOnly ? [] : hosted.map((unit) => unit.id)], [
3882
+ ...allEndpoints,
3883
+ ...allFunctions,
3884
+ ...inProcess.crons,
3885
+ ...inProcess.queues,
3886
+ ...inProcess.subscribers
3887
+ ]) : declared;
3888
+ Object.assign(buildContext, runtimeDrivers({
3889
+ appRoot,
3890
+ reach,
3891
+ cacheBackend,
3892
+ eventsBackend
3893
+ }));
3845
3894
  if (target === "server") buildContext.telemetry = require_EndpointGenerator.telemetryFor({
3846
- node: derived.surface ? require_seeds.telemetryOf(declared, derived.surface.id) : void 0,
3895
+ node: processTelemetry(declared, derived.surface?.id, servesOnly ? [] : hosted.map((unit) => unit.id)),
3847
3896
  appRoot,
3848
3897
  app: appNameOf(input),
3849
3898
  cwd: workspaceRoot,
@@ -3861,40 +3910,37 @@ async function buildApp(input) {
3861
3910
  logger$4.log("No endpoints, functions, crons, subscribers, queues, or topics found to process");
3862
3911
  return {};
3863
3912
  }
3864
- if (production?.subscribers === "include" && derived.surface) {
3865
- buildContext.production = {
3866
- ...production,
3867
- subscribers: "exclude"
3868
- };
3869
- const left = [
3870
- [allCrons.length, "cron"],
3871
- [allQueues.length, "queue consumer"],
3872
- [allSubscribers.length, "subscriber"]
3873
- ].filter(([n]) => n > 0).map(([n, what]) => `${n} ${what}${n === 1 ? "" : "s"}`);
3874
- if (left.length > 0) logger$4.log(`Serving ${derived.surface.id} only: leaving out ${left.join(", ")} — they run in a Worker's image`);
3875
- }
3876
- const result = await buildForTarget(target, buildContext, appRoot, workspaceRoot, endpointGenerator, functionGenerator, cronGenerator, subscriberGenerator, queueGenerator, topicGenerator, allEndpoints, allFunctions, allCrons, allSubscribers, allQueues, allTopics, enableOpenApi, input.skipBundle ?? false, input.stage);
3877
- if (target === "server" && production?.enabled && input.workspace) {
3878
- const appName = Object.entries(input.workspace.apps).find(([, app]) => (0, node_path.resolve)(input.workspace.root, app.path) === (0, node_path.resolve)(appRoot))?.[0];
3879
- await buildWorkers({
3880
- context: buildContext,
3881
- telemetry: (workerId) => require_EndpointGenerator.telemetryFor({
3882
- node: require_seeds.telemetryOf(declared, workerId),
3913
+ if (servesOnly && production) buildContext.production = {
3914
+ ...production,
3915
+ subscribers: "exclude"
3916
+ };
3917
+ const result = await buildForTarget(target, buildContext, appRoot, workspaceRoot, endpointGenerator, functionGenerator, cronGenerator, subscriberGenerator, queueGenerator, topicGenerator, allEndpoints, allFunctions, inProcess.crons, inProcess.subscribers, inProcess.queues, allTopics, enableOpenApi, input.skipBundle ?? false, input.stage);
3918
+ if (target === "server" && production?.enabled) await buildWorkers({
3919
+ context: (workerId, work) => ({
3920
+ ...buildContext,
3921
+ ...runtimeDrivers({
3883
3922
  appRoot,
3884
- app: appNameOf(input),
3885
- cwd: workspaceRoot,
3886
- serviceName: workerId,
3887
- ...input.workspaceName && { workspaceName: input.workspaceName }
3888
- }),
3889
- workers: require_seeds.workerUnits(input.workspace, declared, background).filter((unit) => unit.app === appName),
3890
- serverDir: (0, node_path.join)(appRoot, ".gkm", "server"),
3891
- crons: allCrons,
3892
- queues: allQueues,
3893
- subscribers: allSubscribers,
3894
- bundle: Boolean(production.bundle && !input.skipBundle),
3895
- ...input.stage ? { stage: input.stage } : {}
3896
- });
3897
- }
3923
+ reach: reachedBy(declared, [workerId], work),
3924
+ cacheBackend,
3925
+ eventsBackend
3926
+ })
3927
+ }),
3928
+ telemetry: (workerId) => require_EndpointGenerator.telemetryFor({
3929
+ node: require_seeds.telemetryOf(declared, workerId),
3930
+ appRoot,
3931
+ app: appNameOf(input),
3932
+ cwd: workspaceRoot,
3933
+ serviceName: workerId,
3934
+ ...input.workspaceName && { workspaceName: input.workspaceName }
3935
+ }),
3936
+ workers: hosted,
3937
+ serverDir: (0, node_path.join)(appRoot, ".gkm", "server"),
3938
+ crons: hostedCrons,
3939
+ queues: hostedQueues,
3940
+ subscribers: hostedSubscribers,
3941
+ bundle: Boolean(production.bundle && !input.skipBundle),
3942
+ ...input.stage ? { stage: input.stage } : {}
3943
+ });
3898
3944
  await require_openapi.generateOpenApi(allEndpoints.map(({ construct }) => construct), {
3899
3945
  openapi: config.openapi,
3900
3946
  root: workspaceRoot,
@@ -3908,7 +3954,35 @@ async function buildApp(input) {
3908
3954
  });
3909
3955
  return {
3910
3956
  ...result,
3911
- ...buildContext.databaseApi ? { databaseApi: buildContext.databaseApi.path } : {}
3957
+ ...buildContext.databaseApi ? { databaseApi: buildContext.databaseApi.path } : {},
3958
+ ...!servesOnly && hosted.length > 0 ? { workers: hosted.map((unit) => unit.id) } : {}
3959
+ };
3960
+ }
3961
+ /**
3962
+ * The `Telemetry` node a process emits through: its surface's, or — where it
3963
+ * runs a worker's work, under `gkm dev` — that worker's.
3964
+ */
3965
+ function processTelemetry(declared, surfaceId, workers) {
3966
+ for (const id of [...surfaceId ? [surfaceId] : [], ...workers]) {
3967
+ const node = require_seeds.telemetryOf(declared, id);
3968
+ if (node) return node;
3969
+ }
3970
+ }
3971
+ /**
3972
+ * The drivers a process's entry registers, from the declarations it reaches:
3973
+ * the cache's — the declaration for one that named its database, the deploy
3974
+ * target's default for one that named nowhere — and the broker's, only when
3975
+ * it reaches a topic or a queue (see `eventsBackendsIn`).
3976
+ */
3977
+ function runtimeDrivers(options) {
3978
+ const eventsBackends = require_drivers.eventsBackendsIn(options.reach, options.eventsBackend);
3979
+ return {
3980
+ storageDrivers: require_drivers.driversFor({
3981
+ appRoot: options.appRoot,
3982
+ cache: require_drivers.cacheBackendsIn(options.reach, options.cacheBackend),
3983
+ events: eventsBackends
3984
+ }),
3985
+ eventsBackends
3912
3986
  };
3913
3987
  }
3914
3988
  /**
@@ -3923,8 +3997,13 @@ async function buildWorkers(input) {
3923
3997
  const queues = owned(input.queues);
3924
3998
  const subscribers = owned(input.subscribers);
3925
3999
  const telemetry = input.telemetry(worker.id);
4000
+ const context = input.context(worker.id, [
4001
+ ...crons,
4002
+ ...queues,
4003
+ ...subscribers
4004
+ ]);
3926
4005
  const entryPoint = await generator.build({
3927
- context: input.context,
4006
+ context,
3928
4007
  workerId: worker.id,
3929
4008
  ...telemetry ? { telemetry } : {},
3930
4009
  outputDir: require_seeds.workerEntryDir(input.serverDir, worker.id),
@@ -3934,15 +4013,15 @@ async function buildWorkers(input) {
3934
4013
  });
3935
4014
  logger$4.log(`Generated worker ${worker.id}: ${crons.length} crons, ${queues.length} queues, ${subscribers.length} subscribers`);
3936
4015
  if (!input.bundle) continue;
3937
- const { bundleServer } = await Promise.resolve().then(() => require("./bundler-CtEQAnym.cjs"));
4016
+ const { bundleServer } = await Promise.resolve().then(() => require("./bundler-DBTA8gXs.cjs"));
3938
4017
  const outfile = require_seeds.workerBundleName(worker.id);
3939
4018
  await bundleServer({
3940
4019
  entryPoint,
3941
4020
  outputDir: (0, node_path.join)(input.serverDir, "dist"),
3942
4021
  outfile,
3943
- minify: input.context.production?.minify ?? false,
4022
+ minify: context.production?.minify ?? false,
3944
4023
  sourcemap: false,
3945
- external: input.context.production?.external ?? [],
4024
+ external: context.production?.external ?? [],
3946
4025
  ...input.stage ? { stage: input.stage } : {},
3947
4026
  constructs: [
3948
4027
  ...crons,
@@ -4020,7 +4099,7 @@ async function buildForTarget(target, context, appRoot, workspaceRoot, endpointG
4020
4099
  let masterKey;
4021
4100
  if (context.production?.bundle && !skipBundle) {
4022
4101
  logger$4.log(`\n📦 Bundling production server...`);
4023
- const { bundleServer } = await Promise.resolve().then(() => require("./bundler-CtEQAnym.cjs"));
4102
+ const { bundleServer } = await Promise.resolve().then(() => require("./bundler-DBTA8gXs.cjs"));
4024
4103
  const allConstructs = [
4025
4104
  ...endpoints.map((e) => e.construct),
4026
4105
  ...functions.map((f) => f.construct),
@@ -5848,25 +5927,25 @@ function loadPackageJson() {
5848
5927
  * Run: pnpm --filter @geekmidas/cli sync-versions
5849
5928
  */
5850
5929
  const GEEKMIDAS_VERSIONS = {
5851
- "@geekmidas/audit": "~10.0.0-alpha.103",
5852
- "@geekmidas/auth": "~10.0.0-alpha.103",
5853
- "@geekmidas/cache": "~10.0.0-alpha.103",
5854
- "@geekmidas/client": "~10.0.0-alpha.103",
5855
- "@geekmidas/cloud": "~10.0.0-alpha.103",
5856
- "@geekmidas/constructs": "~10.0.0-alpha.103",
5857
- "@geekmidas/db": "~10.0.0-alpha.103",
5858
- "@geekmidas/emailkit": "~10.0.0-alpha.103",
5859
- "@geekmidas/envkit": "~10.0.0-alpha.103",
5860
- "@geekmidas/errors": "~10.0.0-alpha.103",
5861
- "@geekmidas/events": "~10.0.0-alpha.103",
5862
- "@geekmidas/logger": "~10.0.0-alpha.103",
5863
- "@geekmidas/manifest": "~10.0.0-alpha.103",
5864
- "@geekmidas/rate-limit": "~10.0.0-alpha.103",
5865
- "@geekmidas/schema": "~10.0.0-alpha.103",
5866
- "@geekmidas/services": "~10.0.0-alpha.103",
5867
- "@geekmidas/storage": "~10.0.0-alpha.103",
5868
- "@geekmidas/telescope": "~10.0.0-alpha.103",
5869
- "@geekmidas/testkit": "~10.0.0-alpha.103",
5930
+ "@geekmidas/audit": "~10.0.0-alpha.104",
5931
+ "@geekmidas/auth": "~10.0.0-alpha.104",
5932
+ "@geekmidas/cache": "~10.0.0-alpha.104",
5933
+ "@geekmidas/client": "~10.0.0-alpha.104",
5934
+ "@geekmidas/cloud": "~10.0.0-alpha.104",
5935
+ "@geekmidas/constructs": "~10.0.0-alpha.104",
5936
+ "@geekmidas/db": "~10.0.0-alpha.104",
5937
+ "@geekmidas/emailkit": "~10.0.0-alpha.104",
5938
+ "@geekmidas/envkit": "~10.0.0-alpha.104",
5939
+ "@geekmidas/errors": "~10.0.0-alpha.104",
5940
+ "@geekmidas/events": "~10.0.0-alpha.104",
5941
+ "@geekmidas/logger": "~10.0.0-alpha.104",
5942
+ "@geekmidas/manifest": "~10.0.0-alpha.104",
5943
+ "@geekmidas/rate-limit": "~10.0.0-alpha.104",
5944
+ "@geekmidas/schema": "~10.0.0-alpha.104",
5945
+ "@geekmidas/services": "~10.0.0-alpha.104",
5946
+ "@geekmidas/storage": "~10.0.0-alpha.104",
5947
+ "@geekmidas/telescope": "~10.0.0-alpha.104",
5948
+ "@geekmidas/testkit": "~10.0.0-alpha.104",
5870
5949
  "@geekmidas/cli": `~${loadPackageJson().version}`
5871
5950
  };
5872
5951
  //#endregion
@@ -6267,7 +6346,7 @@ const COMMIT = /^[0-9a-f]{40}$/;
6267
6346
  * The `uses:` value for the stages action, with a comment saying which CLI
6268
6347
  * release the pinned commit is.
6269
6348
  */
6270
- function stagesActionUses(commit = "c518ade2e4c56bd3203adae5276732982be2588f", version = cliVersion()) {
6349
+ function stagesActionUses(commit = "088aa26a6c82b4916af4faddd5755e030fb459d5", version = cliVersion()) {
6271
6350
  return commit && COMMIT.test(commit) ? `${STAGES_ACTION}@${commit} # @geekmidas/cli ${version}` : `${STAGES_ACTION}@main # pin to a commit SHA: see the action's README`;
6272
6351
  }
6273
6352
  //#endregion
@@ -12009,8 +12088,8 @@ function testDatabases(reconciled) {
12009
12088
  * starts without the reference data the app needs.
12010
12089
  */
12011
12090
  async function migrateTestStage(workspace, env) {
12012
- const { migrateAndSeed } = await Promise.resolve().then(() => require("./migrate-DdociPvx.cjs"));
12013
- const { discover } = await Promise.resolve().then(() => require("./discover-BfhVW_kT.cjs")).then((n) => n.discover_exports);
12091
+ const { migrateAndSeed } = await Promise.resolve().then(() => require("./migrate-DXVzuw-s.cjs"));
12092
+ const { discover } = await Promise.resolve().then(() => require("./discover-Bsr7HjqJ.cjs")).then((n) => n.discover_exports);
12014
12093
  const sources = {};
12015
12094
  const manifest = await discover({
12016
12095
  patterns: require_seeds.constructGlobs(workspace),
@@ -12445,7 +12524,7 @@ program.command("migrate").description("Apply each database construct's migratio
12445
12524
  try {
12446
12525
  const globalOptions = program.opts();
12447
12526
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
12448
- const { migrateCommand } = await Promise.resolve().then(() => require("./migrate-DdociPvx.cjs"));
12527
+ const { migrateCommand } = await Promise.resolve().then(() => require("./migrate-DXVzuw-s.cjs"));
12449
12528
  await migrateCommand({
12450
12529
  ...options,
12451
12530
  ...construct ? { construct } : {}
@@ -12458,7 +12537,7 @@ program.command("seed").description("Migrate, then run each database construct's
12458
12537
  try {
12459
12538
  const globalOptions = program.opts();
12460
12539
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
12461
- const { seedCommand } = await Promise.resolve().then(() => require("./migrate-DdociPvx.cjs"));
12540
+ const { seedCommand } = await Promise.resolve().then(() => require("./migrate-DXVzuw-s.cjs"));
12462
12541
  await seedCommand({
12463
12542
  ...options,
12464
12543
  ...construct ? { construct } : {}
@@ -12471,7 +12550,7 @@ program.command("migration").description("Write a construct's next migration: an
12471
12550
  try {
12472
12551
  const globalOptions = program.opts();
12473
12552
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
12474
- const { migrationCommand } = await Promise.resolve().then(() => require("./migrate-DdociPvx.cjs"));
12553
+ const { migrationCommand } = await Promise.resolve().then(() => require("./migrate-DXVzuw-s.cjs"));
12475
12554
  await migrationCommand({
12476
12555
  construct,
12477
12556
  ...name ? { name } : {}
@@ -12571,7 +12650,7 @@ program.command("secrets:add").description("Build the keys a stage must be given
12571
12650
  try {
12572
12651
  const globalOptions = program.opts();
12573
12652
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
12574
- const { secretsAddCommand } = await Promise.resolve().then(() => require("./add-D97HfZ7z.cjs"));
12653
+ const { secretsAddCommand } = await Promise.resolve().then(() => require("./add-C_lp7-oD.cjs"));
12575
12654
  await secretsAddCommand(options);
12576
12655
  } catch (error) {
12577
12656
  exitWithError(error);
@@ -12581,7 +12660,7 @@ program.command("encryption:rotate").description("Add a new current key to an En
12581
12660
  try {
12582
12661
  const globalOptions = program.opts();
12583
12662
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
12584
- const { encryptionRotateCommand } = await Promise.resolve().then(() => require("./encryption-UgYs2YYM.cjs"));
12663
+ const { encryptionRotateCommand } = await Promise.resolve().then(() => require("./encryption-2KOlWvfq.cjs"));
12585
12664
  await encryptionRotateCommand(construct, options);
12586
12665
  } catch (error) {
12587
12666
  exitWithError(error);
@@ -12591,7 +12670,7 @@ program.command("encryption:retire").description("Remove an old key from an Encr
12591
12670
  try {
12592
12671
  const globalOptions = program.opts();
12593
12672
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
12594
- const { encryptionRetireCommand } = await Promise.resolve().then(() => require("./encryption-UgYs2YYM.cjs"));
12673
+ const { encryptionRetireCommand } = await Promise.resolve().then(() => require("./encryption-2KOlWvfq.cjs"));
12595
12674
  await encryptionRetireCommand(construct, key, options);
12596
12675
  } catch (error) {
12597
12676
  exitWithError(error);
@@ -12630,7 +12709,7 @@ program.command("secrets:reconcile").description("Backfill missing custom secret
12630
12709
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
12631
12710
  const { loadWorkspaceConfig } = await Promise.resolve().then(() => require("./config.cjs"));
12632
12711
  const { reconcileMissingSecrets } = await Promise.resolve().then(() => require("./reconcile-CuCQBa5-.cjs"));
12633
- const { secretsStoreFor } = await Promise.resolve().then(() => require("./seeds-a1H3kuqu.cjs")).then((n) => n.store_exports);
12712
+ const { secretsStoreFor } = await Promise.resolve().then(() => require("./seeds-CjBwLvWY.cjs")).then((n) => n.store_exports);
12634
12713
  const { workspace } = await loadWorkspaceConfig();
12635
12714
  const stage = options.stage ?? workspace.stages.local;
12636
12715
  const store = await secretsStoreFor(workspace, stage);
@@ -12639,7 +12718,7 @@ program.command("secrets:reconcile").description("Backfill missing custom secret
12639
12718
  console.error(`No secrets found for stage "${stage}". Run "gkm secrets:init --stage ${stage}" first.`);
12640
12719
  process.exit(1);
12641
12720
  }
12642
- const { derivedContainers } = await Promise.resolve().then(() => require("./seeds-a1H3kuqu.cjs")).then((n) => n.workspace_exports);
12721
+ const { derivedContainers } = await Promise.resolve().then(() => require("./seeds-CjBwLvWY.cjs")).then((n) => n.workspace_exports);
12643
12722
  const result = reconcileMissingSecrets(secrets, workspace, await derivedContainers(workspace, stage));
12644
12723
  if (!result) {
12645
12724
  console.log(`\n✓ Secrets for stage "${stage}" are up-to-date`);
@@ -12656,14 +12735,14 @@ program.command("secrets:migrate").description("Copy a deployed stage's secrets
12656
12735
  try {
12657
12736
  const globalOptions = program.opts();
12658
12737
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
12659
- const { secretsMigrateCommand } = await Promise.resolve().then(() => require("./migrate-DxAFe2EV.cjs"));
12738
+ const { secretsMigrateCommand } = await Promise.resolve().then(() => require("./migrate-BQfq48xK.cjs"));
12660
12739
  await secretsMigrateCommand(options);
12661
12740
  } catch (error) {
12662
12741
  exitWithError(error);
12663
12742
  }
12664
12743
  });
12665
12744
  program.command("deploy").description("Deploy a stage through its target").option("--target <name>", "Deploy target: dokploy, compose, sst, or one named in deploy.targets (default: deploy.default)").option("--provider <provider>", "[DEPRECATED] Use --target instead").requiredOption("--stage <stage>", "Deployment stage (e.g., production, staging)").option("--tag <tag>", "Image tag (default: stage-timestamp; compose: the commit). Compose pulls a given tag").option("--skip-push", "Skip pushing image to registry").option("--skip-build", "Skip build step (use existing build)").option("--json", "Write events as JSON lines instead of progress; never prompts").option("--dry-run", "Show what would be created or reused; change, build and push nothing").option("--atomic", "If the release fails, roll back every app it released, not only the failed ones").option("--allow-dev-services", "Server targets: run the dev service (MinIO, Mailpit) for every bucket and mail the stage doesn't account for. Not production-grade").option("--skip-dns", "Compose: neither write the public hosts' DNS records nor check they point at GKM_SERVER_IPV4 (a CDN or proxy in front, or records written elsewhere)").option("--rotate-keys", "Deployed stage: each provider issues its runtime keys a successor (the old one is deleted by the next deploy)").option("--retire-old-keys", "Deployed stage: delete a rotated-out key now instead of on the next deploy").action(async (options) => {
12666
- const { deployCli } = await Promise.resolve().then(() => require("./cli-CIv8PA-v.cjs"));
12745
+ const { deployCli } = await Promise.resolve().then(() => require("./cli-D7FyFbeC.cjs"));
12667
12746
  const globalOptions = program.opts();
12668
12747
  const code = await deployCli({
12669
12748
  cwd: (0, node_path.resolve)(globalOptions.cwd ?? process.cwd()),
@@ -12683,8 +12762,8 @@ program.command("deploy").description("Deploy a stage through its target").optio
12683
12762
  });
12684
12763
  program.command("deploy:rollback").description("Put a stage's app back on its previous release (Dokploy): one app with --app, every app with --atomic").requiredOption("--stage <stage>", "A deployed stage").option("--app <app>", "The app to roll back").option("--atomic", "Roll back every app that has an earlier release").action(async (options) => {
12685
12764
  try {
12686
- const { rollbackStage } = await Promise.resolve().then(() => require("./rollback-qk3-knJ7.cjs")).then((n) => n.rollback_exports);
12687
- const { terminalCredentials } = await Promise.resolve().then(() => require("./terminal-CsQz4oT0.cjs"));
12765
+ const { rollbackStage } = await Promise.resolve().then(() => require("./rollback-dkinZaOv.cjs")).then((n) => n.rollback_exports);
12766
+ const { terminalCredentials } = await Promise.resolve().then(() => require("./terminal-D_NRPW4W.cjs"));
12688
12767
  const globalOptions = program.opts();
12689
12768
  await rollbackStage({
12690
12769
  cwd: (0, node_path.resolve)(globalOptions.cwd ?? process.cwd()),
@@ -12717,7 +12796,7 @@ program.command("deploy:github").description("Let GitHub Actions deploy a stage:
12717
12796
  try {
12718
12797
  const globalOptions = program.opts();
12719
12798
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
12720
- const { deployGithubCommand } = await Promise.resolve().then(() => require("./github-C-L3qfYZ.cjs"));
12799
+ const { deployGithubCommand } = await Promise.resolve().then(() => require("./github-BM6afosB.cjs"));
12721
12800
  await deployGithubCommand(options);
12722
12801
  } catch (error) {
12723
12802
  exitWithError(error);