@go-to-k/cdkd 0.319.0 → 0.321.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/dist/{asg-provider-T9K-NVi8.js → asg-provider-DIQU27yo.js} +3 -3
  2. package/dist/{asg-provider-T9K-NVi8.js.map → asg-provider-DIQU27yo.js.map} +1 -1
  3. package/dist/cli.js +2 -2
  4. package/dist/{created-resource-sink-BpB3iPvn.js → created-resource-sink-CmrPwGge.js} +4 -2
  5. package/dist/created-resource-sink-CmrPwGge.js.map +1 -0
  6. package/dist/{db-instance-modify-retry-CspmK57I.js → db-instance-modify-retry-DCLA_p9I.js} +2 -2
  7. package/dist/{db-instance-modify-retry-CspmK57I.js.map → db-instance-modify-retry-DCLA_p9I.js.map} +1 -1
  8. package/dist/{deploy-engine-CVYhHEgq.js → deploy-engine-pGWgnV-6.js} +135 -81
  9. package/dist/deploy-engine-pGWgnV-6.js.map +1 -0
  10. package/dist/{iam-role-provider-qTIqSmlf.js → iam-role-provider-z7poP-9w.js} +3 -3
  11. package/dist/{iam-role-provider-qTIqSmlf.js.map → iam-role-provider-z7poP-9w.js.map} +1 -1
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +3 -3
  14. package/dist/{neptune-provider-BsA7jGiV.js → neptune-provider-DzedCIWf.js} +4 -4
  15. package/dist/{neptune-provider-BsA7jGiV.js.map → neptune-provider-DzedCIWf.js.map} +1 -1
  16. package/dist/{program-DyYTFxF-.js → program-lQLBOfU6.js} +45 -7
  17. package/dist/program-lQLBOfU6.js.map +1 -0
  18. package/dist/{provider-classes-DOr3JVGp.js → provider-classes-DTgKRk4t.js} +355 -50
  19. package/dist/provider-classes-DTgKRk4t.js.map +1 -0
  20. package/dist/{rds-provider-CIjO2Do5.js → rds-provider-BenOBQ9u.js} +50 -6
  21. package/dist/rds-provider-BenOBQ9u.js.map +1 -0
  22. package/dist/{version-C3yhae4b.js → version-DWSVZXE5.js} +2 -2
  23. package/dist/{version-C3yhae4b.js.map → version-DWSVZXE5.js.map} +1 -1
  24. package/package.json +1 -1
  25. package/dist/created-resource-sink-BpB3iPvn.js.map +0 -1
  26. package/dist/deploy-engine-CVYhHEgq.js.map +0 -1
  27. package/dist/program-DyYTFxF-.js.map +0 -1
  28. package/dist/provider-classes-DOr3JVGp.js.map +0 -1
  29. package/dist/rds-provider-CIjO2Do5.js.map +0 -1
@@ -1,8 +1,8 @@
1
1
  import { c as __exportAll, r as getAwsClients } from "./aws-clients-DWpHZk2l.js";
2
2
  import { $ as safeMsg, B as SAFE_MSG_ALTERED_CHAR, C as fallbackNamePropertyFor, D as getCurrentSkipPrefix, E as generatedNameFor, F as withNameGeneration, H as STACK_REF_MAX_CODE_POINTS, I as withSkipPrefix, J as displaySafe, K as displayAwsMessage, L as withStackScope, M as looksLikeCdkdGeneratedName, O as getCurrentStackInstanceId, P as stackInstanceNameSuffix, Q as plainIdentOr, R as withStackScopeBeforeStateRead, S as explicitNamePropertyFor, T as generateResourceNameWithFallback, U as UNRENDERABLE, V as SECRET_REF_MAX_CODE_POINTS, W as asIsMessage, X as isPasteableIdent, Y as displayStackName, a as safeStringify$1, b as currentNameGeneration, c as isStdoutReservedForPayload, f as currentLogLineMasker, j as isNameGeneration, k as getCurrentStackName, m as getLiveRenderer, n as describeAwsFailure, nt as truncateCodePoints, p as installLogLineMaskerSource, q as displayIdent, s as getLogger, t as VERBOSE_POINTER, tt as terminalSafe, v as alternateNamePropertiesFor, y as applyDefaultNameForFallback, z as withoutGeneratedFallbackName } from "./aws-failure-text-DiHodi76.js";
3
- import { $ as isTerminalDeleteFailure, $n as physicalIdShownBesideCommand, $t as formatLockExpiry, An as MalformedProducerRecordRefusalError, Ar as isThrottlingError, At as stateOrphanRecordRemedy, B as normalizeAwsTagsToCfn, Bt as createdBeforeFailure, Cn as DeploymentNotApprovedError, Dr as retryClassificationText, Er as isTransientServerError, Et as logicalIdShown, F as assertRegionMatch, Fn as ResourceUpdateNotSupportedError, Ft as maskerOrIdentity, Gt as markAuxiliaryFailure, H as refusalTypeShown, Hn as isSoftAbort, Ht as hasCreatedBeforeFailure, It as withDerivedNameMasks, Jn as UNSHOWABLE_VALUE, Jt as replayMadeAnotherResource, K as ProtectionFlipRegistry, Kn as SHELL_ACTIVE, Kt as markCreatedBeforeFailure, Lt as RETRY_AUXILIARY_OWNER, M as RESOURCE_NOT_FOUND, Mr as markRedactedCause, Mt as createMaskedRetryLogger, N as isMarkedNotGone, Nn as ProvisioningError, Nr as wrapMaskedAwsError, Nt as isSecretDerivedValue, On as LockError, Ot as resourceTypeShown, P as markNotGone, Pn as ResourceTimeoutError, Pt as maskDeep, Qn as pasteableCommand, Rn as StateError, Rt as carryCreatedBeforeFailure, Sr as isAmbiguousOutcomeError, St as canonicalizeRoute53QueryName, Tn as IntrinsicResolutionRefusalError, Tr as isRetryableTransientError, Un as normalizeAwsError, Ut as isAuxiliaryFailure, V as quotedRemedyLogicalId, Vt as createdResourceIdentityBeforeFailure, W as resolveExplicitPhysicalId, Wt as isAuxiliaryMarkOf, Xt as buildForceUnlockCommand, Y as deleteWithProtectionCompensation, Yn as commandHole, Yt as UNREPRODUCIBLE_LOCK_CLAUSE, Zn as isInertUnquoted, _ as prepareRemovalForUpdate, _n as AssetError, _r as stripControlChars, an as DEFAULT_STATE_PREFIX, bn as CrossAccountSecretRefusalError, br as formatRetryClassificationSignals, bt as isInterruptedWaitError, cr as hasReplayMayCollide, dn as withPasteableAwsProfile, dr as isRecreateRetryableError, dt as pasteableAwsCommand, en as formatLockOperation, er as plainOrDescribed, fn as ambientClientDefaults, fr as isReplayedNameCollisionFrom, ft as protectedReplacementAdvice, gn as AccountIdUnavailableError, gr as escapeRegExp$3, gt as monotonicNowMs, h as withUnchangedSecretPrincipalLists, hn as credentialFingerprint, hr as relayedNameCollision, ht as ElapsedBudgetRegistry, i as reportCreatedResource, in as CUSTOM_RESOURCE_RESPONSE_PREFIX, ir as withheldTargetClause, it as runDeleteAttempt, j as withoutServerErrorRetries, jr as markNonRetryable, jt as createMaskedLogSinks, kn as MacroExpansionError, kr as isMarkedNonRetryable, kt as segmentAfterAnchor, ln as producerRecordKey, lr as isNameCollisionErrorFrom, mn as clientDefaultsFor, mr as markReplayMayCollide, mt as ElapsedBudget, n as clearCreatedReport, nn as recoveryCommandFlags, nr as shellBoundedDisplay, nt as protectionFlipKey, o as retractCreatedResource, on as injectiveKey, pn as ambientCredentialConfig, q as compensateProtectionFlip, qn as SHELL_ACTIVE_WHY, r as collectCreatedResources, rn as sanitizeRecoveryValue, rr as shellQuote, sr as isUpdateUnsupportedError, st as DELETION_PROTECTION_DOC_POINTER, t as CreatedResourceSink, tn as formatLockOwner, tr as quotedOrDescribed, tt as observeThenDisableProtection, u as holdsSecretDerivedEntry, ur as isNameCooldownError, v as removalWarning, vn as CdkdError, wn as DynamicReferenceRegionAmbiguousError, wr as isIamPropagationError, wt as compositeIdSeparatorRefusal, x as withoutInjectedRemovals, xn as DependencyError, xr as isAmbiguousCcHandlerErrorCode, xt as startInterruptWatch, z as isQuotableImportValue, zn as SynthesisError } from "./created-resource-sink-BpB3iPvn.js";
3
+ import { $ as isTerminalDeleteFailure, $n as physicalIdShownBesideCommand, $t as formatLockExpiry, An as MalformedProducerRecordRefusalError, Ar as isThrottlingError, At as stateOrphanRecordRemedy, B as normalizeAwsTagsToCfn, Bt as createdBeforeFailure, Cn as DeploymentNotApprovedError, Dr as retryClassificationText, Er as isTransientServerError, Et as logicalIdShown, F as assertRegionMatch, Fn as ResourceUpdateNotSupportedError, Ft as maskerOrIdentity, Gt as markAuxiliaryFailure, H as refusalTypeShown, Hn as isSoftAbort, Ht as hasCreatedBeforeFailure, It as withDerivedNameMasks, Jn as UNSHOWABLE_VALUE, Jt as replayMadeAnotherResource, K as ProtectionFlipRegistry, Kn as SHELL_ACTIVE, Kt as markCreatedBeforeFailure, Lt as RETRY_AUXILIARY_OWNER, M as RESOURCE_NOT_FOUND, Mr as markRedactedCause, Mt as createMaskedRetryLogger, N as isMarkedNotGone, Nn as ProvisioningError, Nr as wrapMaskedAwsError, Nt as isSecretDerivedValue, On as LockError, Ot as resourceTypeShown, P as markNotGone, Pn as ResourceTimeoutError, Pt as maskDeep, Qn as pasteableCommand, Rn as StateError, Rt as carryCreatedBeforeFailure, Sr as isAmbiguousOutcomeError, St as canonicalizeRoute53QueryName, Tn as IntrinsicResolutionRefusalError, Tr as isRetryableTransientError, Un as normalizeAwsError, Ut as isAuxiliaryFailure, V as quotedRemedyLogicalId, Vt as createdResourceIdentityBeforeFailure, W as resolveExplicitPhysicalId, Wt as isAuxiliaryMarkOf, Xt as buildForceUnlockCommand, Y as deleteWithProtectionCompensation, Yn as commandHole, Yt as UNREPRODUCIBLE_LOCK_CLAUSE, Zn as isInertUnquoted, _ as prepareRemovalForUpdate, _n as AssetError, _r as stripControlChars, an as DEFAULT_STATE_PREFIX, bn as CrossAccountSecretRefusalError, br as formatRetryClassificationSignals, bt as isInterruptedWaitError, cr as hasReplayMayCollide, dn as withPasteableAwsProfile, dr as isRecreateRetryableError, dt as pasteableAwsCommand, en as formatLockOperation, er as plainOrDescribed, fn as ambientClientDefaults, fr as isReplayedNameCollisionFrom, ft as protectedReplacementAdvice, gn as AccountIdUnavailableError, gr as escapeRegExp$3, gt as monotonicNowMs, h as withUnchangedSecretPrincipalLists, hn as credentialFingerprint, hr as relayedNameCollision, ht as ElapsedBudgetRegistry, i as reportCreatedResource, in as CUSTOM_RESOURCE_RESPONSE_PREFIX, ir as withheldTargetClause, it as runDeleteAttempt, j as withoutServerErrorRetries, jr as markNonRetryable, jt as createMaskedLogSinks, kn as MacroExpansionError, kr as isMarkedNonRetryable, kt as segmentAfterAnchor, ln as producerRecordKey, lr as isNameCollisionErrorFrom, mn as clientDefaultsFor, mr as markReplayMayCollide, mt as ElapsedBudget, n as clearCreatedReport, nn as recoveryCommandFlags, nr as shellBoundedDisplay, nt as protectionFlipKey, o as retractCreatedResource, on as injectiveKey, pn as ambientCredentialConfig, q as compensateProtectionFlip, qn as SHELL_ACTIVE_WHY, r as collectCreatedResources, rn as sanitizeRecoveryValue, rr as shellQuote, sr as isUpdateUnsupportedError, st as DELETION_PROTECTION_DOC_POINTER, t as CreatedResourceSink, tn as formatLockOwner, tr as quotedOrDescribed, tt as observeThenDisableProtection, u as holdsSecretDerivedEntry, ur as isNameCooldownError, v as removalWarning, vn as CdkdError, wn as DynamicReferenceRegionAmbiguousError, wr as isIamPropagationError, wt as compositeIdSeparatorRefusal, x as withoutInjectedRemovals, xn as DependencyError, xr as isAmbiguousCcHandlerErrorCode, xt as startInterruptWatch, z as isQuotableImportValue, zn as SynthesisError } from "./created-resource-sink-CmrPwGge.js";
4
4
  import { a as setAssumedRoleCredentials, c as ambientRegion, i as getPreAssumeEnvCredentials, n as awsClientDefaults, o as setPreAssumeEnvCredentials, r as getAssumedRoleCredentials, s as quietS3Logger, t as SECOND_ROLE_PUBLISH_REFUSAL } from "./aws-client-defaults-BLXFsfMa.js";
5
- import { t as getCdkdVersion } from "./version-C3yhae4b.js";
5
+ import { t as getCdkdVersion } from "./version-DWSVZXE5.js";
6
6
  import { createHash, randomUUID } from "node:crypto";
7
7
  import { AsyncLocalStorage } from "node:async_hooks";
8
8
  import { CreateBucketCommand, DeleteObjectCommand, DeleteObjectsCommand, GetBucketLifecycleConfigurationCommand, GetBucketLocationCommand, GetBucketReplicationCommand, GetObjectCommand, HeadBucketCommand, HeadObjectCommand, ListObjectVersionsCommand, ListObjectsV2Command, NoSuchKey, PutBucketEncryptionCommand, PutBucketLifecycleConfigurationCommand, PutBucketPolicyCommand, PutObjectCommand, PutPublicAccessBlockCommand, S3Client, S3ServiceException } from "@aws-sdk/client-s3";
@@ -16546,21 +16546,20 @@ const PROPERTY_COVERAGE_BY_TYPE = /* @__PURE__ */ new Map([
16546
16546
  "Port",
16547
16547
  "PreferredBackupWindow",
16548
16548
  "PreferredMaintenanceWindow",
16549
+ "RestoreToTime",
16550
+ "RestoreType",
16549
16551
  "RotateMasterUserPassword",
16550
16552
  "ServerlessV2ScalingConfiguration",
16553
+ "SnapshotIdentifier",
16554
+ "SourceDBClusterIdentifier",
16551
16555
  "StorageEncrypted",
16552
16556
  "StorageType",
16553
16557
  "Tags",
16558
+ "UseLatestRestorableTime",
16554
16559
  "VpcSecurityGroupIds"
16555
16560
  ]),
16556
- silentDrop: /* @__PURE__ */ new Map([
16557
- ["RestoreToTime", "not yet implemented by cdkd"],
16558
- ["RestoreType", "not yet implemented by cdkd"],
16559
- ["SnapshotIdentifier", "not yet implemented by cdkd"],
16560
- ["SourceDBClusterIdentifier", "not yet implemented by cdkd"],
16561
- ["UseLatestRestorableTime", "not yet implemented by cdkd"]
16562
- ]),
16563
- createOnlyDrops: /* @__PURE__ */ new Set(["SnapshotIdentifier", "SourceDBClusterIdentifier"]),
16561
+ silentDrop: /* @__PURE__ */ new Map(),
16562
+ createOnlyDrops: /* @__PURE__ */ new Set(),
16564
16563
  readOnly: /* @__PURE__ */ new Set([
16565
16564
  "ClusterResourceId",
16566
16565
  "Endpoint",
@@ -16627,9 +16626,9 @@ const PROPERTY_COVERAGE_BY_TYPE = /* @__PURE__ */ new Map([
16627
16626
  "WriteProvisionedThroughputSettings"
16628
16627
  ]),
16629
16628
  silentDrop: /* @__PURE__ */ new Map([
16630
- ["GlobalTableSourceArn", "not yet implemented by cdkd"],
16631
- ["GlobalTableWitnesses", "not yet implemented by cdkd"],
16632
- ["MultiRegionConsistency", "not yet implemented by cdkd"]
16629
+ ["GlobalTableSourceArn", "Multi-account replica: CDK's TableV2MultiAccountReplica renders no KeySchema (which create() requires) and DynamoDB asks for a ResourcePolicy on the CreateTable (measured 2026-11-01), a cross-account path this provider cannot exercise. Stays on Cloud Control"],
16630
+ ["GlobalTableWitnesses", "MRSC witness; same one-call UpdateTable shape as MultiRegionConsistency, measured 2026-11-01. Stays on Cloud Control"],
16631
+ ["MultiRegionConsistency", "MRSC does not fit the per-replica serial paths: measured 2026-11-01 (us-east-1 / us-east-2 / us-west-2), the replica and witness Creates must go out in ONE UpdateTable with the mode, a lone replica Delete is refused ('does not include all witnesses'), DeleteTable is refused until they are gone, TTL is refused, and the table carries no stream, which create()'s needsStream arm would enable. Stays on Cloud Control"]
16633
16632
  ]),
16634
16633
  createOnlyDrops: /* @__PURE__ */ new Set(),
16635
16634
  readOnly: /* @__PURE__ */ new Set([
@@ -16828,12 +16827,13 @@ const PROPERTY_COVERAGE_BY_TYPE = /* @__PURE__ */ new Map([
16828
16827
  "LocalGatewayId",
16829
16828
  "NatGatewayId",
16830
16829
  "NetworkInterfaceId",
16830
+ "OdbNetworkArn",
16831
16831
  "RouteTableId",
16832
16832
  "TransitGatewayId",
16833
16833
  "VpcEndpointId",
16834
16834
  "VpcPeeringConnectionId"
16835
16835
  ]),
16836
- silentDrop: /* @__PURE__ */ new Map([["OdbNetworkArn", "not yet implemented by cdkd"]]),
16836
+ silentDrop: /* @__PURE__ */ new Map(),
16837
16837
  createOnlyDrops: /* @__PURE__ */ new Set(),
16838
16838
  readOnly: /* @__PURE__ */ new Set(["CidrBlock"]),
16839
16839
  ccRouteUnavailable: false
@@ -17011,6 +17011,7 @@ const PROPERTY_COVERAGE_BY_TYPE = /* @__PURE__ */ new Map([
17011
17011
  "EnableECSManagedTags",
17012
17012
  "EnableExecuteCommand",
17013
17013
  "ForceNewDeployment",
17014
+ "GatewayConnectors",
17014
17015
  "HealthCheckGracePeriodSeconds",
17015
17016
  "LaunchType",
17016
17017
  "LoadBalancers",
@@ -17030,7 +17031,7 @@ const PROPERTY_COVERAGE_BY_TYPE = /* @__PURE__ */ new Map([
17030
17031
  "VolumeConfigurations",
17031
17032
  "VpcLatticeConfigurations"
17032
17033
  ]),
17033
- silentDrop: /* @__PURE__ */ new Map([["GatewayConnectors", "not yet implemented by cdkd"]]),
17034
+ silentDrop: /* @__PURE__ */ new Map(),
17034
17035
  createOnlyDrops: /* @__PURE__ */ new Set(),
17035
17036
  readOnly: /* @__PURE__ */ new Set(["Name", "ServiceArn"]),
17036
17037
  ccRouteUnavailable: false
@@ -17646,17 +17647,14 @@ const PROPERTY_COVERAGE_BY_TYPE = /* @__PURE__ */ new Map([
17646
17647
  "HttpEndpointDestinationConfiguration",
17647
17648
  "IcebergDestinationConfiguration",
17648
17649
  "KinesisStreamSourceConfiguration",
17650
+ "MSKSourceConfiguration",
17649
17651
  "RedshiftDestinationConfiguration",
17650
17652
  "S3DestinationConfiguration",
17651
17653
  "SplunkDestinationConfiguration",
17652
17654
  "Tags"
17653
17655
  ]),
17654
- silentDrop: /* @__PURE__ */ new Map([
17655
- ["DatabaseSourceConfiguration", "not yet implemented by cdkd"],
17656
- ["MSKSourceConfiguration", "not yet implemented by cdkd"],
17657
- ["SnowflakeDestinationConfiguration", "not yet implemented by cdkd"]
17658
- ]),
17659
- createOnlyDrops: /* @__PURE__ */ new Set(["DatabaseSourceConfiguration", "MSKSourceConfiguration"]),
17656
+ silentDrop: /* @__PURE__ */ new Map([["DatabaseSourceConfiguration", "Database as a source was a public preview AWS removed on 2025-09-24 (Firehose document history); CreateDeliveryStream refused DeliveryStreamType DatabaseAsSource in every region probed, so an SDK path could not be verified. Stays on Cloud Control"], ["SnowflakeDestinationConfiguration", "Proving the wire shape live needs a real Snowflake account, and the block carries key material (PrivateKey, KeyPassphrase). Stays on Cloud Control"]]),
17657
+ createOnlyDrops: /* @__PURE__ */ new Set(["DatabaseSourceConfiguration"]),
17660
17658
  readOnly: /* @__PURE__ */ new Set(["Arn"]),
17661
17659
  ccRouteUnavailable: false
17662
17660
  }],
@@ -18124,6 +18122,7 @@ const PROPERTY_COVERAGE_BY_TYPE = /* @__PURE__ */ new Map([
18124
18122
  "AllocatedStorage",
18125
18123
  "AllowMajorVersionUpgrade",
18126
18124
  "AutoMinorVersionUpgrade",
18125
+ "AvailabilityZone",
18127
18126
  "BackupRetentionPeriod",
18128
18127
  "CACertificateIdentifier",
18129
18128
  "CertificateRotationRestart",
@@ -18132,6 +18131,7 @@ const PROPERTY_COVERAGE_BY_TYPE = /* @__PURE__ */ new Map([
18132
18131
  "DBClusterIdentifier",
18133
18132
  "DBInstanceClass",
18134
18133
  "DBInstanceIdentifier",
18134
+ "DBName",
18135
18135
  "DBParameterGroupName",
18136
18136
  "DBSubnetGroupName",
18137
18137
  "DedicatedLogVolume",
@@ -18174,12 +18174,10 @@ const PROPERTY_COVERAGE_BY_TYPE = /* @__PURE__ */ new Map([
18174
18174
  ["AutomaticBackupReplicationKmsKeyId", "not yet implemented by cdkd"],
18175
18175
  ["AutomaticBackupReplicationRegion", "not yet implemented by cdkd"],
18176
18176
  ["AutomaticBackupReplicationRetentionPeriod", "not yet implemented by cdkd"],
18177
- ["AvailabilityZone", "not yet implemented by cdkd"],
18178
18177
  ["BackupTarget", "not yet implemented by cdkd"],
18179
18178
  ["CharacterSetName", "not yet implemented by cdkd"],
18180
18179
  ["CustomIAMInstanceProfile", "not yet implemented by cdkd"],
18181
18180
  ["DBClusterSnapshotIdentifier", "not yet implemented by cdkd"],
18182
- ["DBName", "not yet implemented by cdkd"],
18183
18181
  ["DBSecurityGroups", "EC2-Classic-only feature retired by AWS (2022-08-15); new accounts cannot use this — use VPCSecurityGroups instead"],
18184
18182
  ["DBSnapshotIdentifier", "not yet implemented by cdkd"],
18185
18183
  ["DBSystemId", "not yet implemented by cdkd"],
@@ -18211,7 +18209,6 @@ const PROPERTY_COVERAGE_BY_TYPE = /* @__PURE__ */ new Map([
18211
18209
  "BackupTarget",
18212
18210
  "CharacterSetName",
18213
18211
  "CustomIAMInstanceProfile",
18214
- "DBName",
18215
18212
  "DBSystemId",
18216
18213
  "NcharCharacterSetName",
18217
18214
  "SourceRegion",
@@ -28611,7 +28608,7 @@ var CloudControlProvider = class {
28611
28608
  const indeterminateGuard = await this.confirmDeleteTargetIdentity(logicalId, resourceType, physicalId, context);
28612
28609
  if (context?.removeProtection === true && resourceType === "AWS::AutoScaling::AutoScalingGroup") {
28613
28610
  this.logger.debug(`Delegating protected AutoScalingGroup ${logicalId} delete to the SDK ASGProvider (Cloud Control cannot force-delete a protected ASG)`);
28614
- const { ASGProvider } = await import("./asg-provider-T9K-NVi8.js");
28611
+ const { ASGProvider } = await import("./asg-provider-DIQU27yo.js");
28615
28612
  const delegateRegion = ambientRegion();
28616
28613
  let asgProvider = this.asgDeleteDelegates.get(delegateRegion);
28617
28614
  if (asgProvider === void 0) {
@@ -28720,7 +28717,7 @@ var CloudControlProvider = class {
28720
28717
  const family = SDK_DELETE_FAMILIES.get(resourceType);
28721
28718
  const cached = this.sdkDeleteDelegates.get(family);
28722
28719
  if (cached !== void 0 && cached.region === ccRegion) return cached.provider;
28723
- const provider = family === "rds" ? new (await (import("./rds-provider-CIjO2Do5.js"))).RDSProvider({ region: ccRegion }) : new (await (import("./neptune-provider-BsA7jGiV.js"))).NeptuneProvider({ region: ccRegion });
28720
+ const provider = family === "rds" ? new (await (import("./rds-provider-BenOBQ9u.js"))).RDSProvider({ region: ccRegion }) : new (await (import("./neptune-provider-DzedCIWf.js"))).NeptuneProvider({ region: ccRegion });
28724
28721
  this.sdkDeleteDelegates.set(family, {
28725
28722
  region: ccRegion,
28726
28723
  provider
@@ -32997,6 +32994,21 @@ function validatePropertyShapes(resources) {
32997
32994
  throw new Error("Properties validation failed: the following resources declare a property whose kind contradicts the resource type's schema:\n" + lines.join("\n") + "\n\nCloudFormation rejects these templates too. Give each property a list where its schema expects a list and an object where it expects an object.");
32998
32995
  }
32999
32996
 
32997
+ // src/provisioning/sticky-exempt-physical-id.ts
32998
+ const ECS_SERVICE_CC_ID = /^(arn:aws[-a-z]*:ecs:[a-z0-9-]+:\d{12}:service\/([A-Za-z0-9_-]+)(?:\/([A-Za-z0-9_-]+))?)\|([^|\s]+)$/;
32999
+ const CLUSTER_ARN = /^arn:aws[-a-z]*:ecs:[a-z0-9-]+:\d{12}:cluster\/([A-Za-z0-9_-]+)$/;
33000
+ const CLUSTER_NAME = /^[A-Za-z0-9_-]+$/;
33001
+ function ecsServiceSdkPhysicalId(ccPhysicalId) {
33002
+ const match = ECS_SERVICE_CC_ID.exec(ccPhysicalId);
33003
+ if (match === null) throw new Error("its recorded physical id is not the `<serviceArn>|<cluster>` form Cloud Control records for AWS::ECS::Service");
33004
+ const [, serviceArn, first, second, clusterSegment] = match;
33005
+ const clusterArn = CLUSTER_ARN.exec(clusterSegment);
33006
+ if (clusterArn === null && !CLUSTER_NAME.test(clusterSegment)) throw new Error("the cluster segment of its recorded physical id is neither a cluster name nor a cluster ARN");
33007
+ const clusterName = clusterArn === null ? clusterSegment : clusterArn[1];
33008
+ if (second !== void 0 && first !== clusterName) throw new Error("its recorded physical id names one cluster in the service ARN and another after the `|`");
33009
+ return serviceArn;
33010
+ }
33011
+
33000
33012
  // src/provisioning/provider-registry.ts
33001
33013
  const STICKY_CC_MIGRATION_EXEMPT = /* @__PURE__ */ new Map([
33002
33014
  ["AWS::Scheduler::Schedule", {
@@ -33064,8 +33076,27 @@ const STICKY_CC_MIGRATION_EXEMPT = /* @__PURE__ */ new Map([
33064
33076
  physicalIdForm: "both layers store the bare `Z...` zone id, without the `/hostedzone/` prefix Route 53 answers with: the schema primaryIdentifier is Id, Route53Provider.create strips the prefix, and the Cloud Control Identifier has none (measured us-east-1, 2026-11-02)",
33065
33077
  issue: "https://github.com/go-to-k/cdkd/issues/5641",
33066
33078
  integFixture: "cc-to-sdk-reroute-hosted-zone"
33079
+ }],
33080
+ ["AWS::ECS::Service", {
33081
+ mode: "sdk-coverage",
33082
+ physicalIdForm: "Cloud Control stores `<serviceArn>|<cluster>` (the schema primaryIdentifier is ServiceArn + Cluster; measured us-east-1, 2026-11-03) while ECSProvider.create records the bare CreateService serviceArn; normalizeCcPhysicalId keeps the ARN part, which the fixture observed equal to the live service ARN",
33083
+ issue: "https://github.com/go-to-k/cdkd/issues/5654",
33084
+ integFixture: "cc-to-sdk-reroute-ecs-service",
33085
+ normalizeCcPhysicalId: ecsServiceSdkPhysicalId
33067
33086
  }]
33068
33087
  ]);
33088
+ function sdkAddressedPhysicalId(resourceType, physicalId, logicalId) {
33089
+ const entry = STICKY_CC_MIGRATION_EXEMPT.get(resourceType);
33090
+ const normalize = entry?.normalizeCcPhysicalId;
33091
+ if (normalize === void 0) return physicalId;
33092
+ try {
33093
+ return normalize(physicalId);
33094
+ } catch (error) {
33095
+ const reason = describeAwsFailure(error).detail;
33096
+ const remedy = entry?.mode === "sdk-coverage" ? ` Pass --pin-cc-api ${logicalId} to keep it on Cloud Control.` : "";
33097
+ throw new Error(`${logicalId} (${resourceType}) cannot move from Cloud Control to its SDK provider: ${reason}.${remedy}`);
33098
+ }
33099
+ }
33069
33100
  const CC_BROKEN_REASON = "Cloud Control's handler cannot manage this type correctly";
33070
33101
  function ccBrokenReason(resourceType) {
33071
33102
  return STICKY_CC_MIGRATION_EXEMPT.get(resourceType)?.mode === "cc-broken" ? CC_BROKEN_REASON : void 0;
@@ -33158,7 +33189,7 @@ var ProviderRegistry = class {
33158
33189
  if (actionableDrops.length === 0) {
33159
33190
  debug(`Using specific SDK provider for ${resourceType}`);
33160
33191
  if (returningToSdk) {
33161
- debug(`${resourceType} is returning to its SDK provider from a state-recorded cc-api route; physical id is preserved`);
33192
+ debug(`${resourceType} is returning to its SDK provider from a state-recorded cc-api route; the resource is updated in place`);
33162
33193
  return {
33163
33194
  provider: specificProvider,
33164
33195
  provisionedBy: "sdk",
@@ -34472,6 +34503,48 @@ function provenanceBaselineOf(state, tokenFree) {
34472
34503
  };
34473
34504
  }
34474
34505
 
34506
+ // src/deployment/label-routing.ts
34507
+ function deriveLabelRouting(change, existingState, registry, forceCcApi = false) {
34508
+ try {
34509
+ if (change.changeType === "DELETE") return existingState?.provisionedBy;
34510
+ return registry.getProviderFor({
34511
+ resourceType: change.resourceType,
34512
+ properties: change.desiredProperties ?? {},
34513
+ provisionedBy: existingState?.provisionedBy,
34514
+ previousProperties: existingState?.properties,
34515
+ forceCcApi
34516
+ }).provisionedBy;
34517
+ } catch {
34518
+ return;
34519
+ }
34520
+ }
34521
+
34522
+ // src/deployment/deploy-engine/routing.ts
34523
+ function isPinnedToCcApi(options, stackName, logicalId) {
34524
+ return options.pinCcApi?.stackName === stackName && options.pinCcApi.logicalIds.has(logicalId);
34525
+ }
34526
+ function recreateDirectionFor(options, stackName, logicalId) {
34527
+ const targets = options.recreateTargets?.stackName === stackName ? options.recreateTargets : void 0;
34528
+ if (targets === void 0) return void 0;
34529
+ if (targets.viaCcApi.has(logicalId)) return "cc-api";
34530
+ if (targets.viaSdkProvider.has(logicalId)) return "sdk";
34531
+ }
34532
+ function peekRoutingForLabel(providerRegistry, options, change, existingState, stackName, logicalId, needsReplacement = false, recreateDirection) {
34533
+ if (needsReplacement) {
34534
+ const hintRecord = {
34535
+ ...recreateDirection !== void 0 && { provisionedBy: recreateDirection },
34536
+ ...existingState?.properties !== void 0 && { properties: existingState.properties }
34537
+ };
34538
+ return deriveLabelRouting(change, hintRecord, providerRegistry, recreateDirection === "cc-api");
34539
+ }
34540
+ return deriveLabelRouting(change, existingState, providerRegistry, isPinnedToCcApi(options, stackName, logicalId));
34541
+ }
34542
+ function preparePropertiesForCcApi(providerRegistry, resourceType, resolvedProps, logicalId, underivable = "refuse") {
34543
+ const sdkProvider = providerRegistry.getRegisteredTypes().includes(resourceType) ? providerRegistry.getProvider(resourceType) : void 0;
34544
+ if (sdkProvider?.preparePropertiesForFallback) return sdkProvider.preparePropertiesForFallback(logicalId, resourceType, resolvedProps);
34545
+ return applyDefaultNameForFallback(logicalId, resourceType, resolvedProps, underivable);
34546
+ }
34547
+
34475
34548
  // src/provisioning/final-snapshot.ts
34476
34549
  const ATOMIC_FINAL_SNAPSHOT_TYPES = /* @__PURE__ */ new Set([
34477
34550
  "AWS::RDS::DBInstance",
@@ -35463,16 +35536,17 @@ async function readRecordAttributes(input) {
35463
35536
  const { provider, logicalId, resource, stackName, region } = input;
35464
35537
  if (!provider.import) return { kind: "not-attempted" };
35465
35538
  if (!hasAddressablePhysicalId(resource)) return { kind: "not-attempted" };
35539
+ const physicalId = resource.provisionedBy === "cc-api" && !(provider instanceof CloudControlProvider) ? sdkAddressedPhysicalId(resource.resourceType, resource.physicalId, logicalId) : resource.physicalId;
35466
35540
  const found = await provider.import({
35467
35541
  logicalId,
35468
35542
  resourceType: resource.resourceType,
35469
35543
  stackName,
35470
35544
  region,
35471
35545
  properties: resource.properties,
35472
- knownPhysicalId: resource.physicalId
35546
+ knownPhysicalId: physicalId
35473
35547
  });
35474
35548
  if (found === null) return { kind: "not-found" };
35475
- if (found.physicalId !== resource.physicalId) throw new Error(`the provider answered for a different resource (${found.physicalId}) than the one asked about (${resource.physicalId})`);
35549
+ if (found.physicalId !== physicalId) throw new Error(`the provider answered for a different resource (${found.physicalId}) than the one asked about (${physicalId})`);
35476
35550
  const reported = Object.entries(normalizeHealedAttributes(found.attributes));
35477
35551
  const attributes = Object.fromEntries(reported.filter(([, value]) => !carriesSecretMask(value)));
35478
35552
  const withheldKeys = reported.filter(([, value]) => carriesSecretMask(value)).map(([key]) => key);
@@ -35839,7 +35913,8 @@ async function noEchoAttributeOverridesFor(run, deps, desiredProps, stateResourc
35839
35913
  resourceType: record.resourceType,
35840
35914
  properties: record.properties,
35841
35915
  provisionedBy: record.provisionedBy,
35842
- previousProperties: record.properties
35916
+ previousProperties: record.properties,
35917
+ ...deps.pinnedToCcApi?.(stackName, logicalId) === true && { forceCcApi: true }
35843
35918
  });
35844
35919
  const outcome = await readRecordAttributes({
35845
35920
  provider,
@@ -36453,7 +36528,7 @@ function replayStackRecordsView(records, orphanLogicalIds = /* @__PURE__ */ new
36453
36528
  }
36454
36529
 
36455
36530
  // src/provisioning/restore-source-guard.ts
36456
- const RESTORING_TYPES = /* @__PURE__ */ new Set(["AWS::Neptune::DBCluster"]);
36531
+ const RESTORING_TYPES = /* @__PURE__ */ new Set(["AWS::DocDB::DBCluster", "AWS::Neptune::DBCluster"]);
36457
36532
  function clusterName(identifier) {
36458
36533
  return (identifier.split(":").pop() ?? identifier).toLowerCase();
36459
36534
  }
@@ -36463,8 +36538,15 @@ function elsewhere(identifier, scope) {
36463
36538
  const differs = (carried, known) => Boolean(carried) && known !== void 0 && carried !== known;
36464
36539
  return differs(region, scope.region) || differs(account, scope.account);
36465
36540
  }
36541
+ function automatedSnapshotOf(snapshot, name) {
36542
+ const id = snapshot.startsWith("arn:") ? snapshot.split(":cluster-snapshot:")[1] ?? "" : snapshot;
36543
+ const match = /^rds:(.+)-\d{4}-\d{2}-\d{2}-\d{2}-\d{2}$/i.exec(id);
36544
+ return match !== null && match[1].toLowerCase() === name;
36545
+ }
36466
36546
  function refuseRestoreFromItself(resourceType, properties, physicalId, logicalId, scope) {
36467
36547
  if (!RESTORING_TYPES.has(resourceType)) return;
36548
+ const snapshot = properties["SnapshotIdentifier"];
36549
+ if (typeof snapshot === "string" && automatedSnapshotOf(snapshot, clusterName(physicalId)) && !elsewhere(snapshot, scope)) throw markNonRetryable(new ProvisioningError(safeMsg`${resourceType} ${logicalId}: SnapshotIdentifier names an automated snapshot of the cluster this creates or replaces, which its delete removes; restore from a manual snapshot instead. Nothing was changed.`, resourceType, logicalId, physicalId));
36468
36550
  const source = properties["SourceDBClusterIdentifier"];
36469
36551
  if (typeof source !== "string" || clusterName(source) !== clusterName(physicalId)) return;
36470
36552
  if (elsewhere(source, scope)) return;
@@ -40168,6 +40250,7 @@ async function replayReverseReplacement(s) {
40168
40250
  secrets
40169
40251
  };
40170
40252
  const deleteNewResourceFirst = async (purpose) => {
40253
+ refuseRestoreFromItself(oldType, prev.properties ?? {}, current.physicalId, op.logicalId, { region: ctx.region });
40171
40254
  const finalSnapshotIdentifier = rollbackFinalSnapshotId(op.resourceType, current, op.provisionedBy);
40172
40255
  const deleteNewFirstRoute = resolveNewDeleteRoute();
40173
40256
  const deleteNewFirst = await withReplayDeletePrinting(s, () => deleteNewFirstRoute.provider.delete(op.logicalId, current.physicalId, op.resourceType, current.properties, {
@@ -41331,7 +41414,8 @@ var AttributeHealer = class {
41331
41414
  resourceType: resource.resourceType,
41332
41415
  properties: resource.properties,
41333
41416
  provisionedBy: resource.provisionedBy,
41334
- previousProperties: resource.properties
41417
+ previousProperties: resource.properties,
41418
+ ...this.deps.pinnedToCcApi?.(stackName, logicalId) === true && { forceCcApi: true }
41335
41419
  });
41336
41420
  const outcome = await withPrintingSecrets(healPrintingBag(this.deps.baseline, logicalId, resource, this.deps.namingSecrets()), () => readRecordAttributes({
41337
41421
  provider,
@@ -46542,48 +46626,6 @@ function isRefusedBeforeApplying(error, logicalId) {
46542
46626
  return false;
46543
46627
  }
46544
46628
 
46545
- // src/deployment/label-routing.ts
46546
- function deriveLabelRouting(change, existingState, registry, forceCcApi = false) {
46547
- try {
46548
- if (change.changeType === "DELETE") return existingState?.provisionedBy;
46549
- return registry.getProviderFor({
46550
- resourceType: change.resourceType,
46551
- properties: change.desiredProperties ?? {},
46552
- provisionedBy: existingState?.provisionedBy,
46553
- previousProperties: existingState?.properties,
46554
- forceCcApi
46555
- }).provisionedBy;
46556
- } catch {
46557
- return;
46558
- }
46559
- }
46560
-
46561
- // src/deployment/deploy-engine/routing.ts
46562
- function isPinnedToCcApi(options, stackName, logicalId) {
46563
- return options.pinCcApi?.stackName === stackName && options.pinCcApi.logicalIds.has(logicalId);
46564
- }
46565
- function recreateDirectionFor(options, stackName, logicalId) {
46566
- const targets = options.recreateTargets?.stackName === stackName ? options.recreateTargets : void 0;
46567
- if (targets === void 0) return void 0;
46568
- if (targets.viaCcApi.has(logicalId)) return "cc-api";
46569
- if (targets.viaSdkProvider.has(logicalId)) return "sdk";
46570
- }
46571
- function peekRoutingForLabel(providerRegistry, options, change, existingState, stackName, logicalId, needsReplacement = false, recreateDirection) {
46572
- if (needsReplacement) {
46573
- const hintRecord = {
46574
- ...recreateDirection !== void 0 && { provisionedBy: recreateDirection },
46575
- ...existingState?.properties !== void 0 && { properties: existingState.properties }
46576
- };
46577
- return deriveLabelRouting(change, hintRecord, providerRegistry, recreateDirection === "cc-api");
46578
- }
46579
- return deriveLabelRouting(change, existingState, providerRegistry, isPinnedToCcApi(options, stackName, logicalId));
46580
- }
46581
- function preparePropertiesForCcApi(providerRegistry, resourceType, resolvedProps, logicalId, underivable = "refuse") {
46582
- const sdkProvider = providerRegistry.getRegisteredTypes().includes(resourceType) ? providerRegistry.getProvider(resourceType) : void 0;
46583
- if (sdkProvider?.preparePropertiesForFallback) return sdkProvider.preparePropertiesForFallback(logicalId, resourceType, resolvedProps);
46584
- return applyDefaultNameForFallback(logicalId, resourceType, resolvedProps, underivable);
46585
- }
46586
-
46587
46629
  // src/deployment/deploy-engine/resolver-context.ts
46588
46630
  function buildResolverContext(deps, base, stackName) {
46589
46631
  const recordedSecretValues = /* @__PURE__ */ new Map();
@@ -48386,6 +48428,11 @@ var DynamoDBGlobalTableProvider = class {
48386
48428
  "VectorIndexes",
48387
48429
  "WarmThroughput"
48388
48430
  ])]]);
48431
+ unhandledByDesign = /* @__PURE__ */ new Map([["AWS::DynamoDB::GlobalTable", /* @__PURE__ */ new Map([
48432
+ ["MultiRegionConsistency", "MRSC does not fit the per-replica serial paths: measured 2026-11-01 (us-east-1 / us-east-2 / us-west-2), the replica and witness Creates must go out in ONE UpdateTable with the mode, a lone replica Delete is refused ('does not include all witnesses'), DeleteTable is refused until they are gone, TTL is refused, and the table carries no stream, which create()'s needsStream arm would enable. Stays on Cloud Control"],
48433
+ ["GlobalTableWitnesses", "MRSC witness; same one-call UpdateTable shape as MultiRegionConsistency, measured 2026-11-01. Stays on Cloud Control"],
48434
+ ["GlobalTableSourceArn", "Multi-account replica: CDK's TableV2MultiAccountReplica renders no KeySchema (which create() requires) and DynamoDB asks for a ResourcePolicy on the CreateTable (measured 2026-11-01), a cross-account path this provider cannot exercise. Stays on Cloud Control"]
48435
+ ])]]);
48389
48436
  constructor() {
48390
48437
  const awsClients = getAwsClients();
48391
48438
  this.dynamoDBClient = awsClients.dynamoDB;
@@ -52667,18 +52714,22 @@ function ccAutoRouteUpdateFailureRemedy(logicalId, resourceType, autoRoutedPrope
52667
52714
  }
52668
52715
 
52669
52716
  // src/deployment/deploy-engine/update-in-place.ts
52670
- async function updateInPlace(engine, { changedProperties, conditions, counts, currentProps, currentPropsAsWritten, currentResource, dependencies, desiredForSkipCheckAsWritten, logicalId, noEchoHeldPaths, parameterValues, progress, renderer, resolvedProps, resourceType, stackName, stateResources, template, updateReplacePolicy, updateSecrets, reattach }) {
52717
+ async function updateInPlace(engine, { changedProperties, conditions, counts, currentProps, currentPropsAsWritten, currentResource: recordedResource, dependencies, desiredForSkipCheckAsWritten, logicalId, noEchoHeldPaths, parameterValues, progress, renderer, resolvedProps, resourceType, stackName, stateResources, template, updateReplacePolicy, updateSecrets, reattach }) {
52671
52718
  engine.logger.debug(safeMsg`Updating ${logicalId} (${resourceType})`);
52672
52719
  const updateDecision = engine.providerRegistry.getProviderFor({
52673
52720
  resourceType,
52674
52721
  properties: resolvedProps,
52675
- provisionedBy: currentResource.provisionedBy,
52676
- previousProperties: currentResource.properties,
52722
+ provisionedBy: recordedResource.provisionedBy,
52723
+ previousProperties: recordedResource.properties,
52677
52724
  ...isPinnedToCcApi(engine.options, stackName, logicalId) && { forceCcApi: true }
52678
52725
  });
52726
+ const currentResource = updateDecision.sdkMigration === true ? {
52727
+ ...recordedResource,
52728
+ physicalId: sdkAddressedPhysicalId(resourceType, recordedResource.physicalId, logicalId)
52729
+ } : recordedResource;
52679
52730
  if (updateDecision.sdkMigration === true) {
52680
52731
  const exemptMode = STICKY_CC_MIGRATION_EXEMPT.get(resourceType)?.mode;
52681
- const preserved = "The physical id is preserved";
52732
+ const preserved = currentResource.physicalId === recordedResource.physicalId ? "The physical id is preserved" : "The resource is kept in place, and its recorded physical id takes the SDK provider's form";
52682
52733
  let message;
52683
52734
  switch (exemptMode) {
52684
52735
  case "cc-broken":
@@ -52784,6 +52835,7 @@ async function updateInPlace(engine, { changedProperties, conditions, counts, cu
52784
52835
  } catch (updateError) {
52785
52836
  const ccUnsupported = isUpdateUnsupportedError(updateError, logicalId);
52786
52837
  const replaceOptIn = updateError instanceof ResourceUpdateNotSupportedError && engine.options.replace === true;
52838
+ if ((ccUnsupported || replaceOptIn) && currentResource.physicalId !== recordedResource.physicalId) throw markNonRetryable(new CdkdError(safeMsg`${logicalId} (${resourceType}) needs a replacement for this change, which cdkd ` + `does not run on the deploy that moves it from Cloud Control to its SDK provider. ` + safeMsg`Re-run with --pin-cc-api ${logicalId} to replace it through Cloud Control.`, "SDK_MIGRATION_REPLACEMENT_REFUSED", updateError instanceof Error ? updateError : void 0));
52787
52839
  if (ccUnsupported || replaceOptIn) {
52788
52840
  const fallbackStackInstanceId = getCurrentStackInstanceId();
52789
52841
  const fallbackGeneration = fallbackStackInstanceId === void 0 ? void 0 : nextNameGeneration(currentResource, logicalId, fallbackStackInstanceId);
@@ -55379,7 +55431,8 @@ var DeployEngine = class {
55379
55431
  logger: this.logger,
55380
55432
  baseline: resources,
55381
55433
  resolvedSecretsOf: (logicalId) => this.secretsRun.perResourceSecrets.get(logicalId),
55382
- namingSecrets: () => stateNamingSecrets(this.secretsRun)
55434
+ namingSecrets: () => stateNamingSecrets(this.secretsRun),
55435
+ pinnedToCcApi: (stackName, logicalId) => isPinnedToCcApi(this.options, stackName, logicalId)
55383
55436
  });
55384
55437
  return this.attributeHealer;
55385
55438
  }
@@ -55409,7 +55462,8 @@ var DeployEngine = class {
55409
55462
  perResourceResolvedType: () => this.secretsRun.perResourceResolvedType,
55410
55463
  outputsRun: () => this.outputsRun,
55411
55464
  readReaderForFreshNoEchoCeiling: (...args) => readReaderForFreshNoEchoCeiling(this.maskingDeps(), ...args),
55412
- maskForResource: (...args) => maskForResource(this.secretsRun, ...args)
55465
+ maskForResource: (...args) => maskForResource(this.secretsRun, ...args),
55466
+ pinnedToCcApi: (stackName, logicalId) => isPinnedToCcApi(this.options, stackName, logicalId)
55413
55467
  };
55414
55468
  }
55415
55469
  maskingDeps() {
@@ -55718,4 +55772,4 @@ function sameGenerationClaimsOf(record) {
55718
55772
  }
55719
55773
 
55720
55774
  export { sendTtlWaitingOutRateLimit as $, assertFlagRoleArn as $a, literalSplitDelimitersOf as $c, ccBrokenReason as $i, hasReasonlessBaselineRefusal as $l, retiredAfterRollback as $n, malformedOrphansRefusalMessage as $o, isSupersededResourceRecord as $r, MULTI_REGION_RECREATE_BLOCKED_TYPES as $s, isHandledOrphan as $t, getLegacyStateBucketName as $u, DYNAMODB_DELETE_MIN_RESOURCE_TIMEOUT_MS as A, INTRINSIC_KEYS as Aa, TemplateParser as Ac, hasPlainPrototype$1 as Ad, refusesFinalSnapshot as Ai, recordNoEchoAttributeValues as Al, demoteSupersededOrphans as An, declaresNoEcho as Ao, movedToHint as Ar, refuseMalformedResourcesForDeploy as As, makeCanonicalizePropertiesFn as At, buildDockerImage as Au, deleteTableWithIndexBusyRetry as B, s3BucketArn as Ba, passedNoEchoParametersOf as Bc, clearBucketRegionCache as Bd, isRefusedByName as Bi, CrossPrefixReadError as Bl, orphanNeedsIdentity as Bn, hasReadableOutputs as Bo, destroyStackRecordsView as Br, unpreviewableOrphanRecords as Bs, dropSettledNestedJournals as Bt, isMalformedEnvKey as Bu, planContributorInsightsOp as C, disableInstanceApiTermination as Ca, dbInstanceEngineChangeIsInPlace as Cc, StageLoadError as Cd, ATOMIC_FINAL_SNAPSHOT_TYPES as Ci, recordAttributeIdCopy as Cl, recordAfterRollbackUpdate as Cn, isStalePlaceholderArnAttribute as Co, DEFAULT_RESOURCE_WARN_AFTER_MS as Cr, refuseMalformedResourceEntriesForImport as Cs, enclosingDeadlineExpired as Ct, getBootstrapMarkerKey as Cu, reverseMapTableContributorInsights as D, reDisableInstanceApiTermination as Da, lambdaFunctionNameForMask as Dc, utf8ByteLength as Dd, createPreDeleteFinalSnapshot as Di, provenPublicValue as Dl, equalModuloMarkedMask as Dn, withSharedDrainBudget as Do, formatDestructiveChange as Dr, refuseMalformedResourcePropertiesForDrift as Ds, isSecretBearingReferenceString as Dt, validateAssetBucketName as Du, reverseMapIndexContributorInsights as E, observeThenDisableInstanceApiTermination as Ea, canonicalLambdaFunctionName as Ec, parseFailureDebugDetail as Ed, ccRoutedFinalSnapshotError as Ei, carriesSecretMask as El, calculateResourceDrift as En, parseWebACLArn as Eo, findDestructiveChanges as Er, refuseMalformedResourcePropertiesForDestroy as Es, diffSecurity as Et, readBootstrapMarkerBody as Eu, resolveDynamoDbDeleteBudgetClock as F, withUnsettledProperties as Fa, maskWholeValue as Fc, displayAssemblyPath as Fd, withCreateTokenLedger as Fi, isSingleDynamicReferenceToken as Fl, recheckFailedPlan as Fn, UNREADABLE_RESOURCES_MAP_ROW as Fo, mappingPairs as Fr, repairMalformedOrphansForReadOnly as Fs, keptForRetainedRecord as Ft, dockerSpawnEnvWithSensitive as Fu, readbackVectorIndexes as G, resolveDynamicReferences as Ga, liveMatchesUnresolvedTokenFrame as Gc, readTagList as Gi, isNotImplemented as Gl, isRedactedRecordedValue as Gn, malformedExportNamesWarning as Go, cyan as Gr, findHandledUnwrittenCreateOnly as Gs, revertedNestedRowIds as Gt, runDockerForeground as Gu, relayedIndexBusyDelete as H, s3BucketDualStackDomainName as Ha, readsNoEchoSource as Hc, DBPROXY_TAGS_WHAT as Hi, applyCrossPrefixScan as Hl, getCurrentProducerRegions as Hn, isReadableOrphanRecord as Ho, withStackRecords as Hr, unreadableResourceEntries as Hs, nestedChildStackName as Ht, redactDockerArgvValues as Hu, resolveDynamoDbDeleteBudgetMs as I, withoutUnsettledProperties as Ia, maskedLeafCoordinatesOf as Ic, renderAssemblyPathEscape as Id, acquireIdempotencyToken as Ii, LockManager as Il, recordUnderIdIsNotOwn as In, accountArgs as Io, parseMappingFile as Ir, repairMalformedOutputsForReadOnly as Is, recordRetainedForReadoption as It, finchSecretArgvRefusal as Iu, vectorIndexesShapeDetail as J, keepHeldTokenProvenance as Ja, recordReferenceProvenanceEntry as Jc, tagPlanWarning as Ji, splitImportedOps as Jl, updatePartialMessage as Jn, malformedLocalResourceEntriesWarning as Jo, red as Jr, withoutSilentDropProperties as Js, getCurrentNestedStackContext as Jt, AssetManifestLoader as Ju, vectorIndexesForCreate as K, producerLookupOver as Ka, markSameGenerationBag as Kc, refuseMalformedDesiredTags as Ki, stackInstanceIdOf as Kl, redactedDeleteAddressFields as Kn, malformedExportSourceWarning as Ko, gray as Kr, findSilentDropProperties as Ks, withNestedRevertRun as Kt, runDockerStreaming as Ku, DELETE_INDEX_WAIT_PROCEED_NOTE as L, IntrinsicFunctionResolver as La, noEchoCoordinatesOf as Lc, resolveAssemblyPath as Ld, DeploymentEventsReader as Li, isLockInfoExpired as Ll, replacementNeverSwapped as Ln, deployRefusesOrphanRowsReason as Lo, proposeRenames as Lr, repairMalformedResourceEntriesForReadOnly as Ls, NESTED_PENDING_PARENT_REASON as Lt, formatDockerLoginError as Lu, beginDeleteWait as M, unsettledItemsField as Ma, isMarkedCoordinate as Mc, ownValue as Md, earliestDefined as Mi, recordProvenPublicExpression as Ml, isReplacementOrphan as Mn, STATE_REGION_DIVERGED as Mo, withMovedTo as Mr, refuseMalformedResourcesForExport as Ms, planOrphanAdoption as Mt, describeDockerCapturedOutput as Mu, compensateRemovedDeletionProtection as N, unsettledItemsOf as Na, maskAtCoordinates as Nc, absoluteAssemblyPathEscape as Nd, ledgerForStack as Ni, wholeStringLeavesOf as Nl, planFailedOps as Nn, STATE_RESOURCES_MALFORMED as No, isPairableType as Nr, refuseMalformedState as Ns, pendingRequestCount as Nt, describeDockerExecFailure as Nu, stripIndexContributorInsights as O, reEnableInstanceApiTermination as Oa, sameLambdaFunctionAddress as Oc, defineOwnKey as Od, effectiveDeletionPolicy as Oi, recordMaskOnlyValue as Ol, equalModuloMask as On, parameterInputsFor as Oo, findRefactorHints as Or, refuseMalformedResourcePropertiesForExport as Os, keptWholeReasonText as Ot, validateContainerRepoName as Ou, deleteBudgetKey as P, unsettledPropertiesOf as Pa, maskReadbackAtCoordinates as Pc, describeFileReadFailure as Pd, reserveStackCreateToken as Pi, WHOLE_DYNAMIC_REFERENCE_PATTERN as Pl, planRollback as Pn, UNREADABLE_ORPHANS_CONTAINER_ROW as Po, looselyEqual as Pr, repairMalformedOrphanRecordsForReadOnly as Ps, resolvePendingCloudControlRequests as Pt, describeDockerFailure as Pu, readTtlSpec as Q, applyRoleArnIfSet as Qa, hasMaskableValues as Qc, ProviderRegistry as Qi, hasReadableExportSet as Ql, nameScopeOf as Qn, malformedOrphanRowsKeptWarning as Qo, holdsSupersededResources as Qr, shownType as Qs, dropFailedHint as Qt, getDefaultStateBucketName as Qu, INDEX_SETTLE_POLL_INTERVAL_MS as R, poisonRenderedSpellingsCollidingIn as Ra, noEchoLeavesOf as Rc, injectAwsRegion as Rd, DeploymentEventsStore as Ri, S3StateBackend as Rl, resolveReplacementOldType as Rn, displayLogicalId as Ro, refuseRestoreFromItself as Rr, repairMalformedResourcePropertiesForReadOnly as Rs, displacedOpClause as Rt, getDockerCmd as Ru, indexDeclaresContributorInsights as S, markWaitAbandoned as Sa, blockDeviceMappingsDifferOnlyInDeleteOnTermination as Sc, AssemblyReader as Sd, storedSecretNameNeedles as Si, physicalNameCopiesOf as Sl, removeProtectionTypeList as Sn, cfnRefValueFromPhysicalId as So, DEFAULT_RESOURCE_TIMEOUT_MS as Sr, refuseMalformedResourceEntriesForDestroy as Ss, readRecordedConditionVerdicts as St, ensureAssetStorage as Su, readContributorInsightsSpec as T, isTerminationProtectionPropagationError as Ta, emrClusterInstancesReplaced as Tc, describeJsonParseFailure as Td, buildFinalSnapshotIdentifier as Ti, splitGetAttStringForm as Tl, withUnprovenUnsettled as Tn, refStateLookupFromResource as To, constructPathOf as Tr, refuseMalformedResourceEntriesForOrphan as Ts, withResourceDeadline as Tt, parseBootstrapMarker as Tu, waitForIndexesSettled as U, s3BucketRegionalDomainName as Ua, recordedNoEchoValuesOf as Uc, DBPROXY_TAG_OPTIONS as Ui, crossPrefixDeniedWarning as Ul, inheritProducerRegions as Un, isReadableResourceEntry as Uo, replacedDeleteFailureVerdict as Ur, withheldAccountClause as Us, recordDisplacedSkips as Ut, redactedCause as Uu, maskedLogger as V, s3BucketDomainName as Va, readbackPathFor as Vc, resolveBucketRegion as Vd, markDeleteStarted as Vi, CrossPrefixScanCache as Vl, findNestedStackTypeChanges as Vn, hasReadableResources as Vo, getStackRecords as Vr, unreadableOrphanRecords as Vs, getNestedRevertRun as Vt, partitionSensitiveEnv as Vu, planVectorIndexUpdates as W, s3BucketWebsiteUrl as Wa, valueAtCoordinate as Wc, planTagDiff as Wi, isAccessDenied$1 as Wl, REDACTED_DELETE_ADDRESS_SKIP_REASON as Wn, malformedDriftResourcePropertiesWarning as Wo, bold as Wr, findActionableSilentDrops as Ws, revertNestedChildFromJournal as Wt, redactedDockerCause as Wu, isTtlRateLimited as X, recordedOutputReferenceRegions as Xa, carryLogOnlyValues as Xc, stringifyIfAssigned as Xi, describeRegionValueKind as Xl, nameGenerationCarriedFrom as Xn, malformedOrphanRecordsRefusalMessage as Xo, addSuperseded as Xr, hasNoCloudControlHandlers as Xs, deleteJournaledOrphans as Xt, Synthesizer as Xu, isTtlAlreadyDisabled as Y, outputReferenceProvenanceOf as Ya, snapshotPassProvenance as Yc, definedAttributes as Yi, acceptedCreateOnlyDropsOf as Yl, updatePartialReason as Yn, malformedLocalResourcesWarning as Yo, yellow as Yr, NO_CC_HANDLERS_REASON as Ys, withNestedStackContext as Yt, getDockerImageBySourceHash as Yu, planTimeToLive as Z, recordedReferenceRegions as Za, createUnionSecretMasker as Zc, CC_BROKEN_REASON as Zi, exportNamesCarriedFrom as Zl, nameGenerationHighWaterOf as Zn, malformedOrphanRecordsWarning as Zo, deleteSupersededEntry as Zr, findReplacedReadersOfRecreateTargets as Zs, dropFailedCommands as Zt, synthesisStatusMessage as Zu, streamMemberRefusals as _, deleteIndeterminateGuards as _a, requireConfigString as _c, decodeListingKey as _d, secretNamePrintingBag as _i, spelledKeysOf as _l, pendingMovesOutOf as _n, carriesDynamicReference as _o, noEchoParameterValueSeed as _r, refuseMalformedOutputs as _s, renderNestedTemplateTreeDefect as _t, loadPublishableAssetManifest as _u, isProtectionValueActive as a, isCustomResourceType as aa, isWarmThroughputDecrease as ac, resolveStateBucketWithDefault as ad, withoutSuperseded as ai, unionOfSecretBags as al, chunks as an, applyCallerIdentityCredentials as ao, reachableDivergentParameters as ar, malformedResourcePropertiesWarning as as, markRefusedBeforeApplying as at, orphansCarriedFrom as au, CONTRIBUTOR_INSIGHTS_KEY as b, withIndeterminateGuard as ba, describeTypeWithThrottleRetry as bc, canonicalizeRegion as bd, secretNamedRecordNeedles as bi, recordNestedStackParameterExpressions as bl, replayFailedOperations as bn, keepsSecretReferenceToken as bo, isExportAliasCollision as br, refuseMalformedResourceEntries as bs, conditionInputsFrom as bt, BOOTSTRAP_MARKER_PREFIX as bu, DynamoDBGlobalTableProvider as c, CUSTOM_RESOURCE_RESPONSE_LIFECYCLE_RULE_ID as ca, coerceCfnBoolean as cc, stateBucketExistenceConfirmed as cd, noEchoExactEchoLeavesOf as ci, maskSecretsInError as cl, withApiLimit as cn, classifyRecordedSecretRegion as co, displayTextOrWithheld as cr, malformedStateRefusalMessage as cs, crossStackOutputProvenanceSource as ct, PhaseClock as cu, declaredStreamPolicyMember as d, CloudControlProvider as da, configIntegerRefusal as dc, CFN_TEMPLATE_BODY_LIMIT as dd, createReadOnlyAttributeHealerFactory as di, withPhysicalNameCopies as dl, refactorMarkerMovesOf as dn, regionLessSecretName as do, secretBearingStateKeyWarning as dr, refuseMalformedNestedChildOutputs as ds, findServiceTokenRefusals as dt, AssetPublisher as du, isCustomResource as ea, isStatefulRecreateTargetForReplace as ec, loadCdkJson as ed, removeSuperseded as ei, logOnlyValueCount as el, journaledOrphanLines as en, assertSendableRoleArn as eo, retiredNameGenerationsAfter as er, malformedOrphansWarning as es, ECR_AUTO_DELETE_IMAGES_TAG as et, hasUnverifiableParameterRefusal as eu, declaredStreamTagsMember as f, slowCcOperationTimeoutMs as fa, configStringRefusal as fc, CFN_TEMPLATE_URL_LIMIT as fd, completedReplayEntries as fi, withoutPhysicalNameCopies as fl, refactorMarkerRefusalMessage as fn, coerceParameterTypedValue as fo, secretSafeKeyDisplay as fr, refuseMalformedOrphanRecords as fs, serviceTokenBlockingReason as ft, isSensitiveAttributeName as fu, streamDeclaresTags as g, UNSPECIFIED_SKIP_REASON as ga, requireConfigObject as gc, CUSTOM_RESOURCE_RESPONSE_OBJECT_DESCRIPTION as gd, orphanRecordsPrintingBag as gi, pathCrossesDottedKey as gl, hasPendingMovesOut as gn, isImpossibleEmptyStoredAttribute as go, isWholeDynamicReferenceValue as gr, refuseMalformedOrphansForOrphan as gs, listNestedTemplateRows as gt, createAssetRedirectResolver as gu, streamDeclaresPolicy as h, RollbackInlinePolicyWriters as ha, requireConfigArray as hc, uploadCfnTemplate as hd, namingSecretsWithRecordedNoEcho as hi, isUncertifiedBaselineMaskPosition as hl, updateRefactorMarker as hn, getAccountInfo as ho, exportNameSecretExposure as hr, refuseMalformedOrphansForDestroy as hs, isAbsoluteAssetPath as ht, buildAssetRedirectMap as hu, PROTECTION_PROPERTY_BY_TYPE as i, readsNoEchoDeleteValues as ia, coerceWarmThroughput as ic, resolveSkipPrefix as id, supersededResourcesOf as ii, shareLogOnlyValues as il, formatResourceLine as in, AWS_CREDENTIAL_ENV_KEYS as io, namesAnyDeclaredParameter as ir, malformedResourceEntriesWarning as is, getPriorAttempts as it, orphansAfterRollback as iu, DYNAMODB_DELETE_POLL_COST_MS as j, isUsableAttemptedName as ja, canonicalCoordinates as jc, nullPrototypeRecord as jd, unsupportedFinalSnapshotError as ji, recordNoEchoParameterFreshValue as jl, isJournaledOrphan as jn, JSON_LISTING_HOLE_VALUE as jo, rollbackOrphanIds as jr, refuseMalformedResourcesForDestroy as js, makeSiblingClaimReader as jt, resolveDockerContextDirectory as ju, DYNAMODB_DELETE_DEADLINE_MARGIN_MS as k, DiffCalculator as ka, DagBuilder as kc, hasOwnKey as kd, isFinalSnapshotError as ki, recordMaskOnlyValuesIn as kl, undeclaredEmptyObservedKeys as kn, passedParameterClassesOf as ko, hintSidesOf as kr, refuseMalformedResourcePropertiesForOrphan as ks, mergeNoChangeOutputs as kt, buildDenyExternalAccessPolicy as ku, STREAM_POLICY_KEY as l, applyCustomResourceResponseExpiration as la, coerceCfnInteger as lc, warnDeprecatedNoPrefixCliFlag as ld, noEchoParameterNamesOf as li, maskSecretsInText as ll, readRefactorMarker as ln, classifyReplaySecretRegion as lo, exportAliasCollisionScrubWarning as lr, previewableOrphanRecords as ls, inheritedProvenanceForChildDiff as lt, renderPhaseTimings as lu, reverseMapStreamPolicy as m, unchangedBehindSecretReference as ma, replayWarn as mc, findLargeInlineResources as md, maskEventTextWithBoundBags as mi, dynamicReferenceTokens as ml, sameMove as mn, parameterTypeMayLoseSecretIdentity as mo, exportNameNoEchoParameters as mr, refuseMalformedOrphans as ms, findNestedTemplateTreeDefect as mt, WorkGraph as mu, recordedProtectionEvidence as n, waitForLambdaFunctionActive as na, renderStatefulReason as nc, resolveAutoAssetStorage as nd, supersededHeldByOtherTypeWarning as ni, recordLogOnlyParameterValue as nl, makeForeignHolderScan as nn, isIamRoleArn as no, withNameGenerationReached as nr, malformedOutputsWarning as ns, hasCdkAutoDeleteTag as nt, importableOutputs as nu, perType as o, getCurrentResourceSecrets as oa, toCfnInteger as oc, resolveStateBucketWithDefaultAndSource as od, noEchoAttributeNamesOf as oi, createSecretMasker as ol, isAccessDeniedError as on, callerEnvCredentials as oo, resourcesNamingDeclaredParameter as or, malformedResourcesWarning as os, IMPLICIT_DELETE_DEPENDENCIES as ot, shouldRetainResource as ou, planStreamMemberOps as p, onlySecretReferencesDiffer as pa, readConfigString as pc, MIGRATE_TMP_PREFIX as pd, journaledOrphanPrintingBag as pi, DYNAMIC_REFERENCE_TOKEN_SCAN as pl, refuseRefactorMarker as pn, isUnboundTemplateParameter as po, carriedExportAliasExposure as pr, refuseMalformedOrphanRecordsForDestroy as ps, childTemplateLoader as pt, stringifyValue as pu, vectorIndexesSettled as q, refuseUnreadableCdkCrossAccountRefs as qa, redactForState as qc, tagMapAsList as qi, withStackInstanceIdWithheld as ql, redactedDeleteAddressSkip as qn, malformedLocalOutputsWarning as qo, green as qr, unwrittenCreateOnlyReplacement as qs, collectNestedChildUnaddressed as qt, warnFinchArgvExposure as qu, recordedProtectionNote as r, TemplateNoEchoReresolver as ra, WARM_THROUGHPUT_MEMBERS as rc, resolveCaptureObservedState as rd, supersededHolderOf as ri, recordLogOnlyValue as rl, sameJournaledOrphans as rn, sendableAssumeRoleCommand as ro, computeParameterTaint as rr, malformedRenderedContainersWarning as rs, isTruthyCfnBoolean as rt, isReadableBag as ru, readProtection as s, withPrintingSecrets as sa, toFiniteNumber as sc, resolveUseCdkBootstrapAssets as sd, noEchoComparisonForTemplate as si, errorCauseChain as sl, lookupEachName as sn, envCredentialsAreAssumedRole as so, WITHHELD_NAME_DISPLAY as sr, malformedScrubResourceEntriesRefusalMessage as ss, computeImplicitDeleteEdges as st, stackInstanceIdCarriedFrom as su, DeployEngine as t, wouldReturnToSdkProvider as ta, isStatefulRecreateTargetSync as tc, resolveApp as td, supersededAfterRollback as ti, printingCorpusOf as tl, loadJournaledOrphans as tn, explicitRoleArnOrThrow as to, retiredNameGenerationsLeaving as tr, malformedOutputsRefusalMessage as ts, S3_AUTO_DELETE_OBJECTS_TAG as tt, importableOutputKeys as tu, STREAM_TAGS_KEY as u, customResourceResponseExpirationWarning as ua, configBooleanRefusal as uc, ssmResolvedValueType as ud, withAttemptedItemsMasked as ui, scrubResourceRecord as ul, readRefactorMarkerOnce as un, producerRegionsFromState as uo, secretBearing as ur, refuseDivergentRecordRegionForDestroy as us, deferredServiceTokenWarning as ut, timePhase as uu, streamPolicyMatchesDeclared as v, deleteLeftInPlace as va, prefetchCreateOnlyPropertyPaths as vc, expectedOwnerParam as vd, secretNamePrintingBags as vi, identityKeyFor as vl, pendingMovesRefusalMessage as vn, carriesFetchableDynamicReference as vo, collectDeclaredOutputNames as vr, refuseMalformedOutputsForDestroy as vs, templateIdentity as vt, rewriteTemplateAssetReferences as vu, planIndexContributorInsightsOps as w, ec2InstanceProtectionSite as wa, ecsServiceLaunchTypeSetOrChanged as wc, processStackMessages as wd, PRE_DELETE_SNAPSHOT_TYPES as wi, recordPhysicalNameCopy as wl, settleUnsettledPrevious as wn, lacksRecordedTableArn as wo, maskingRetryLogger as wr, refuseMalformedResourceEntriesForImportSave as ws, enclosingDeadlineRemainingMs as wt, isCrossRegionRedirect as wu, contributorInsightsRefusals as x, isWaitAbandonedError as xa, withRetry as xc, derivePartitionAndUrlSuffix as xd, stateSecretNameNeedles as xi, recoverMaskedOutput as xl, replayRollback as xn, AWS_NO_VALUE as xo, bindingSkippedOutputs as xr, refuseMalformedResourceEntriesForDeploy as xs, parentSuppliedValues as xt, assertAssetBucketRegion as xu, streamTagsMatchDeclared as y, deleteSkipReason as ya, templateResourceTypes as yc, PARTITION_TABLE as yd, secretNamedAttributeNamesOf as yi, inheritNestedStackParameterAssociations as yl, refusePendingMovesOut as yn, isNamelessDynamicReferenceError as yo, collectPublishedOutputNames as yr, refuseMalformedResourceAttributesForOrphan as ys, conditionFingerprint as yt, AssetModeResolver as yu, TABLE_INDEX_NOUN as z, isSettledInstanceState as za, noEchoOutputsComparison as zc, injectedAwsRegionValue as zd, extractDeploymentEventError as zi, rebuildClientForBucketRegion as zl, seedsDeleteFirstGuard as zn, hasReadableOrphans as zo, awaitInFlightSibling as zr, repairMalformedResourcesForReadOnly as zs, displacedPhysicalIdShown as zt, isDockerClientEnvKey as zu };
55721
- //# sourceMappingURL=deploy-engine-CVYhHEgq.js.map
55775
+ //# sourceMappingURL=deploy-engine-pGWgnV-6.js.map