@geekmidas/cli 10.0.0-alpha.69 → 10.0.0-alpha.71

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 (148) hide show
  1. package/dist/{LegacyStateStore-LS_uTO8D.cjs → LegacyStateStore-Dd5IwiyC.cjs} +2 -2
  2. package/dist/{LegacyStateStore-LS_uTO8D.cjs.map → LegacyStateStore-Dd5IwiyC.cjs.map} +1 -1
  3. package/dist/{LegacyStateStore-BE1Et8RS.mjs → LegacyStateStore-NSHEinQi.mjs} +2 -2
  4. package/dist/{LegacyStateStore-BE1Et8RS.mjs.map → LegacyStateStore-NSHEinQi.mjs.map} +1 -1
  5. package/dist/{LocalStateStore-CV6phNMZ.cjs → LocalStateStore-DTylG4T4.cjs} +2 -2
  6. package/dist/{LocalStateStore-CV6phNMZ.cjs.map → LocalStateStore-DTylG4T4.cjs.map} +1 -1
  7. package/dist/{LocalStateStore-DAnFc708.mjs → LocalStateStore-DUoG2wA_.mjs} +2 -2
  8. package/dist/{LocalStateStore-DAnFc708.mjs.map → LocalStateStore-DUoG2wA_.mjs.map} +1 -1
  9. package/dist/{OpenApiTsGenerator-CSaXs-dB.mjs → OpenApiTsGenerator-Bhr_XWWN.mjs} +57 -638
  10. package/dist/OpenApiTsGenerator-Bhr_XWWN.mjs.map +1 -0
  11. package/dist/{OpenApiTsGenerator-CxB8mqXz.cjs → OpenApiTsGenerator-DZZwHdDC.cjs} +57 -638
  12. package/dist/OpenApiTsGenerator-DZZwHdDC.cjs.map +1 -0
  13. package/dist/{S3StateStore-dA34LAYm.cjs → S3StateStore-D7hrU-sy.cjs} +2 -2
  14. package/dist/{S3StateStore-dA34LAYm.cjs.map → S3StateStore-D7hrU-sy.cjs.map} +1 -1
  15. package/dist/{S3StateStore-8kJEGnTh.mjs → S3StateStore-Dxob3PNA.mjs} +2 -2
  16. package/dist/{S3StateStore-8kJEGnTh.mjs.map → S3StateStore-Dxob3PNA.mjs.map} +1 -1
  17. package/dist/{SSMStateStore-DBzlfc-S.cjs → SSMStateStore-DGIKJ4NN.cjs} +2 -2
  18. package/dist/{SSMStateStore-DBzlfc-S.cjs.map → SSMStateStore-DGIKJ4NN.cjs.map} +1 -1
  19. package/dist/{SSMStateStore-Dkdw-fPL.mjs → SSMStateStore-Dvl4A8Up.mjs} +2 -2
  20. package/dist/{SSMStateStore-Dkdw-fPL.mjs.map → SSMStateStore-Dvl4A8Up.mjs.map} +1 -1
  21. package/dist/{add-CoIr2wgv.cjs → add-DeC2Kyyv.cjs} +3 -3
  22. package/dist/{add-CoIr2wgv.cjs.map → add-DeC2Kyyv.cjs.map} +1 -1
  23. package/dist/{add-Dzk23476.mjs → add-XTLU19_E.mjs} +3 -3
  24. package/dist/{add-Dzk23476.mjs.map → add-XTLU19_E.mjs.map} +1 -1
  25. package/dist/{bundler-CSR2nM4m.cjs → bundler-CEaR6Dpb.cjs} +6 -6
  26. package/dist/bundler-CEaR6Dpb.cjs.map +1 -0
  27. package/dist/{bundler-Cn0JF5G0.mjs → bundler-CNTVLCCA.mjs} +6 -6
  28. package/dist/bundler-CNTVLCCA.mjs.map +1 -0
  29. package/dist/{cli-ij8Lwlww.mjs → cli-D1arS0p1.mjs} +3 -3
  30. package/dist/{cli-ij8Lwlww.mjs.map → cli-D1arS0p1.mjs.map} +1 -1
  31. package/dist/{cli-IoM2-x48.cjs → cli-MMgBrHx7.cjs} +3 -3
  32. package/dist/{cli-IoM2-x48.cjs.map → cli-MMgBrHx7.cjs.map} +1 -1
  33. package/dist/{compose-DfIioFX0.cjs → compose-B-MME-4C.cjs} +358 -16
  34. package/dist/compose-B-MME-4C.cjs.map +1 -0
  35. package/dist/{compose-CZtinmtw.mjs → compose-T3hnnjKZ.mjs} +353 -17
  36. package/dist/compose-T3hnnjKZ.mjs.map +1 -0
  37. package/dist/{config-CxEp_g7j.d.mts → config-BN6iXvyR.d.mts} +3 -3
  38. package/dist/{config-BnA0kPTY.d.cts.map → config-BN6iXvyR.d.mts.map} +1 -1
  39. package/dist/{config-BnA0kPTY.d.cts → config-j9zBKaEG.d.cts} +3 -3
  40. package/dist/{config-CxEp_g7j.d.mts.map → config-j9zBKaEG.d.cts.map} +1 -1
  41. package/dist/config.cjs +1 -1
  42. package/dist/config.d.cts +3 -3
  43. package/dist/config.d.mts +3 -3
  44. package/dist/config.mjs +1 -1
  45. package/dist/deploy/public.cjs +6 -6
  46. package/dist/deploy/public.d.cts +3 -3
  47. package/dist/deploy/public.d.cts.map +1 -1
  48. package/dist/deploy/public.d.mts +3 -3
  49. package/dist/deploy/public.d.mts.map +1 -1
  50. package/dist/deploy/public.mjs +6 -6
  51. package/dist/{deploy-Dpz9raPM.cjs → deploy-CZE0m6jd.cjs} +5 -5
  52. package/dist/{deploy-Dpz9raPM.cjs.map → deploy-CZE0m6jd.cjs.map} +1 -1
  53. package/dist/{deploy-BzqbkJ3o.mjs → deploy-ClC53rc6.mjs} +5 -5
  54. package/dist/{deploy-BzqbkJ3o.mjs.map → deploy-ClC53rc6.mjs.map} +1 -1
  55. package/dist/{dokploy-DkwcORbv.mjs → dokploy-D1UwQKm3.mjs} +2 -2
  56. package/dist/{dokploy-DkwcORbv.mjs.map → dokploy-D1UwQKm3.mjs.map} +1 -1
  57. package/dist/{dokploy-B6O-J1fb.cjs → dokploy-lwmH05zr.cjs} +2 -2
  58. package/dist/{dokploy-B6O-J1fb.cjs.map → dokploy-lwmH05zr.cjs.map} +1 -1
  59. package/dist/{encryption-C8Ic5t0C.cjs → encryption-D05sNwED.cjs} +3 -3
  60. package/dist/{encryption-C8Ic5t0C.cjs.map → encryption-D05sNwED.cjs.map} +1 -1
  61. package/dist/{encryption-7m1mKcRy.mjs → encryption-DcrxWl1s.mjs} +3 -3
  62. package/dist/{encryption-7m1mKcRy.mjs.map → encryption-DcrxWl1s.mjs.map} +1 -1
  63. package/dist/{engine-BR9qlS7A.cjs → engine-Cry1vwMz.cjs} +6 -5
  64. package/dist/engine-Cry1vwMz.cjs.map +1 -0
  65. package/dist/{engine-62Kl70Pj.mjs → engine-DmQS3XHX.mjs} +6 -5
  66. package/dist/{engine-62Kl70Pj.mjs.map → engine-DmQS3XHX.mjs.map} +1 -1
  67. package/dist/{github-CmGIZjhu.cjs → github-BchWoiVx.cjs} +3 -3
  68. package/dist/{github-CmGIZjhu.cjs.map → github-BchWoiVx.cjs.map} +1 -1
  69. package/dist/{github-DtymyOcH.mjs → github-CqYOP8cI.mjs} +3 -3
  70. package/dist/{github-DtymyOcH.mjs.map → github-CqYOP8cI.mjs.map} +1 -1
  71. package/dist/{index-CkX89m6S.d.mts → index-Bk3NY6DN.d.cts} +2 -2
  72. package/dist/{index-CkX89m6S.d.mts.map → index-Bk3NY6DN.d.cts.map} +1 -1
  73. package/dist/{index-EvZBkycu.d.cts → index-DvoxuTqR.d.mts} +2 -2
  74. package/dist/{index-EvZBkycu.d.cts.map → index-DvoxuTqR.d.mts.map} +1 -1
  75. package/dist/index.cjs +53 -52
  76. package/dist/index.cjs.map +1 -1
  77. package/dist/index.mjs +53 -52
  78. package/dist/index.mjs.map +1 -1
  79. package/dist/{migrate-CEzq6DjL.mjs → migrate-guck0NJK.mjs} +3 -3
  80. package/dist/{migrate-CEzq6DjL.mjs.map → migrate-guck0NJK.mjs.map} +1 -1
  81. package/dist/{migrate-CYC-hBOU.cjs → migrate-qKeGYq21.cjs} +3 -3
  82. package/dist/{migrate-CYC-hBOU.cjs.map → migrate-qKeGYq21.cjs.map} +1 -1
  83. package/dist/openapi.cjs +1 -1
  84. package/dist/openapi.d.cts +1 -1
  85. package/dist/openapi.d.mts +1 -1
  86. package/dist/openapi.mjs +1 -1
  87. package/dist/{ready-QGgjmcuN.cjs → ready-Dp6arkI4.cjs} +5 -5
  88. package/dist/ready-Dp6arkI4.cjs.map +1 -0
  89. package/dist/{ready-DeYaSoNN.mjs → ready-xpoX11uu.mjs} +5 -5
  90. package/dist/ready-xpoX11uu.mjs.map +1 -0
  91. package/dist/reconcile/public.d.cts +1 -1
  92. package/dist/reconcile/public.d.mts +1 -1
  93. package/dist/{resolve-Dn5wGf1r.mjs → resolve-BsXEXAUz.mjs} +3 -3
  94. package/dist/{resolve-Dn5wGf1r.mjs.map → resolve-BsXEXAUz.mjs.map} +1 -1
  95. package/dist/{resolve-BDsMffvz.cjs → resolve-wEjEvbJ5.cjs} +3 -3
  96. package/dist/{resolve-BDsMffvz.cjs.map → resolve-wEjEvbJ5.cjs.map} +1 -1
  97. package/dist/{rollback-DDfaqv7P.mjs → rollback-Bk91csFg.mjs} +5 -5
  98. package/dist/{rollback-DDfaqv7P.mjs.map → rollback-Bk91csFg.mjs.map} +1 -1
  99. package/dist/{rollback-5XHaBDxW.cjs → rollback-DmcU-efZ.cjs} +5 -5
  100. package/dist/{rollback-5XHaBDxW.cjs.map → rollback-DmcU-efZ.cjs.map} +1 -1
  101. package/dist/{runtime-B3jNgeP-.d.mts → runtime-CYAO4iZG.d.cts} +2 -2
  102. package/dist/{runtime-B3jNgeP-.d.mts.map → runtime-CYAO4iZG.d.cts.map} +1 -1
  103. package/dist/{runtime-DWThEP-r.d.cts → runtime-DHJhe4QI.d.mts} +2 -2
  104. package/dist/{runtime-DWThEP-r.d.cts.map → runtime-DHJhe4QI.d.mts.map} +1 -1
  105. package/dist/{sniffer-Bc0nNBDF.cjs → sniffer-DpHpFZBD.cjs} +6 -6
  106. package/dist/sniffer-DpHpFZBD.cjs.map +1 -0
  107. package/dist/{sniffer-DMqi2b1q.mjs → sniffer-vAXsU_4G.mjs} +6 -6
  108. package/dist/sniffer-vAXsU_4G.mjs.map +1 -0
  109. package/dist/{state-DClnPZt5.mjs → state-BJFherj1.mjs} +60 -5
  110. package/dist/state-BJFherj1.mjs.map +1 -0
  111. package/dist/{state-8RgXeX5Y.cjs → state-CCuTJNRH.cjs} +71 -4
  112. package/dist/state-CCuTJNRH.cjs.map +1 -0
  113. package/dist/target/public.cjs +1 -1
  114. package/dist/target/public.d.cts +2 -2
  115. package/dist/target/public.d.mts +2 -2
  116. package/dist/target/public.mjs +1 -1
  117. package/dist/{types-CZdCxUCK.d.cts → types-BD1jgA85.d.cts} +70 -2
  118. package/dist/types-BD1jgA85.d.cts.map +1 -0
  119. package/dist/{types-Da0E3Qv7.d.mts → types-DkG5WW8l.d.mts} +70 -2
  120. package/dist/types-DkG5WW8l.d.mts.map +1 -0
  121. package/dist/vitest.cjs +1 -1
  122. package/dist/vitest.mjs +1 -1
  123. package/dist/workspace/index.cjs +1 -1
  124. package/dist/workspace/index.d.cts +3 -3
  125. package/dist/workspace/index.d.mts +3 -3
  126. package/dist/workspace/index.mjs +1 -1
  127. package/dist/{workspace-B2UK_rVP.mjs → workspace-C7NqCsQF.mjs} +104 -2
  128. package/dist/workspace-C7NqCsQF.mjs.map +1 -0
  129. package/dist/{workspace-8NuAjaXJ.cjs → workspace-vdrcRI-m.cjs} +115 -1
  130. package/dist/workspace-vdrcRI-m.cjs.map +1 -0
  131. package/package.json +15 -15
  132. package/dist/OpenApiTsGenerator-CSaXs-dB.mjs.map +0 -1
  133. package/dist/OpenApiTsGenerator-CxB8mqXz.cjs.map +0 -1
  134. package/dist/bundler-CSR2nM4m.cjs.map +0 -1
  135. package/dist/bundler-Cn0JF5G0.mjs.map +0 -1
  136. package/dist/compose-CZtinmtw.mjs.map +0 -1
  137. package/dist/compose-DfIioFX0.cjs.map +0 -1
  138. package/dist/engine-BR9qlS7A.cjs.map +0 -1
  139. package/dist/ready-DeYaSoNN.mjs.map +0 -1
  140. package/dist/ready-QGgjmcuN.cjs.map +0 -1
  141. package/dist/sniffer-Bc0nNBDF.cjs.map +0 -1
  142. package/dist/sniffer-DMqi2b1q.mjs.map +0 -1
  143. package/dist/state-8RgXeX5Y.cjs.map +0 -1
  144. package/dist/state-DClnPZt5.mjs.map +0 -1
  145. package/dist/types-CZdCxUCK.d.cts.map +0 -1
  146. package/dist/types-Da0E3Qv7.d.mts.map +0 -1
  147. package/dist/workspace-8NuAjaXJ.cjs.map +0 -1
  148. package/dist/workspace-B2UK_rVP.mjs.map +0 -1
package/dist/index.mjs CHANGED
@@ -4,19 +4,19 @@ import { r as DEFAULT_TIMEOUT_MS, t as CommandFailed } from "./run-BJLIerMM.mjs"
4
4
  import { c as getDokployCredentials, f as removeDokployCredentials, i as LocalSandbox, l as getDokployRegistryId, m as storeHostingerToken, p as storeDokployCredentials, s as getCredentialsPath, u as getDokployToken } from "./credentials-pAtB70k3.mjs";
5
5
  import { l as withOwningTsconfigJsx, r as discover, u as ConstructGenerator } from "./discover-Buwf1z4P.mjs";
6
6
  import { t as appKey } from "./derive-B4vDpzgP.mjs";
7
- import { A as deployedProblems, D as InvalidStages, O as TEST_STAGE, c as getAppGkmConfig, j as stageProblems, n as allConstructGlobs, s as getAppBuildOrder } from "./workspace-B2UK_rVP.mjs";
7
+ import { A as deployedProblems, D as InvalidStages, O as TEST_STAGE, c as getAppGkmConfig, j as stageProblems, n as allConstructGlobs, s as getAppBuildOrder } from "./workspace-C7NqCsQF.mjs";
8
8
  import { ConfigNotFound, NotABackendApp, NotInAnApp, loadAppConfig, loadConfig, loadWorkspaceConfig, loadWorkspaceSettings, parseModuleConfig } from "./config.mjs";
9
- import { $ as postgresDatabaseNames, $t as withCustomSecret, At as loadEnvFiles, B as keyFingerprint, Ct as fakeKey, Dt as createEntryWrapper, Et as createCredentialsPreload, G as reconcileWorkspace, H as backendsOf$1, Ht as deployIdentity, It as FileSecretsStore, J as forgetState, Lt as getKeyPath, Mt as prepareEntryCredentials, Ot as findAvailablePort, P as parseDevServices, Pt as secretsStoreFor, Qt as toEmbeddableSecrets, St as describeServices, Tt as primaryPortKey, U as constructGlobs, V as FAKE_ENV, W as derivedContainers, Xt as maskPassword, _t as cacheBackendFor, it as pgClient, jt as loadSecretsForApp, kt as isPortAvailable, q as LOCAL_CA_PATH, tt as quoteIdentifier, y as dockerCommand, yt as providerOf, zt as projectKey } from "./state-DClnPZt5.mjs";
10
- import { i as telemetryFor, n as EndpointGenerator, r as runtimeFor } from "./OpenApiTsGenerator-CSaXs-dB.mjs";
11
- import { g as createStateStore, n as sniffAppEnvironment, o as DokployApi } from "./sniffer-DMqi2b1q.mjs";
9
+ import { At as findAvailablePort, Dt as primaryPortKey, G as constructGlobs, H as keyFingerprint, I as parseDevServices, It as secretsStoreFor, K as derivedContainers, Mt as loadEnvFiles, Nt as loadSecretsForApp, Ot as createCredentialsPreload, Pt as prepareEntryCredentials, Qt as maskPassword, Rt as FileSecretsStore, Tt as fakeKey, U as FAKE_ENV, Vt as projectKey, W as backendsOf$1, Wt as deployIdentity, X as forgetState, Y as LOCAL_CA_PATH, en as toEmbeddableSecrets, jt as isPortAvailable, kt as createEntryWrapper, ot as pgClient, q as reconcileWorkspace, rt as quoteIdentifier, tn as withCustomSecret, tt as postgresDatabaseNames, wt as describeServices, xt as providerOf, y as dockerCommand, yt as cacheBackendFor, zt as getKeyPath } from "./state-BJFherj1.mjs";
10
+ import { i as telemetryFor, n as EndpointGenerator, r as runtimeFor } from "./OpenApiTsGenerator-Bhr_XWWN.mjs";
11
+ import { g as createStateStore, n as sniffAppEnvironment, o as DokployApi } from "./sniffer-vAXsU_4G.mjs";
12
12
  import { generateOpenApi, openapiCommand, resolveOpenApiConfig } from "./openapi.mjs";
13
13
  import { a as describeHolder, i as assignAppPorts, o as holderOf, r as appTag, s as withAppPorts, t as APP_TAG_ENV } from "./appPorts-C9z9Pzn9.mjs";
14
- import { a as writeTestHarness, c as driversFor, i as TEST_MANIFEST_ENV, n as TEST_READY_FILE, o as SubscriberGenerator, s as cacheBackendsIn, t as TEST_READY_ENV } from "./ready-DeYaSoNN.mjs";
14
+ import { a as writeTestHarness, c as driversFor, i as TEST_MANIFEST_ENV, n as TEST_READY_FILE, o as SubscriberGenerator, s as cacheBackendsIn, t as TEST_READY_ENV } from "./ready-xpoX11uu.mjs";
15
15
  import { n as withCompute, r as withRoutes, t as manifestModule } from "./emit-C1e8qD08.mjs";
16
- import { t as deploy$1 } from "./deploy-BzqbkJ3o.mjs";
17
- import { a as dockerCompose, i as stackDir, r as composeProject, t as composeTarget } from "./compose-CZtinmtw.mjs";
16
+ import { t as deploy$1 } from "./deploy-ClC53rc6.mjs";
17
+ import { a as stackDir, i as composeProject, o as dockerCompose, r as stackOverrideFile, t as composeTarget } from "./compose-T3hnnjKZ.mjs";
18
18
  import { o as loadCredentialSchemas, t as CredentialsInvalid } from "./credentialSchemas-BmYxnEz_.mjs";
19
- import { t as LocalStateStore } from "./LocalStateStore-DAnFc708.mjs";
19
+ import { t as LocalStateStore } from "./LocalStateStore-DUoG2wA_.mjs";
20
20
  import { a as getExecCommand, c as validateProjectName, i as findWorkspaceRoot, n as detectPackageManager$1, o as getInstallCommand, r as findWorkspacePackages, s as getRunCommand, t as checkDirectoryExists } from "./utils-D_fxUqvU.mjs";
21
21
  import { createRequire } from "node:module";
22
22
  import { basename, dirname, isAbsolute, join, relative, resolve } from "node:path";
@@ -30,9 +30,9 @@ import { promisify } from "node:util";
30
30
  import { canonicalId, kebabCase, migrationFolder, provideKey, schemeBase, serviceKey } from "@geekmidas/manifest";
31
31
  import fg from "fast-glob";
32
32
  import { pathToFileURL } from "node:url";
33
+ import { connect } from "node:net";
33
34
  import { execFile, execSync, spawn } from "node:child_process";
34
35
  import chokidar from "chokidar";
35
- import { connect } from "node:net";
36
36
  import { createHash, randomBytes, timingSafeEqual } from "node:crypto";
37
37
  import { parseDocument } from "yaml";
38
38
  import prompts from "prompts";
@@ -47,7 +47,7 @@ import { Function } from "@geekmidas/constructs/functions";
47
47
  import { Queue } from "@geekmidas/constructs/queue";
48
48
  import { Topic } from "@geekmidas/constructs/topic";
49
49
  //#region package.json
50
- var version = "10.0.0-alpha.69";
50
+ var version = "10.0.0-alpha.71";
51
51
  //#endregion
52
52
  //#region src/prompt.ts
53
53
  /**
@@ -130,7 +130,7 @@ const logger$8 = console;
130
130
  * Validate Dokploy token by making a test API call
131
131
  */
132
132
  async function validateDokployToken(endpoint, token) {
133
- const { DokployApi } = await import("./sniffer-DMqi2b1q.mjs").then((n) => n.c);
133
+ const { DokployApi } = await import("./sniffer-vAXsU_4G.mjs").then((n) => n.c);
134
134
  return new DokployApi({
135
135
  baseUrl: endpoint,
136
136
  token
@@ -1618,8 +1618,7 @@ function normalizeProductionConfig(cliProduction) {
1618
1618
  gracefulShutdown: true,
1619
1619
  external: [],
1620
1620
  subscribers: "include",
1621
- openapi: false,
1622
- optimizedHandlers: true
1621
+ openapi: false
1623
1622
  };
1624
1623
  }
1625
1624
  /** Read by the generated server: no subscriber is subscribed or polled. */
@@ -2036,9 +2035,9 @@ async function workspaceDevCommand(configured, options) {
2036
2035
  for (const { id, port } of fakes) logger$5.log(`🎭 ${id} fake: http://localhost:${port}`);
2037
2036
  logger$5.log(options.migrate || options.seed ? "🗄️ Migrating the databases" : "🗄️ Checking for pending migrations");
2038
2037
  if (options.migrate || options.seed) {
2039
- const { prepareDevDatabases } = await import("./migrate-CEzq6DjL.mjs");
2038
+ const { prepareDevDatabases } = await import("./migrate-guck0NJK.mjs");
2040
2039
  await prepareDevDatabases(workspace, reconciled.env, { seed: !!options.seed });
2041
- } else await import("./migrate-CEzq6DjL.mjs").then(({ reportPendingMigrations }) => reportPendingMigrations(workspace, reconciled.env)).catch((error) => {
2040
+ } else await import("./migrate-guck0NJK.mjs").then(({ reportPendingMigrations }) => reportPendingMigrations(workspace, reconciled.env)).catch((error) => {
2042
2041
  logger$5.log(`⚠️ Could not check for pending migrations: ${error instanceof Error ? error.message : String(error)}`);
2043
2042
  });
2044
2043
  const appUrls = {};
@@ -2701,7 +2700,7 @@ export async function setupCrons(
2701
2700
  } catch (error) {
2702
2701
  // An unrepresentable schedule is a build-time mistake, and failing the
2703
2702
  // process for it would take the HTTP server down with it.
2704
- logger.error({ error, cron: name }, 'Cron has no runnable schedule, skipping');
2703
+ logger.error({ err: error, cron: name }, 'Cron has no runnable schedule, skipping');
2705
2704
  }
2706
2705
  }
2707
2706
 
@@ -2712,7 +2711,7 @@ export async function setupCrons(
2712
2711
  // \`handler\` a Cron does not have, so every firing logged a failure.
2713
2712
  await runCron(entry.cron, serviceDiscovery);
2714
2713
  } catch (error) {
2715
- logger.error({ error, cron: entry.name }, 'Cron failed');
2714
+ logger.error({ err: error, cron: entry.name }, 'Cron failed');
2716
2715
  }
2717
2716
  };
2718
2717
 
@@ -3006,14 +3005,14 @@ export async function setupQueues(
3006
3005
  db,
3007
3006
  } as any);
3008
3007
  } catch (error) {
3009
- logger.error({ error, queue: queue.name }, 'Failed to process queue message');
3008
+ logger.error({ err: error, queue: queue.name }, 'Failed to process queue message');
3010
3009
  // Rethrown so the transport keeps the message for a retry.
3011
3010
  throw error;
3012
3011
  }
3013
3012
  });
3014
3013
  logger.info({ queue: queue.name }, 'Queue consumer started polling');
3015
3014
  } catch (error) {
3016
- logger.error({ error, queue: queue.name }, 'Failed to set up queue consumer');
3015
+ logger.error({ err: error, queue: queue.name }, 'Failed to set up queue consumer');
3017
3016
  }
3018
3017
  }
3019
3018
 
@@ -3418,7 +3417,7 @@ async function buildApp(input) {
3418
3417
  if (production?.bundle && !input.skipBundle) {
3419
3418
  const outputDir = join(appRoot, ".gkm", "server");
3420
3419
  const entryPoint = await writeSurfaceServer(outputDir, production);
3421
- const { bundleServer } = await import("./bundler-Cn0JF5G0.mjs");
3420
+ const { bundleServer } = await import("./bundler-CNTVLCCA.mjs");
3422
3421
  await bundleServer({
3423
3422
  entryPoint,
3424
3423
  outputDir: join(outputDir, "dist"),
@@ -3556,7 +3555,7 @@ async function buildForTarget(target, context, appRoot, workspaceRoot, endpointG
3556
3555
  let masterKey;
3557
3556
  if (context.production?.bundle && !skipBundle) {
3558
3557
  logger$4.log(`\n📦 Bundling production server...`);
3559
- const { bundleServer } = await import("./bundler-Cn0JF5G0.mjs");
3558
+ const { bundleServer } = await import("./bundler-CNTVLCCA.mjs");
3560
3559
  const allConstructs = [
3561
3560
  ...endpoints.map((e) => e.construct),
3562
3561
  ...functions.map((f) => f.construct),
@@ -3808,9 +3807,11 @@ async function composeCommand(options, deps = {}) {
3808
3807
  const { workspace } = await loadWorkspaceConfig(cwd);
3809
3808
  const { stage } = options;
3810
3809
  if (options.down) {
3810
+ const override = stackOverrideFile(workspace.root, stage);
3811
3811
  const ref = {
3812
3812
  project: composeProject(deployIdentity(workspace, stage)),
3813
3813
  file: join(workspace.root, stackDir(stage), "docker-compose.yml"),
3814
+ ...existsSync(override) ? { overrides: [override] } : {},
3814
3815
  cwd: workspace.root
3815
3816
  };
3816
3817
  await (deps.docker ?? dockerCompose).down(ref);
@@ -5253,25 +5254,25 @@ function loadPackageJson() {
5253
5254
  * Run: pnpm --filter @geekmidas/cli sync-versions
5254
5255
  */
5255
5256
  const GEEKMIDAS_VERSIONS = {
5256
- "@geekmidas/audit": "~10.0.0-alpha.69",
5257
- "@geekmidas/auth": "~10.0.0-alpha.69",
5258
- "@geekmidas/cache": "~10.0.0-alpha.69",
5259
- "@geekmidas/client": "~10.0.0-alpha.69",
5260
- "@geekmidas/cloud": "~10.0.0-alpha.69",
5261
- "@geekmidas/constructs": "~10.0.0-alpha.69",
5262
- "@geekmidas/db": "~10.0.0-alpha.69",
5263
- "@geekmidas/emailkit": "~10.0.0-alpha.69",
5264
- "@geekmidas/envkit": "~10.0.0-alpha.69",
5265
- "@geekmidas/errors": "~10.0.0-alpha.69",
5266
- "@geekmidas/events": "~10.0.0-alpha.69",
5267
- "@geekmidas/logger": "~10.0.0-alpha.69",
5268
- "@geekmidas/manifest": "~10.0.0-alpha.69",
5269
- "@geekmidas/rate-limit": "~10.0.0-alpha.69",
5270
- "@geekmidas/schema": "~10.0.0-alpha.69",
5271
- "@geekmidas/services": "~10.0.0-alpha.69",
5272
- "@geekmidas/storage": "~10.0.0-alpha.69",
5273
- "@geekmidas/telescope": "~10.0.0-alpha.69",
5274
- "@geekmidas/testkit": "~10.0.0-alpha.69",
5257
+ "@geekmidas/audit": "~10.0.0-alpha.71",
5258
+ "@geekmidas/auth": "~10.0.0-alpha.71",
5259
+ "@geekmidas/cache": "~10.0.0-alpha.71",
5260
+ "@geekmidas/client": "~10.0.0-alpha.71",
5261
+ "@geekmidas/cloud": "~10.0.0-alpha.71",
5262
+ "@geekmidas/constructs": "~10.0.0-alpha.71",
5263
+ "@geekmidas/db": "~10.0.0-alpha.71",
5264
+ "@geekmidas/emailkit": "~10.0.0-alpha.71",
5265
+ "@geekmidas/envkit": "~10.0.0-alpha.71",
5266
+ "@geekmidas/errors": "~10.0.0-alpha.71",
5267
+ "@geekmidas/events": "~10.0.0-alpha.71",
5268
+ "@geekmidas/logger": "~10.0.0-alpha.71",
5269
+ "@geekmidas/manifest": "~10.0.0-alpha.71",
5270
+ "@geekmidas/rate-limit": "~10.0.0-alpha.71",
5271
+ "@geekmidas/schema": "~10.0.0-alpha.71",
5272
+ "@geekmidas/services": "~10.0.0-alpha.71",
5273
+ "@geekmidas/storage": "~10.0.0-alpha.71",
5274
+ "@geekmidas/telescope": "~10.0.0-alpha.71",
5275
+ "@geekmidas/testkit": "~10.0.0-alpha.71",
5275
5276
  "@geekmidas/cli": `~${loadPackageJson().version}`
5276
5277
  };
5277
5278
  //#endregion
@@ -11061,7 +11062,7 @@ function testDatabases(reconciled) {
11061
11062
  * starts without the reference data the app needs.
11062
11063
  */
11063
11064
  async function migrateTestStage(workspace, env) {
11064
- const { migrateAndSeed } = await import("./migrate-CEzq6DjL.mjs");
11065
+ const { migrateAndSeed } = await import("./migrate-guck0NJK.mjs");
11065
11066
  const { discover } = await import("./discover-Buwf1z4P.mjs").then((n) => n.i);
11066
11067
  const sources = {};
11067
11068
  const manifest = await discover({
@@ -11492,7 +11493,7 @@ program.command("migrate").description("Apply each database construct's migratio
11492
11493
  try {
11493
11494
  const globalOptions = program.opts();
11494
11495
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
11495
- const { migrateCommand } = await import("./migrate-CEzq6DjL.mjs");
11496
+ const { migrateCommand } = await import("./migrate-guck0NJK.mjs");
11496
11497
  await migrateCommand({
11497
11498
  ...options,
11498
11499
  ...construct ? { construct } : {}
@@ -11506,7 +11507,7 @@ program.command("seed").description("Migrate, then run each database construct's
11506
11507
  try {
11507
11508
  const globalOptions = program.opts();
11508
11509
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
11509
- const { seedCommand } = await import("./migrate-CEzq6DjL.mjs");
11510
+ const { seedCommand } = await import("./migrate-guck0NJK.mjs");
11510
11511
  await seedCommand({
11511
11512
  ...options,
11512
11513
  ...construct ? { construct } : {}
@@ -11520,7 +11521,7 @@ program.command("migration").description("Write a construct's next migration: an
11520
11521
  try {
11521
11522
  const globalOptions = program.opts();
11522
11523
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
11523
- const { migrationCommand } = await import("./migrate-CEzq6DjL.mjs");
11524
+ const { migrationCommand } = await import("./migrate-guck0NJK.mjs");
11524
11525
  await migrationCommand({
11525
11526
  construct,
11526
11527
  ...name ? { name } : {}
@@ -11614,7 +11615,7 @@ program.command("secrets:add").description("Build the keys a stage must be given
11614
11615
  try {
11615
11616
  const globalOptions = program.opts();
11616
11617
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
11617
- const { secretsAddCommand } = await import("./add-Dzk23476.mjs");
11618
+ const { secretsAddCommand } = await import("./add-XTLU19_E.mjs");
11618
11619
  await secretsAddCommand(options);
11619
11620
  } catch (error) {
11620
11621
  console.error(formatError(error));
@@ -11625,7 +11626,7 @@ program.command("encryption:rotate").description("Add a new current key to an En
11625
11626
  try {
11626
11627
  const globalOptions = program.opts();
11627
11628
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
11628
- const { encryptionRotateCommand } = await import("./encryption-7m1mKcRy.mjs");
11629
+ const { encryptionRotateCommand } = await import("./encryption-DcrxWl1s.mjs");
11629
11630
  await encryptionRotateCommand(construct, options);
11630
11631
  } catch (error) {
11631
11632
  console.error(formatError(error));
@@ -11636,7 +11637,7 @@ program.command("encryption:retire").description("Remove an old key from an Encr
11636
11637
  try {
11637
11638
  const globalOptions = program.opts();
11638
11639
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
11639
- const { encryptionRetireCommand } = await import("./encryption-7m1mKcRy.mjs");
11640
+ const { encryptionRetireCommand } = await import("./encryption-DcrxWl1s.mjs");
11640
11641
  await encryptionRetireCommand(construct, key, options);
11641
11642
  } catch (error) {
11642
11643
  console.error(formatError(error));
@@ -11679,7 +11680,7 @@ program.command("secrets:reconcile").description("Backfill missing custom secret
11679
11680
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
11680
11681
  const { loadWorkspaceConfig } = await import("./config.mjs");
11681
11682
  const { reconcileMissingSecrets } = await import("./reconcile--I7V4Klj.mjs");
11682
- const { secretsStoreFor } = await import("./state-DClnPZt5.mjs").then((n) => n.Ft);
11683
+ const { secretsStoreFor } = await import("./state-BJFherj1.mjs").then((n) => n.Lt);
11683
11684
  const { workspace } = await loadWorkspaceConfig();
11684
11685
  const stage = options.stage ?? workspace.stages.local;
11685
11686
  const store = await secretsStoreFor(workspace, stage);
@@ -11688,7 +11689,7 @@ program.command("secrets:reconcile").description("Backfill missing custom secret
11688
11689
  console.error(`No secrets found for stage "${stage}". Run "gkm secrets:init --stage ${stage}" first.`);
11689
11690
  process.exit(1);
11690
11691
  }
11691
- const { derivedContainers } = await import("./state-DClnPZt5.mjs").then((n) => n.K);
11692
+ const { derivedContainers } = await import("./state-BJFherj1.mjs").then((n) => n.J);
11692
11693
  const result = reconcileMissingSecrets(secrets, workspace, await derivedContainers(workspace, stage));
11693
11694
  if (!result) {
11694
11695
  console.log(`\n✓ Secrets for stage "${stage}" are up-to-date`);
@@ -11703,7 +11704,7 @@ program.command("secrets:reconcile").description("Backfill missing custom secret
11703
11704
  }
11704
11705
  });
11705
11706
  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 <list>", "Server targets: run MinIO and/or Mailpit (minio,mailpit) for mail and buckets the stage's secrets don't configure. Not production-grade").action(async (options) => {
11706
- const { deployCli } = await import("./cli-ij8Lwlww.mjs");
11707
+ const { deployCli } = await import("./cli-D1arS0p1.mjs");
11707
11708
  const globalOptions = program.opts();
11708
11709
  const code = await deployCli({
11709
11710
  cwd: resolve(globalOptions.cwd ?? process.cwd()),
@@ -11720,7 +11721,7 @@ program.command("deploy").description("Deploy a stage through its target").optio
11720
11721
  });
11721
11722
  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) => {
11722
11723
  try {
11723
- const { rollbackStage } = await import("./rollback-DDfaqv7P.mjs").then((n) => n.a);
11724
+ const { rollbackStage } = await import("./rollback-Bk91csFg.mjs").then((n) => n.a);
11724
11725
  const { terminalCredentials } = await import("./terminal-C6TBo_SA.mjs");
11725
11726
  const globalOptions = program.opts();
11726
11727
  await rollbackStage({
@@ -11756,7 +11757,7 @@ program.command("deploy:github").description("Let GitHub Actions deploy a stage:
11756
11757
  try {
11757
11758
  const globalOptions = program.opts();
11758
11759
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
11759
- const { deployGithubCommand } = await import("./github-DtymyOcH.mjs");
11760
+ const { deployGithubCommand } = await import("./github-CqYOP8cI.mjs");
11760
11761
  await deployGithubCommand(options);
11761
11762
  } catch (error) {
11762
11763
  console.error(formatError(error));