@go-to-k/cdkd 0.280.39 → 0.280.41

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.
@@ -10278,15 +10278,28 @@ var WAFv2WebACLProvider = class {
10278
10278
  const AWS_NO_VALUE = Symbol("AWS::NoValue");
10279
10279
  /**
10280
10280
  * Resource types whose CloudFormation `Ref` returns the segment AFTER the LAST
10281
- * pipe in cdkd's compound Cloud Control physical id (rather than the whole
10282
- * physical id). These are types provisioned via Cloud Control — either because
10283
- * they have no SDK provider, or because the #614 silent-drop routing sent an
10284
- * SDK-backed type through CC (e.g. an ApiGateway Stage carrying
10285
- * `MethodSettings`, which the SDK provider does not wire — issue #963). Their
10286
- * CC primaryIdentifier is compound (`<parentId>|<ref>`, or `<a>|<b>|<ref>` for
10287
- * triple-segment AppConfig children) while CFn's `Ref` returns only the
10288
- * trailing `<ref>` component. For SDK-provisioned instances of the same types
10289
- * the stored physical id has no pipe, so the extraction is a no-op:
10281
+ * pipe in cdkd's compound physical id (rather than the whole physical id).
10282
+ *
10283
+ * Membership is decided by the ID SHAPE, not by the routing layer, and the Set
10284
+ * carries BOTH kinds:
10285
+ *
10286
+ * - **Cloud-Control-provisioned** (the original and still the majority)
10287
+ * either the type has no SDK provider, or the #614 silent-drop routing sent
10288
+ * an SDK-backed type through CC (e.g. an ApiGateway Stage carrying
10289
+ * `MethodSettings`, which the SDK provider does not wire issue #963). CC's
10290
+ * primaryIdentifier is compound (`<parentId>|<ref>`, or `<a>|<b>|<ref>` for
10291
+ * triple-segment AppConfig children) while CFn's `Ref` returns only the
10292
+ * trailing `<ref>`. For SDK-provisioned instances of these types the stored
10293
+ * id has no pipe, so the extraction is a no-op.
10294
+ * - **SDK-provisioned, provider-built compound** — the SDK provider ITSELF
10295
+ * packs the segments because its CRUD calls need all of them while
10296
+ * `ResourceProvider`'s read-side methods receive a single string. Here the
10297
+ * extraction is load-bearing on the ORDINARY deploy path and there is no
10298
+ * pipe-free variant to fall through. `AWS::S3Tables::Namespace` /
10299
+ * `::Table` (whose per-routing split is spelled out at their entry) and
10300
+ * `AWS::Glue::Table` (issue #1667) are these.
10301
+ *
10302
+ * The per-type map:
10290
10303
  * - AWS::ApiGateway::Model `<restApiId>|<modelName>` -> model name
10291
10304
  * - AWS::ApiGateway::RequestValidator `<restApiId>|<validatorId>` -> validator id
10292
10305
  * - AWS::ApiGateway::Stage `<restApiId>|<stageName>` -> stage name
@@ -10309,6 +10322,7 @@ const AWS_NO_VALUE = Symbol("AWS::NoValue");
10309
10322
  * - AWS::AppConfig::ConfigurationProfile `<appId>|<profileId>` -> profile id
10310
10323
  * - AWS::AppConfig::HostedConfigurationVersion `<appId>|<profileId>|<ver>` -> version number
10311
10324
  * - AWS::AppConfig::Deployment `<appId>|<envId>|<deployNum>` -> deployment number
10325
+ * - AWS::Glue::Table `<databaseName>|<tableName>` -> table name
10312
10326
  *
10313
10327
  * The extraction takes the segment after the LAST pipe (see
10314
10328
  * {@link IntrinsicFunctionResolver.resolveRefValue}) so it is correct for both
@@ -10348,6 +10362,31 @@ const AWS_NO_VALUE = Symbol("AWS::NoValue");
10348
10362
  * {@link REF_RETURNS_SEGMENT_BEFORE_FIRST_PIPE} instead of this Set: the
10349
10363
  * after-last-pipe extraction would return the PARENT id for them.
10350
10364
  * 5. Pin each addition with a unit test in intrinsic-functions.test.ts.
10365
+ *
10366
+ * AUDIT RECORD (2026-08-12, issue #1667) — every type in the composite-id table
10367
+ * of `docs/state-management.md` was re-checked against its docs-verified `Ref`,
10368
+ * plus the two types that table lists as ACCEPTING a composite without
10369
+ * producing one. `AWS::Glue::Table` was the one this Set could fix and is added
10370
+ * below. The types deliberately NOT in either Set, with the reason:
10371
+ * - correct to exclude, `Ref` is a synthetic / AWS-generated id no segment
10372
+ * reconstructs: ApiGateway::Method, EC2::NetworkAclEntry ("the ID of the
10373
+ * network ACL entry"), EC2::Route, EC2::VPCGatewayAttachment,
10374
+ * Lambda::EventInvokeConfig;
10375
+ * - correct to exclude, the docs page documents NO `Ref` return value at all:
10376
+ * EC2::SecurityGroupIngress (and its Egress sibling, same id shape), and
10377
+ * Lambda::Permission — cdkd stores the bare statement id, but state written
10378
+ * by the older Cloud Control path can hold `<functionArn>|<statementId>`,
10379
+ * and with no documented contract the raw id is the least-surprising value
10380
+ * (the same call the maintenance note above already records for it);
10381
+ * - already correct, no change needed: EC2::EIP (before-first-pipe),
10382
+ * S3Tables::Namespace / ::Table (added by the 2026-07-03 close-out audit),
10383
+ * ECS::Service (before-first-pipe; stores the bare ARN on the SDK path);
10384
+ * - KNOWN WRONG and NOT fixable by a Set entry, tracked in issue #1681:
10385
+ * AppSync::ApiKey / ::DataSource / ::Resolver (`Ref` returns the resource
10386
+ * ARN, so the value must be RECONSTRUCTED like the WAFv2::WebACL case
10387
+ * below, not extracted) and Route53::RecordSet (`Ref` returns "the name of
10388
+ * the record" — the MIDDLE segment of `<hostedZoneId>|<name>|<type>`, which
10389
+ * neither after-LAST-pipe nor before-FIRST-pipe yields).
10351
10390
  */
10352
10391
  const REF_RETURNS_SEGMENT_AFTER_PIPE = /* @__PURE__ */ new Set([
10353
10392
  "AWS::ApiGateway::Model",
@@ -10373,7 +10412,8 @@ const REF_RETURNS_SEGMENT_AFTER_PIPE = /* @__PURE__ */ new Set([
10373
10412
  "AWS::AppConfig::HostedConfigurationVersion",
10374
10413
  "AWS::AppConfig::Deployment",
10375
10414
  "AWS::S3Tables::Namespace",
10376
- "AWS::S3Tables::Table"
10415
+ "AWS::S3Tables::Table",
10416
+ "AWS::Glue::Table"
10377
10417
  ]);
10378
10418
  /**
10379
10419
  * Sibling of {@link REF_RETURNS_SEGMENT_AFTER_PIPE} for compound-id types
@@ -10869,11 +10909,14 @@ var IntrinsicFunctionResolver = class {
10869
10909
  * stores. But for a few types CFn's `Ref` returns a sub-component of the
10870
10910
  * physical id, and returning the raw physical id breaks downstream consumers.
10871
10911
  *
10872
- * The {@link REF_RETURNS_SEGMENT_AFTER_PIPE} types are provisioned via Cloud
10873
- * Control (either they have no SDK provider, or the #614 silent-drop routing
10874
- * sent an SDK-backed type through CC), whose primary identifier — and thus
10875
- * cdkd's physical id is the compound `<parentId>|<ref>`, while CFn's `Ref`
10876
- * returns only the trailing `<ref>` segment:
10912
+ * The {@link REF_RETURNS_SEGMENT_AFTER_PIPE} types store a COMPOUND physical
10913
+ * id `<parentId>|<ref>` while CFn's `Ref` returns only the trailing `<ref>`
10914
+ * segment. Most are compound because Cloud Control provisions them (either
10915
+ * they have no SDK provider, or the #614 silent-drop routing sent an
10916
+ * SDK-backed type through CC) and its primaryIdentifier is compound; the rest
10917
+ * — `AWS::S3Tables::Namespace` / `::Table` and `AWS::Glue::Table` — are
10918
+ * compound because their own SDK provider packs the segments. The Set's
10919
+ * header records the split per type; examples:
10877
10920
  * - `AWS::ApiGateway::Model` → Ref is the model NAME; physical id is
10878
10921
  * `<restApiId>|<modelName>`. A method wiring
10879
10922
  * `RequestModels: { "application/json": { "Ref": <Model> } }` would
@@ -12872,7 +12915,7 @@ var CloudControlProvider = class {
12872
12915
  if (context?.finalSnapshotIdentifier !== void 0) throw new ProvisioningError(`${logicalId} (${resourceType}) requires a final snapshot (DeletionPolicy: Snapshot), but the Cloud Control API delete route has no final-snapshot parameter. Re-run with --skip-final-snapshot after snapshotting manually, or retain the resource.`, resourceType, logicalId, physicalId);
12873
12916
  if (context?.removeProtection === true && resourceType === "AWS::AutoScaling::AutoScalingGroup") {
12874
12917
  this.logger.debug(`Delegating protected AutoScalingGroup ${logicalId} delete to the SDK ASGProvider (Cloud Control cannot force-delete a protected ASG)`);
12875
- const { ASGProvider } = await import("./asg-provider-DPYPr-Op.js").then((n) => n.n);
12918
+ const { ASGProvider } = await import("./asg-provider-Bdmv1zQr.js").then((n) => n.n);
12876
12919
  await new ASGProvider().delete(logicalId, physicalId, resourceType, _properties, context);
12877
12920
  return;
12878
12921
  }
@@ -19689,7 +19732,7 @@ const FLUSH_INTERVAL_MS = 2e3;
19689
19732
  const FLUSH_EVENT_THRESHOLD = 50;
19690
19733
  /** Build-time cdkd version, with a dev fallback for non-built contexts. */
19691
19734
  function getCdkdVersion() {
19692
- return "0.280.39";
19735
+ return "0.280.41";
19693
19736
  }
19694
19737
  /**
19695
19738
  * Generate a time-sortable unique run id, e.g.
@@ -21855,4 +21898,4 @@ var DeployEngine = class {
21855
21898
 
21856
21899
  //#endregion
21857
21900
  export { requireConfigObject as $, AssemblyReader as $t, green as A, __exportAll as An, runDockerForeground as At, disableInstanceApiTermination as B, resolveCaptureObservedState as Bt, MULTI_REGION_RECREATE_BLOCKED_TYPES as C, StackTerminationProtectionError as Cn, getBootstrapMarkerKey as Ct, bold as D, isCdkdError as Dn, buildDockerImage as Dt, formatResourceLine as E, formatError as En, validateContainerRepoName as Et, clearOnUpdateRemoval as F, synthesisStatusMessage as Ft, WAFv2WebACLProvider as G, stateBucketExistenceConfirmed as Gt, IntrinsicFunctionResolver as H, resolveStateBucketWithDefault as Ht, ProviderRegistry as I, getDefaultStateBucketName as It, assertRegionMatch as J, CFN_TEMPLATE_URL_LIMIT as Jt, normalizeAwsTagsToCfn as K, warnDeprecatedNoPrefixCliFlag as Kt, findActionableSilentDrops as L, getLegacyStateBucketName as Lt, yellow as M, AssetManifestLoader as Mt, IAMRoleProvider as N, getDockerImageBySourceHash as Nt, cyan as O, normalizeAwsError as On, formatDockerLoginError as Ot, collectInlinePolicyNamesManagedBySiblings as P, Synthesizer as Pt, requireConfigArray as Q, expectedOwnerParam as Qt, CloudControlProvider as R, resolveApp as Rt, extractDeploymentEventError as S, StackHasActiveImportsError as Sn, ensureAssetStorage as St, renderStatefulReason as T, SynthesisError as Tn, validateAssetBucketName as Tt, cfnRefValueFromPhysicalId as U, resolveStateBucketWithDefaultAndSource as Ut, isTerminationProtectionPropagationError as V, resolveSkipPrefix as Vt, refStateLookupFromResource as W, resolveUseCdkBootstrapAssets as Wt, readConfigString as X, findLargeInlineResources as Xt, configStringRefusal as Y, MIGRATE_TMP_PREFIX as Yt, replayWarn as Z, uploadCfnTemplate as Zt, createPreDeleteFinalSnapshot as _, NestedStackChildDirectDestroyError as _n, createAssetRedirectResolver as _t, DeploymentEventsStore as a, resetAwsClients as an, isRetryableTransientError as at, unsupportedFinalSnapshotError as b, ResourceTimeoutError as bn, AssetModeResolver as bt, replayFailedOperations as c, CdkdError as cn, TemplateParser as ct, IMPLICIT_DELETE_DEPENDENCIES as d, DeployCancelledError as dn, rebuildClientForBucketRegion as dt, processStackMessages as en, requireConfigString as et, computeImplicitDeleteEdges as f, LocalInvokeBuildError as fn, shouldRetainResource as ft, ccRoutedFinalSnapshotError as g, MissingCdkCliError as gn, buildAssetRedirectMap as gt, buildFinalSnapshotIdentifier as h, LockError as hn, WorkGraph as ht, DeploymentEventsReader as i, getAwsClients as in, withRetry as it, red as j, runDockerStreaming as jt, gray as k, withErrorHandling as kn, getDockerCmd as kt, replayRollback as l, ConfigError as ln, LockManager as lt, PRE_DELETE_SNAPSHOT_TYPES as m, LocalStartServiceError as mn, stringifyValue as mt, DEFAULT_RESOURCE_WARN_AFTER_MS as n, resolveBucketRegion as nn, DiffCalculator as nt, planFailedOps as o, setAwsClients as on, isThrottlingError as ot, ATOMIC_FINAL_SNAPSHOT_TYPES as p, LocalMigrateError as pn, AssetPublisher as pt, resolveExplicitPhysicalId as q, CFN_TEMPLATE_BODY_LIMIT as qt, DeployEngine as r, AwsClients as rn, describeTypeWithThrottleRetry as rt, planRollback as s, AssetError as sn, DagBuilder as st, DEFAULT_RESOURCE_TIMEOUT_MS as t, clearBucketRegionCache as tn, applyRoleArnIfSet as tt, withResourceDeadline as u, DependencyError as un, S3StateBackend as ut, isFinalSnapshotError as v, PartialFailureError as vn, loadPublishableAssetManifest as vt, isStatefulRecreateTargetSync as w, StateError as wn, parseBootstrapMarker as wt, makeCanonicalizePropertiesFn as x, ResourceUpdateNotSupportedError as xn, BOOTSTRAP_MARKER_PREFIX as xt, refusesFinalSnapshot as y, ProvisioningError as yn, rewriteTemplateAssetReferences as yt, slowCcOperationTimeoutMs as z, resolveAutoAssetStorage as zt };
21858
- //# sourceMappingURL=deploy-engine-BXVYshtP.js.map
21901
+ //# sourceMappingURL=deploy-engine-D3j4WK7_.js.map