@go-to-k/cdkd 0.284.53 → 0.284.55

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.
@@ -1,5 +1,5 @@
1
1
  import { a as getLiveRenderer, d as generateResourceNameWithFallback, f as getCurrentStackName, h as withStackName, l as applyDefaultNameForFallback, n as getLogger, p as looksLikeCdkdGeneratedName, u as generateResourceName } from "./logger-zRrlbaQt.js";
2
- import { t as getCdkdVersion } from "./version-CaIqvSUG.js";
2
+ import { t as getCdkdVersion } from "./version-DD5yHFTJ.js";
3
3
  import { randomUUID } from "node:crypto";
4
4
  import { CreateBucketCommand, DeleteObjectCommand, DeleteObjectsCommand, GetBucketLocationCommand, GetObjectCommand, HeadBucketCommand, HeadObjectCommand, ListObjectsV2Command, NoSuchKey, PutBucketEncryptionCommand, PutBucketPolicyCommand, PutObjectCommand, PutPublicAccessBlockCommand, S3Client, S3ServiceException } from "@aws-sdk/client-s3";
5
5
  import { CloudControlClient, CreateResourceCommand, DeleteResourceCommand, GetResourceCommand, GetResourceRequestStatusCommand, ListResourcesCommand, UpdateResourceCommand } from "@aws-sdk/client-cloudcontrol";
@@ -7672,6 +7672,45 @@ var S3StateBackend = class {
7672
7672
  return keys;
7673
7673
  }
7674
7674
  /**
7675
+ * Raw sidecar-object listing WITH metadata under the state bucket.
7676
+ *
7677
+ * {@link listRawKeys}'s twin, and it exists because an age-guarded sweep
7678
+ * needs `LastModified` and the reclaim plan needs `Size` — neither of which a
7679
+ * key list carries. Used by `cdkd gc`'s custom-resource-response sweep
7680
+ * (issue #2052), where the age is the only thing separating an abandoned
7681
+ * placeholder from one a concurrent run is about to write to.
7682
+ *
7683
+ * `LastModified` / `Size` are omitted from the response only for a key S3
7684
+ * did not return metadata for, which does not happen for `ListObjectsV2`
7685
+ * `Contents` entries; an entry missing either is DROPPED rather than
7686
+ * defaulted, because defaulting the date would either exempt an object from
7687
+ * the age guard forever or expose it immediately, and both are wrong in a
7688
+ * direction the caller cannot see.
7689
+ */
7690
+ async listRawObjects(keyPrefix) {
7691
+ await this.ensureClientForBucket();
7692
+ const objects = [];
7693
+ let continuationToken;
7694
+ do {
7695
+ const response = await this.s3Client.send(new ListObjectsV2Command({
7696
+ Bucket: this.config.bucket,
7697
+ ...await this.ownerParam(),
7698
+ Prefix: keyPrefix,
7699
+ ...continuationToken && { ContinuationToken: continuationToken }
7700
+ }));
7701
+ for (const obj of response.Contents ?? []) {
7702
+ if (obj.Key === void 0 || obj.LastModified === void 0 || obj.Size === void 0) continue;
7703
+ objects.push({
7704
+ key: obj.Key,
7705
+ lastModified: obj.LastModified,
7706
+ size: obj.Size
7707
+ });
7708
+ }
7709
+ continuationToken = response.IsTruncated ? response.NextContinuationToken : void 0;
7710
+ } while (continuationToken);
7711
+ return objects;
7712
+ }
7713
+ /**
7675
7714
  * Raw sidecar-object batch delete under the state bucket. Used by the
7676
7715
  * deployment-events pruner (issue #885) to drop superseded `{runId}.jsonl`
7677
7716
  * streams + their index. Chunked to the 1,000-key `DeleteObjects` ceiling.
@@ -18451,7 +18490,7 @@ var CloudControlProvider = class {
18451
18490
  if (context?.finalSnapshotIdentifier !== void 0) throw new ProvisioningError(`${logicalId} (${resourceType}) requires a final snapshot (DeletionPolicy: Snapshot), but the Cloud Control API delete route has no final-snapshot parameter. Re-run with --skip-final-snapshot after snapshotting manually, or retain the resource.`, resourceType, logicalId, physicalId);
18452
18491
  if (context?.removeProtection === true && resourceType === "AWS::AutoScaling::AutoScalingGroup") {
18453
18492
  this.logger.debug(`Delegating protected AutoScalingGroup ${logicalId} delete to the SDK ASGProvider (Cloud Control cannot force-delete a protected ASG)`);
18454
- const { ASGProvider } = await import("./asg-provider-Ciurx_UV.js").then((n) => n.n);
18493
+ const { ASGProvider } = await import("./asg-provider-nddX-RVm.js").then((n) => n.n);
18455
18494
  return await new ASGProvider().delete(logicalId, physicalId, resourceType, _properties, context);
18456
18495
  }
18457
18496
  const isProtectedEc2Instance = context?.removeProtection === true && resourceType === "AWS::EC2::Instance";
@@ -19194,13 +19233,28 @@ var CloudControlProvider = class {
19194
19233
  *
19195
19234
  * 4. **The handler force-quits when it is the LAST listener.** Property 3 gets
19196
19235
  * the watch armed only under a command with a shutdown path, but that path
19197
- * is not live for the command's whole duration: `destroy.ts` registers no
19198
- * SIGINT handler of its own, and `destroy-runner.ts` removes its one in a
19199
- * `finally` — so between two stacks of a multi-stack destroy the shared
19200
- * handler is the ONLY listener. Merely latching there SWALLOWS the Ctrl-C:
19201
- * the process does not exit, `draining` is never set, `result.interrupted`
19202
- * stays false, and the loop proceeds to delete the NEXT stack after the user
19203
- * asked to stop — this file's own headline failure, one layer out.
19236
+ * is not live for the command's whole duration. The case that motivated it:
19237
+ * `destroy.ts` registered no SIGINT handler of its own, and
19238
+ * `destroy-runner.ts` removes its one in a `finally` — so between two stacks
19239
+ * of a multi-stack destroy the shared handler was the ONLY listener. Merely
19240
+ * latching there SWALLOWS the Ctrl-C: the process does not exit, `draining`
19241
+ * is never set, `result.interrupted` stays false, and the loop proceeds to
19242
+ * delete the NEXT stack after the user asked to stop — this file's own
19243
+ * headline failure, one layer out.
19244
+ *
19245
+ * Issue #2117 closed THAT instance from the command side: `destroy.ts` and
19246
+ * `state.ts` now hold a command-scoped handler for their whole run
19247
+ * (`watchCommandInterrupt`, `src/utils/interrupt-signals.ts`), so this
19248
+ * handler is no longer last during a destroy and no longer fires there.
19249
+ * That is the improvement rather than a loss — the force-quit exited 130
19250
+ * with the lock stranded and without stopping the loop gracefully. Note the
19251
+ * dependency runs BOTH ways: because this handler is a latch rather than a
19252
+ * graceful owner, that watch must NOT treat its presence as "someone else
19253
+ * will handle this" (it subtracts `interruptWatchListenerCount()` for
19254
+ * exactly that reason), or the swallow above returns one window inward.
19255
+ * The remaining population here is the commands that register no handler at
19256
+ * all — `import` / `export` / `scrub` / `orphan` / `drift` /
19257
+ * `state refresh-observed`.
19204
19258
  *
19205
19259
  * So when no other listener remains, the handler restores exactly what Node
19206
19260
  * would have done with no listener at all. That is deliberately not a second
@@ -19275,7 +19329,10 @@ let sigintLatched = false;
19275
19329
  * Production never assigns either, and neither condition may be weakened to
19276
19330
  * accommodate tests: a command without a shutdown path really must keep Node's
19277
19331
  * default terminate, and a swallowed Ctrl-C in a multi-stack destroy really is
19278
- * a blocker. `cdkd drift --revert` and `cdkd destroy` are the live instances.
19332
+ * a blocker. `cdkd drift --revert` is the live instance of the first. The second
19333
+ * was `cdkd destroy`, until issue #2117 gave both destroy commands a
19334
+ * command-scoped handler of their own; the force-quit's remaining population is
19335
+ * the commands that register none at all (see property 4).
19279
19336
  *
19280
19337
  * `commandOwnsInterrupts` exists because a provider suite never runs a COMMAND,
19281
19338
  * so every interrupt test would otherwise exercise the UNARMED path while
@@ -19395,6 +19452,51 @@ function endCommandInterruptScope() {
19395
19452
  }
19396
19453
  resetInterruptWatchLatch();
19397
19454
  }
19455
+ /**
19456
+ * How many process SIGINT listeners this module owns: 0 before arming, 1 after.
19457
+ *
19458
+ * Exported so a test can pin both polarities of property 3 without reaching
19459
+ * into module state or counting listeners it does not own.
19460
+ */
19461
+ function interruptWatchListenerCount() {
19462
+ return sharedSigintHandler === void 0 ? 0 : 1;
19463
+ }
19464
+
19465
+ //#endregion
19466
+ //#region src/state/state-prefix.ts
19467
+ /**
19468
+ * The default S3 key prefix for cdkd state.
19469
+ *
19470
+ * Homed in the STATE layer rather than in `src/cli/commands/state-file-keys.ts`
19471
+ * (which re-exports it, so its four existing importers are unchanged) because
19472
+ * `src/state/lock-contention-message.ts` needs it to decide whether a recovery
19473
+ * hint should spell `--state-prefix` at all, and a `src/state/**` module
19474
+ * importing from `src/cli/commands/**` inverts the layering — the CLI sits
19475
+ * ABOVE the state layer in the 7-layer architecture, not below it.
19476
+ *
19477
+ * Note this is only the DEFAULT. Other commands accept `--state-prefix`, so
19478
+ * whole-bucket listings deliberately do not scope to it.
19479
+ */
19480
+ const DEFAULT_STATE_PREFIX = "cdkd";
19481
+ /**
19482
+ * The state-bucket prefix `CustomResourceProvider` PUTs its response
19483
+ * placeholders under, one object per invocation
19484
+ * (`custom-resource-responses/{requestId}.json`).
19485
+ *
19486
+ * Homed here for the same layering reason as {@link DEFAULT_STATE_PREFIX}: the
19487
+ * PRODUCER is `src/provisioning/providers/custom-resource-provider.ts` and the
19488
+ * COLLECTOR is `src/cli/commands/gc.ts`, so a copy in either would be a copy
19489
+ * the other could drift from — and the two spellings would then disagree about
19490
+ * which objects exist, which is the only way a sweeper can miss the family it
19491
+ * was written for (issue #2052). `src/cli/commands/state-file-keys.ts`
19492
+ * re-exports it so gc reads it alongside the other state-key constants.
19493
+ *
19494
+ * Note this is only the DEFAULT: `ProviderRegistry` can be configured with a
19495
+ * different `responsePrefix`, so a sweep scoped to this value is a sweep of the
19496
+ * default layout. gc has no access to a non-default one — nothing persists it —
19497
+ * which is stated at the sweep's own call site rather than implied here.
19498
+ */
19499
+ const CUSTOM_RESOURCE_RESPONSE_PREFIX = "custom-resource-responses";
19398
19500
 
19399
19501
  //#endregion
19400
19502
  //#region src/provisioning/providers/custom-resource-provider.ts
@@ -29796,5 +29898,5 @@ var DeployEngine = class {
29796
29898
  };
29797
29899
 
29798
29900
  //#endregion
29799
- export { startInterruptWatch as $, AwsClients as $n, shouldRetainResource as $t, renderStatefulReason as A, getLegacyStateBucketName as An, isThrottlingError as Ar, redactSecretsForState as At, exportAliasCollisionScrubWarning as B, CFN_TEMPLATE_BODY_LIMIT as Bn, DiffCalculator as Bt, isFinalSnapshotError as C, runDockerForeground as Cn, SynthesisError as Cr, TEMPLATE_SOURCED_RULES as Ct, extractDeploymentEventError as D, Synthesizer as Dn, withErrorHandling as Dr, isSingleDynamicReferenceToken as Dt, makeCanonicalizePropertiesFn as E, getDockerImageBySourceHash as En, normalizeAwsError as Er, errorCauseChain as Et, green as F, resolveStateBucketWithDefault as Fn, s3BucketDomainName as Ft, collectInlinePolicyNamesManagedBySiblings as G, expectedOwnerParam as Gn, TemplateParser as Gt, secretBearingStateKeyWarning as H, MIGRATE_TMP_PREFIX as Hn, describeTypeWithThrottleRetry as Ht, red as I, resolveStateBucketWithDefaultAndSource as In, s3BucketDualStackDomainName as It, findActionableSilentDrops as J, derivePartitionAndUrlSuffix as Jn, S3StateBackend as Jt, clearOnUpdateRemoval as K, PARTITION_TABLE as Kn, LockManager as Kt, yellow as L, resolveUseCdkBootstrapAssets as Ln, s3BucketRegionalDomainName as Lt, bold as M, resolveAutoAssetStorage as Mn, __exportAll as Mr, classifyReplaySecretRegion as Mt, cyan as N, resolveCaptureObservedState as Nn, producerRegionsFromState as Nt, MULTI_REGION_RECREATE_BLOCKED_TYPES as O, synthesisStatusMessage as On, isMarkedNonRetryable as Or, maskSecretsInError as Ot, gray as P, resolveSkipPrefix as Pn, s3BucketArn as Pt, isInterruptedWaitError as Q, resolveBucketRegion as Qn, importableOutputs as Qt, collectDeclaredOutputNames as R, stateBucketExistenceConfirmed as Rn, s3BucketWebsiteUrl as Rt, createPreDeleteFinalSnapshot as S, partitionSensitiveEnv as Sn, StateError as Sr, STATE_SOURCED_READBACK_RULES as St, unsupportedFinalSnapshotError as T, AssetManifestLoader as Tn, isCdkdError as Tr, dynamicReferenceTokens as Tt, stateKeySecretExposure as U, findLargeInlineResources as Un, withRetry as Ut, isExportAliasCollision as V, CFN_TEMPLATE_URL_LIMIT as Vn, INTRINSIC_KEYS as Vt, IAMRoleProvider as W, uploadCfnTemplate as Wn, DagBuilder as Wt, beginCommandInterruptScope as X, processStackMessages as Xn, exportNamesCarriedFrom as Xt, findSilentDropProperties as Y, AssemblyReader as Yn, rebuildClientForBucketRegion as Yt, endCommandInterruptScope as Z, clearBucketRegionCache as Zn, importableOutputKeys as Zt, computeImplicitDeleteEdges as _, buildDenyExternalAccessPolicy as _n, ProvisioningError as _r, replayWarn as _t, DeploymentEventsStore as a, loadPublishableAssetManifest as an, ConfigError as ar, carriesDynamicReference as at, buildFinalSnapshotIdentifier as b, formatDockerLoginError as bn, StackHasActiveImportsError as br, requireConfigString as bt, replayFailedOperations as c, stripControlChars as cn, DeployCancelledError as cr, refStateLookupFromResource as ct, updatePartialReason as d, ensureAssetStorage as dn, LocalMigrateError as dr, resolveExplicitPhysicalId as dt, AssetPublisher as en, getAwsClients as er, CloudControlProvider as et, UNSPECIFIED_SKIP_REASON as f, getBootstrapMarkerKey as fn, LocalStartServiceError as fr, assertRegionMatch as ft, IMPLICIT_DELETE_DEPENDENCIES as g, validateContainerRepoName as gn, PartialFailureError as gr, readConfigString as gt, maskingRetryLogger as h, validateAssetBucketName as hn, NestedStackChildDirectDestroyError as hr, configStringRefusal as ht, DeploymentEventsReader as i, createAssetRedirectResolver as in, CdkdError as ir, IntrinsicFunctionResolver as it, formatResourceLine as j, resolveApp as jn, markNonRetryable as jr, scrubResourceRecord as jt, isStatefulRecreateTargetSync as k, getDefaultStateBucketName as kn, isRetryableTransientError as kr, maskSecretsInText as kt, replayRollback as l, AssetModeResolver as ln, DynamicReferenceRegionAmbiguousError as lr, WAFv2WebACLProvider as lt, withResourceDeadline as m, readBootstrapMarkerBody as mn, MissingCdkCliError as mr, configBooleanRefusal as mt, DEFAULT_RESOURCE_WARN_AFTER_MS as n, WorkGraph as nn, setAwsClients as nr, disableInstanceApiTermination as nt, planFailedOps as o, rewriteTemplateAssetReferences as on, CrossAccountSecretRefusalError as or, cfnRefValueFromPhysicalId as ot, deleteSkipReason as p, parseBootstrapMarker as pn, LockError as pr, coerceCfnBoolean as pt, ProviderRegistry as q, canonicalizeRegion as qn, displaySafe as qt, DeployEngine as r, buildAssetRedirectMap as rn, AssetError as rr, isTerminationProtectionPropagationError as rt, planRollback as s, escapeRegExp$1 as sn, DependencyError as sr, getAccountInfo as st, DEFAULT_RESOURCE_TIMEOUT_MS as t, stringifyValue as tn, resetAwsClients as tr, slowCcOperationTimeoutMs as tt, updatePartialMessage as u, BOOTSTRAP_MARKER_PREFIX as un, LocalInvokeBuildError as ur, normalizeAwsTagsToCfn as ut, ATOMIC_FINAL_SNAPSHOT_TYPES as v, buildDockerImage as vn, ResourceTimeoutError as vr, requireConfigArray as vt, refusesFinalSnapshot as w, runDockerStreaming as wn, formatError as wr, createSecretMasker as wt, ccRoutedFinalSnapshotError as x, getDockerCmd as xn, StackTerminationProtectionError as xr, STATE_SOURCED_CROSS_GENERATION_RULES as xt, PRE_DELETE_SNAPSHOT_TYPES as y, dockerSpawnEnvWithSensitive as yn, ResourceUpdateNotSupportedError as yr, requireConfigObject as yt, collectPublishedOutputNames as z, warnDeprecatedNoPrefixCliFlag as zn, applyRoleArnIfSet as zt };
29800
- //# sourceMappingURL=deploy-engine-DOP4V6eK.js.map
29901
+ export { endCommandInterruptScope as $, processStackMessages as $n, exportNamesCarriedFrom as $t, renderStatefulReason as A, Synthesizer as An, withErrorHandling as Ar, isSingleDynamicReferenceToken as At, exportAliasCollisionScrubWarning as B, resolveUseCdkBootstrapAssets as Bn, s3BucketRegionalDomainName as Bt, isFinalSnapshotError as C, formatDockerLoginError as Cn, StackHasActiveImportsError as Cr, requireConfigString as Ct, extractDeploymentEventError as D, runDockerStreaming as Dn, formatError as Dr, createSecretMasker as Dt, makeCanonicalizePropertiesFn as E, runDockerForeground as En, SynthesisError as Er, TEMPLATE_SOURCED_RULES as Et, green as F, resolveAutoAssetStorage as Fn, __exportAll as Fr, classifyReplaySecretRegion as Ft, collectInlinePolicyNamesManagedBySiblings as G, MIGRATE_TMP_PREFIX as Gn, describeTypeWithThrottleRetry as Gt, secretBearingStateKeyWarning as H, warnDeprecatedNoPrefixCliFlag as Hn, applyRoleArnIfSet as Ht, red as I, resolveCaptureObservedState as In, producerRegionsFromState as It, findActionableSilentDrops as J, expectedOwnerParam as Jn, TemplateParser as Jt, clearOnUpdateRemoval as K, findLargeInlineResources as Kn, withRetry as Kt, yellow as L, resolveSkipPrefix as Ln, s3BucketArn as Lt, bold as M, getDefaultStateBucketName as Mn, isRetryableTransientError as Mr, maskSecretsInText as Mt, cyan as N, getLegacyStateBucketName as Nn, isThrottlingError as Nr, redactSecretsForState as Nt, MULTI_REGION_RECREATE_BLOCKED_TYPES as O, AssetManifestLoader as On, isCdkdError as Or, dynamicReferenceTokens as Ot, gray as P, resolveApp as Pn, markNonRetryable as Pr, scrubResourceRecord as Pt, beginCommandInterruptScope as Q, AssemblyReader as Qn, rebuildClientForBucketRegion as Qt, collectDeclaredOutputNames as R, resolveStateBucketWithDefault as Rn, s3BucketDomainName as Rt, createPreDeleteFinalSnapshot as S, dockerSpawnEnvWithSensitive as Sn, ResourceUpdateNotSupportedError as Sr, requireConfigObject as St, unsupportedFinalSnapshotError as T, partitionSensitiveEnv as Tn, StateError as Tr, STATE_SOURCED_READBACK_RULES as Tt, stateKeySecretExposure as U, CFN_TEMPLATE_BODY_LIMIT as Un, DiffCalculator as Ut, isExportAliasCollision as V, stateBucketExistenceConfirmed as Vn, s3BucketWebsiteUrl as Vt, IAMRoleProvider as W, CFN_TEMPLATE_URL_LIMIT as Wn, INTRINSIC_KEYS as Wt, CUSTOM_RESOURCE_RESPONSE_PREFIX as X, canonicalizeRegion as Xn, displaySafe as Xt, findSilentDropProperties as Y, PARTITION_TABLE as Yn, LockManager as Yt, DEFAULT_STATE_PREFIX as Z, derivePartitionAndUrlSuffix as Zn, S3StateBackend as Zt, computeImplicitDeleteEdges as _, readBootstrapMarkerBody as _n, MissingCdkCliError as _r, configBooleanRefusal as _t, DeploymentEventsStore as a, WorkGraph as an, setAwsClients as ar, disableInstanceApiTermination as at, buildFinalSnapshotIdentifier as b, buildDenyExternalAccessPolicy as bn, ProvisioningError as br, replayWarn as bt, replayFailedOperations as c, loadPublishableAssetManifest as cn, ConfigError as cr, carriesDynamicReference as ct, updatePartialReason as d, stripControlChars as dn, DeployCancelledError as dr, refStateLookupFromResource as dt, importableOutputKeys as en, clearBucketRegionCache as er, interruptWatchListenerCount as et, UNSPECIFIED_SKIP_REASON as f, AssetModeResolver as fn, DynamicReferenceRegionAmbiguousError as fr, WAFv2WebACLProvider as ft, IMPLICIT_DELETE_DEPENDENCIES as g, parseBootstrapMarker as gn, LockError as gr, coerceCfnBoolean as gt, maskingRetryLogger as h, getBootstrapMarkerKey as hn, LocalStartServiceError as hr, assertRegionMatch as ht, DeploymentEventsReader as i, stringifyValue as in, resetAwsClients as ir, slowCcOperationTimeoutMs as it, formatResourceLine as j, synthesisStatusMessage as jn, isMarkedNonRetryable as jr, maskSecretsInError as jt, isStatefulRecreateTargetSync as k, getDockerImageBySourceHash as kn, normalizeAwsError as kr, errorCauseChain as kt, replayRollback as l, rewriteTemplateAssetReferences as ln, CrossAccountSecretRefusalError as lr, cfnRefValueFromPhysicalId as lt, withResourceDeadline as m, ensureAssetStorage as mn, LocalMigrateError as mr, resolveExplicitPhysicalId as mt, DEFAULT_RESOURCE_WARN_AFTER_MS as n, shouldRetainResource as nn, AwsClients as nr, startInterruptWatch as nt, planFailedOps as o, buildAssetRedirectMap as on, AssetError as or, isTerminationProtectionPropagationError as ot, deleteSkipReason as p, BOOTSTRAP_MARKER_PREFIX as pn, LocalInvokeBuildError as pr, normalizeAwsTagsToCfn as pt, ProviderRegistry as q, uploadCfnTemplate as qn, DagBuilder as qt, DeployEngine as r, AssetPublisher as rn, getAwsClients as rr, CloudControlProvider as rt, planRollback as s, createAssetRedirectResolver as sn, CdkdError as sr, IntrinsicFunctionResolver as st, DEFAULT_RESOURCE_TIMEOUT_MS as t, importableOutputs as tn, resolveBucketRegion as tr, isInterruptedWaitError as tt, updatePartialMessage as u, escapeRegExp$1 as un, DependencyError as ur, getAccountInfo as ut, ATOMIC_FINAL_SNAPSHOT_TYPES as v, validateAssetBucketName as vn, NestedStackChildDirectDestroyError as vr, configStringRefusal as vt, refusesFinalSnapshot as w, getDockerCmd as wn, StackTerminationProtectionError as wr, STATE_SOURCED_CROSS_GENERATION_RULES as wt, ccRoutedFinalSnapshotError as x, buildDockerImage as xn, ResourceTimeoutError as xr, requireConfigArray as xt, PRE_DELETE_SNAPSHOT_TYPES as y, validateContainerRepoName as yn, PartialFailureError as yr, readConfigString as yt, collectPublishedOutputNames as z, resolveStateBucketWithDefaultAndSource as zn, s3BucketDualStackDomainName as zt };
29902
+ //# sourceMappingURL=deploy-engine-B1tSPv8F.js.map