@go-to-k/cdkd 0.301.2 → 0.301.4

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 (31) hide show
  1. package/dist/{asg-provider--t5d-gjf.js → asg-provider--GY-B-zI.js} +8 -15
  2. package/dist/asg-provider--GY-B-zI.js.map +1 -0
  3. package/dist/cli.js +2 -2
  4. package/dist/{deploy-engine--5XWdjW3.js → deploy-engine-BIPU9Xdh.js} +1524 -1184
  5. package/dist/deploy-engine-BIPU9Xdh.js.map +1 -0
  6. package/dist/{iam-policy-targets-DFk7zr0Q.js → iam-policy-targets-BkeM7IXi.js} +6 -3
  7. package/dist/iam-policy-targets-BkeM7IXi.js.map +1 -0
  8. package/dist/{iam-role-provider-Bwgqyn6-.js → iam-role-provider-C58oW5zG.js} +7 -6
  9. package/dist/iam-role-provider-C58oW5zG.js.map +1 -0
  10. package/dist/index.d.ts +3 -5
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +3 -3
  13. package/dist/{neptune-provider-DjEVKBcV.js → neptune-provider-DoKgbZCz.js} +14 -16
  14. package/dist/neptune-provider-DoKgbZCz.js.map +1 -0
  15. package/dist/{program-DEPit8lD.js → program-DYfZCsxM.js} +131 -260
  16. package/dist/program-DYfZCsxM.js.map +1 -0
  17. package/dist/{provider-classes-CDxfoC_T.js → provider-classes-BSUoljqw.js} +383 -414
  18. package/dist/provider-classes-BSUoljqw.js.map +1 -0
  19. package/dist/{rds-provider-BvZhdkOC.js → rds-provider-DI_O0_iG.js} +14 -14
  20. package/dist/rds-provider-DI_O0_iG.js.map +1 -0
  21. package/dist/{version-DUYEmFtp.js → version-Bft5jrTk.js} +2 -2
  22. package/dist/{version-DUYEmFtp.js.map → version-Bft5jrTk.js.map} +1 -1
  23. package/package.json +2 -2
  24. package/dist/asg-provider--t5d-gjf.js.map +0 -1
  25. package/dist/deploy-engine--5XWdjW3.js.map +0 -1
  26. package/dist/iam-policy-targets-DFk7zr0Q.js.map +0 -1
  27. package/dist/iam-role-provider-Bwgqyn6-.js.map +0 -1
  28. package/dist/neptune-provider-DjEVKBcV.js.map +0 -1
  29. package/dist/program-DEPit8lD.js.map +0 -1
  30. package/dist/provider-classes-CDxfoC_T.js.map +0 -1
  31. package/dist/rds-provider-BvZhdkOC.js.map +0 -1
@@ -1,20 +1,18 @@
1
1
  import { a as runWithStackAwsClients, i as resetAwsClients, o as setAwsClients, t as AwsClients } from "./aws-clients-B_CEQGE1.js";
2
2
  import { A as UNRENDERABLE, B as safeMsg, D as SAFE_MSG_ALTERED_CHAR, F as displaySafe, H as terminalSafe, I as displayStackName, L as isPasteableIdent, M as cutMarker, N as displayAwsMessage, O as SECRET_REF_MAX_CODE_POINTS, P as displayIdent, T as withStackName, U as truncateCodePoints, V as stringifyJsonPayload, _ as derivesPatternBName, a as getLogger, f as getLiveRenderer, h as PATTERN_B_RESOURCE_TYPES, k as STACK_REF_MAX_CODE_POINTS, l as runStackBuffered, m as PATTERN_B_NAME_PROPERTIES, o as isStdoutReservedForPayload, p as PATTERN_B_NAME_OPTIONS, r as safeStringify, s as reserveStdoutForPayload, t as describeAwsFailure, v as explicitNamePropertyFor, w as withSkipPrefix, y as generateResourceName, z as plainIdentOr } from "./aws-failure-text-BEQfs6za.js";
3
- import { $t as ambientCredentialConfig, Bn as shellBoundedDisplay, Bt as formatLockOperation, Cn as StateError, D as VALUE_NOT_SHOWN, Dn as normalizeAwsError, E as assertRegionMatch, Fn as isInertUnquoted, Ft as UNREPRODUCIBLE_LOCK_CLAUSE, G as runDeleteAttempt, Gt as DEFAULT_STATE_PREFIX, Hn as withheldTargetClause, In as pasteableCommand, It as buildForceUnlockCommand, Jt as producerCoordinateKey, Kt as injectiveKey, Lt as buildLockContentionMessage, Nn as commandHole, On as withErrorHandling, P as remedyLogicalId, Qt as ambientClientDefaults, Rn as plainOrDescribed, Rt as forceQuitRecoveryClause, Sn as StackTerminationProtectionError, T as RESOURCE_NOT_FOUND, Un as setPasteableRunFlags, Vn as shellQuote, Vt as formatLockOwner, Wn as setPasteableVerbFlags, Wt as CUSTOM_RESOURCE_RESPONSE_PREFIX, Xt as setPasteableAwsProfile, Yt as producerRecordKey, Z as isAwsCliLiteral, Zt as withPasteableAwsProfile, _n as PartialFailureError, ar as isRetryableTransientError, bn as ResourceUpdateNotSupportedError, cn as DeployCancelledError, dn as LocalInvokeBuildError$1, dr as markNonRetryable, en as clientDefaultsFor, fn as LocalStartServiceError, ft as logicalIdShown, gn as NestedStackChildDirectDestroyError, hn as MalformedProducerRecordRefusalError, in as CdkdError, it as isInterruptedWaitError, jn as SHELL_ACTIVE_WHY, kn as TIMEOUT_FLAG_RESOURCE_TYPE, ln as DynamicReferenceRegionAmbiguousError, lr as isMarkedNonRetryable, mt as resourceTypeShown, n as RESOLVED_PREVIOUS_PRINCIPAL_KEYS, nn as AccountIdUnavailableError, nr as isAmbiguousOutcomeError, nt as endCommandInterruptScope, on as CrossAccountSecretRefusalError, or as isTransientServerError, rt as interruptWatchListenerCount, s as readRecordedPrincipals, sr as retryClassificationText, t as IAM_PRINCIPAL_NAME, tn as credentialFingerprint, tt as beginCommandInterruptScope, un as IntrinsicResolutionRefusalError, ur as isThrottlingError, vn as ProvisioningError, wn as SynthesisError, xn as StackHasActiveImportsError, yn as ResourceTimeoutError, zn as quotedOrDescribed, zt as formatLockExpiry } from "./iam-policy-targets-DFk7zr0Q.js";
4
- import { a as setAssumedRoleCredentials, l as runInStackAwsScope, n as awsClientDefaults, r as getAssumedRoleCredentials, u as formatAuthority } from "./aws-client-defaults-DBXBcg0J.js";
5
- import { $a as unpreviewableOrphanRecords, $c as stripControlChars, $i as hasReadableOutputs, $n as unsupportedFinalSnapshotError, $o as carryLogOnlyValues, $r as poisonRenderedSpellingsCollidingIn, $s as crossPrefixDeniedWarning, $t as isJournaledOrphan, A as diffSecurity, Aa as refuseMalformedOutputs, Ac as readBootstrapMarkerBody, Ai as isImpossibleEmptyStoredAttribute, Al as StageLoadError, An as collectPublishedOutputNames, Ao as prefetchCreateOnlyPropertyPaths, Ar as CUSTOM_RESOURCE_RESPONSE_LIFECYCLE_RULE_ID, As as recordPhysicalNameCopy, At as NESTED_PENDING_PARENT_REASON, B as readProtection, Ba as refuseMalformedResourcePropertiesForDrift, Bc as finchSecretArgvRefusal, Bi as withSharedDrainBudget, Bl as renderAssemblyPathEscape, Bn as secretNamePrintingBags, Bo as isMarkedCoordinate, Br as deleteSkipReason, Bs as STATE_SOURCED_BASELINE_RULES, Bt as collectNestedChildUnaddressed, Ca as refuseDivergentRecordRegionForDestroy, Cc as AssetModeResolver, Ci as classifyReplaySecretRegion, Cl as CUSTOM_RESOURCE_RESPONSE_OBJECT_DESCRIPTION, Cn as secretSafeKeyDisplay, Cr as isCustomResource, Cs as pathCrossesDottedKey, Ct as dropFailedCommands, D as findServiceTokenRefusals, Da as refuseMalformedOrphans, Dc as getBootstrapMarkerKey, Di as isUnboundTemplateParameter, Dl as canonicalizeRegion, Dn as isWholeDynamicReferenceValue, Dr as isCustomResourceType$1, Dt as loadJournaledOrphans, E as deferredServiceTokenWarning, Ea as refuseMalformedOrphanRecordsForDestroy, Ec as ensureAssetStorage, Ei as coerceParameterTypedValue, El as PARTITION_TABLE, En as exportNameSecretExposure, Er as readsNoEchoDeleteValues, Es as recordNestedStackParameterExpressions, Et as journaledOrphanLines, F as recordedProtectionEvidence, Fa as refuseMalformedResourceEntriesForDestroy, Fc as resolveDockerContextDirectory, Fi as AWS_NO_VALUE, Fl as nullPrototypeRecord, Fn as completedReplayEntries, Fs as recordMaskOnlyValuesIn, Ft as nestedChildStackName$1, Ga as refuseMalformedResourcesForExport, Gc as partitionSensitiveEnv, Gi as STATE_REGION_DIVERGED, Gl as resolveBucketRegion, Gn as ATOMIC_FINAL_SNAPSHOT_TYPES, Go as noEchoCoordinatesOf, Gs as isSingleDynamicReferenceToken, Ha as refuseMalformedResourcePropertiesForOrphan, Hc as getDockerCmd, Hl as injectAwsRegion, Hn as stateSecretNameNeedles, Ho as maskReadbackAtCoordinates, Hr as isWaitAbandonedError, Hs as STATE_SOURCED_READBACK_RULES, Ht as withNestedStackContext, I as recordedProtectionNote, Ia as refuseMalformedResourceEntriesForImport, Ic as describeDockerCapturedOutput, Ii as cfnRefValueFromPhysicalId, Il as ownValue, In as journaledOrphanPrintingBag, Ir as RollbackInlinePolicyWriters, Is as recordNoEchoAttributeValues, It as recordDisplacedSkips, Ja as repairMalformedOrphansForReadOnly, Jc as redactedDockerCause, Ji as UNREADABLE_RESOURCES_MAP_ROW, Jn as ccRoutedFinalSnapshotError, Js as S3StateBackend, Jt as withStackRecords, Ka as refuseMalformedState, Kc as redactDockerArgvValues, Ki as STATE_RESOURCES_MALFORMED, Kn as PRE_DELETE_SNAPSHOT_TYPES, Ko as noEchoLeavesOf, Ks as LockManager, Kt as destroyStackRecordsView, L as PROTECTION_PROPERTY_BY_TYPE, La as refuseMalformedResourceEntriesForImportSave, Lc as describeDockerExecFailure, Li as isStalePlaceholderArnAttribute, Ll as absoluteAssemblyPathEscape, Ln as maskEventTextWithBoundBags, Lo as DagBuilder, Lr as UNSPECIFIED_SKIP_REASON, Ls as recordNoEchoParameterFreshValue, M as noEchoComparisonForTemplate, Ma as refuseMalformedResourceAttributesForOrphan, Mc as validateContainerRepoName, Mi as carriesFetchableDynamicReference, Ml as defineOwnKey, Mn as bindingSkippedOutputs, Mo as describeTypeWithThrottleRetry, Mr as customResourceResponseExpirationWarning, Ms as carriesSecretMask, Mt as displacedPhysicalIdShown, N as noEchoExactEchoLeavesOf, Na as refuseMalformedResourceEntries, Nc as buildDenyExternalAccessPolicy, Ni as isNamelessDynamicReferenceError, Nl as hasOwnKey, Nn as DEFAULT_RESOURCE_TIMEOUT_MS, No as withRetry, Nr as CloudControlProvider, Ns as provenPublicValue, Nt as dropSettledNestedJournals, O as serviceTokenBlockingReason, Oa as refuseMalformedOrphansForDestroy, Oc as isCrossRegionRedirect, Oi as parameterTypeMayLoseSecretIdentity, Ol as derivePartitionAndUrlSuffix, On as noEchoParameterValueSeed, Os as physicalNameCopiesOf, Ot as makeForeignHolderScan, P as noEchoParameterNamesOf, Pa as refuseMalformedResourceEntriesForDeploy, Pc as buildDockerImage, Pi as keepsSecretReferenceToken, Pl as hasPlainPrototype, Pn as DEFAULT_RESOURCE_WARN_AFTER_MS, Pr as slowCcOperationTimeoutMs, Ps as recordMaskOnlyValue, Qa as repairMalformedResourcesForReadOnly, Qc as escapeRegExp, Qi as hasReadableOrphans, Qn as refusesFinalSnapshot, Qo as liveMatchesUnresolvedTokenFrame, Qr as IntrinsicFunctionResolver, Qs as applyCrossPrefixScan, Qt as demoteSupersededOrphans, R as isProtectionValueActive, Ra as refuseMalformedResourceEntriesForOrphan, Rc as describeDockerFailure, Ri as refStateLookupFromResource, Rl as describeFileReadFailure, Rn as orphanRecordsPrintingBag, Ro as TemplateParser, Rr as deleteIndeterminateGuards, Rs as recordProvenPublicExpression, Rt as revertedNestedRowIds, Sa as previewableOrphanRecords, Sc as rewriteTemplateAssetReferences, Si as classifyRecordedSecretRegion, Sl as uploadCfnTemplate, Sn as secretBearingStateKeyWarning, Sr as ccBrokenReason, Ss as isUncertifiedBaselineMaskPosition, St as deleteJournaledOrphans, T as recordRetainedForReadoption, Ta as refuseMalformedOrphanRecords, Tc as assertAssetBucketRegion, Ti as regionLessSecretName, Tl as expectedOwnerParam, Tn as exportNameNoEchoParameters, Tr as TemplateNoEchoReresolver, Ts as inheritNestedStackParameterAssociations, Tt as isHandledOrphan, Ua as refuseMalformedResourcesForDeploy, Uc as isDockerClientEnvKey, Ui as declaresNoEcho, Ul as injectedAwsRegionValue, Un as storedSecretNameNeedles, Uo as maskWholeValue, Us as TEMPLATE_SOURCED_RULES, Ut as replayFailedOperations, Va as refuseMalformedResourcePropertiesForExport, Vc as formatDockerLoginError, Vi as parameterInputsFor, Vl as resolveAssemblyPath, Vn as secretNamedRecordNeedles, Vo as maskAtCoordinates, Vs as STATE_SOURCED_CROSS_GENERATION_RULES, Vt as getCurrentNestedStackContext, Wa as refuseMalformedResourcesForDestroy, Wc as isMalformedEnvKey, Wi as JSON_LISTING_HOLE_VALUE, Wn as extractDeploymentEventError, Wo as maskedLeafCoordinatesOf, Ws as WHOLE_DYNAMIC_REFERENCE_PATTERN, Wt as replayRollback, Xa as repairMalformedResourceEntriesForReadOnly, Xc as runDockerStreaming, Xi as deployRefusesOrphanRowsReason, Xn as effectiveDeletionPolicy, Xo as readsNoEchoSource, Xr as DiffCalculator, Xs as CrossPrefixReadError, Ya as repairMalformedOutputsForReadOnly, Yc as runDockerForeground, Yi as accountArgs, Yn as createPreDeleteFinalSnapshot, Yo as readbackPathFor, Ys as rebuildClientForBucketRegion, Yt as removeProtectionTypeList, Za as repairMalformedResourcePropertiesForReadOnly, Zc as warnFinchArgvExposure, Zi as displayLogicalId, Zn as isFinalSnapshotError, Zo as valueAtCoordinate, Zr as INTRINSIC_KEYS, Zs as CrossPrefixScanCache, Zt as recordAfterRollbackUpdate, _ as keptWholeReasonText, _a as malformedResourceEntriesWarning, _c as stringifyValue, _l as ssmResolvedValueType, _n as orphanNeedsIdentity, _s as scrubResourceRecord, _t as planOrphanAdoption, a as inheritedProvenanceForChildDiff, aa as malformedExportSourceWarning, ac as exportNamesCarriedFrom, ai as explicitRoleArnOrThrow, al as getDefaultStateBucketName, an as replacementNeverSwapped, ao as unwrittenCreateOnlyReplacement, ar as ledgerForStack, as as recordLogOnlyParameterValue, at as createReadOnlyAttributeHealerFactory, ba as malformedScrubResourceEntriesRefusalMessage, bc as createAssetRedirectResolver, bl as MIGRATE_TMP_PREFIX, bn as exportAliasCollisionScrubWarning, br as CC_BROKEN_REASON, bs as DYNAMIC_REFERENCE_TOKEN_SCAN, bt as pendingRequestCount, c as isAbsoluteAssetPath, ca as malformedLocalResourcesWarning, cc as hasUnverifiableParameterRefusal, ci as AWS_CREDENTIAL_ENV_KEYS, cl as resolveApp, cn as findNestedStackTypeChanges, co as hasNoCloudControlHandlers, cs as unionOfSecretBags, ct as gray, d as templateIdentity, da as malformedOrphanRowsKeptWarning, dc as isReadableBag, di as envCredentialsAreAssumedRole, dl as resolveSkipPrefix, do as MULTI_REGION_RECREATE_BLOCKED_TYPES, ds as maskSecretsInError, dt as yellow, ea as hasReadableResources, ec as isAccessDenied, ei as producerLookupOver, el as stripForDisplay, en as isReplacementOrphan, eo as unreadableOrphanRecords, er as maskingRetryLogger, es as createUnionSecretMasker, f as conditionFingerprint, fa as malformedOrphansRefusalMessage, fc as orphansAfterRollback, fl as resolveStateBucketWithDefault, fo as isStatefulRecreateTargetForReplace, fs as maskSecretsInText, ft as computeParameterTaint, g as isSecretBearingReferenceString, ga as malformedRenderedContainersWarning, gc as isSensitiveAttributeName, gi as recordedReferenceRegions, gl as warnDeprecatedNoPrefixCliFlag, gn as updatePartialReason, gs as redactSecretsForState, gt as makeSiblingClaimReader, h as readRecordedConditionVerdicts, ha as malformedOutputsWarning, hc as AssetPublisher, hi as recordedOutputReferenceRegions, hl as stateBucketExistenceConfirmed, hn as updatePartialMessage, ht as resourcesNamingDeclaredParameter, i as crossStackOutputProvenanceSource, ia as malformedExportNamesWarning, ic as describeRegionValueKind, ii as assertSendableRoleArn, il as synthesisStatusMessage, in as recordUnderIdIsNotOwn, is as printingCorpusOf, it as formatResourceLine, j as noEchoAttributeNamesOf, ja as refuseMalformedOutputsForDestroy, jc as validateAssetBucketName, ji as carriesDynamicReference, jl as processStackMessages, jn as isExportAliasCollision, jo as templateResourceTypes, jr as applyCustomResourceResponseExpiration, js as splitGetAttStringForm, jt as displacedOpClause, k as withResourceDeadline, ka as refuseMalformedOrphansForOrphan, kc as parseBootstrapMarker, ki as getAccountInfo, kl as AssemblyReader, kn as collectDeclaredOutputNames, kr as withPrintingSecrets, kt as sameJournaledOrphans, l as listNestedTemplateRows, la as malformedOrphanRecordsRefusalMessage, lc as importableOutputKeys, li as applyCallerIdentityCredentials, ll as resolveAutoAssetStorage, lo as findReplacedReadersOfRecreateTargets, ls as createSecretMasker, lt as green, m as parentSuppliedValues, ma as malformedOutputsRefusalMessage, mc as shouldRetainResource, ml as resolveUseCdkBootstrapAssets, mo as renderStatefulReason, mt as reachableDivergentParameters, n as IMPLICIT_DELETE_DEPENDENCIES, na as isReadableResourceEntry, nc as splitImportedOps, ni as applyRoleArnIfSet, nl as getDockerImageBySourceHash, nn as planRollback, no as withheldAccountClause, nr as findDestructiveChanges, ns as literalSplitDelimitersOf, o as childTemplateLoader, oa as malformedLocalOutputsWarning, oc as hasReadableExportSet, oi as isIamRoleArn, ol as getLegacyStateBucketName, on as resolveReplacementOldType, os as recordLogOnlyValue, ot as bold, p as conditionInputsFrom, pa as malformedOrphansWarning, pc as orphansCarriedFrom, pi as keepHeldTokenProvenance, pl as resolveStateBucketWithDefaultAndSource, po as isStatefulRecreateTargetSync, ps as markSameGenerationBag, pt as namesAnyDeclaredParameter, qa as repairMalformedOrphanRecordsForReadOnly, qc as redactedCause, qi as UNREADABLE_ORPHANS_CONTAINER_ROW, qn as buildFinalSnapshotIdentifier, qo as noEchoOutputsComparison, qs as isLockInfoExpired, r as computeImplicitDeleteEdges, ra as malformedDriftResourcePropertiesWarning, rc as acceptedCreateOnlyDropsOf, ri as assertFlagRoleArn, rl as Synthesizer, rn as recheckFailedPlan, ro as findActionableSilentDrops, rr as formatDestructiveChange, rs as logOnlyValueCount, s as findNestedTemplateTreeDefect, sa as malformedLocalResourceEntriesWarning, sc as hasReasonlessBaselineRefusal, si as sendableAssumeRoleCommand, sl as loadCdkJson, sn as seedsDeleteFirstGuard, so as NO_CC_HANDLERS_REASON, sr as withCreateTokenLedger, ss as shareLogOnlyValues, st as cyan, t as DeployEngine, ta as isReadableOrphanRecord, tc as isNotImplemented, ti as refuseUnreadableCdkCrossAccountRefs, tl as AssetManifestLoader, tn as planFailedOps, to as unreadableResourceEntries, tr as constructPathOf, ts as hasMaskableValues, u as renderNestedTemplateTreeDefect, ua as malformedOrphanRecordsWarning, uc as importableOutputs, ui as callerEnvCredentials, ul as resolveCaptureObservedState, un as inheritProducerRegions, uo as shownType, us as errorCauseChain, ut as red, v as mergeNoChangeOutputs, va as malformedResourcePropertiesWarning, vc as WorkGraph, vl as CFN_TEMPLATE_BODY_LIMIT, vn as WITHHELD_NAME_DISPLAY, vs as withPhysicalNameCopies, vt as DeploymentEventsReader, w as keptForReadoption, wc as BOOTSTRAP_MARKER_PREFIX, wi as producerRegionsFromState, wl as decodeListingKey, wn as carriedExportAliasExposure, wr as wouldReturnToSdkProvider, ws as identityKeyFor, wt as dropFailedHint, xa as malformedStateRefusalMessage, xc as loadPublishableAssetManifest, xl as findLargeInlineResources, xn as secretBearing, xr as ProviderRegistry, xs as dynamicReferenceTokens, xt as resolvePendingCloudControlRequests, y as makeCanonicalizePropertiesFn, ya as malformedResourcesWarning, yc as buildAssetRedirectMap, yl as CFN_TEMPLATE_URL_LIMIT, yn as displayTextOrWithheld, yt as DeploymentEventsStore, z as perType, za as refuseMalformedResourcePropertiesForDestroy, zc as dockerSpawnEnvWithSensitive, zl as displayAssemblyPath, zn as secretNamePrintingBag, zo as canonicalCoordinates, zr as deleteLeftInPlace, zs as wholeStringLeavesOf, zt as withNestedRevertRun } from "./deploy-engine--5XWdjW3.js";
6
- import { t as getCdkdVersion } from "./version-DUYEmFtp.js";
3
+ import { $t as ambientCredentialConfig, Bn as shellBoundedDisplay, Bt as formatLockOperation, Cn as StateError, D as VALUE_NOT_SHOWN, Dn as normalizeAwsError, E as assertRegionMatch, Fn as isInertUnquoted, Ft as UNREPRODUCIBLE_LOCK_CLAUSE, G as runDeleteAttempt, Gt as DEFAULT_STATE_PREFIX, Hn as withheldTargetClause, In as pasteableCommand, It as buildForceUnlockCommand, Jt as producerCoordinateKey, Kt as injectiveKey, Lt as buildLockContentionMessage, Nn as commandHole, On as withErrorHandling, P as remedyLogicalId, Qt as ambientClientDefaults, Rn as plainOrDescribed, Rt as forceQuitRecoveryClause, Sn as StackTerminationProtectionError, T as RESOURCE_NOT_FOUND, Un as setPasteableRunFlags, Vn as shellQuote, Vt as formatLockOwner, Wn as setPasteableVerbFlags, Wt as CUSTOM_RESOURCE_RESPONSE_PREFIX, Xt as setPasteableAwsProfile, Yt as producerRecordKey, Z as isAwsCliLiteral, Zt as withPasteableAwsProfile, _n as PartialFailureError, ar as isRetryableTransientError, bn as ResourceUpdateNotSupportedError, cn as DeployCancelledError, dn as LocalInvokeBuildError$1, dr as markNonRetryable, en as clientDefaultsFor, fn as LocalStartServiceError, ft as logicalIdShown, gn as NestedStackChildDirectDestroyError, hn as MalformedProducerRecordRefusalError, in as CdkdError, it as isInterruptedWaitError, jn as SHELL_ACTIVE_WHY, kn as TIMEOUT_FLAG_RESOURCE_TYPE, ln as DynamicReferenceRegionAmbiguousError, lr as isMarkedNonRetryable, mt as resourceTypeShown, n as RESOLVED_PREVIOUS_PRINCIPAL_KEYS, nn as AccountIdUnavailableError, nr as isAmbiguousOutcomeError, nt as endCommandInterruptScope, on as CrossAccountSecretRefusalError, or as isTransientServerError, rt as interruptWatchListenerCount, s as readRecordedPrincipals, sr as retryClassificationText, t as IAM_PRINCIPAL_NAME, tn as credentialFingerprint, tt as beginCommandInterruptScope, un as IntrinsicResolutionRefusalError, ur as isThrottlingError, vn as ProvisioningError, wn as SynthesisError, xn as StackHasActiveImportsError, yn as ResourceTimeoutError, zn as quotedOrDescribed, zt as formatLockExpiry } from "./iam-policy-targets-BkeM7IXi.js";
4
+ import { a as setAssumedRoleCredentials, i as getPreAssumeEnvCredentials, l as runInStackAwsScope, n as awsClientDefaults, r as getAssumedRoleCredentials, u as formatAuthority } from "./aws-client-defaults-DBXBcg0J.js";
5
+ import { $a as repairMalformedResourceEntriesForReadOnly, $c as runDockerForeground, $i as deployRefusesOrphanRowsReason, $n as isFinalSnapshotError, $o as readsNoEchoSource, $r as DiffCalculator, $s as rebuildClientForBucketRegion, $t as isJournaledOrphan, A as diffSecurity, Aa as refuseMalformedOrphans, Ac as ensureAssetStorage, Ai as isUnboundTemplateParameter, Al as PARTITION_TABLE, An as collectPublishedOutputNames, Ar as isCustomResourceType$1, As as recordNestedStackParameterExpressions, At as NESTED_PENDING_PARENT_REASON, Ba as refuseMalformedResourceEntriesForImportSave, Bc as describeDockerCapturedOutput, Bi as isStalePlaceholderArnAttribute, Bl as ownValue, Bn as secretNamePrintingBag, Bo as DagBuilder, Br as UNSPECIFIED_SKIP_REASON, Bs as recordNoEchoAttributeValues, Bt as collectNestedChildUnaddressed, C as computeImplicitDeleteEdges, Ca as malformedScrubResourceEntriesRefusalMessage, Cc as buildAssetRedirectMap, Cl as CFN_TEMPLATE_URL_LIMIT, Cn as secretSafeKeyDisplay, Cr as ProviderRegistry, Ct as dropFailedCommands, D as findServiceTokenRefusals, Dc as AssetModeResolver, Di as producerRegionsFromState, Dl as CUSTOM_RESOURCE_RESPONSE_OBJECT_DESCRIPTION, Dn as isWholeDynamicReferenceValue, Ds as pathCrossesDottedKey, Dt as loadJournaledOrphans, E as deferredServiceTokenWarning, Ea as refuseDivergentRecordRegionForDestroy, Ec as rewriteTemplateAssetReferences, Ei as classifyReplaySecretRegion, El as uploadCfnTemplate, En as exportNameSecretExposure, Er as wouldReturnToSdkProvider, Es as isUncertifiedBaselineMaskPosition, Et as journaledOrphanLines, F as perType, Fa as refuseMalformedResourceAttributesForOrphan, Fc as validateAssetBucketName, Fi as carriesFetchableDynamicReference, Fl as processStackMessages, Fn as completedReplayEntries, Fo as describeTypeWithThrottleRetry, Fr as customResourceResponseExpirationWarning, Fs as splitGetAttStringForm, Ft as nestedChildStackName$1, Ga as refuseMalformedResourcePropertiesForOrphan, Gc as formatDockerLoginError, Gl as resolveAssemblyPath, Gn as storedSecretNameNeedles, Go as maskReadbackAtCoordinates, Gr as isWaitAbandonedError, Gs as STATE_SOURCED_CROSS_GENERATION_RULES, Ha as refuseMalformedResourcePropertiesForDestroy, Hc as describeDockerFailure, Hl as describeFileReadFailure, Ho as canonicalCoordinates, Hr as deleteLeftInPlace, Hs as recordProvenPublicExpression, Ht as withNestedStackContext, I as readProtection, Ia as refuseMalformedResourceEntries, Ic as validateContainerRepoName, Ii as isNamelessDynamicReferenceError, Il as defineOwnKey, In as journaledOrphanPrintingBag, Io as withRetry, Ir as CloudControlProvider, Is as carriesSecretMask, It as recordDisplacedSkips, Ja as refuseMalformedResourcesForExport, Jc as isMalformedEnvKey, Ji as STATE_REGION_DIVERGED, Jn as PRE_DELETE_SNAPSHOT_TYPES, Jo as noEchoCoordinatesOf, Js as WHOLE_DYNAMIC_REFERENCE_PATTERN, Jt as withStackRecords, Ka as refuseMalformedResourcesForDeploy, Kc as getDockerCmd, Ki as declaresNoEcho, Kl as injectAwsRegion, Kn as extractDeploymentEventError, Ko as maskWholeValue, Ks as STATE_SOURCED_READBACK_RULES, Kt as destroyStackRecordsView, La as refuseMalformedResourceEntriesForDeploy, Lc as buildDenyExternalAccessPolicy, Li as keepsSecretReferenceToken, Ll as hasOwnKey, Ln as maskEventTextWithBoundBags, Lr as slowCcOperationTimeoutMs, Ls as provenPublicValue, M as recordedProtectionNote, Ma as refuseMalformedOrphansForOrphan, Mc as isCrossRegionRedirect, Mi as getAccountInfo, Ml as derivePartitionAndUrlSuffix, Mn as bindingSkippedOutputs, Mr as withPrintingSecrets, Ms as physicalNameCopiesOf, Mt as displacedPhysicalIdShown, N as PROTECTION_PROPERTY_BY_TYPE, Na as refuseMalformedOutputs, Nc as parseBootstrapMarker, Ni as isImpossibleEmptyStoredAttribute, Nl as AssemblyReader, Nn as DEFAULT_RESOURCE_TIMEOUT_MS, No as prefetchCreateOnlyPropertyPaths, Nr as CUSTOM_RESOURCE_RESPONSE_LIFECYCLE_RULE_ID, Nt as dropSettledNestedJournals, O as serviceTokenBlockingReason, Oa as refuseMalformedOrphanRecords, Oc as BOOTSTRAP_MARKER_PREFIX, Oi as regionLessSecretName, Ol as decodeListingKey, On as noEchoParameterValueSeed, Or as TemplateNoEchoReresolver, Os as identityKeyFor, Ot as makeForeignHolderScan, P as isProtectionValueActive, Pa as refuseMalformedOutputsForDestroy, Pc as readBootstrapMarkerBody, Pi as carriesDynamicReference, Pl as StageLoadError, Pn as DEFAULT_RESOURCE_WARN_AFTER_MS, Po as templateResourceTypes, Pr as applyCustomResourceResponseExpiration, Ps as recordPhysicalNameCopy, Qa as repairMalformedOutputsForReadOnly, Qc as redactedDockerCause, Qi as accountArgs, Qn as effectiveDeletionPolicy, Qo as readbackPathFor, Qs as S3StateBackend, Qt as demoteSupersededOrphans, Ra as refuseMalformedResourceEntriesForDestroy, Rc as buildDockerImage, Ri as AWS_NO_VALUE, Rl as hasPlainPrototype, Rn as namingSecretsWithRecordedNoEcho, Rs as recordMaskOnlyValue, Rt as revertedNestedRowIds, S as IMPLICIT_DELETE_DEPENDENCIES, Sa as malformedResourcesWarning, Sc as WorkGraph, Sl as CFN_TEMPLATE_BODY_LIMIT, Sn as secretBearingStateKeyWarning, Sr as CC_BROKEN_REASON, Ss as withPhysicalNameCopies, St as deleteJournaledOrphans, T as recordRetainedForReadoption, Ta as previewableOrphanRecords, Tc as loadPublishableAssetManifest, Ti as classifyRecordedSecretRegion, Tl as findLargeInlineResources, Tn as exportNameNoEchoParameters, Tr as isCustomResource, Ts as dynamicReferenceTokens, Tt as isHandledOrphan, Ua as refuseMalformedResourcePropertiesForDrift, Uc as dockerSpawnEnvWithSensitive, Ui as withSharedDrainBudget, Ul as displayAssemblyPath, Un as secretNamedRecordNeedles, Uo as isMarkedCoordinate, Ur as deleteSkipReason, Us as wholeStringLeavesOf, Ut as replayFailedOperations, Va as refuseMalformedResourceEntriesForOrphan, Vc as describeDockerExecFailure, Vi as refStateLookupFromResource, Vl as absoluteAssemblyPathEscape, Vn as secretNamePrintingBags, Vo as TemplateParser, Vr as deleteIndeterminateGuards, Vs as recordNoEchoParameterFreshValue, Vt as getCurrentNestedStackContext, Wa as refuseMalformedResourcePropertiesForExport, Wc as finchSecretArgvRefusal, Wi as parameterInputsFor, Wl as renderAssemblyPathEscape, Wn as stateSecretNameNeedles, Wo as maskAtCoordinates, Ws as STATE_SOURCED_BASELINE_RULES, Wt as replayRollback, Xa as repairMalformedOrphanRecordsForReadOnly, Xc as redactDockerArgvValues, Xi as UNREADABLE_ORPHANS_CONTAINER_ROW, Xn as ccRoutedFinalSnapshotError, Xo as noEchoOutputsComparison, Xs as LockManager, Ya as refuseMalformedState, Yc as partitionSensitiveEnv, Yi as STATE_RESOURCES_MALFORMED, Yl as resolveBucketRegion, Yn as buildFinalSnapshotIdentifier, Yo as noEchoLeavesOf, Ys as isSingleDynamicReferenceToken, Yt as removeProtectionTypeList, Za as repairMalformedOrphansForReadOnly, Zc as redactedCause, Zi as UNREADABLE_RESOURCES_MAP_ROW, Zn as createPreDeleteFinalSnapshot, Zs as isLockInfoExpired, Zt as recordAfterRollbackUpdate, _ as makeCanonicalizePropertiesFn, _a as malformedOutputsRefusalMessage, _c as orphansCarriedFrom, _l as resolveStateBucketWithDefaultAndSource, _n as orphanNeedsIdentity, _o as renderStatefulReason, _s as markSameGenerationBag, _t as planOrphanAdoption, a as findNestedTemplateTreeDefect, aa as isReadableResourceEntry, ac as isNotImplemented, ai as applyRoleArnIfSet, al as AssetManifestLoader, an as replacementNeverSwapped, ao as withheldAccountClause, ar as formatDestructiveChange, as as hasMaskableValues, at as red, ba as malformedResourceEntriesWarning, bc as isSensitiveAttributeName, bl as warnDeprecatedNoPrefixCliFlag, bn as exportAliasCollisionScrubWarning, bs as redactSecretsForState, bt as pendingRequestCount, c as renderNestedTemplateTreeDefect, ca as malformedExportSourceWarning, cc as describeRegionValueKind, ci as explicitRoleArnOrThrow, cl as synthesisStatusMessage, cn as findNestedStackTypeChanges, co as unwrittenCreateOnlyReplacement, cs as printingCorpusOf, ct as namesAnyDeclaredParameter, d as conditionInputsFrom, da as malformedLocalResourcesWarning, dc as hasReasonlessBaselineRefusal, di as AWS_CREDENTIAL_ENV_KEYS, dl as loadCdkJson, do as hasNoCloudControlHandlers, ds as shareLogOnlyValues, dt as noEchoAttributeNamesOf, ea as displayLogicalId, ec as CrossPrefixReadError, ei as INTRINSIC_KEYS, el as runDockerStreaming, en as isReplacementOrphan, eo as repairMalformedResourcePropertiesForReadOnly, er as refusesFinalSnapshot, es as recordedNoEchoValuesOf, et as formatResourceLine, f as parentSuppliedValues, fa as malformedOrphanRecordsRefusalMessage, fc as hasUnverifiableParameterRefusal, fi as applyCallerIdentityCredentials, fl as resolveApp, fo as findReplacedReadersOfRecreateTargets, fs as unionOfSecretBags, ft as noEchoComparisonForTemplate, g as mergeNoChangeOutputs, ga as malformedOrphansWarning, gc as orphansAfterRollback, gi as keepHeldTokenProvenance, gl as resolveStateBucketWithDefault, gn as updatePartialReason, go as isStatefulRecreateTargetSync, gs as maskSecretsInText, gt as makeSiblingClaimReader, h as keptWholeReasonText, ha as malformedOrphansRefusalMessage, hc as isReadableBag, hl as resolveSkipPrefix, hn as updatePartialMessage, ho as isStatefulRecreateTargetForReplace, hs as maskSecretsInError, ht as createReadOnlyAttributeHealerFactory, i as childTemplateLoader, ia as isReadableOrphanRecord, ic as isAccessDenied, ii as refuseUnreadableCdkCrossAccountRefs, il as stripForDisplay, in as recordUnderIdIsNotOwn, io as unreadableResourceEntries, ir as findDestructiveChanges, is as createUnionSecretMasker, it as green, j as recordedProtectionEvidence, ja as refuseMalformedOrphansForDestroy, jc as getBootstrapMarkerKey, ji as parameterTypeMayLoseSecretIdentity, jl as canonicalizeRegion, jn as isExportAliasCollision, jt as displacedOpClause, k as withResourceDeadline, ka as refuseMalformedOrphanRecordsForDestroy, kc as assertAssetBucketRegion, ki as coerceParameterTypedValue, kl as expectedOwnerParam, kn as collectDeclaredOutputNames, kr as readsNoEchoDeleteValues, ks as inheritNestedStackParameterAssociations, kt as sameJournaledOrphans, l as templateIdentity, la as malformedLocalOutputsWarning, lc as exportNamesCarriedFrom, li as isIamRoleArn, ll as getDefaultStateBucketName, lr as withCreateTokenLedger, ls as recordLogOnlyParameterValue, lt as reachableDivergentParameters, m as isSecretBearingReferenceString, ma as malformedOrphanRowsKeptWarning, mc as importableOutputs, mi as envCredentialsAreAssumedRole, ml as resolveCaptureObservedState, mo as MULTI_REGION_RECREATE_BLOCKED_TYPES, ms as errorCauseChain, mt as noEchoParameterNamesOf, n as crossStackOutputProvenanceSource, na as hasReadableOutputs, nc as applyCrossPrefixScan, ni as poisonRenderedSpellingsCollidingIn, nl as escapeRegExp, nn as planRollback, no as unpreviewableOrphanRecords, nr as maskingRetryLogger, ns as liveMatchesUnresolvedTokenFrame, nt as cyan, o as isAbsoluteAssetPath, oa as malformedDriftResourcePropertiesWarning, oc as splitImportedOps, oi as assertFlagRoleArn, ol as getDockerImageBySourceHash, on as resolveReplacementOldType, oo as findActionableSilentDrops, os as literalSplitDelimitersOf, ot as yellow, p as readRecordedConditionVerdicts, pa as malformedOrphanRecordsWarning, pc as importableOutputKeys, pi as callerEnvCredentials, pl as resolveAutoAssetStorage, po as shownType, ps as createSecretMasker, pt as noEchoExactEchoLeavesOf, qa as refuseMalformedResourcesForDestroy, qc as isDockerClientEnvKey, qi as JSON_LISTING_HOLE_VALUE, ql as injectedAwsRegionValue, qn as ATOMIC_FINAL_SNAPSHOT_TYPES, qo as maskedLeafCoordinatesOf, qs as TEMPLATE_SOURCED_RULES, r as inheritedProvenanceForChildDiff, ra as hasReadableResources, rc as crossPrefixDeniedWarning, ri as producerLookupOver, rl as stripControlChars, rn as recheckFailedPlan, ro as unreadableOrphanRecords, rr as constructPathOf, rs as carryLogOnlyValues, rt as gray, s as listNestedTemplateRows, sa as malformedExportNamesWarning, sc as acceptedCreateOnlyDropsOf, si as assertSendableRoleArn, sl as Synthesizer, sn as seedsDeleteFirstGuard, sr as ledgerForStack, ss as logOnlyValueCount, st as computeParameterTaint, t as DeployEngine, ta as hasReadableOrphans, tc as CrossPrefixScanCache, ti as IntrinsicFunctionResolver, tl as warnFinchArgvExposure, tn as planFailedOps, to as repairMalformedResourcesForReadOnly, tr as unsupportedFinalSnapshotError, ts as valueAtCoordinate, tt as bold, u as conditionFingerprint, ua as malformedLocalResourceEntriesWarning, uc as hasReadableExportSet, ui as sendableAssumeRoleCommand, ul as getLegacyStateBucketName, un as inheritProducerRegions, uo as NO_CC_HANDLERS_REASON, us as recordLogOnlyValue, ut as resourcesNamingDeclaredParameter, va as malformedOutputsWarning, vc as shouldRetainResource, vi as recordedOutputReferenceRegions, vl as resolveUseCdkBootstrapAssets, vn as WITHHELD_NAME_DISPLAY, vt as DeploymentEventsReader, w as keptForReadoption, wa as malformedStateRefusalMessage, wc as createAssetRedirectResolver, wl as MIGRATE_TMP_PREFIX, wn as carriedExportAliasExposure, wr as ccBrokenReason, ws as DYNAMIC_REFERENCE_TOKEN_SCAN, wt as dropFailedHint, xa as malformedResourcePropertiesWarning, xc as stringifyValue, xl as ssmResolvedValueType, xn as secretBearing, xs as scrubResourceRecord, xt as resolvePendingCloudControlRequests, ya as malformedRenderedContainersWarning, yc as AssetPublisher, yi as recordedReferenceRegions, yl as stateBucketExistenceConfirmed, yn as displayTextOrWithheld, yt as DeploymentEventsStore, za as refuseMalformedResourceEntriesForImport, zc as resolveDockerContextDirectory, zi as cfnRefValueFromPhysicalId, zl as nullPrototypeRecord, zn as orphanRecordsPrintingBag, zr as RollbackInlinePolicyWriters, zs as recordMaskOnlyValuesIn, zt as withNestedRevertRun } from "./deploy-engine-BIPU9Xdh.js";
6
+ import { t as getCdkdVersion } from "./version-Bft5jrTk.js";
7
7
  import { randomBytes, randomUUID } from "node:crypto";
8
8
  import { CopyObjectCommand, CreateBucketCommand, DeleteBucketCommand, DeleteObjectsCommand, GetBucketLocationCommand, GetObjectCommand, HeadBucketCommand, ListObjectVersionsCommand, ListObjectsV2Command, NoSuchBucket, NotFound, PutBucketEncryptionCommand, PutBucketPolicyCommand, PutBucketVersioningCommand, PutObjectCommand, S3Client, S3ServiceException } from "@aws-sdk/client-s3";
9
9
  import { GetRoleCommand, GetUserCommand } from "@aws-sdk/client-iam";
10
- import { LambdaClient } from "@aws-sdk/client-lambda";
11
10
  import { GetCallerIdentityCommand, STSClient } from "@aws-sdk/client-sts";
12
11
  import { DescribeSecurityGroupRulesCommand } from "@aws-sdk/client-ec2";
13
12
  import { CloudFormationClient, CreateChangeSetCommand, DeleteChangeSetCommand, DeleteStackCommand, DescribeChangeSetCommand, DescribeStackEventsCommand, DescribeStackResourcesCommand, DescribeStacksCommand, ExecuteChangeSetCommand, GetTemplateCommand, UpdateStackCommand, waitUntilChangeSetCreateComplete, waitUntilStackDeleteComplete, waitUntilStackImportComplete, waitUntilStackUpdateComplete } from "@aws-sdk/client-cloudformation";
14
13
  import { GetSecretValueCommand, SecretsManagerClient } from "@aws-sdk/client-secrets-manager";
15
14
  import { GetParameterCommand, SSMClient } from "@aws-sdk/client-ssm";
16
- import { DescribeLogStreamsCommand, ResourceNotFoundException as ResourceNotFoundException$2 } from "@aws-sdk/client-cloudwatch-logs";
17
- import { BedrockAgentCoreControlClient } from "@aws-sdk/client-bedrock-agentcore-control";
15
+ import { DescribeLogStreamsCommand, ResourceNotFoundException as ResourceNotFoundException$1 } from "@aws-sdk/client-cloudwatch-logs";
18
16
  import * as fs from "node:fs";
19
17
  import { cpSync, existsSync, lstatSync, mkdirSync, mkdtempSync, readFileSync, readdirSync, readlinkSync, realpathSync, rmSync, statSync, symlinkSync, writeFileSync } from "node:fs";
20
18
  import * as path from "node:path";
@@ -28,8 +26,8 @@ import { Command, InvalidArgumentError, Option } from "commander";
28
26
  import * as readline$1 from "node:readline/promises";
29
27
  import readline from "node:readline/promises";
30
28
  import { Document, Pair, Scalar, YAMLMap, YAMLSeq, isScalar, parse, stringify, visit } from "yaml";
31
- import { A2A_CONTAINER_PORT, A2A_PATH, AGENTCORE_A2A_PROTOCOL, AGENTCORE_AGUI_PROTOCOL, AGENTCORE_MCP_PROTOCOL, ConnectionRegistry, DynamicReferenceResolver, EcsTaskResolutionError, HOST_GATEWAY_MIN_VERSION, LocalInvokeBuildError, MCP_CONTAINER_PORT, MCP_PATH, a2aInvokeOnce, addAlbSpecificOptions, addCommonEcsServiceOptions, addStartServiceSpecificOptions, albStrategy, architectureToPlatform, attachAuthorizers, attachStageContext, availableApiIdentifiers, bufferToBody, buildAgentCoreCodeImage, buildCognitoJwksUrl, buildConnectEvent, buildContainerImage, buildCorsConfigByApiId, buildCorsConfigFromCloudFrontChain, buildDisconnectEvent, buildJwksUrlFromIssuer, buildMessageEvent, buildMgmtEndpointEnvUrl, buildStageMap, classifySourceChange, containsDynamicReference, createAuthorizerCache, createFileWatcher, createFileWatcher as createFileWatcher$1, createJwksCache, createWatchPredicates, defaultCredentialsLoader, derivePseudoParametersFromRegion, describeAwsFailureForWarn, discoverRoutes, discoverWebSocketApis, downloadAndExtractS3Bundle, filterRoutesByApiIdentifier, firstUsableRegion, groupRoutesByServer, handleConnectionsRequest, invokeAgentCore, invokeAgentCoreWs, keysNotFromTemplate, keysOverriddenBy, materializeLayerFromArn, mcpInvokeOnce, parseConnectionsPath, parseSelectionExpressionPath, pickAgentCoreCandidateStack, pickAgentCoreCandidateStack as pickAgentCoreCandidateStack$1, probeHostGatewaySupport, readMtlsMaterialsFromDisk, resolveAgentCoreTarget, resolveDynamicReferencesInEnv, resolveEnvVars, resolveHostGatewayExtraHosts, resolveRuntimeCodeMountPath, resolveRuntimeFileExtension, resolveRuntimeImage, resolveSingleTarget, resolveWatchConfig, runEcsServiceEmulator, signAgentCoreInvocation, startApiServer, substituteImagePlaceholders, tryResolveImageFnJoin, verifyJwtViaDiscovery, waitForAgentCorePing, withoutKeys } from "cdk-local/internal";
32
- import { CfnLocalStateProvider, createLocalStartAgentCoreCommand, createLocalStartCloudFrontCommand, createLocalStateProvider, getEmbedConfig, isCfnFlagPresent, isCfnFlagPresent as isCfnFlagPresent$1, listTargets, rejectExplicitCfnStackWithMultipleStacks, resolveCfnFallbackRegion, setEmbedConfig, substituteAgainstState, substituteAgainstStateAsync, substituteEnvVarsFromState, substituteEnvVarsFromStateAsync } from "cdk-local";
29
+ import { A2A_CONTAINER_PORT, A2A_PATH, AGENTCORE_A2A_PROTOCOL, AGENTCORE_AGUI_PROTOCOL, AGENTCORE_MCP_PROTOCOL, ConnectionRegistry, DynamicReferenceResolver, EcsTaskResolutionError, HOST_GATEWAY_MIN_VERSION, LocalInvokeBuildError, MCP_CONTAINER_PORT, MCP_PATH, a2aInvokeOnce, addAlbSpecificOptions, addCommonEcsServiceOptions, addStartServiceSpecificOptions, albStrategy, architectureToPlatform, attachAuthorizers, attachStageContext, availableApiIdentifiers, bufferToBody, buildAgentCoreCodeImage, buildCognitoJwksUrl, buildConnectEvent, buildContainerImage, buildCorsConfigByApiId, buildCorsConfigFromCloudFrontChain, buildDisconnectEvent, buildJwksUrlFromIssuer, buildMessageEvent, buildMgmtEndpointEnvUrl, buildStageMap, classifySourceChange, containsDynamicReference, createAuthorizerCache, createFileWatcher, createFileWatcher as createFileWatcher$1, createJwksCache, createWatchPredicates, defaultCredentialsLoader, derivePseudoParametersFromRegion, describeAwsFailureForWarn, discoverRoutes, discoverWebSocketApis, downloadAndExtractS3Bundle, filterRoutesByApiIdentifier, firstUsableRegion, groupRoutesByServer, handleConnectionsRequest, invokeAgentCore, invokeAgentCoreWs, keysNotFromTemplate, keysOverriddenBy, materializeLayerFromArn, mcpInvokeOnce, parseConnectionsPath, parseSelectionExpressionPath, pickAgentCoreCandidateStack, pickAgentCoreCandidateStack as pickAgentCoreCandidateStack$1, probeHostGatewaySupport, readMtlsMaterialsFromDisk, recordAssumedRole, resolveAgentCoreTarget, resolveDynamicReferencesInEnv, resolveEnvVars, resolveHostGatewayExtraHosts, resolveRuntimeCodeMountPath, resolveRuntimeFileExtension, resolveRuntimeImage, resolveSingleTarget, resolveWatchConfig, runEcsServiceEmulator, signAgentCoreInvocation, startApiServer, substituteImagePlaceholders, tryResolveImageFnJoin, verifyJwtViaDiscovery, waitForAgentCorePing, withoutKeys } from "cdk-local/internal";
30
+ import { createLocalStartAgentCoreCommand, createLocalStartCloudFrontCommand, createLocalStateProvider, getEmbedConfig, isCfnFlagPresent, listTargets, rejectExplicitCfnStackWithMultipleStacks, resolveCfnFallbackRegion, setEmbedConfig, substituteAgainstState, substituteAgainstStateAsync, substituteEnvVarsFromState, substituteEnvVarsFromStateAsync } from "cdk-local";
33
31
  import { createServer } from "node:net";
34
32
  import { setTimeout as setTimeout$1 } from "node:timers/promises";
35
33
  import { mkdtemp, rm, writeFile } from "node:fs/promises";
@@ -1778,7 +1776,7 @@ async function probeStatefulRecreateTargetsAsync(targets, clients, logger = getL
1778
1776
  });
1779
1777
  }
1780
1778
  } catch (e) {
1781
- if (e instanceof ResourceNotFoundException$2) {
1779
+ if (e instanceof ResourceNotFoundException$1) {
1782
1780
  let regionVerified = true;
1783
1781
  if (clients.expectedRegionDiverged) {
1784
1782
  regionVerified = false;
@@ -2561,7 +2559,7 @@ function collectCrossStackRefs(node, onRef, unconditional) {
2561
2559
  //#region src/provisioning/register-providers.ts
2562
2560
  let providerClasses;
2563
2561
  function loadProviderClasses() {
2564
- providerClasses ??= import("./provider-classes-CDxfoC_T.js");
2562
+ providerClasses ??= import("./provider-classes-BSUoljqw.js");
2565
2563
  return providerClasses;
2566
2564
  }
2567
2565
  function registerAllProviders(registry, classes) {
@@ -4951,7 +4949,8 @@ function maskOutputChangeForDisplay(change, mask, nameCorpus) {
4951
4949
  async function computeStackDiff(currentState, template, region, stackName, stateBackend, diffCalculator, options = {}) {
4952
4950
  const { parameters, canonicalizeProperties, cfnFallback, producerLookup, consumerAccount, inheritSecretBearingTemplate, inheritedSecrets, inheritedSecretTokens, inheritedDerivedNames, attributeHealer: unboundAttributeHealer, parentUnresolvedParameters, inheritedNoEchoParameters, inheritedNoEchoParametersAnyVerdict } = options;
4953
4951
  let healResources = currentState.resources ?? {};
4954
- const attributeHealer = unboundAttributeHealer && healerUnderRecordPrintingBag(unboundAttributeHealer, () => healResources);
4952
+ let healNamingSecrets;
4953
+ const attributeHealer = unboundAttributeHealer && healerUnderRecordPrintingBag(unboundAttributeHealer, () => healResources, (map) => healNamingSecrets?.(map));
4955
4954
  const noEchoParametersOf = (t) => /* @__PURE__ */ new Set([...noEchoParameterNamesOf(t), ...inheritedNoEchoParameters ?? []]);
4956
4955
  const inheritedForResolver = inheritedSecrets !== void 0 && hasMaskableValues(inheritedSecrets) ? inheritedSecrets : void 0;
4957
4956
  const secretStandInTokens = standInTokensOf(inheritedSecretTokens);
@@ -5081,9 +5080,36 @@ async function computeStackDiff(currentState, template, region, stackName, state
5081
5080
  recordLogOnlyParameterValue(diffSecrets, mergedParameters[name]);
5082
5081
  recordLogOnlyParameterValue(splitPieces, mergedParameters[name], splitDelimiters);
5083
5082
  }
5084
- const noEchoJudge = new Map(diffSecrets);
5085
- carryLogOnlyValues(diffSecrets, noEchoJudge);
5086
- const stateNames = storedSecretNameNeedles(currentState.resources ?? {}, noEchoJudge, /* @__PURE__ */ new Map(), currentState.outputs);
5083
+ const noEchoJudgeValues = new Map(diffSecrets);
5084
+ carryLogOnlyValues(diffSecrets, noEchoJudgeValues);
5085
+ const namingNoEchoParameters = noEchoParametersOf(effectiveTemplate);
5086
+ const namingConditions = conditions === void 0 ? void 0 : Object.fromEntries(Object.entries(conditions).filter(([name]) => !stillUnknown.includes(name)));
5087
+ const namingTemplateResources = effectiveTemplate.Resources ?? {};
5088
+ const recordedNamingValues = (resources, logicalId) => {
5089
+ const record = Object.hasOwn(resources, logicalId) ? resources[logicalId] : void 0;
5090
+ const templateResource = Object.hasOwn(namingTemplateResources, logicalId) ? namingTemplateResources[logicalId] : void 0;
5091
+ const bag = recordedNoEchoValuesOf(templateResource?.Type === record?.resourceType ? templateResource?.Properties : void 0, record, namingNoEchoParameters, namingConditions);
5092
+ return hasMaskableValues(bag) ? bag : void 0;
5093
+ };
5094
+ const noEchoJudge = (resources) => namingSecretsWithRecordedNoEcho(noEchoJudgeValues, (logicalId) => recordedNamingValues(resources, logicalId));
5095
+ const liveNamingJudge = (resources) => {
5096
+ const memo = /* @__PURE__ */ new Map();
5097
+ return (logicalId) => {
5098
+ const record = Object.hasOwn(resources, logicalId) ? resources[logicalId] : void 0;
5099
+ let hit = memo.get(logicalId);
5100
+ if (hit === void 0 || hit.record !== record) {
5101
+ hit = {
5102
+ record,
5103
+ bag: recordedNamingValues(resources, logicalId)
5104
+ };
5105
+ memo.set(logicalId, hit);
5106
+ }
5107
+ const stored = hit.bag;
5108
+ return stored === void 0 ? diffSecrets : unionOfSecretBags([diffSecrets, stored]);
5109
+ };
5110
+ };
5111
+ healNamingSecrets = noEchoJudge;
5112
+ const stateNames = storedSecretNameNeedles(currentState.resources ?? {}, noEchoJudge(currentState.resources ?? {}), /* @__PURE__ */ new Map(), currentState.outputs);
5087
5113
  const outputsPassSecrets = /* @__PURE__ */ new Map();
5088
5114
  const printing = createDiffPrintingMasker([
5089
5115
  diffSecrets,
@@ -5100,7 +5126,7 @@ async function computeStackDiff(currentState, template, region, stackName, state
5100
5126
  recordedSecretValues: bag,
5101
5127
  ...printingSecrets && { printingSecrets },
5102
5128
  ...crossStackReads && { crossStackReads },
5103
- secretNameNeedles: stateSecretNameNeedles(currentState.resources, diffSecrets),
5129
+ secretNameNeedles: stateSecretNameNeedles(currentState.resources, liveNamingJudge(currentState.resources)),
5104
5130
  secretNameSink: derivedNames,
5105
5131
  ...inheritedForResolver && { inheritedSecrets: inheritedForResolver },
5106
5132
  ...secretStandInTokens && { secretStandInTokens },
@@ -5153,7 +5179,7 @@ async function computeStackDiff(currentState, template, region, stackName, state
5153
5179
  logger.warn(malformedResourcePropertiesWarning(stackName, region, tornAdopted, options.refusalRecovery));
5154
5180
  deployRefusals.push(deployRefusesPropertiesReason(tornAdopted));
5155
5181
  }
5156
- storedSecretNameNeedles(stateForDiff.resources, noEchoJudge, stateNames, currentState.outputs);
5182
+ storedSecretNameNeedles(stateForDiff.resources, noEchoJudge(stateForDiff.resources), stateNames, currentState.outputs);
5157
5183
  }
5158
5184
  const alreadyReported = new Set(reportedByTheAdoptedPropertiesArm);
5159
5185
  const previewedRowsTheDeployRefuses = readableOrphans.filter((record) => !isReadableOrphanRecord(record)).map((record) => record.logicalId).filter((logicalId) => !alreadyReported.has(logicalId));
@@ -5180,7 +5206,7 @@ async function computeStackDiff(currentState, template, region, stackName, state
5180
5206
  return {
5181
5207
  value: await intrinsicResolver.resolve(structuredClone(node), {
5182
5208
  recordedSecretValues: secrets,
5183
- secretNameNeedles: stateSecretNameNeedles(resourcesForInputs, diffSecrets),
5209
+ secretNameNeedles: stateSecretNameNeedles(resourcesForInputs, liveNamingJudge(resourcesForInputs)),
5184
5210
  secretNameSink: derivedNames,
5185
5211
  template: effectiveTemplate,
5186
5212
  resources: resourcesForInputs,
@@ -5314,7 +5340,8 @@ async function computeStackDiff(currentState, template, region, stackName, state
5314
5340
  effectiveTemplate,
5315
5341
  printingSecrets,
5316
5342
  derivedNames: diffPrintingSecrets([derivedNames, inheritedDerivedNames]),
5317
- secretNamedRecords: secretNamedRecordNeedles(stateForDiff.resources, noEchoJudge),
5343
+ secretNamedRecords: secretNamedRecordNeedles(stateForDiff.resources, noEchoJudge(stateForDiff.resources)),
5344
+ namingSecretsFor: noEchoJudge,
5318
5345
  resolvedParameters: mergedParameters,
5319
5346
  conditions,
5320
5347
  knownConditions: conditions === void 0 ? void 0 : Object.fromEntries(Object.entries(conditions).filter(([name]) => !stillUnknown.includes(name))),
@@ -5542,17 +5569,20 @@ function recordedTemplateResources(template, state) {
5542
5569
  for (const [logicalId, resource] of Object.entries(resources)) if (Object.prototype.hasOwnProperty.call(stateResources, logicalId)) recorded[logicalId] = resource;
5543
5570
  return recorded;
5544
5571
  }
5545
- function healerUnderRecordPrintingBag(healer, resources) {
5572
+ function healerUnderRecordPrintingBag(healer, resources, namingSecrets) {
5546
5573
  let judged;
5547
5574
  const bagFor = (logicalId, resource) => {
5548
5575
  const map = resources();
5549
- if (!Object.hasOwn(map, logicalId) || map[logicalId] !== resource) return secretNamePrintingBag(logicalId, {
5550
- ...map,
5551
- [logicalId]: resource
5552
- });
5576
+ if (!Object.hasOwn(map, logicalId) || map[logicalId] !== resource) {
5577
+ const withSelf = {
5578
+ ...map,
5579
+ [logicalId]: resource
5580
+ };
5581
+ return secretNamePrintingBags(withSelf, namingSecrets?.(withSelf))(logicalId);
5582
+ }
5553
5583
  if (judged?.map !== map) judged = {
5554
5584
  map,
5555
- bagOf: secretNamePrintingBags(map, void 0)
5585
+ bagOf: secretNamePrintingBags(map, namingSecrets?.(map))
5556
5586
  };
5557
5587
  return judged.bagOf(logicalId);
5558
5588
  };
@@ -5590,7 +5620,7 @@ async function buildDiffTree(args) {
5590
5620
  } finally {
5591
5621
  createOnlyPrefetch.cancel();
5592
5622
  }
5593
- const { changes, securityDiff, outputChanges, adoptedOrphans, adoptedRecords, blocking, unreadableOrphans, deployRefusals: adoptedDeployRefusals, effectiveTemplate, printingSecrets, derivedNames: nodeDerivedNames, secretNamedRecords: nodeStateNames, resolvedParameters, conditions, knownConditions, trust } = stackDiff;
5623
+ const { changes, securityDiff, outputChanges, adoptedOrphans, adoptedRecords, blocking, unreadableOrphans, deployRefusals: adoptedDeployRefusals, effectiveTemplate, printingSecrets, derivedNames: nodeDerivedNames, secretNamedRecords: nodeStateNames, namingSecretsFor, resolvedParameters, conditions, knownConditions, trust } = stackDiff;
5594
5624
  const stateAfterAdoption = Object.keys(adoptedRecords).length > 0 ? {
5595
5625
  ...state,
5596
5626
  resources: {
@@ -5642,7 +5672,7 @@ async function buildDiffTree(args) {
5642
5672
  ]), void 0, stateAfterAdoption.resources);
5643
5673
  const rowDerivedNames = /* @__PURE__ */ new Map();
5644
5674
  const childSecretTokens = /* @__PURE__ */ new Map();
5645
- const childParameters = await resolveChildStackParameters(resource, effectiveTemplate, stateAfterAdoption, region, stackName, stateBackend, resolvedParameters, conditions, cfnFallback, printingSecrets, attributeHealer && healerUnderRecordPrintingBag(attributeHealer, () => stateAfterAdoption.resources ?? {}), childUnresolvedParameters, trust, rowDerivedNames, producerLookup, consumerAccount, {
5675
+ const childParameters = await resolveChildStackParameters(resource, effectiveTemplate, stateAfterAdoption, region, stackName, stateBackend, resolvedParameters, conditions, cfnFallback, printingSecrets, attributeHealer && healerUnderRecordPrintingBag(attributeHealer, () => stateAfterAdoption.resources ?? {}, namingSecretsFor), childUnresolvedParameters, trust, rowDerivedNames, producerLookup, consumerAccount, {
5646
5676
  inherited: inheritedSecretTokens,
5647
5677
  child: childSecretTokens
5648
5678
  });
@@ -10981,7 +11011,7 @@ async function runRevert(reports, regionScope, stateBackend, stateConfig, awsCli
10981
11011
  const markedRefused = marked === void 0 ? [] : maskPreserved.unpreservablePaths.filter((path) => isMarkedCoordinate(revertPathSegments(path), marked));
10982
11012
  const markedAmong = markedRefused.length > 0;
10983
11013
  const markedPaths = maskSecretsInText(markedRefused.join(", "), secrets);
10984
- logger.error(` ✗ ${report.stackName}/${outcome.logicalId} (${outcome.resourceType}): refused to revert ${maskSecretsInText(maskPreserved.unpreservablePaths.join(", "), secrets)} — the recorded baseline holds only the redaction mask there, and AWS reports nothing to preserve, so cdkd has no value it may write. ${markedAmong ? `Where a NoEcho template parameter feeds a path (${markedPaths}), deploy the stack with the parameter's value to set it. For the other paths, three` : "Three"} causes leave such a mask, and the record does not say which: a NoEcho custom-resource value (force that custom resource to update — change one of its properties, e.g. a nonce — and re-deploy, so its handler runs again and supplies the value); the Fn::Base64 encoding of a secret value, which cdkd never records (deploy a change to this resource, which sends it the encoded value again); or a readback position cdkd could not certify when the baseline was captured (deploy a change to this resource, so its baseline is re-captured). A re-deploy that leaves this resource unchanged sends it nothing, so it resolves this refusal for none of them.`);
11014
+ logger.error(` ✗ ${report.stackName}/${outcome.logicalId} (${outcome.resourceType}): refused to revert ${maskSecretsInText(maskPreserved.unpreservablePaths.join(", "), secrets)} — the recorded baseline holds only the redaction mask there, and AWS reports nothing to preserve, so cdkd has no value it may write. ${markedAmong ? `Where a NoEcho template parameter feeds a path (${markedPaths}), deploy the stack with the parameter's value to set it. For the other paths, four` : "Four"} causes leave such a mask, and the record does not say which: a NoEcho custom-resource value (force that custom resource to update — change one of its properties, e.g. a nonce — and re-deploy, so its handler runs again and supplies the value); the Fn::Base64 encoding of a secret value, which cdkd never records (deploy a change to this resource, which sends it the encoded value again); two secret values that overlap inside the value, which no single reference renders (change the property, or rotate one of the secrets, so that they no longer overlap, and deploy that change); or a readback position cdkd could not certify when the baseline was captured (deploy a change to this resource, so its baseline is re-captured). A re-deploy that leaves this resource unchanged sends it nothing, so it resolves this refusal for none of them.`);
10985
11015
  return;
10986
11016
  }
10987
11017
  newProperties = maskPreserved.properties;
@@ -12180,7 +12210,16 @@ async function destroyStackInRegion(stackName, state, ctx, stackScope) {
12180
12210
  const graph = dagBuilder.buildGraph(template);
12181
12211
  const executionLevels = dagBuilder.getExecutionLevels(graph);
12182
12212
  logger.debug(`Dependency graph: ${executionLevels.length} level(s)`);
12183
- const printingBagOf = secretNamePrintingBags(state.resources, noEchoValues);
12213
+ const reresolver = ctx.noEchoReresolver;
12214
+ const judgedBagOf = secretNamePrintingBags(state.resources, reresolver === void 0 ? noEchoValues : namingSecretsWithRecordedNoEcho(noEchoValues, (logicalId) => {
12215
+ try {
12216
+ return reresolver.recordedNoEchoValuesFor(logicalId, Object.hasOwn(state.resources, logicalId) ? state.resources[logicalId] : void 0);
12217
+ } catch (error) {
12218
+ logger.debug(safeMsg`Could not read ${logicalId}'s stored NoEcho values for its printing bag (${error instanceof Error ? error.name : typeof error}).`);
12219
+ return;
12220
+ }
12221
+ }));
12222
+ const printingBagOf = (logicalId) => withStackName(stackName, () => judgedBagOf(logicalId));
12184
12223
  for (let levelIndex = executionLevels.length - 1; levelIndex >= 0; levelIndex--) {
12185
12224
  if (lock.interrupted) {
12186
12225
  logger.debug("Interrupted (draining) — not scheduling further deletion levels");
@@ -15736,7 +15775,7 @@ async function buildImportPlan(state, template, cfnClient, parentStackName, opti
15736
15775
  blocked.push({
15737
15776
  logicalId,
15738
15777
  resourceType,
15739
- reason: `cdkd state holds only the redaction mask ('***') for at least one property, and cdkd cannot re-derive the value. There are three ways a record comes to hold it. (1) A NoEcho custom-resource value: forcing the custom resource to update does NOT clear this — the handler supplies the value to the deploy and cdkd re-masks it on the way into state, so the export still has nothing to declare. Stop setting NoEcho on that response and re-deploy, then export again. (2) The Fn::Base64 encoding of a secret value (a {{resolve:...}} dynamic reference under Fn::Base64, such as EC2 UserData): cdkd never records that encoding, so re-deploying the same template does not clear this. Stop encoding the secret into the property (have the resource read the secret at run time instead — not by writing the secret's plaintext into the template, which cdkd would then record in state in the clear) and re-deploy, then export again. (3) The value was SPLICED from a masked record of ANOTHER resource — by 'cdkd orphan --force', or by 'cdkd import' resolving an Fn::GetAtt or a Ref over a value the Cloud Control fallback had masked. Repair the record that HOLDS the mask with cdkd import ${commandHole("stack")} --resource ${commandHole("logicalId")}=${commandHole("physicalId")} --force (granting cloudformation:DescribeType first if the import warned that it could not read the schema), then re-run whichever command wrote this property. In every case you can also export this stack without that resource and adopt it into CloudFormation by hand. See https://github.com/go-to-k/cdkd/issues/2274.`
15778
+ reason: `cdkd state holds only the redaction mask ('***') for at least one property, and cdkd cannot re-derive the value. There are four ways a record comes to hold it. (1) A NoEcho custom-resource value: forcing the custom resource to update does NOT clear this — the handler supplies the value to the deploy and cdkd re-masks it on the way into state, so the export still has nothing to declare. Stop setting NoEcho on that response and re-deploy, then export again. (2) The Fn::Base64 encoding of a secret value (a {{resolve:...}} dynamic reference under Fn::Base64, such as EC2 UserData): cdkd never records that encoding, so re-deploying the same template does not clear this. Stop encoding the secret into the property (have the resource read the secret at run time instead — not by writing the secret's plaintext into the template, which cdkd would then record in state in the clear) and re-deploy, then export again. (3) The value was SPLICED from a masked record of ANOTHER resource — by 'cdkd orphan --force', or by 'cdkd import' resolving an Fn::GetAtt or a Ref over a value the Cloud Control fallback had masked. Repair the record that HOLDS the mask with cdkd import ${commandHole("stack")} --resource ${commandHole("logicalId")}=${commandHole("physicalId")} --force (granting cloudformation:DescribeType first if the import warned that it could not read the schema), then re-run whichever command wrote this property. (4) Two secret values cdkd resolved overlap inside the value, so no single {{resolve:...}} reference renders it: change the property (or rotate one of the secrets) so that they no longer overlap, re-deploy, then export again. In every case you can also export this stack without that resource and adopt it into CloudFormation by hand. See https://github.com/go-to-k/cdkd/issues/2274.`
15740
15779
  });
15741
15780
  continue;
15742
15781
  }
@@ -22161,6 +22200,19 @@ function hasSdkMetadata(error) {
22161
22200
  return error.$metadata !== void 0;
22162
22201
  }
22163
22202
 
22203
+ //#endregion
22204
+ //#region src/local/local-role-arn.ts
22205
+ async function applyRoleArnForLocal(opts) {
22206
+ await applyRoleArnIfSet(opts);
22207
+ const role = getAssumedRoleCredentials();
22208
+ if (role === void 0) return;
22209
+ recordAssumedRole(getPreAssumeEnvCredentials(), {
22210
+ accessKeyId: role.accessKeyId,
22211
+ secretAccessKey: role.secretAccessKey,
22212
+ sessionToken: role.sessionToken
22213
+ });
22214
+ }
22215
+
22164
22216
  //#endregion
22165
22217
  //#region src/cli/commands/local-state-loader.ts
22166
22218
  async function loadStateForStack(stackName, synthRegion, opts) {
@@ -22503,175 +22555,7 @@ const fromStateFactory = (options) => {
22503
22555
  };
22504
22556
  const cdkdExtraStateProviders = { fromState: fromStateFactory };
22505
22557
  function createLocalStateProvider$1(options, cdkdStackName, synthRegion) {
22506
- const provider = createLocalStateProvider(options, cdkdStackName, synthRegion, cdkdExtraStateProviders);
22507
- if (provider instanceof CfnLocalStateProvider) bindCallerIdentityClients(provider, options.profile);
22508
- else if (isCfnFlagPresent(options) && cannotLeaveUnbound(options.profile)) throw new Error(cfnProviderRefusal(["a --from-cfn-stack provider that is not CfnLocalStateProvider"]));
22509
- return provider;
22510
- }
22511
- function cannotLeaveUnbound(profile) {
22512
- if (getAssumedRoleCredentials() === void 0) return false;
22513
- return !(profile || process.env["AWS_PROFILE"]);
22514
- }
22515
- function cfnProviderRefusal(drift) {
22516
- return `--from-cfn-stack cannot run under --role-arn with this cdk-local version: it has ${drift.join(", ")}, so cdkd cannot make it read the stack with your own credentials instead of the role's. Pass --profile <name> (your own profile), or use the cdk-local version this cdkd release ships with.`;
22517
- }
22518
- const CFN_PROVIDER_CLIENT_GETTERS = [
22519
- "getClient",
22520
- "getLambdaClient",
22521
- "getSsmClient",
22522
- "getAgentCoreControlClient"
22523
- ];
22524
- const CFN_PROVIDER_CLIENT_SLOTS = [
22525
- "client",
22526
- "lambdaClient",
22527
- "ssmClient",
22528
- "agentCoreControlClient"
22529
- ];
22530
- const CFN_PROVIDER_PROTOTYPE_MEMBERS = [
22531
- "constructor",
22532
- ...CFN_PROVIDER_CLIENT_GETTERS,
22533
- "resolveTemplateSsmParameters",
22534
- "resolveDeployedFunctionEnv",
22535
- "resolveLambdaExecutionRoleArn",
22536
- "resolveAgentCoreRuntimeRoleArn",
22537
- "load",
22538
- "getLastLoadError",
22539
- "buildCrossStackResolver",
22540
- "dispose"
22541
- ];
22542
- function cfnProviderShapeDrift(provider) {
22543
- const proto = Object.getPrototypeOf(provider);
22544
- const allowed = CFN_PROVIDER_PROTOTYPE_MEMBERS;
22545
- const slots = CFN_PROVIDER_CLIENT_SLOTS;
22546
- const drift = [];
22547
- for (const name of CFN_PROVIDER_CLIENT_GETTERS) if (typeof proto?.[name] !== "function") drift.push(`no ${name}()`);
22548
- for (let p = proto; p !== null && p !== Object.prototype; p = Object.getPrototypeOf(p)) for (const name of Object.getOwnPropertyNames(p)) if (!allowed.includes(name)) drift.push(`an unknown ${name}()`);
22549
- for (const slot of CFN_PROVIDER_CLIENT_SLOTS) if (!Object.hasOwn(provider, slot)) drift.push(`no ${slot} slot`);
22550
- if (typeof provider.region !== "string" || !Object.hasOwn(provider, "region")) drift.push("no region field");
22551
- for (const name of Object.getOwnPropertyNames(provider)) if (/Client$/.test(name) && !slots.includes(name)) drift.push(`an unknown ${name} slot`);
22552
- return drift;
22553
- }
22554
- function bindCallerIdentityClients(provider, profile) {
22555
- const drift = cfnProviderShapeDrift(provider);
22556
- if (drift.length > 0) {
22557
- if (!cannotLeaveUnbound(profile)) return;
22558
- throw new Error(cfnProviderRefusal(drift));
22559
- }
22560
- const slots = provider;
22561
- const live = () => {
22562
- if (slots.disposed) throw new Error("CfnLocalStateProvider used after dispose()");
22563
- };
22564
- const config = () => ({
22565
- region: slots.region,
22566
- ...profile && { profile }
22567
- });
22568
- slots.getClient = () => {
22569
- live();
22570
- return slots.client ??= new CloudFormationClient({
22571
- ...awsClientDefaults({
22572
- profile,
22573
- ignoreAssumedRole: true
22574
- }),
22575
- ...config()
22576
- });
22577
- };
22578
- slots.getLambdaClient = () => {
22579
- live();
22580
- return slots.lambdaClient ??= new LambdaClient({
22581
- ...awsClientDefaults({
22582
- profile,
22583
- ignoreAssumedRole: true
22584
- }),
22585
- ...config()
22586
- });
22587
- };
22588
- slots.getSsmClient = () => {
22589
- live();
22590
- return slots.ssmClient ??= new SSMClient({
22591
- ...awsClientDefaults({
22592
- profile,
22593
- ignoreAssumedRole: true
22594
- }),
22595
- ...config()
22596
- });
22597
- };
22598
- slots.getAgentCoreControlClient = () => {
22599
- live();
22600
- return slots.agentCoreControlClient ??= new BedrockAgentCoreControlClient({
22601
- ...awsClientDefaults({
22602
- profile,
22603
- ignoreAssumedRole: true
22604
- }),
22605
- ...config()
22606
- });
22607
- };
22608
- }
22609
- function engineCredentialTripleChannel(containers) {
22610
- return {
22611
- what: `the role's AWS credentials are copied into ${containers}, so that code runs as the role`,
22612
- flagOnly: true
22613
- };
22614
- }
22615
- const ENGINE_ECS_SECRETS_CHANNEL = {
22616
- what: "ECS task secrets are fetched with the role and injected as plaintext into the container's environment",
22617
- flagOnly: false
22618
- };
22619
- const ENGINE_DYNAMIC_REFERENCE_CHANNEL = {
22620
- what: "CloudFormation dynamic references ({{resolve:...}}) are fetched with the role and injected as plaintext into the container's environment",
22621
- flagOnly: false
22622
- };
22623
- const ENGINE_ASSUME_ROLE_CHANNEL = {
22624
- what: "the role --assume-role / --assume-task-role assumes for the container is assumed BY the --role-arn role, so the container can receive a role you could not assume yourself",
22625
- flagOnly: false
22626
- };
22627
- function engineFromCfnStackChannel(alsoReads) {
22628
- return {
22629
- what: "--from-cfn-stack reads the deployed stack, including SecureString parameters decrypted into the container's environment" + (alsoReads ? `, and ${alsoReads}` : ""),
22630
- flagOnly: false
22631
- };
22632
- }
22633
- function engineFromStateChannel(reads) {
22634
- return {
22635
- what: `--from-state makes the engine read ${reads}`,
22636
- flagOnly: false
22637
- };
22638
- }
22639
- const ENGINE_ACCOUNT_ID_CHANNEL = {
22640
- what: "${AWS::AccountId} resolves to the role's account in the container's environment, secret references and image URIs",
22641
- flagOnly: false
22642
- };
22643
- function warnEngineRoleExposure(cmd, commandName, channels, fromCfnStackChannel = engineFromCfnStackChannel(), fromStateChannel) {
22644
- cmd.hook("preAction", (_thisCommand, actionCommand) => {
22645
- const options = actionCommand.optsWithGlobals();
22646
- const message = engineRoleExposureWarning(commandName, channels, fromCfnStackChannel, {
22647
- roleArn: options.roleArn || process.env["CDKD_ROLE_ARN"],
22648
- profileFlag: options.profile,
22649
- envProfile: process.env["AWS_PROFILE"],
22650
- fromCfnStack: isCfnFlagPresent(options),
22651
- assumesForWorkload: isAssumeRequested(options.assumeRole) || isAssumeRequested(options.assumeTaskRole),
22652
- fromState: options.fromState === true
22653
- }, fromStateChannel);
22654
- if (message !== void 0) getLogger().warn(message);
22655
- });
22656
- return cmd;
22657
- }
22658
- function isAssumeRequested(value) {
22659
- if (typeof value === "string") return value !== "";
22660
- if (value !== null && typeof value === "object") return Object.keys(value).length > 0;
22661
- return value === true;
22662
- }
22663
- function engineRoleExposureWarning(commandName, channels, fromCfnStackChannel, input, fromStateChannel) {
22664
- if (!input.roleArn || !isIamRoleArn(input.roleArn) || input.profileFlag) return void 0;
22665
- const all = [
22666
- ...channels,
22667
- ...input.assumesForWorkload ? [ENGINE_ASSUME_ROLE_CHANNEL] : [],
22668
- ...input.fromCfnStack ? [fromCfnStackChannel] : [],
22669
- ...input.fromState && fromStateChannel ? [fromStateChannel] : []
22670
- ];
22671
- const envProfileSet = !!input.envProfile;
22672
- const open = envProfileSet ? all.filter((c) => c.flagOnly) : all;
22673
- if (open.length === 0) return void 0;
22674
- return `cdkd local ${commandName}: --role-arn ${envProfileSet ? "is set, and the exported AWS_PROFILE does not cover what follows (only the --profile flag does)" : "is set and no profile is selected"}, so the local emulation engine resolves these AS THE ROLE and hands them to your local code: ${open.map((c) => c.what).join("; ")}. Pass --profile <name> with your own profile to keep them on your identity, or do not pass a role whose permissions you would not give the code in the container.`;
22558
+ return createLocalStateProvider(options, cdkdStackName, synthRegion, cdkdExtraStateProviders);
22675
22559
  }
22676
22560
 
22677
22561
  //#endregion
@@ -24153,7 +24037,7 @@ async function assumeRoleForEcr(roleArn, callerRegion, credentialConfig, logger)
24153
24037
  assertSendableRoleArn(roleArn, (message) => new LocalInvokeBuildError$1(message));
24154
24038
  logger.debug(`Assuming role ${displayIdent(roleArn, { maxCodePoints: 613 })} for ECR pull...`);
24155
24039
  const sts = new STSClient({
24156
- ...clientDefaultsFor(credentialConfig),
24040
+ ...clientDefaultsFor(credentialConfig, true),
24157
24041
  ...callerRegion && { region: callerRegion }
24158
24042
  });
24159
24043
  try {
@@ -25103,7 +24987,7 @@ async function localStartApiCommand(target, options) {
25103
24987
  }
25104
24988
  warnIfDeprecatedRegion(options);
25105
24989
  if (options.layerRoleArn !== void 0) explicitRoleArnOrThrow("--layer-role-arn", options.layerRoleArn);
25106
- await applyRoleArnIfSet({
24990
+ await applyRoleArnForLocal({
25107
24991
  roleArn: options.roleArn,
25108
24992
  region: options.region
25109
24993
  });
@@ -25184,7 +25068,7 @@ async function localStartApiCommand(target, options) {
25184
25068
  const direct = buildCorsConfigByApiId(stack.template);
25185
25069
  for (const [k, v] of direct) corsConfigByApiId.set(k, v);
25186
25070
  }
25187
- const stateByStack = options.fromState || isCfnFlagPresent$1(options) ? await loadStateForRoutedStacks(targetStacks, routes, routesWithAuth, options) : /* @__PURE__ */ new Map();
25071
+ const stateByStack = options.fromState || isCfnFlagPresent(options) ? await loadStateForRoutedStacks(targetStacks, routes, routesWithAuth, options) : /* @__PURE__ */ new Map();
25188
25072
  const profileCredentials = options.profile ? await resolveProfileCredentials(options.profile) : void 0;
25189
25073
  if (options.profile && profileCredentials && !profileCredsFile) profileCredsFile = await writeProfileCredentialsFile(options.profile, profileCredentials, {
25190
25074
  onDirCreated: (hostPath) => {
@@ -26228,12 +26112,7 @@ async function resolvePseudoParametersForStartApi(stateRegion, options) {
26228
26112
  try {
26229
26113
  const { STSClient, GetCallerIdentityCommand } = await import("@aws-sdk/client-sts");
26230
26114
  let sts;
26231
- if (options.fromState) sts = new STSClient({
26232
- ...awsClientDefaults({ profile: options.profile }),
26233
- ...region && { region },
26234
- ...options.profile && { profile: options.profile }
26235
- });
26236
- else sts = new STSClient({
26115
+ if (!options.fromState) sts = new STSClient({
26237
26116
  ...awsClientDefaults({
26238
26117
  profile: options.profile,
26239
26118
  ignoreAssumedRole: true
@@ -26241,6 +26120,11 @@ async function resolvePseudoParametersForStartApi(stateRegion, options) {
26241
26120
  ...region && { region },
26242
26121
  ...options.profile && { profile: options.profile }
26243
26122
  });
26123
+ else sts = new STSClient({
26124
+ ...awsClientDefaults({ profile: options.profile }),
26125
+ ...region && { region },
26126
+ ...options.profile && { profile: options.profile }
26127
+ });
26244
26128
  try {
26245
26129
  accountId = (await sts.send(new GetCallerIdentityCommand({}))).Account;
26246
26130
  } finally {
@@ -27256,7 +27140,7 @@ async function localRunTaskCommand(target, options) {
27256
27140
  try {
27257
27141
  if (typeof options.assumeTaskRole === "string") assertFlagRoleArn("--assume-task-role", options.assumeTaskRole);
27258
27142
  if (options.ecrRoleArn !== void 0) assertFlagRoleArn("--ecr-role-arn", options.ecrRoleArn);
27259
- await applyRoleArnIfSet({
27143
+ await applyRoleArnForLocal({
27260
27144
  roleArn: options.roleArn,
27261
27145
  region: options.region
27262
27146
  });
@@ -27367,17 +27251,15 @@ async function localRunTaskCommand(target, options) {
27367
27251
  if (sigintHandler) process.off("SIGINT", sigintHandler);
27368
27252
  }
27369
27253
  }
27254
+ function readFromCfnStack(source) {
27255
+ return source.fromState !== true && source.fromCfnStack !== void 0 && source.fromCfnStack !== false;
27256
+ }
27370
27257
  async function resolvePlaceholderAccount(arn, source) {
27371
- const { region, profile, fromState } = source;
27258
+ const { region, profile } = source;
27372
27259
  if (!arn.includes("${AWS::AccountId}")) return arn;
27373
27260
  const { STSClient, GetCallerIdentityCommand } = await import("@aws-sdk/client-sts");
27374
27261
  let sts;
27375
- if (fromState) sts = new STSClient({
27376
- ...awsClientDefaults({ profile }),
27377
- ...region && { region },
27378
- ...profile && { profile }
27379
- });
27380
- else sts = new STSClient({
27262
+ if (readFromCfnStack(source)) sts = new STSClient({
27381
27263
  ...awsClientDefaults({
27382
27264
  profile,
27383
27265
  ignoreAssumedRole: true
@@ -27385,6 +27267,11 @@ async function resolvePlaceholderAccount(arn, source) {
27385
27267
  ...region && { region },
27386
27268
  ...profile && { profile }
27387
27269
  });
27270
+ else sts = new STSClient({
27271
+ ...awsClientDefaults({ profile }),
27272
+ ...region && { region },
27273
+ ...profile && { profile }
27274
+ });
27388
27275
  try {
27389
27276
  const account = (await sts.send(new GetCallerIdentityCommand({}))).Account;
27390
27277
  if (!account) throw new CdkdError(`--assume-task-role: GetCallerIdentity returned no Account; cannot resolve placeholder ARN ${plainIdentOr(arn, VALUE_NOT_SHOWN, { maxCodePoints: 613 })}. Pass the ARN explicitly: --assume-task-role '<arn>'`, "LOCAL_RUN_TASK_PLACEHOLDER_NO_ACCOUNT");
@@ -27444,7 +27331,8 @@ async function buildEcsImageResolutionContext$1(candidate, stateProvider, option
27444
27331
  accountId = await resolveStackAccountId$1({
27445
27332
  region,
27446
27333
  profile: options.profile,
27447
- fromState: options.fromState
27334
+ fromState: options.fromState,
27335
+ fromCfnStack: options.fromCfnStack
27448
27336
  });
27449
27337
  } catch (err) {
27450
27338
  logger.warn(`Resolver needs \${AWS::AccountId} but STS GetCallerIdentity failed: ${describeLocalAwsFailureForWarn(err, "STS GetCallerIdentity")}. Substitution will be skipped; affected env / secret entries will be dropped with per-key warnings.`);
@@ -27498,15 +27386,10 @@ function pickCandidateStack(parsed, target, stacks) {
27498
27386
  if (matched.length === 1) return matched[0];
27499
27387
  }
27500
27388
  async function resolveStackAccountId$1(source) {
27501
- const { region, profile, fromState } = source;
27389
+ const { region, profile } = source;
27502
27390
  const { STSClient, GetCallerIdentityCommand } = await import("@aws-sdk/client-sts");
27503
27391
  let sts;
27504
- if (fromState) sts = new STSClient({
27505
- ...awsClientDefaults({ profile }),
27506
- ...region && { region },
27507
- ...profile && { profile }
27508
- });
27509
- else sts = new STSClient({
27392
+ if (readFromCfnStack(source)) sts = new STSClient({
27510
27393
  ...awsClientDefaults({
27511
27394
  profile,
27512
27395
  ignoreAssumedRole: true
@@ -27514,6 +27397,11 @@ async function resolveStackAccountId$1(source) {
27514
27397
  ...region && { region },
27515
27398
  ...profile && { profile }
27516
27399
  });
27400
+ else sts = new STSClient({
27401
+ ...awsClientDefaults({ profile }),
27402
+ ...region && { region },
27403
+ ...profile && { profile }
27404
+ });
27517
27405
  try {
27518
27406
  return (await sts.send(new GetCallerIdentityCommand({}))).Account;
27519
27407
  } finally {
@@ -27635,11 +27523,6 @@ function createLocalStartServiceCommand() {
27635
27523
  await runEcsServiceEmulator(targets, options, serviceStrategy(), cdkdExtraStateProviders, cdkdHostSynthesizer(() => options));
27636
27524
  }));
27637
27525
  addStartServiceSpecificOptions(cmd);
27638
- warnEngineRoleExposure(cmd, "start-service", [
27639
- ENGINE_ECS_SECRETS_CHANNEL,
27640
- ENGINE_ACCOUNT_ID_CHANNEL,
27641
- ENGINE_DYNAMIC_REFERENCE_CHANNEL
27642
- ]);
27643
27526
  return adoptDeprecatedRegionFlag(addCommonEcsServiceOptions(cmd));
27644
27527
  }
27645
27528
 
@@ -27955,7 +27838,7 @@ async function localInvokeAgentCoreCommand(target, options) {
27955
27838
  try {
27956
27839
  if (typeof options.assumeRole === "string") explicitRoleArnOrThrow("--assume-role", options.assumeRole, (message) => new CdkdError(message, "LOCAL_INVOKE_AGENTCORE_ASSUME_ROLE_INVALID"));
27957
27840
  if (options.ecrRoleArn !== void 0) assertFlagRoleArn("--ecr-role-arn", options.ecrRoleArn, (message) => new CdkdError(message, "LOCAL_INVOKE_AGENTCORE_ECR_ROLE_ARN_INVALID"));
27958
- await applyRoleArnIfSet({
27841
+ await applyRoleArnForLocal({
27959
27842
  roleArn: options.roleArn,
27960
27843
  region: options.region
27961
27844
  });
@@ -28549,7 +28432,7 @@ async function buildAgentCoreImageContext(candidate, stateProvider, options) {
28549
28432
  const region = canonicalizeRegion(options.region ?? process.env["AWS_REGION"] ?? process.env["AWS_DEFAULT_REGION"] ?? candidate.region);
28550
28433
  let accountId;
28551
28434
  try {
28552
- accountId = await resolveStackAccountId(region, options.profile, options.fromState);
28435
+ accountId = await resolveStackAccountId(region, options.profile, options.fromState, options.fromCfnStack);
28553
28436
  } catch (err) {
28554
28437
  logger.warn(safeMsg`${stateProvider.label}: STS GetCallerIdentity failed: ${describeLocalAwsFailureForWarn(err, "STS GetCallerIdentity")}. ` + "A same-stack ECR image URI referencing ${AWS::AccountId} may not resolve.");
28555
28438
  }
@@ -28570,15 +28453,10 @@ async function buildAgentCoreImageContext(candidate, stateProvider, options) {
28570
28453
  loaded: loaded ?? void 0
28571
28454
  };
28572
28455
  }
28573
- async function resolveStackAccountId(region, profile, fromState) {
28456
+ async function resolveStackAccountId(region, profile, fromState, fromCfnStack) {
28574
28457
  const { STSClient, GetCallerIdentityCommand } = await import("@aws-sdk/client-sts");
28575
28458
  let sts;
28576
- if (fromState) sts = new STSClient({
28577
- ...awsClientDefaults({ profile }),
28578
- ...region && { region },
28579
- ...profile && { profile }
28580
- });
28581
- else sts = new STSClient({
28459
+ if (!fromState && fromCfnStack !== void 0 && fromCfnStack !== false) sts = new STSClient({
28582
28460
  ...awsClientDefaults({
28583
28461
  profile,
28584
28462
  ignoreAssumedRole: true
@@ -28586,6 +28464,11 @@ async function resolveStackAccountId(region, profile, fromState) {
28586
28464
  ...region && { region },
28587
28465
  ...profile && { profile }
28588
28466
  });
28467
+ else sts = new STSClient({
28468
+ ...awsClientDefaults({ profile }),
28469
+ ...region && { region },
28470
+ ...profile && { profile }
28471
+ });
28589
28472
  try {
28590
28473
  return (await sts.send(new GetCallerIdentityCommand({}))).Account;
28591
28474
  } finally {
@@ -28844,11 +28727,6 @@ function createLocalStartAgentCoreCommand$1() {
28844
28727
  cmd.addOption(new Option("--state-bucket <bucket>", "S3 bucket for --from-state. Falls back to CDKD_STATE_BUCKET env or cdk.json context.cdkd.stateBucket. Also receives the transient upload of a CloudFormation-macro template too large to expand inline."));
28845
28728
  cmd.addOption(new Option("--state-prefix <prefix>", "S3 key prefix for --from-state state files.").default("cdkd"));
28846
28729
  cmd.addOption(new Option("--no-assume-role", "Explicitly opt out of assuming the deployed execution role: forward your ambient AWS credentials (or the --profile overlay) unchanged, and suppress the \"re-run with --assume-role\" hint that omitting the flag prints when deployed state is loaded."));
28847
- warnEngineRoleExposure(cmd, "start-agentcore", [
28848
- engineCredentialTripleChannel("the agent container"),
28849
- ENGINE_ACCOUNT_ID_CHANNEL,
28850
- ENGINE_DYNAMIC_REFERENCE_CHANNEL
28851
- ]);
28852
28730
  return adoptDeprecatedRegionFlag(cmd);
28853
28731
  }
28854
28732
 
@@ -28859,18 +28737,11 @@ function createLocalStartAlbCommand() {
28859
28737
  await runEcsServiceEmulator(targets, options, albStrategy(options), cdkdExtraStateProviders, cdkdHostSynthesizer(() => options));
28860
28738
  }));
28861
28739
  addAlbSpecificOptions(cmd);
28862
- warnEngineRoleExposure(cmd, "start-alb", [
28863
- engineCredentialTripleChannel("the ALB's Lambda target-group containers"),
28864
- ENGINE_ECS_SECRETS_CHANNEL,
28865
- ENGINE_ACCOUNT_ID_CHANNEL,
28866
- ENGINE_DYNAMIC_REFERENCE_CHANNEL
28867
- ]);
28868
28740
  return adoptDeprecatedRegionFlag(addCommonEcsServiceOptions(cmd));
28869
28741
  }
28870
28742
 
28871
28743
  //#endregion
28872
28744
  //#region src/cli/commands/local-start-cloudfront.ts
28873
- const STATE_SOURCE_ENGINE_READS = "a deployed S3 origin's objects and distribution config and the KeyValueStore entries, and the ${AWS::AccountId} in the Function URL / Lambda@Edge environment resolves to the role's account";
28874
28745
  function createLocalStartCloudFrontCommand$1() {
28875
28746
  const cmd = createLocalStartCloudFrontCommand({
28876
28747
  embedConfig: getEmbedConfig(),
@@ -28881,7 +28752,6 @@ function createLocalStartCloudFrontCommand$1() {
28881
28752
  cmd.addOption(new Option("--state-bucket <bucket>", "S3 bucket for --from-state. Falls back to CDKD_STATE_BUCKET env or cdk.json context.cdkd.stateBucket. Also receives the transient upload of a CloudFormation-macro template too large to expand inline."));
28882
28753
  cmd.addOption(new Option("--state-prefix <prefix>", "S3 key prefix for --from-state state files.").default("cdkd"));
28883
28754
  cmd.addOption(new Option("--no-assume-role", "Explicitly opt out of assuming the deployed execution role: forward your ambient AWS credentials (or the --profile overlay) unchanged, and suppress the \"re-run with --assume-role\" hint that omitting the flag prints when deployed state is loaded."));
28884
- warnEngineRoleExposure(cmd, "start-cloudfront", [engineCredentialTripleChannel("the Function URL and Lambda@Edge containers"), ENGINE_DYNAMIC_REFERENCE_CHANNEL], engineFromCfnStackChannel(STATE_SOURCE_ENGINE_READS), engineFromStateChannel(STATE_SOURCE_ENGINE_READS));
28885
28755
  return adoptDeprecatedRegionFlag(cmd);
28886
28756
  }
28887
28757
 
@@ -28917,7 +28787,8 @@ const CDKD_EMBED_CONFIG = {
28917
28787
  error: (message, ...args) => forwardToCdkdLogger("error", message, args),
28918
28788
  setLevel: (level) => getLogger().setLevel(level),
28919
28789
  getLevel: () => getLogger().getLevel()
28920
- }
28790
+ },
28791
+ workloadIdentity: "caller"
28921
28792
  };
28922
28793
  async function localInvokeCommand(target, options) {
28923
28794
  const logger = getLogger();
@@ -28983,7 +28854,7 @@ async function localInvokeCommand(target, options) {
28983
28854
  if (typeof options.assumeRole === "string") explicitRoleArnOrThrow("--assume-role", options.assumeRole);
28984
28855
  if (options.layerRoleArn !== void 0) explicitRoleArnOrThrow("--layer-role-arn", options.layerRoleArn);
28985
28856
  if (options.ecrRoleArn !== void 0) assertFlagRoleArn("--ecr-role-arn", options.ecrRoleArn);
28986
- await applyRoleArnIfSet({
28857
+ await applyRoleArnForLocal({
28987
28858
  roleArn: options.roleArn,
28988
28859
  region: options.region
28989
28860
  });
@@ -29320,12 +29191,7 @@ async function resolvePseudoParametersForInvoke(stackRegion, options) {
29320
29191
  try {
29321
29192
  const { STSClient, GetCallerIdentityCommand } = await import("@aws-sdk/client-sts");
29322
29193
  let sts;
29323
- if (options.fromState) sts = new STSClient({
29324
- ...awsClientDefaults({ profile: options.profile }),
29325
- ...region && { region },
29326
- ...options.profile && { profile: options.profile }
29327
- });
29328
- else sts = new STSClient({
29194
+ if (!options.fromState) sts = new STSClient({
29329
29195
  ...awsClientDefaults({
29330
29196
  profile: options.profile,
29331
29197
  ignoreAssumedRole: true
@@ -29333,6 +29199,11 @@ async function resolvePseudoParametersForInvoke(stackRegion, options) {
29333
29199
  ...region && { region },
29334
29200
  ...options.profile && { profile: options.profile }
29335
29201
  });
29202
+ else sts = new STSClient({
29203
+ ...awsClientDefaults({ profile: options.profile }),
29204
+ ...region && { region },
29205
+ ...options.profile && { profile: options.profile }
29206
+ });
29336
29207
  try {
29337
29208
  accountId = (await sts.send(new GetCallerIdentityCommand({}))).Account;
29338
29209
  } finally {
@@ -29630,4 +29501,4 @@ function collectVerbFlags(program) {
29630
29501
 
29631
29502
  //#endregion
29632
29503
  export { resolveSecretDerivedPrincipals as a, buildProgram, isResolvableSecretPrincipalList as i, runDestroyForStack as n, canonicalizeIpProtocolValue as o, holdsUnprovenSecretPrincipalToken as r, resolvedResourceTimeoutMs as s, canonicalizeIpv4Cidr as t };
29633
- //# sourceMappingURL=program-DEPit8lD.js.map
29504
+ //# sourceMappingURL=program-DYfZCsxM.js.map