rampway 0.5.8 → 0.5.10

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 (55) hide show
  1. package/README.md +23 -0
  2. package/build/src/cli.d.ts.map +1 -1
  3. package/build/src/cli.js +13 -0
  4. package/build/src/cli.js.map +1 -1
  5. package/build/src/commands/deploy.d.ts.map +1 -1
  6. package/build/src/commands/deploy.js +2 -0
  7. package/build/src/commands/deploy.js.map +1 -1
  8. package/build/src/commands/runtime-boot.d.ts.map +1 -1
  9. package/build/src/commands/runtime-boot.js +38 -3
  10. package/build/src/commands/runtime-boot.js.map +1 -1
  11. package/build/src/config/validate-config.d.ts.map +1 -1
  12. package/build/src/config/validate-config.js +13 -0
  13. package/build/src/config/validate-config.js.map +1 -1
  14. package/build/src/core/deploy-runner.d.ts +7 -5
  15. package/build/src/core/deploy-runner.d.ts.map +1 -1
  16. package/build/src/core/deploy-runner.js +57 -11
  17. package/build/src/core/deploy-runner.js.map +1 -1
  18. package/build/src/core/owned-process-tree.js +83 -2
  19. package/build/src/core/owned-process-tree.js.map +1 -1
  20. package/build/src/core/paths.d.ts.map +1 -1
  21. package/build/src/core/paths.js +1 -0
  22. package/build/src/core/paths.js.map +1 -1
  23. package/build/src/core/runtime-boot-state.d.ts +5 -0
  24. package/build/src/core/runtime-boot-state.d.ts.map +1 -1
  25. package/build/src/core/runtime-boot-state.js +11 -1
  26. package/build/src/core/runtime-boot-state.js.map +1 -1
  27. package/build/src/core/runtime-owner-handoff.d.ts +22 -0
  28. package/build/src/core/runtime-owner-handoff.d.ts.map +1 -0
  29. package/build/src/core/runtime-owner-handoff.js +80 -0
  30. package/build/src/core/runtime-owner-handoff.js.map +1 -0
  31. package/build/src/runtimes/rollbridge-runtime.d.ts +50 -4
  32. package/build/src/runtimes/rollbridge-runtime.d.ts.map +1 -1
  33. package/build/src/runtimes/rollbridge-runtime.js +147 -8
  34. package/build/src/runtimes/rollbridge-runtime.js.map +1 -1
  35. package/build/src/types.d.ts +31 -0
  36. package/build/src/types.d.ts.map +1 -1
  37. package/build/src/velocious/client.d.ts +6 -4
  38. package/build/src/velocious/client.d.ts.map +1 -1
  39. package/build/src/velocious/client.js +6 -6
  40. package/build/src/velocious/client.js.map +1 -1
  41. package/build/src/velocious/control-plane.d.ts +8 -2
  42. package/build/src/velocious/control-plane.d.ts.map +1 -1
  43. package/build/src/velocious/control-plane.js +24 -12
  44. package/build/src/velocious/control-plane.js.map +1 -1
  45. package/build/src/velocious/executor.d.ts +1 -0
  46. package/build/src/velocious/executor.d.ts.map +1 -1
  47. package/build/src/velocious/executor.js +3 -2
  48. package/build/src/velocious/executor.js.map +1 -1
  49. package/build/src/velocious/run-store.d.ts +9 -3
  50. package/build/src/velocious/run-store.d.ts.map +1 -1
  51. package/build/src/velocious/run-store.js +21 -5
  52. package/build/src/velocious/run-store.js.map +1 -1
  53. package/docs/config-reference.md +34 -6
  54. package/docs/velocious-deployment-api.md +4 -1
  55. package/package.json +1 -1
package/README.md CHANGED
@@ -26,6 +26,14 @@ This initial scaffold includes:
26
26
 
27
27
  SSH transport command execution supports both local-copy and remote-git deployments. `remote-git` prepares each release checkout on the target host, so the target needs `git` and access to the configured repository.
28
28
 
29
+ Guard a recovery deploy against an unexpectedly changed active release with:
30
+
31
+ ```bash
32
+ rampway production deploy CANDIDATE_FULL_SHA --expected-active-revision ACTIVE_FULL_SHA
33
+ ```
34
+
35
+ Both values must be full 40-character hexadecimal commit SHAs. The existing `before_deploy` and `before_lock` hooks still run before lock acquisition and remain outside the guard's protection. After Rampway acquires the normal deploy lock, its first locked operation strictly resolves `current` and reads that release's `REVISION`. A missing, unsafe, malformed, or mismatched current release fails before `after_lock` and all candidate/source, task, migration, backfill, runtime, and publication work. This option has no bootstrap semantics, and `--force` cannot bypass it. Deploys without the option retain the ordinary lifecycle.
36
+
29
37
  Full config reference: [docs/config-reference.md](docs/config-reference.md)
30
38
  Migrating from Capistrano: [docs/migration-from-capistrano.md](docs/migration-from-capistrano.md)
31
39
 
@@ -227,6 +235,21 @@ The command never deploys or selects a fallback release. Missing, corrupt,
227
235
  stale, mismatched, or config-less state fails closed. A service manager should
228
236
  supervise `rampway`; Rampway does not supervise Rollbridge.
229
237
 
238
+ For a persistent external foreground owner, opt in with
239
+ `runtime.externalOwner: {type: "foreground"}` (Rollbridge 0.1.18+). Optional
240
+ `handoffTimeoutMs` and `pollIntervalMs` positive integers bound the transition.
241
+ This mode requires an explicit `runtime.config` so Rampway can persist stable
242
+ foreground boot material before any ownership transition.
243
+ Each deploy or rollback must establish the newly accepted boot attestation. If
244
+ the current foreground owner already reports that exact identity, it remains
245
+ untouched; otherwise, after acceptance and persistence Rampway binds a
246
+ handoff request to the active deploy lock, relinquishes only its temporary
247
+ detached daemon or the prior accepted foreground owner, and waits for the external owner to return with the exact
248
+ release, runtime, and accepted boot digest attestation. Configure the service
249
+ manager with `Restart=always` and a bounded restart delay so early socket
250
+ collisions retry and converge; `Restart=on-failure` cannot recover a clean old
251
+ owner exit. Rampway does not invoke the service manager.
252
+
230
253
  `npmInstall`, `pnpmInstall`, `yarnInstall`, `bunInstall`, and `nodePackageInstall` return normal task entries with the right install command for common Node package managers. They accept `cwd`, `env`, `optional`, `production`, and lockfile options such as `clean: false` for `npm install` instead of `npm ci`, or `frozenLockfile: false` for package managers that need explicit CI lockfile opt-outs (`--no-frozen-lockfile` for pnpm and `--no-immutable` for Yarn). Yarn production installs are intentionally not guessed; use a custom task command when that project needs a specific Yarn workspace/plugin flow.
231
254
 
232
255
  `checkExpoWebArtifacts` returns a task entry that fails if the Expo web build directory does not contain an `index.html`. It accepts `dir` (default `"dist"`), `cwd`, and `optional`.
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli.js"],"names":[],"mappings":";AAsFA;;;;;;GAMG;AACH,0CANa,CAAC,YACH;IAAC,KAAK,EAAE,OAAO,QAAQ,EAAE,WAAW,CAAA;CAAC,YACrC,MAAM,OAAO,CAAC,CAAC,CAAC,mBAChB;IAAC,UAAU,CAAC,EAAE,OAAO,sBAAsB,CAAA;CAAC,GAC1C,OAAO,CAAC,CAAC,CAAC,CAmCtB;uCA7GoC,iCAAiC;AAwCtE;;;GAGG;AACH,2BAHW,MAAM,EAAE,GACN,OAAO,CAAC,IAAI,CAAC,CAyBzB;AAyED;;;;;;;GAOG;AACH,wCAHW,MAAM,EAAE,GACN;IAAC,OAAO,EAAE,MAAM,GAAC,SAAS,CAAC;IAAC,SAAS,EAAE,MAAM,GAAC,SAAS,CAAC;IAAC,OAAO,EAAE,OAAO,QAAQ,EAAE,cAAc,CAAA;CAAC,CAgC9G"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/cli.js"],"names":[],"mappings":";AAsFA;;;;;;GAMG;AACH,0CANa,CAAC,YACH;IAAC,KAAK,EAAE,OAAO,QAAQ,EAAE,WAAW,CAAA;CAAC,YACrC,MAAM,OAAO,CAAC,CAAC,CAAC,mBAChB;IAAC,UAAU,CAAC,EAAE,OAAO,sBAAsB,CAAA;CAAC,GAC1C,OAAO,CAAC,CAAC,CAAC,CAmCtB;uCA7GoC,iCAAiC;AAwCtE;;;GAGG;AACH,2BAHW,MAAM,EAAE,GACN,OAAO,CAAC,IAAI,CAAC,CAyBzB;AAyED;;;;;;;GAOG;AACH,wCAHW,MAAM,EAAE,GACN;IAAC,OAAO,EAAE,MAAM,GAAC,SAAS,CAAC;IAAC,SAAS,EAAE,MAAM,GAAC,SAAS,CAAC;IAAC,OAAO,EAAE,OAAO,QAAQ,EAAE,cAAc,CAAA;CAAC,CAqC9G"}
package/build/src/cli.js CHANGED
@@ -179,11 +179,19 @@ function resolveInvocation(argv) {
179
179
  const { positional, options } = parseArgs(argv);
180
180
  // Command-only form: `rampway init`.
181
181
  if (STAGELESS_COMMANDS.has(positional[0])) {
182
+ if (options.expectedActiveRevision !== undefined)
183
+ throw new Error("--expected-active-revision is only supported for deploy.");
182
184
  if (positional.length !== 1)
183
185
  throw new Error(`Command '${positional[0]}' does not accept positional operands.`);
184
186
  return { command: positional[0], stageName: undefined, options };
185
187
  }
186
188
  const [stageName, command, ...operands] = positional;
189
+ if (options.expectedActiveRevision !== undefined) {
190
+ if (command !== "deploy")
191
+ throw new Error("--expected-active-revision is only supported for deploy.");
192
+ if (typeof options.expectedActiveRevision !== "string" || !/^[0-9a-f]{40}$/iu.test(options.expectedActiveRevision))
193
+ throw new Error("--expected-active-revision requires a canonical full 40-character hexadecimal SHA.");
194
+ }
187
195
  if (command === "deploy" || command === "plan") {
188
196
  if (operands.length > 1)
189
197
  throw new Error(`Command '${command}' accepts at most one revision.`);
@@ -222,11 +230,16 @@ function parseArgs(argv) {
222
230
  for (let index = 0; index < argv.length; index += 1) {
223
231
  const arg = argv[index];
224
232
  if (arg.startsWith("--")) {
233
+ if (arg.startsWith("--expected-active-revision=")) {
234
+ throw new Error("--expected-active-revision does not support '=' syntax; pass its full SHA as a separate argument.");
235
+ }
225
236
  const name = arg.slice(2);
226
237
  if (BOOLEAN_FLAGS.includes(name))
227
238
  options[toCamel(name)] = true;
228
239
  else {
229
240
  index += 1;
241
+ if (name === "expected-active-revision" && (argv[index] === undefined || argv[index].startsWith("--")))
242
+ throw new Error("--expected-active-revision requires a canonical full 40-character hexadecimal SHA.");
230
243
  options[toCamel(name)] = argv[index];
231
244
  }
232
245
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/cli.js"],"names":[],"mappings":";AACA,OAAO,EAAC,YAAY,EAAC,MAAM,SAAS,CAAA;AACpC,OAAO,EAAC,aAAa,EAAC,MAAM,UAAU,CAAA;AAEtC,OAAO,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAC,WAAW,EAAC,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAC,aAAa,EAAC,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAC,aAAa,EAAC,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAC,eAAe,EAAE,aAAa,EAAC,MAAM,wBAAwB,CAAA;AACrE,OAAO,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAC,yBAAyB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,qBAAqB,EAAC,MAAM,0BAA0B,CAAA;AACrO,OAAO,EAAC,YAAY,EAAC,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAC,WAAW,EAAC,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAC,WAAW,EAAC,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAA;AAC7D,OAAO,EAAC,0BAA0B,EAAC,MAAM,6BAA6B,CAAA;AACtE,OAAO,EAAC,0BAA0B,EAAE,qBAAqB,EAAC,MAAM,uBAAuB,CAAA;AACvF,OAAO,EAAC,sBAAsB,EAAC,MAAM,iCAAiC,CAAA;AACtE,OAAO,EAAC,yBAAyB,EAAC,MAAM,yCAAyC,CAAA;AACjF,OAAO,EAAC,aAAa,EAAC,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAC,sBAAsB,EAAC,MAAM,8BAA8B,CAAA;AAEnE,uCAAuC;AACvC,MAAM,QAAQ,GAAG;IACf,IAAI,EAAE,WAAW;IACjB,QAAQ,EAAE,eAAe;IACzB,IAAI,EAAE,WAAW;IACjB,MAAM,EAAE,aAAa;IACrB,QAAQ,EAAE,eAAe;IACzB,MAAM,EAAE,aAAa;IACrB,IAAI,EAAE,WAAW;IACjB,KAAK,EAAE,YAAY;IACnB,QAAQ,EAAE,eAAe;IACzB,qBAAqB,EAAE,yBAAyB;IAChD,mBAAmB,EAAE,uBAAuB;IAC5C,iBAAiB,EAAE,qBAAqB;IACxC,oBAAoB,EAAE,wBAAwB;IAC9C,kBAAkB,EAAE,sBAAsB;IAC1C,gBAAgB,EAAE,oBAAoB;IACtC,cAAc,EAAE,kBAAkB;IAClC,iBAAiB,EAAE,qBAAqB;IACxC,cAAc,EAAE,kBAAkB;IAClC,MAAM,EAAE,aAAa;CACtB,CAAA;AAED;;;;GAIG;AACH,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;AAE5C,uBAAuB;AACvB,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,mBAAmB,CAAC,CAAA;AAE7F,MAAM,KAAK,GAAG,8HAA8H,CAAA;AAE5I;;;GAGG;AACH,KAAK,UAAU,IAAI,CAAC,IAAI;IACtB,MAAM,EAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAC,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAE7D,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,CAAA;IACpC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,OAAO,iBAAiB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACvH,IAAI,CAAC,SAAS,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,OAAO,sDAAsD,OAAO,GAAG,CAAC,CAAA;IAE5K,IAAI,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QACpC,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAC,SAAS,EAAE,OAAO,EAAC,CAAC,CAAA;QAC7C,OAAM;IACR,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAC,SAAS,EAAE,OAAO,EAAC,CAAC,CAAA;QAC7C,OAAM;IACR,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC,SAAS,CAAC,CAAC,CAAA;IACxF,IAAI,OAAO,KAAK,cAAc,EAAE,CAAC;QAC/B,MAAM,gBAAgB,GAAG,KAAK,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,0BAA0B,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;QAChI,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAC,SAAS,EAAE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAC,CAAC,CAAA;QAC/E,OAAM;IACR,CAAC;IACD,MAAM,cAAc,GAAG,oEAAoE,CAAC,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,0BAA0B,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC,CAAA;IAC7M,MAAM,yBAAyB,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAC,SAAS,EAAE,OAAO,EAAE,cAAc,EAAC,CAAC,CAAC,CAAA;AAC1G,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAC,UAAU,GAAG,sBAAsB,EAAC,GAAG,EAAE;IAC5G,MAAM,EAAC,KAAK,EAAC,GAAG,QAAQ,CAAA;IACxB,MAAM,WAAW,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAA;IAC5F,IAAI,CAAC,WAAW;QAAE,OAAO,MAAM,QAAQ,EAAE,CAAA;IACzC,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAA;IAC3C,MAAM,cAAc,GAAG,sBAAsB,EAAE,CAAA;IAC/C,sCAAsC;IACtC,IAAI,cAAc,CAAA;IAClB,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,cAAc,KAAK,CAAC,KAAK,IAAI,EAAE;YAC7B,IAAI,SAAS,CAAA;YACb,IAAI,CAAC;gBAAC,MAAM,cAAc,CAAC,KAAK,EAAE,CAAA;YAAC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAAC,SAAS,GAAG,KAAK,CAAA;YAAC,CAAC;YACxE,IAAI,CAAC;gBAAC,MAAM,KAAK,CAAC,KAAK,EAAE,CAAA;YAAC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAAC,IAAI,CAAC,SAAS;oBAAE,SAAS,GAAG,KAAK,CAAA;YAAC,CAAC;YAC/E,IAAI,SAAS;gBAAE,MAAM,SAAS,CAAA;QAChC,CAAC,CAAC,EAAE,CAAA;QACJ,OAAO,cAAc,CAAA;IACvB,CAAC,CAAA;IACD,MAAM,oBAAoB,GAAG,+BAA+B,CAAC,OAAO,CAAC,CAAA;IACrE,IAAI,YAAY,CAAA;IAChB,IAAI,CAAC;QACH,OAAO,MAAM,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,yBAAyB,CAAC,KAAK,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAA;IACvF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,YAAY,GAAG,KAAK,CAAA;QACpB,MAAM,KAAK,CAAA;IACb,CAAC;YAAS,CAAC;QACT,IAAI,CAAC;YACH,MAAM,OAAO,EAAE,CAAA;QACjB,CAAC;QAAC,OAAO,YAAY,EAAE,CAAC;YACtB,IAAI,CAAC,YAAY;gBAAE,MAAM,YAAY,CAAA;QACvC,CAAC;gBAAS,CAAC;YACT,oBAAoB,EAAE,CAAA;QACxB,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,+BAA+B,CAAC,KAAK;IAC5C,MAAM,OAAO,GAAG,oBAAoB,CAAC,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAA;IACtE,IAAI,WAAW,GAAG,KAAK,CAAA;IACvB,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAA;IAC1B,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,QAAQ;YAAE,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACnF,CAAC,CAAA;IACD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,IAAI,WAAW;gBAAE,OAAM;YACvB,WAAW,GAAG,IAAI,CAAA;YAClB,KAAK,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;gBACxC,MAAM,EAAE,CAAA;gBACR,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;YACnC,CAAC,CAAC,CAAA;QACJ,CAAC,CAAA;QACD,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAC7B,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC7B,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,iBAAiB,CAAC,IAAI;IAC7B,MAAM,EAAC,UAAU,EAAE,OAAO,EAAC,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;IAE7C,qCAAqC;IACrC,IAAI,kBAAkB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1C,IAAI,OAAO,CAAC,sBAAsB,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAA;QAC7H,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,YAAY,UAAU,CAAC,CAAC,CAAC,wCAAwC,CAAC,CAAA;QAC/G,OAAO,EAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAC,CAAA;IAChE,CAAC;IAED,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC,GAAG,UAAU,CAAA;IACpD,IAAI,OAAO,CAAC,sBAAsB,KAAK,SAAS,EAAE,CAAC;QACjD,IAAI,OAAO,KAAK,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAA;QACrG,IAAI,OAAO,OAAO,CAAC,sBAAsB,KAAK,QAAQ,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,oFAAoF,CAAC,CAAA;IAC3N,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QAC/C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,YAAY,OAAO,iCAAiC,CAAC,CAAA;QAC9F,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;YAC9B,IAAI,OAAO,KAAK,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtD,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAA;YAC1E,CAAC;YACD,gEAAgE;YAChE,wEAAwE;YACxE,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;QAChC,CAAC;IACH,CAAC;SAAM,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QAC9B,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAA;QAC5F,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAChH,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAA;QAC/F,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;QACnH,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;IAC5B,CAAC;SAAM,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,YAAY,OAAO,wCAAwC,CAAC,CAAA;IAC9E,CAAC;IACD,OAAO,EAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAC,CAAA;AACtC,CAAC;AAED;;;GAGG;AACH,SAAS,SAAS,CAAC,IAAI;IACrB,MAAM,UAAU,GAAG,EAAE,CAAA;IACrB,uDAAuD;IACvD,MAAM,OAAO,GAAG,EAAE,CAAA;IAClB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACpD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAA;QACvB,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACzB,IAAI,GAAG,CAAC,UAAU,CAAC,6BAA6B,CAAC,EAAE,CAAC;gBAClD,MAAM,IAAI,KAAK,CAAC,mGAAmG,CAAC,CAAA;YACtH,CAAC;YACD,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YACzB,IAAI,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAA;iBAC1D,CAAC;gBACJ,KAAK,IAAI,CAAC,CAAA;gBACV,IAAI,IAAI,KAAK,0BAA0B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,oFAAoF,CAAC,CAAA;gBAC7M,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAA;YACtC,CAAC;QACH,CAAC;;YAAM,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC7B,CAAC;IACD,OAAO,EAAC,UAAU,EAAE,OAAO,EAAE,8CAA8C,CAAC,CAAC,OAAO,CAAC,EAAC,CAAA;AACxF,CAAC;AAED;;;GAGG;AACH,SAAS,OAAO,CAAC,IAAI;IACnB,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAA;AACvE,CAAC;AAED;;;GAGG;AACH,SAAS,OAAO,CAAC,IAAI;IACnB,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;AACrE,CAAC;AAED,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;AAC9F,IAAI,WAAW,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,WAAW,EAAE,CAAC;IACnD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;QACxC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAC5B,IAAI,KAAK,CAAC,MAAM;YAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;;YACpD,OAAO,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAA;IAC7C,CAAC,CAAC,CAAA;AACJ,CAAC;AAED,OAAO,EAAC,IAAI,EAAE,iBAAiB,EAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../../src/commands/deploy.js"],"names":[],"mappings":"AASA;;;GAGG;AACH,sEAHW,OAAO,QAAQ,EAAE,WAAW,GAC1B,OAAO,CAAC,IAAI,CAAC,CAoEzB"}
1
+ {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../../src/commands/deploy.js"],"names":[],"mappings":"AASA;;;GAGG;AACH,sEAHW,OAAO,QAAQ,EAAE,WAAW,GAC1B,OAAO,CAAC,IAAI,CAAC,CAsEzB"}
@@ -35,12 +35,14 @@ export async function deployCommand({ stageName, options, commandContext = defau
35
35
  branch: options.branch ?? stage.branch,
36
36
  dryRun: options.dryRun,
37
37
  force: options.force,
38
+ expectedActiveRevision: options.expectedActiveRevision,
38
39
  reporter
39
40
  });
40
41
  const controlPlaneDeploy = () => deployViaControlPlane({
41
42
  stage,
42
43
  httpConfig: /** @type {import('#types').HttpTransportConfig} */ (stage.http),
43
44
  revision: options.revision ?? stage.revision,
45
+ expectedActiveRevision: options.expectedActiveRevision,
44
46
  reporter
45
47
  });
46
48
  let report;
@@ -1 +1 @@
1
- {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../../src/commands/deploy.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../../src/commands/deploy.js"],"names":[],"mappings":"AAAA,YAAY;AACZ,OAAO,EAAC,cAAc,IAAI,qBAAqB,EAAC,MAAM,cAAc,CAAA;AACpE,OAAO,EAAC,MAAM,EAAC,MAAM,0BAA0B,CAAA;AAC/C,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAA;AACnD,OAAO,EAAC,aAAa,EAAE,YAAY,EAAC,MAAM,qBAAqB,CAAA;AAC/D,OAAO,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,wBAAwB,CAAA;AAEhF,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAA;AAE1D;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,EAAC,SAAS,EAAE,OAAO,EAAE,cAAc,GAAG,qBAAqB,EAAC;IAC9F,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,CAAA;IAChE,MAAM,eAAe,GAAG,4BAA4B,CAAC,OAAO,CAAC,CAAA;IAC7D,MAAM,EAAC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAC,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE,SAAS,EAAE,EAAC,QAAQ,EAAC,CAAC,CAAA;IACvF,IAAI,eAAe,KAAK,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,mFAAmF,CAAC,CAAA;IACzH,CAAC;IACD,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAC,GAAG,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAC,CAAC,CAAC,CAAC,KAAK,CAAA;IACnG,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;IAElD,gFAAgF;IAChF,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,EAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAC,CAAC,CAAA;IACxF,IAAI,SAAS,EAAE,CAAC;QACd,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;QAC1C,6EAA6E;QAC7E,8CAA8C;QAC9C,QAAQ,CAAC,IAAI,CAAC,4BAA4B,SAAS,CAAC,IAAI,EAAE,CAAC,CAAA;IAC7D,CAAC;IAED,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC;YAChC,SAAS;YACT,KAAK,EAAE,aAAa;YACpB,UAAU;YACV,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM;YACtC,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;YACtD,QAAQ;SACT,CAAC,CAAA;QACF,MAAM,kBAAkB,GAAG,GAAG,EAAE,CAAC,qBAAqB,CAAC;YACrD,KAAK;YACL,UAAU,EAAE,mDAAmD,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;YAC5E,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ;YAC5C,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;YACtD,QAAQ;SACT,CAAC,CAAA;QAEF,IAAI,MAAM,CAAA;QACV,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,MAAM,GAAG,MAAM,YAAY,EAAE,CAAA;QAC/B,CAAC;aAAM,IAAI,eAAe,KAAK,MAAM,EAAE,CAAC;YACtC,MAAM,GAAG,MAAM,kBAAkB,EAAE,CAAA;QACrC,CAAC;aAAM,IAAI,eAAe,KAAK,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;YACpD,IAAI,CAAC;gBACH,MAAM,GAAG,MAAM,kBAAkB,EAAE,CAAA;YACrC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;oBAAE,MAAM,KAAK,CAAA;gBAC3C,QAAQ,CAAC,IAAI,CAAC,mCAAmC,CAAA,oBAAqB,CAAC,KAAK,CAAC,CAAC,OAAO,sBAAsB,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC,CAAA;gBACvJ,MAAM,GAAG,MAAM,YAAY,EAAE,CAAA;YAC/B,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,MAAM,YAAY,EAAE,CAAA;QAC/B,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,IAAI,MAAM,IAAI,MAAM,EAAE,CAAC;YACrC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;YAC5C,OAAM;QACR,CAAC;QAED,YAAY,CAAC,4CAA4C,CAAC,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,CAAA;IACtF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,SAAS;YAAE,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAA,oBAAqB,CAAC,KAAK,CAAC,CAAC,OAAO,IAAI,CAAC,CAAA;QACnG,MAAM,KAAK,CAAA;IACb,CAAC;YAAS,CAAC;QACT,IAAI,SAAS;YAAE,MAAM,SAAS,CAAC,KAAK,EAAE,CAAA;IACxC,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,4BAA4B,CAAC,OAAO;IAC3C,MAAM,MAAM,GAAG,sBAAsB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IACxD,IAAI,CAAC,OAAO,CAAC,eAAe;QAAE,OAAO,MAAM,CAAA;IAC3C,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,gFAAgF,CAAC,CAAA;IACnG,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;GAGG;AACH,SAAS,sBAAsB,CAAC,UAAU;IACxC,MAAM,MAAM,GAAG,UAAU,IAAI,MAAM,CAAA;IACnC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,wBAAwB,MAAM,iBAAiB,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC7G,CAAC;IACD,OAAO,kCAAkC,CAAC,CAAC,MAAM,CAAC,CAAA;AACpD,CAAC;AAED;;;GAGG;AACH,SAAS,cAAc,CAAC,SAAS;IAC/B,OAAO,SAAS,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAA;AACnD,CAAC;AAED;;;;;;GAMG;AACH,SAAS,YAAY,CAAC,MAAM,EAAE,OAAO;IACnC,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;IACnG,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,KAAK,aAAa,MAAM,CAAC,QAAQ,eAAe,MAAM,CAAC,SAAS,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,OAAO,GAAG,EAAE,CAAC,CAAA;IAC3K,IAAI,MAAM,CAAC,eAAe;QAAE,OAAO,CAAC,GAAG,CAAC,uBAAuB,MAAM,CAAC,eAAe,EAAE,CAAC,CAAA;IACxF,OAAO,CAAC,GAAG,CAAC,oBAAoB,MAAM,CAAC,YAAY,IAAI,KAAK,EAAE,CAAC,CAAA;IAC/D,MAAM,OAAO,GAAG,MAAM,CAAC,cAAc,IAAI,EAAE,CAAA;IAC3C,OAAO,CAAC,GAAG,CAAC,iBAAiB,OAAO,CAAC,MAAM,eAAe,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAA;IAC5F,IAAI,OAAO;QAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,OAAO,EAAE,CAAC,CAAA;AACtD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-boot.d.ts","sourceRoot":"","sources":["../../../src/commands/runtime-boot.js"],"names":[],"mappings":"AAUA,0EAA0E;AAC1E,2EADY,OAAO,QAAQ,EAAE,WAAW,GAAiB,OAAO,CAAC,IAAI,CAAC,CAuCrE"}
1
+ {"version":3,"file":"runtime-boot.d.ts","sourceRoot":"","sources":["../../../src/commands/runtime-boot.js"],"names":[],"mappings":"AAWA,0EAA0E;AAC1E,2EADY,OAAO,QAAQ,EAAE,WAAW,GAAiB,OAAO,CAAC,IAAI,CAAC,CA4DrE"}
@@ -7,6 +7,7 @@ import { readRuntimeBootState } from "../core/runtime-boot-state.js";
7
7
  import { requireCurrentRelease, readReleaseRevision } from "../core/release-manager.js";
8
8
  import { deployPaths } from "../core/paths.js";
9
9
  import { acquireLock, releaseLock } from "../core/locks.js";
10
+ import { readRuntimeOwnerHandoff, removeRuntimeOwnerHandoff } from "../core/runtime-owner-handoff.js";
10
11
  /** @param {import('#types').CommandArgs} args @returns {Promise<void>} */
11
12
  export async function runtimeBootCommand({ stageName, options, commandContext = defaultRuntimeBootContext }) {
12
13
  const unsupported = Object.keys(options).filter(option => option !== "config");
@@ -20,15 +21,39 @@ export async function runtimeBootCommand({ stageName, options, commandContext =
20
21
  const runtime = context.runtime ?? runtimeFor(stage);
21
22
  if (typeof runtime.foregroundBoot !== "function")
22
23
  throw new Error(`Runtime '${stage.runtime.type}' does not support runtime-boot.`);
23
- const lock = await acquireLock(transport, stage);
24
+ /** @type {import('#types').LockInfo|undefined} */
25
+ let lock;
26
+ let crossingHandoff = false;
27
+ try {
28
+ lock = await acquireLock(transport, stage);
29
+ }
30
+ catch (lockError) {
31
+ const request = await readRuntimeOwnerHandoff(transport, stage);
32
+ const lockPath = deployPaths(stage).lockPath;
33
+ if (!request || !await transport.exists(lockPath))
34
+ throw lockError;
35
+ let owner;
36
+ try {
37
+ owner = JSON.parse(await transport.readFile(lockPath));
38
+ }
39
+ catch {
40
+ throw lockError;
41
+ }
42
+ if (owner.id !== request.lockId)
43
+ throw lockError;
44
+ crossingHandoff = true;
45
+ }
24
46
  /** @type {Promise<void>|undefined} */
25
47
  let releasePromise;
26
48
  const releaseBootLock = () => {
27
- releasePromise ??= releaseLock(transport, stage, lock);
49
+ releasePromise ??= crossingHandoff ? Promise.resolve() : releaseLock(transport, stage, /** @type {import('#types').LockInfo} */ (lock));
28
50
  return releasePromise;
29
51
  };
30
52
  try {
31
53
  const accepted = await readRuntimeBootState(transport, stage);
54
+ const request = await readRuntimeOwnerHandoff(transport, stage);
55
+ if (crossingHandoff && (!request || request.bootDigest !== accepted.integrityDigest || request.runtimeType !== accepted.runtimeType || request.releaseId !== accepted.releaseId || request.revision !== accepted.revision || request.releasePath !== accepted.releasePath))
56
+ throw new Error("Runtime owner handoff request does not match the exact accepted boot state.");
32
57
  if (accepted.runtimeType !== stage.runtime.type || runtime.type !== accepted.runtimeType)
33
58
  throw new Error(`Accepted runtime type '${accepted.runtimeType}' does not match configured runtime '${stage.runtime.type}'.`);
34
59
  const current = await requireCurrentRelease(transport, stage);
@@ -58,7 +83,17 @@ export async function runtimeBootCommand({ stageName, options, commandContext =
58
83
  throw new Error(`Accepted runtime config resolves outside Rampway's stable runtime storage.`);
59
84
  if (runtime.verifyForegroundBootMaterial)
60
85
  await runtime.verifyForegroundBootMaterial(transport, accepted);
61
- await runtime.foregroundBoot({ releasePath: accepted.releasePath, releaseId: accepted.releaseId, revision: accepted.revision, configPath: accepted.configPath, configIdentity: accepted.configIdentity, onStarted: releaseBootLock });
86
+ if (crossingHandoff) {
87
+ const currentOwner = JSON.parse(await transport.readFile(deployPaths(stage).lockPath));
88
+ if (currentOwner.id !== /** @type {import('#types').RuntimeOwnerHandoff} */ (request).lockId)
89
+ throw new Error("Runtime owner handoff deploy-lock ownership changed before spawn.");
90
+ }
91
+ const onStarted = async () => {
92
+ if (!crossingHandoff && request && request.bootDigest === accepted.integrityDigest && request.runtimeType === accepted.runtimeType && request.releaseId === accepted.releaseId && request.revision === accepted.revision && request.releasePath === accepted.releasePath)
93
+ await removeRuntimeOwnerHandoff(transport, stage, request);
94
+ await releaseBootLock();
95
+ };
96
+ await runtime.foregroundBoot({ releasePath: accepted.releasePath, releaseId: accepted.releaseId, revision: accepted.revision, configPath: accepted.configPath, configIdentity: accepted.configIdentity, bootAttestation: accepted.integrityDigest, onStarted });
62
97
  }
63
98
  finally {
64
99
  await releaseBootLock();
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-boot.js","sourceRoot":"","sources":["../../../src/commands/runtime-boot.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime-boot.js","sourceRoot":"","sources":["../../../src/commands/runtime-boot.js"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate-config.d.ts","sourceRoot":"","sources":["../../../src/config/validate-config.js"],"names":[],"mappings":"AAWA;;;;GAIG;AACH,uCAJW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,aACvB,MAAM,GACJ,OAAO,QAAQ,EAAE,WAAW,CAcxC;AA8ND;;;GAGG;AACH,iDAHW,OAAO,GACL,OAAO,CAInB"}
1
+ {"version":3,"file":"validate-config.d.ts","sourceRoot":"","sources":["../../../src/config/validate-config.js"],"names":[],"mappings":"AAWA;;;;GAIG;AACH,uCAJW,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,aACvB,MAAM,GACJ,OAAO,QAAQ,EAAE,WAAW,CAcxC;AAwOD;;;GAGG;AACH,iDAHW,OAAO,GACL,OAAO,CAInB"}
@@ -185,6 +185,19 @@ function validateRollbridgeRuntime(configured, errors) {
185
185
  if (configured.daemonStartTimeoutMs !== undefined && (typeof configured.daemonStartTimeoutMs !== "number" || !Number.isInteger(configured.daemonStartTimeoutMs) || configured.daemonStartTimeoutMs <= 0)) {
186
186
  errors.push("stage.runtime.daemonStartTimeoutMs must be a positive integer");
187
187
  }
188
+ if (configured.externalOwner !== undefined) {
189
+ if (!isRecord(configured.externalOwner) || configured.externalOwner.type !== "foreground")
190
+ errors.push("stage.runtime.externalOwner must be {type: \"foreground\"} with optional bounded timing");
191
+ else {
192
+ if (typeof configured.config !== "string" || !configured.config)
193
+ errors.push("stage.runtime.externalOwner requires stage.runtime.config");
194
+ for (const field of ["handoffTimeoutMs", "pollIntervalMs"]) {
195
+ const value = configured.externalOwner[field];
196
+ if (value !== undefined && (!Number.isInteger(value) || Number(value) <= 0))
197
+ errors.push(`stage.runtime.externalOwner.${field} must be a positive integer`);
198
+ }
199
+ }
200
+ }
188
201
  if (configured.env !== undefined && !isRecord(configured.env)) {
189
202
  errors.push("stage.runtime.env must be an object");
190
203
  }
@@ -1 +1 @@
1
- {"version":3,"file":"validate-config.js","sourceRoot":"","sources":["../../../src/config/validate-config.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate-config.js","sourceRoot":"","sources":["../../../src/config/validate-config.js"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAC,gBAAgB,EAAC,MAAM,sBAAsB,CAAA;AACrD,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAA;AACnD,OAAO,EAAC,WAAW,EAAE,sBAAsB,EAAC,MAAM,sBAAsB,CAAA;AACxE,OAAO,EAAC,kBAAkB,EAAC,MAAM,wBAAwB,CAAA;AAEzD,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAA;AACtD,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC,CAAC,YAAY,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAA;AACpF,MAAM,6BAA6B,GAAG,+BAA+B,CAAA;AACrE,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAA;AAEhF;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,MAAM,EAAE,SAAS;IAC9C,MAAM,MAAM,GAAG,EAAE,CAAA;IACjB,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,OAAO,MAAM,CAAC,WAAW,KAAK,QAAQ;QAAE,MAAM,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAA;IACxH,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ;QAAE,MAAM,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAA;IAChG,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ;QAC/D,CAAC,CAAC,sDAAsD,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;QACxE,CAAC,CAAC,EAAE,CAAA;IACN,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAA;IAC/B,IAAI,CAAC,KAAK;QAAE,MAAM,CAAC,IAAI,CAAC,UAAU,SAAS,kBAAkB,CAAC,CAAA;IAC9D,IAAI,KAAK;QAAE,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IACvC,IAAI,MAAM,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;IACvF,OAAO,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;AAC3C,CAAC;AAED;;;;GAIG;AACH,SAAS,aAAa,CAAC,KAAK,EAAE,MAAM;IAClC,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ;QAAE,MAAM,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAA;IACnH,MAAM,YAAY,GAAG,+CAA+C,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IACtF,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,IAAI,IAAI,KAAK,CAAC,CAAC,CAAA;IAC7G,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,aAAa,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,uCAAuC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAC/I,sBAAsB,CAAC,KAAK,CAAC,SAAS,EAAE,aAAa,EAAE,MAAM,CAAC,CAAA;IAC9D,uBAAuB,CAAC,KAAK,CAAC,SAAS,EAAE,aAAa,EAAE,MAAM,CAAC,CAAA;IAC/D,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAA;IACpG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,QAAQ,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,iCAAiC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACpI,IAAI,QAAQ,KAAK,YAAY,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAA;IACpK,IAAI,KAAK,CAAC,MAAM,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAA;IACrJ,IAAI,KAAK,CAAC,QAAQ,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAA;IAC1I,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAA;IAC3F,IAAI,aAAa,KAAK,KAAK,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAA;IAC/I,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;QAAE,qBAAqB,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IACvE,IAAI,KAAK,CAAC,WAAW,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAA;IAC7G,IAAI,KAAK,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAA;IAC1G,IAAI,KAAK,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ;QAAE,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAA;IAChG,wBAAwB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IACvC,MAAM,WAAW,GAAG,MAAM,CAAC,wCAAwC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAA;IACxI,MAAM,iBAAiB,GAAG,gBAAgB,EAAE,CAAA;IAC5C,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,qCAAqC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IAC9H,IAAI,WAAW,KAAK,YAAY;QAAE,yBAAyB,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,UAAU,IAAI,EAAC,IAAI,EAAE,YAAY,EAAC,EAAE,MAAM,CAAC,CAAA;IAC9H,IAAI,WAAW,KAAK,SAAS;QAAE,sBAAsB,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;AAC9E,CAAC;AAED;;;;;GAKG;AACH,SAAS,sBAAsB,CAAC,mBAAmB,EAAE,aAAa,EAAE,MAAM;IACxE,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE,aAAa,CAAC;QAAE,OAAM;IAChG,IAAI,aAAa,KAAK,KAAK;QAAE,MAAM,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAA;IAC3G,MAAM,WAAW,GAAG,mBAAmB,CAAC,WAAW,CAAA;IACnD,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QAC3B,MAAM,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAA;QACjE,OAAM;IACR,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7C,IAAI,CAAC,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,+BAA+B,KAAK,mBAAmB,CAAC,CAAA;IACtH,CAAC;IACD,IAAI,WAAW,CAAC,IAAI,KAAK,iBAAiB;QAAE,MAAM,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAA;IACnH,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxF,MAAM,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAA;IACnF,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,GAAG,IAAI,GAAG,EAAE,CAAA;QACtB,KAAK,MAAM,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,WAAW,CAAC,aAAa,CAAC,OAAO,EAAE,EAAE,CAAC;YACxE,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC;gBACrG,MAAM,CAAC,IAAI,CAAC,6CAA6C,KAAK,0CAA0C,CAAC,CAAA;YAC3G,CAAC;iBAAM,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;gBAClC,MAAM,CAAC,IAAI,CAAC,6CAA6C,KAAK,4CAA4C,CAAC,CAAA;YAC7G,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;QACxB,CAAC;IACH,CAAC;IACD,IAAI,mBAAmB,CAAC,YAAY,KAAK,SAAS;QAAE,MAAM,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAA;AACrI,CAAC;AAED;;;;;GAKG;AACH,SAAS,uBAAuB,CAAC,mBAAmB,EAAE,aAAa,EAAE,MAAM;IACzE,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE,cAAc,CAAC;QAAE,OAAM;IACjG,IAAI,aAAa,KAAK,KAAK;QAAE,MAAM,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAA;IAC5G,IAAI,OAAO,mBAAmB,CAAC,YAAY,KAAK,SAAS;QAAE,MAAM,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAA;AAC1H,CAAC;AAED;;;;GAIG;AACH,SAAS,sBAAsB,CAAC,UAAU,EAAE,MAAM;IAChD,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1B,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAA;QAC9C,OAAM;IACR,CAAC;IACD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,aAAa,EAAE,gBAAgB,EAAE,eAAe,CAAC,CAAC,CAAA;IACzF,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,iBAAiB,KAAK,2CAA2C,CAAC,CAAA;IAC/G,CAAC;IACD,IAAI,OAAO,UAAU,CAAC,WAAW,KAAK,QAAQ,IAAI,UAAU,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QACjL,MAAM,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAA;IAC5E,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,CAAC,gBAAgB,EAAE,eAAe,CAAC,EAAE,CAAC;QACxD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;QAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,iBAAiB,KAAK,4CAA4C,CAAC,CAAA;IACrK,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,cAAc,CAAC,cAAc;IACpC,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;AACvF,CAAC;AAED;;;;GAIG;AACH,SAAS,yBAAyB,CAAC,UAAU,EAAE,MAAM;IACnD,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1B,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAA;QAC9C,OAAM;IACR,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,CAAC,SAAS,EAAE,YAAY,EAAE,QAAQ,CAAC,EAAE,CAAC;QACxD,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;QAC/B,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YAC5G,MAAM,CAAC,IAAI,CAAC,iBAAiB,KAAK,6BAA6B,CAAC,CAAA;QAClE,CAAC;IACH,CAAC;IACD,IAAI,OAAO,UAAU,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9F,MAAM,CAAC,IAAI,CAAC,2FAA2F,CAAC,CAAA;IAC1G,CAAC;IACD,IAAI,OAAO,UAAU,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACrF,MAAM,CAAC,IAAI,CAAC,0HAA0H,CAAC,CAAA;IACzI,CAAC;IACD,IAAI,UAAU,CAAC,oBAAoB,KAAK,SAAS,IAAI,CAAC,OAAO,UAAU,CAAC,oBAAoB,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,oBAAoB,CAAC,IAAI,UAAU,CAAC,oBAAoB,IAAI,CAAC,CAAC,EAAE,CAAC;QACzM,MAAM,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAA;IAC9E,CAAC;IACD,IAAI,UAAU,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;QAC3C,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,UAAU,CAAC,aAAa,CAAC,IAAI,KAAK,YAAY;YAAE,MAAM,CAAC,IAAI,CAAC,yFAAyF,CAAC,CAAA;aAC5L,CAAC;YACJ,IAAI,OAAO,UAAU,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,UAAU,CAAC,MAAM;gBAAE,MAAM,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAA;YACzI,KAAK,MAAM,KAAK,IAAI,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,EAAE,CAAC;gBAC3D,MAAM,KAAK,GAAG,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;gBAC7C,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAAE,MAAM,CAAC,IAAI,CAAC,+BAA+B,KAAK,6BAA6B,CAAC,CAAA;YAC7J,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,UAAU,CAAC,GAAG,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9D,MAAM,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAA;IACpD,CAAC;SAAM,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACpC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3D,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC;gBAAE,MAAM,CAAC,IAAI,CAAC,yDAAyD,IAAI,GAAG,CAAC,CAAA;YAChH,IAAI,OAAO,KAAK,KAAK,QAAQ;gBAAE,MAAM,CAAC,IAAI,CAAC,qBAAqB,IAAI,mBAAmB,CAAC,CAAA;QAC1F,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,mBAAmB,CAAC,cAAc;IACzC,IAAI,cAAc,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,IAAI,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAA;IACrF,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC;QAAE,OAAO,IAAI,CAAA;IAC/F,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;AACxD,CAAC;AAED;;;;GAIG;AACH,SAAS,qBAAqB,CAAC,UAAU,EAAE,MAAM;IAC/C,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1B,MAAM,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAA;QAC3C,OAAM;IACR,CAAC;IACD,IAAI,OAAO,UAAU,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1F,MAAM,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAA;IAC3D,CAAC;IACD,MAAM,WAAW,GAAG,OAAO,UAAU,CAAC,WAAW,KAAK,QAAQ,IAAI,UAAU,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAA;IACnG,MAAM,QAAQ,GAAG,OAAO,UAAU,CAAC,cAAc,KAAK,QAAQ,IAAI,sBAAsB,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;IACnH,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ;QAAE,MAAM,CAAC,IAAI,CAAC,4EAA4E,CAAC,CAAA;IACxH,IAAI,UAAU,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,OAAO,UAAU,CAAC,OAAO,KAAK,QAAQ,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;QACpH,MAAM,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAA;IAC9D,CAAC;IACD,IAAI,UAAU,CAAC,cAAc,KAAK,SAAS,IAAI,CAAC,OAAO,UAAU,CAAC,cAAc,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,UAAU,CAAC,cAAc,IAAI,CAAC,CAAC,EAAE,CAAC;QACjL,MAAM,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAA;IACrE,CAAC;IACD,IAAI,UAAU,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,OAAO,UAAU,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC;QAC7J,MAAM,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAA;IAChE,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CAAC,MAAM,EAAE,SAAS;IACxC,MAAM,MAAM,GAAG,sDAAsD,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IACrF,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAA;IAC/B,MAAM,aAAa,GAAG,+CAA+C,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IACvF,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,IAAI,IAAI,KAAK,CAAC,CAAC,CAAA;IAChH,MAAM,YAAY,GAAG,sCAAsC,CAAC,CAAC,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,EAAC,CAAC,CAAC,CAAC,EAAC,IAAI,EAAE,aAAa,EAAE,GAAG,EAAC,sCAAuC,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,EAAC,CAAC,CAAA;IAChO,IAAI,aAAa,KAAK,KAAK,IAAI,CAAC,YAAY,CAAC,IAAI,IAAI,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3E,MAAM,QAAQ,GAAG,6CAA6C,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC5E,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;IAC1C,CAAC;IACD,MAAM,aAAa,GAAG,gDAAgD,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IACzF,+CAA+C;IAC/C,MAAM,SAAS,GAAG,+CAA+C,CAAC,CAAC,YAAY,CAAC,CAAA;IAChF,OAAO;QACL,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;QACvC,SAAS;QACT,IAAI,EAAE,+BAA+B,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;QAClD,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,IAAI,QAAQ,CAAC;QACxC,QAAQ,EAAE,+BAA+B,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC;QAC1D,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;QAChC,QAAQ,EAAE,yDAAyD,CAAC,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;QACjJ,SAAS;QACT,IAAI,EAAE,sBAAsB,CAAC,KAAK,CAAC,IAAI,CAAC;QACxC,KAAK,EAAE,oFAAoF,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;QAC/G,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC;QAC7C,WAAW,EAAE,sBAAsB,CAAC,+DAA+D,CAAC,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QAC9H,UAAU,EAAE,sBAAsB,CAAC,+DAA+D,CAAC,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;QAC5H,KAAK,EAAE,2DAA2D,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;QACtF,gBAAgB,EAAE,yBAAyB,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1H,KAAK,EAAE,2DAA2D,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;QACtF,YAAY,EAAE,kDAAkD,CAAC,CAAC,KAAK,CAAC,YAAY,IAAI,EAAE,CAAC;QAC3F,OAAO,EAAE,6CAA6C,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAC,IAAI,EAAE,YAAY,EAAE,GAAG,aAAa,EAAC,CAAC,CAAC,CAAC,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC,CAAC;KACpJ,CAAA;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,0BAA0B,CAAC,IAAI;IAC7C,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,GAAG,IAAI,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACvH,CAAC;AAED;;;;GAIG;AACH,SAAS,wBAAwB,CAAC,KAAK,EAAE,MAAM;IAC7C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,kBAAkB,CAAC;QAAE,OAAM;IACrD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAA;QACvD,OAAM;IACR,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACxE,MAAM,QAAQ,GAAG,0BAA0B,IAAI,EAAE,CAAA;QACjD,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,oCAAoC,IAAI,GAAG,CAAC,CAAA;QAC1G,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzD,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,6BAA6B,CAAC,CAAA;YACrD,SAAQ;QACV,CAAC;QAED,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAA;QACrE,KAAK,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;YAClD,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,IAAI,KAAK,GAAG,CAAA;YAC3E,4BAA4B,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QACjE,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,4BAA4B,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM;IACrE,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxD,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,8CAA8C,CAAC,CAAA;QACvE,OAAM;IACR,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACvB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,KAAK,CAAC;gBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,uBAAuB,KAAK,GAAG,CAAC,CAAA;QACnG,CAAC;IACH,CAAC;IAED,IAAI,KAAK,CAAA;IACT,IAAI,CAAC;QACH,KAAK,GAAG,kBAAkB,CAAC,IAAI,EAAE,gDAAgD,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAClG,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,KAAK,CAAA,oBAAqB,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;QACpE,OAAM;IACR,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,qCAAqC,CAAC,CAAA;IACrG,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,GAAG,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,iFAAiF,CAAC,CAAA;IAE3K,MAAM,MAAM,GAAG,8BAA8B,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAA;IAC5D,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9C,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,wBAAwB,CAAC,CAAA;IACnD,CAAC;SAAM,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAClD,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC;gBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,4CAA4C,GAAG,GAAG,CAAC,CAAA;YAC7G,IAAI,OAAO,KAAK,KAAK,QAAQ;gBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,QAAQ,GAAG,mBAAmB,CAAC,CAAA;YACtF,IAAI,WAAW,CAAC,GAAG,CAAC;gBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,QAAQ,GAAG,yCAAyC,CAAC,CAAA;QACrG,CAAC;IACH,CAAC;IAED,MAAM,aAAa,GAAG,qCAAqC,CAAC,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAA;IACjF,IAAI,aAAa,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;QACjE,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,8BAA8B,CAAC,CAAA;IACzD,CAAC;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAE,CAAA;QACtB,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;YAClC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnC,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,mDAAmD,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBAC5F,SAAQ;YACV,CAAC;YACD,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;gBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,8BAA8B,KAAK,GAAG,CAAC,CAAA;YACpF,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACf,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;gBAAE,MAAM,CAAC,IAAI,CAAC,GAAG,SAAS,IAAI,KAAK,uCAAuC,CAAC,CAAA;QACjI,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,yBAAyB,CAAC,UAAU;IAC3C,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,EAAE,CAAA;IACpC,sEAAsE;IACtE,MAAM,UAAU,GAAG,EAAE,CAAA;IACrB,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACzD,UAAU,CAAC,IAAI,CAAC,GAAG,sDAAsD,CAAC,CACxE,kBAAkB,CAAC,IAAI,EAAE,yFAAyF,CAAC,CAAC,OAAO,CAAC,CAAC,CAC9H,CAAA;IACH,CAAC;IACD,OAAO,UAAU,CAAA;AACnB,CAAC;AAED;;;GAGG;AACH,SAAS,QAAQ,CAAC,KAAK;IACrB,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACrF,MAAM,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;IAC9C,OAAO,SAAS,KAAK,MAAM,CAAC,SAAS,IAAI,SAAS,KAAK,IAAI,CAAA;AAC7D,CAAC;AAED;;;GAGG;AACH,SAAS,oBAAoB,CAAC,GAAG;IAC/B,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAA;IAC1F,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,KAAK,CAAA;IAC1E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;AAC7C,CAAC;AAED;;;GAGG;AACH,SAAS,sBAAsB,CAAC,OAAO;IACrC,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC,EAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,IAAI,EAAE,GAAG,KAAK,EAAC,CAAC,CAAA;AACvI,CAAC;AAED;;;GAGG;AACH,SAAS,sBAAsB,CAAC,UAAU;IACxC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,SAAS,CAAA;IAC3C,mDAAmD;IACnD,MAAM,IAAI,GAAG,EAAC,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAC,CAAA;IACpD,IAAI,OAAO,UAAU,CAAC,WAAW,KAAK,QAAQ;QAAE,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAA;IACzF,IAAI,OAAO,UAAU,CAAC,cAAc,KAAK,QAAQ;QAAE,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,cAAc,CAAA;IAClG,IAAI,OAAO,UAAU,CAAC,OAAO,KAAK,QAAQ;QAAE,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAA;IAC7E,IAAI,UAAU,CAAC,cAAc,KAAK,SAAS;QAAE,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC,CAAA;IACpG,IAAI,UAAU,CAAC,SAAS,KAAK,SAAS;QAAE,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;IACrF,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;GAGG;AACH,SAAS,cAAc,CAAC,KAAK;IAC3B,MAAM,aAAa,GAAG,wCAAwC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IAChF,MAAM,QAAQ,GAAG,+CAA+C,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IAC9E,OAAO,aAAa,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;AACzF,CAAC"}
@@ -1,26 +1,28 @@
1
1
  /**
2
2
  * @param {import('#types').StageConfig} stage
3
- * @param {{revision?: string, releaseId?: string}} [opts]
3
+ * @param {{revision?: string, releaseId?: string, expectedActiveRevision?: string}} [opts]
4
4
  * @returns {string[]}
5
5
  */
6
- export function createDeployPlan(stage: import("#types").StageConfig, { revision, releaseId }?: {
6
+ export function createDeployPlan(stage: import("#types").StageConfig, { revision, releaseId, expectedActiveRevision }?: {
7
7
  revision?: string;
8
8
  releaseId?: string;
9
+ expectedActiveRevision?: string;
9
10
  }): string[];
10
11
  /**
11
12
  * @param {import('#types').StageConfig} stage
12
- * @param {{revision?: string, releaseId?: string}} [opts]
13
+ * @param {{revision?: string, releaseId?: string, expectedActiveRevision?: string}} [opts]
13
14
  * @returns {import('#types').DeployPlanStep[]}
14
15
  */
15
- export function createDeployPlanDetails(stage: import("#types").StageConfig, { revision, releaseId }?: {
16
+ export function createDeployPlanDetails(stage: import("#types").StageConfig, { revision, releaseId, expectedActiveRevision }?: {
16
17
  revision?: string;
17
18
  releaseId?: string;
19
+ expectedActiveRevision?: string;
18
20
  }): import("#types").DeployPlanStep[];
19
21
  /**
20
22
  * @param {import('#types').DeployOptions} opts
21
23
  * @returns {Promise<import('#types').DeployReport|{plan: string[]}>}
22
24
  */
23
- export function deploy({ transport, stage, sourcePath, revision, branch, dryRun, releaseId, force, reporter }: import("#types").DeployOptions): Promise<import("#types").DeployReport | {
25
+ export function deploy({ transport, stage, sourcePath, revision, branch, dryRun, releaseId, force, expectedActiveRevision, reporter }: import("#types").DeployOptions): Promise<import("#types").DeployReport | {
24
26
  plan: string[];
25
27
  }>;
26
28
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"deploy-runner.d.ts","sourceRoot":"","sources":["../../../src/core/deploy-runner.js"],"names":[],"mappings":"AAmBA;;;;GAIG;AACH,wCAJW,OAAO,QAAQ,EAAE,WAAW,4BAC5B;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAC,GACrC,MAAM,EAAE,CAIpB;AAED;;;;GAIG;AACH,+CAJW,OAAO,QAAQ,EAAE,WAAW,4BAC5B;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAC,GACrC,OAAO,QAAQ,EAAE,cAAc,EAAE,CAkB7C;AAaD;;;GAGG;AACH,+GAHW,OAAO,QAAQ,EAAE,aAAa,GAC5B,OAAO,CAAC,OAAO,QAAQ,EAAE,YAAY,GAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAC,CAAC,CAwMnE;AAED;;;GAGG;AACH,6DAHW;IAAC,SAAS,EAAE,OAAO,QAAQ,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,OAAO,QAAQ,EAAE,WAAW,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,QAAQ,CAAA;CAAC,GAC5G,OAAO,CAAC,OAAO,QAAQ,EAAE,cAAc,CAAC,CAiGpD;AA4FD;;;GAGG;AACH,6FAHW;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,OAAO,QAAQ,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAC,GAClH,MAAM,CAqBlB;yBA7dsB,eAAe"}
1
+ {"version":3,"file":"deploy-runner.d.ts","sourceRoot":"","sources":["../../../src/core/deploy-runner.js"],"names":[],"mappings":"AAiCA;;;;GAIG;AACH,wCAJW,OAAO,QAAQ,EAAE,WAAW,oDAC5B;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,sBAAsB,CAAC,EAAE,MAAM,CAAA;CAAC,GACtE,MAAM,EAAE,CAIpB;AAED;;;;GAIG;AACH,+CAJW,OAAO,QAAQ,EAAE,WAAW,oDAC5B;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,sBAAsB,CAAC,EAAE,MAAM,CAAA;CAAC,GACtE,OAAO,QAAQ,EAAE,cAAc,EAAE,CAmB7C;AAaD;;;GAGG;AACH,uIAHW,OAAO,QAAQ,EAAE,aAAa,GAC5B,OAAO,CAAC,OAAO,QAAQ,EAAE,YAAY,GAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAC,CAAC,CA4MnE;AAED;;;GAGG;AACH,6DAHW;IAAC,SAAS,EAAE,OAAO,QAAQ,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,OAAO,QAAQ,EAAE,WAAW,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,QAAQ,CAAA;CAAC,GAC5G,OAAO,CAAC,OAAO,QAAQ,EAAE,cAAc,CAAC,CAqGpD;AA+GD;;;GAGG;AACH,6FAHW;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,SAAS,EAAE,OAAO,CAAC;IAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,OAAO,QAAQ,EAAE,WAAW,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAC,GAClH,MAAM,CAqBlB;yBAvgBsB,eAAe"}
@@ -13,27 +13,43 @@ import { runtimeFor } from "../runtimes/index.js";
13
13
  import { prepareRemoteGitSource, remoteGitRepoLabel } from "./git-source.js";
14
14
  import { readRuntimeState, writeRuntimeState } from "./runtime-state.js";
15
15
  import { writeRuntimeBootState } from "./runtime-boot-state.js";
16
+ import { writeRuntimeOwnerHandoff, removeRuntimeOwnerHandoff } from "./runtime-owner-handoff.js";
16
17
  import { isSecretKey, redactText } from "./redaction.js";
17
18
  const IMPLEMENTED_STRATEGIES = new Set(["local-copy", "remote-git"]);
19
+ /**
20
+ * @param {import('#types').Transport} transport
21
+ * @param {import('#types').StageConfig} stage
22
+ * @param {string} expected
23
+ * @returns {Promise<void>}
24
+ */
25
+ async function verifyExpectedActiveRevision(transport, stage, expected) {
26
+ const current = await requireCurrentRelease(transport, stage);
27
+ const actual = await readReleaseRevision(transport, current.releasePath);
28
+ if (!/^[0-9a-f]{40}$/iu.test(actual))
29
+ throw new Error(`Active release '${current.releaseId}' has malformed revision metadata; expected a full 40-character hexadecimal SHA.`);
30
+ if (actual.toLowerCase() !== expected.toLowerCase())
31
+ throw new Error(`Expected active revision ${expected}, but current release '${current.releaseId}' has active revision ${actual}.`);
32
+ }
18
33
  /**
19
34
  * @param {import('#types').StageConfig} stage
20
- * @param {{revision?: string, releaseId?: string}} [opts]
35
+ * @param {{revision?: string, releaseId?: string, expectedActiveRevision?: string}} [opts]
21
36
  * @returns {string[]}
22
37
  */
23
- export function createDeployPlan(stage, { revision = stage.revision ?? stage.branch, releaseId = "<timestamp>" } = {}) {
24
- return createDeployPlanDetails(stage, { revision, releaseId }).map(step => step.detail);
38
+ export function createDeployPlan(stage, { revision = stage.revision ?? stage.branch, releaseId = "<timestamp>", expectedActiveRevision } = {}) {
39
+ return createDeployPlanDetails(stage, { revision, releaseId, expectedActiveRevision }).map(step => step.detail);
25
40
  }
26
41
  /**
27
42
  * @param {import('#types').StageConfig} stage
28
- * @param {{revision?: string, releaseId?: string}} [opts]
43
+ * @param {{revision?: string, releaseId?: string, expectedActiveRevision?: string}} [opts]
29
44
  * @returns {import('#types').DeployPlanStep[]}
30
45
  */
31
- export function createDeployPlanDetails(stage, { revision = stage.revision ?? stage.branch, releaseId = "<timestamp>" } = {}) {
46
+ export function createDeployPlanDetails(stage, { revision = stage.revision ?? stage.branch, releaseId = "<timestamp>", expectedActiveRevision } = {}) {
32
47
  const runtime = runtimeFor(stage);
33
48
  const sourceDetail = sourcePlanDetail(stage, revision);
34
49
  return [
35
50
  { phase: "transport", action: "connect", detail: "connect transport" },
36
51
  { phase: "lock", action: "acquire", detail: "acquire deploy lock" },
52
+ ...(expectedActiveRevision ? [{ phase: "release", action: "verify-active-revision", detail: `verify active revision is ${expectedActiveRevision}` }] : []),
37
53
  { phase: "release", action: "create", detail: `create release dir releases/${releaseId}` },
38
54
  { phase: "source", action: sourceDetail.action, detail: sourceDetail.detail },
39
55
  { phase: "shared", action: "link", detail: "link shared files and directories" },
@@ -61,10 +77,10 @@ function sourcePlanDetail(stage, revision) {
61
77
  * @param {import('#types').DeployOptions} opts
62
78
  * @returns {Promise<import('#types').DeployReport|{plan: string[]}>}
63
79
  */
64
- export async function deploy({ transport, stage, sourcePath = process.cwd(), revision, branch = stage.branch, dryRun = false, releaseId = releaseIdFromDate(), force = false, reporter = new Reporter({ lifecycle: false }) }) {
80
+ export async function deploy({ transport, stage, sourcePath = process.cwd(), revision, branch = stage.branch, dryRun = false, releaseId = releaseIdFromDate(), force = false, expectedActiveRevision, reporter = new Reporter({ lifecycle: false }) }) {
65
81
  const releaseRevision = /** @type {string} */ (revision ?? stage.revision ?? (branch ?? stage.branch));
66
82
  if (dryRun)
67
- return { plan: createDeployPlan(stage, { revision: releaseRevision, releaseId }) };
83
+ return { plan: createDeployPlan(stage, { revision: releaseRevision, releaseId, expectedActiveRevision }) };
68
84
  if (!IMPLEMENTED_STRATEGIES.has(stage.strategy))
69
85
  throw new Error(`Deploy strategy '${stage.strategy}' is not implemented yet; refusing to publish an empty remote release.`);
70
86
  const resolvedStage = { ...stage, revision: revision ?? stage.revision, branch };
@@ -100,6 +116,8 @@ export async function deploy({ transport, stage, sourcePath = process.cwd(), rev
100
116
  reporter.line(" * Acquiring deploy lock");
101
117
  const lock = await acquireLock(transport, stage, { force });
102
118
  try {
119
+ if (expectedActiveRevision)
120
+ await verifyExpectedActiveRevision(transport, stage, expectedActiveRevision);
103
121
  await runHooks(transport, stage, null, "after_lock");
104
122
  if (await transport.exists(releasePath))
105
123
  throw new Error(`Release already exists: ${releasePath}`);
@@ -170,6 +188,8 @@ export async function deploy({ transport, stage, sourcePath = process.cwd(), rev
170
188
  const previous = await currentReleaseId(transport, stage);
171
189
  await runHooks(transport, stage, releasePath, "before_publish", { previousReleasePath });
172
190
  let publicationAttempted = false;
191
+ /** @type {import('#types').RuntimeBootState|undefined} */
192
+ let acceptedBoot;
173
193
  try {
174
194
  await writeRuntimeState(transport, stage, { releaseId, revision: deployedRevision, runtime: runtimeSnapshot }, { retain: previousRuntimeRelease ? [previousRuntimeRelease] : [] });
175
195
  if (runtime.commit)
@@ -178,7 +198,7 @@ export async function deploy({ transport, stage, sourcePath = process.cwd(), rev
178
198
  publicationAttempted = true;
179
199
  await publishCurrent(transport, stage, releasePath);
180
200
  published = true;
181
- await persistRuntimeBootState(runtime, transport, stage, runtimeSnapshot, { releasePath, releaseId, revision: deployedRevision });
201
+ acceptedBoot = await persistRuntimeBootState(runtime, transport, stage, runtimeSnapshot, { releasePath, releaseId, revision: deployedRevision });
182
202
  }
183
203
  catch (error) {
184
204
  const transitionError = /** @type {Error} */ (error);
@@ -218,6 +238,7 @@ export async function deploy({ transport, stage, sourcePath = process.cwd(), rev
218
238
  }
219
239
  throw new Error(`${transitionError.message}\nPrevious release '${activeReleaseId}' was reactivated and health-checked; current ${publicationAttempted ? "was republished" : "was not changed"}.`, { cause: transitionError });
220
240
  }
241
+ await completeRuntimeOwnerHandoff(runtime, transport, stage, lock, acceptedBoot, runtimeSnapshot, runtimeResult);
221
242
  await runHooks(transport, stage, releasePath, "after_publish", { previousReleasePath });
222
243
  await runHooks(transport, stage, releasePath, "before_cleanup", { previousReleasePath });
223
244
  reporter.line(` * Cleaning up old releases keeping ${stage.keepReleases}`);
@@ -300,10 +321,14 @@ export async function rollback({ transport, stage, to, reporter = new Reporter({
300
321
  const targetSnapshot = runtimeSnapshotForRelease(runtime, stage, state, target.releaseId, currentSnapshot);
301
322
  if (runtime.validateSnapshot)
302
323
  runtime.validateSnapshot(targetSnapshot);
324
+ if (runtime.validateRollbackTarget)
325
+ runtime.validateRollbackTarget(targetSnapshot);
303
326
  if (runtime.verifySnapshot)
304
327
  await runtime.verifySnapshot(transport, { snapshot: targetSnapshot, runtimePath: deployPaths(stage).runtimePath });
305
328
  let runtimeResult;
306
329
  let publicationAttempted = false;
330
+ /** @type {import('#types').RuntimeBootState|undefined} */
331
+ let acceptedBoot;
307
332
  try {
308
333
  reporter.line(`Rolling back ${stage.application}/${stage.stageName} from ${current.releaseId} to ${target.releaseId}`);
309
334
  reporter.line(` * Handing off to ${runtime.type ?? stage.runtime.type} runtime`);
@@ -325,7 +350,7 @@ export async function rollback({ transport, stage, to, reporter = new Reporter({
325
350
  await writeRuntimeState(transport, stage, { releaseId: target.releaseId, revision, runtime: targetSnapshot });
326
351
  if (runtime.commit)
327
352
  await runtime.commit(transport, { snapshot: targetSnapshot });
328
- await persistRuntimeBootState(runtime, transport, stage, targetSnapshot, { releasePath: target.releasePath, releaseId: target.releaseId, revision });
353
+ acceptedBoot = await persistRuntimeBootState(runtime, transport, stage, targetSnapshot, { releasePath: target.releasePath, releaseId: target.releaseId, revision });
329
354
  }
330
355
  catch (error) {
331
356
  const targetError = /** @type {Error} */ (error);
@@ -360,6 +385,7 @@ export async function rollback({ transport, stage, to, reporter = new Reporter({
360
385
  }
361
386
  throw new Error(`Rollback to '${target.releaseId}' failed: ${targetError.message}\nPrevious release '${current.releaseId}' was reactivated and passed health checks. Current was ${publicationAttempted ? "restored" : "not changed"}.`, { cause: targetError });
362
387
  }
388
+ await completeRuntimeOwnerHandoff(runtime, transport, stage, lock, acceptedBoot, targetSnapshot, runtimeResult);
363
389
  const report = {
364
390
  application: stage.application,
365
391
  stage: stage.stageName,
@@ -399,14 +425,34 @@ async function prepareRuntimeSnapshot(runtime, transport, opts) {
399
425
  * @param {import('#types').StageConfig} stage
400
426
  * @param {import('#types').RuntimeSnapshot} snapshot
401
427
  * @param {{releasePath: string, releaseId: string, revision: string}} target
428
+ * @returns {Promise<import('#types').RuntimeBootState|undefined>}
402
429
  */
403
430
  async function persistRuntimeBootState(runtime, transport, stage, snapshot, target) {
404
431
  if (!runtime.bootIdentity)
405
- return;
432
+ return undefined;
406
433
  const identity = runtime.bootIdentity(snapshot, { ...target, acceptedAt: new Date().toISOString() });
407
434
  if (!identity)
435
+ return undefined;
436
+ return await writeRuntimeBootState(transport, stage, identity);
437
+ }
438
+ /**
439
+ * @param {import('#types').RuntimeAdapter} runtime
440
+ * @param {import('#types').Transport} transport
441
+ * @param {import('#types').StageConfig} stage
442
+ * @param {import('#types').LockInfo} lock
443
+ * @param {import('#types').RuntimeBootState|undefined} boot
444
+ * @param {import('#types').RuntimeSnapshot} snapshot
445
+ * @param {any} runtimeResult
446
+ * @returns {Promise<void>}
447
+ */
448
+ async function completeRuntimeOwnerHandoff(runtime, transport, stage, lock, boot, snapshot, runtimeResult) {
449
+ if (!runtime.handoffExternalOwner || !runtimeResult?.externalOwnerVerificationRequired)
408
450
  return;
409
- await writeRuntimeBootState(transport, stage, identity);
451
+ if (!boot)
452
+ throw new Error("External runtime ownership handoff requires accepted runtime boot state.");
453
+ const request = await writeRuntimeOwnerHandoff(transport, stage, boot, lock);
454
+ await runtime.handoffExternalOwner(transport, { boot, snapshot, runtimeResult });
455
+ await removeRuntimeOwnerHandoff(transport, stage, request);
410
456
  }
411
457
  /**
412
458
  * @param {import('#types').RuntimeAdapter} runtime