typekro 0.25.0 → 0.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/alchemy/kro-delete.d.ts +8 -0
  3. package/dist/alchemy/kro-delete.d.ts.map +1 -1
  4. package/dist/alchemy/kro-delete.js +34 -35
  5. package/dist/alchemy/kro-delete.js.map +1 -1
  6. package/dist/alchemy/resource-registration.d.ts +60 -0
  7. package/dist/alchemy/resource-registration.d.ts.map +1 -1
  8. package/dist/alchemy/resource-registration.js +290 -11
  9. package/dist/alchemy/resource-registration.js.map +1 -1
  10. package/dist/alchemy/types.d.ts +44 -0
  11. package/dist/alchemy/types.d.ts.map +1 -1
  12. package/dist/core/deployment/direct-factory.d.ts +8 -1
  13. package/dist/core/deployment/direct-factory.d.ts.map +1 -1
  14. package/dist/core/deployment/direct-factory.js +80 -61
  15. package/dist/core/deployment/direct-factory.js.map +1 -1
  16. package/dist/core/deployment/engine.d.ts +2 -0
  17. package/dist/core/deployment/engine.d.ts.map +1 -1
  18. package/dist/core/deployment/engine.js +22 -1
  19. package/dist/core/deployment/engine.js.map +1 -1
  20. package/dist/core/deployment/k8s-helpers.d.ts +12 -0
  21. package/dist/core/deployment/k8s-helpers.d.ts.map +1 -1
  22. package/dist/core/deployment/k8s-helpers.js +26 -1
  23. package/dist/core/deployment/k8s-helpers.js.map +1 -1
  24. package/dist/core/deployment/kro-factory.d.ts +248 -1
  25. package/dist/core/deployment/kro-factory.d.ts.map +1 -1
  26. package/dist/core/deployment/kro-factory.js +1060 -180
  27. package/dist/core/deployment/kro-factory.js.map +1 -1
  28. package/dist/core/deployment/kro-instance-safety.d.ts +209 -0
  29. package/dist/core/deployment/kro-instance-safety.d.ts.map +1 -1
  30. package/dist/core/deployment/kro-instance-safety.js +506 -24
  31. package/dist/core/deployment/kro-instance-safety.js.map +1 -1
  32. package/dist/core/deployment/kro-namespace-teardown.d.ts +248 -0
  33. package/dist/core/deployment/kro-namespace-teardown.d.ts.map +1 -0
  34. package/dist/core/deployment/kro-namespace-teardown.js +459 -0
  35. package/dist/core/deployment/kro-namespace-teardown.js.map +1 -0
  36. package/dist/core/deployment/readiness-waiter.d.ts.map +1 -1
  37. package/dist/core/deployment/readiness-waiter.js +6 -2
  38. package/dist/core/deployment/readiness-waiter.js.map +1 -1
  39. package/dist/core/deployment/rollback-manager.d.ts +33 -1
  40. package/dist/core/deployment/rollback-manager.d.ts.map +1 -1
  41. package/dist/core/deployment/rollback-manager.js +85 -30
  42. package/dist/core/deployment/rollback-manager.js.map +1 -1
  43. package/dist/core/serialization/core.d.ts.map +1 -1
  44. package/dist/core/serialization/core.js +82 -8
  45. package/dist/core/serialization/core.js.map +1 -1
  46. package/dist/core/types/deployment.d.ts +20 -0
  47. package/dist/core/types/deployment.d.ts.map +1 -1
  48. package/dist/factories/index.d.ts +1 -0
  49. package/dist/factories/index.d.ts.map +1 -1
  50. package/dist/factories/index.js +4 -0
  51. package/dist/factories/index.js.map +1 -1
  52. package/dist/factories/nats/compositions/index.d.ts +2 -0
  53. package/dist/factories/nats/compositions/index.d.ts.map +1 -0
  54. package/dist/factories/nats/compositions/index.js +2 -0
  55. package/dist/factories/nats/compositions/index.js.map +1 -0
  56. package/dist/factories/nats/compositions/nats-bootstrap.d.ts +49 -0
  57. package/dist/factories/nats/compositions/nats-bootstrap.d.ts.map +1 -0
  58. package/dist/factories/nats/compositions/nats-bootstrap.js +135 -0
  59. package/dist/factories/nats/compositions/nats-bootstrap.js.map +1 -0
  60. package/dist/factories/nats/index.d.ts +5 -0
  61. package/dist/factories/nats/index.d.ts.map +1 -0
  62. package/dist/factories/nats/index.js +5 -0
  63. package/dist/factories/nats/index.js.map +1 -0
  64. package/dist/factories/nats/resources/helm.d.ts +28 -0
  65. package/dist/factories/nats/resources/helm.d.ts.map +1 -0
  66. package/dist/factories/nats/resources/helm.js +39 -0
  67. package/dist/factories/nats/resources/helm.js.map +1 -0
  68. package/dist/factories/nats/resources/index.d.ts +3 -0
  69. package/dist/factories/nats/resources/index.d.ts.map +1 -0
  70. package/dist/factories/nats/resources/index.js +3 -0
  71. package/dist/factories/nats/resources/index.js.map +1 -0
  72. package/dist/factories/nats/resources/jetstream.d.ts +13 -0
  73. package/dist/factories/nats/resources/jetstream.d.ts.map +1 -0
  74. package/dist/factories/nats/resources/jetstream.js +105 -0
  75. package/dist/factories/nats/resources/jetstream.js.map +1 -0
  76. package/dist/factories/nats/types.d.ts +91 -0
  77. package/dist/factories/nats/types.d.ts.map +1 -0
  78. package/dist/factories/nats/types.js +72 -0
  79. package/dist/factories/nats/types.js.map +1 -0
  80. package/dist/factories/rook/types.d.ts +1 -1
  81. package/dist/utils/string.d.ts +14 -0
  82. package/dist/utils/string.d.ts.map +1 -1
  83. package/dist/utils/string.js +22 -0
  84. package/dist/utils/string.js.map +1 -1
  85. package/package.json +5 -1
@@ -9,8 +9,8 @@ import { DeploymentTimeoutError, ensureError, TypeKroError } from '../errors.js'
9
9
  import { createBunCompatibleKubernetesObjectApi } from '../kubernetes/index.js';
10
10
  import { getComponentLogger } from '../logging/index.js';
11
11
  import { getMetadataField } from '../metadata/index.js';
12
- import { getEffectiveScopes, scopesMatchFilter } from './resource-tagging.js';
13
12
  import { isNotFoundError } from './k8s-helpers.js';
13
+ import { getEffectiveScopes, scopesMatchFilter } from './resource-tagging.js';
14
14
  /**
15
15
  * Consolidated rollback manager for all deployment modes
16
16
  */
@@ -149,33 +149,48 @@ export class ResourceRollbackManager {
149
149
  * Wait for a resource to be deleted
150
150
  */
151
151
  async waitForResourceDeletion(resource, timeout) {
152
+ const name = this.extractStringValue(resource.metadata?.name);
153
+ if (!name) {
154
+ throw new TypeKroError(`Resource name is required for deletion check: ${this.getResourceIdentifier(resource)}`, 'MISSING_RESOURCE_NAME', {
155
+ resourceIdentifier: this.getResourceIdentifier(resource),
156
+ operation: 'deletion-check',
157
+ });
158
+ }
159
+ const namespace = this.extractStringValue(resource.metadata?.namespace);
160
+ await this.waitForDeletionByHeader({
161
+ apiVersion: resource.apiVersion,
162
+ kind: resource.kind,
163
+ name,
164
+ ...(namespace ? { namespace } : {}),
165
+ }, timeout);
166
+ }
167
+ /**
168
+ * The ONE gating wait shared by every deletion path: poll `read` until the
169
+ * resource returns a real 404, and THROW {@link DeploymentTimeoutError} if it
170
+ * does not within `timeout`. Unlike a best-effort wait it NEVER returns
171
+ * silently on timeout — a stuck finalizer surfaces as an error so the caller
172
+ * does not proceed to a dependent step (e.g. deleting a Namespace while its
173
+ * generated CRD is still Terminating). Transient non-404 read errors are
174
+ * retried until the deadline.
175
+ */
176
+ async waitForDeletionByHeader(target, timeout) {
152
177
  const startTime = Date.now();
153
- const pollInterval = DEFAULT_POLL_INTERVAL;
178
+ const pollInterval = Math.min(DEFAULT_POLL_INTERVAL, Math.max(1, timeout));
179
+ const metadata = target.namespace
180
+ ? { name: target.name, namespace: target.namespace }
181
+ : { name: target.name };
154
182
  while (Date.now() - startTime < timeout) {
155
183
  try {
156
- const name = this.extractStringValue(resource.metadata?.name);
157
- const namespace = this.extractStringValue(resource.metadata?.namespace);
158
- if (!name) {
159
- throw new TypeKroError(`Resource name is required for deletion check: ${this.getResourceIdentifier(resource)}`, 'MISSING_RESOURCE_NAME', {
160
- resourceIdentifier: this.getResourceIdentifier(resource),
161
- operation: 'deletion-check',
162
- });
163
- }
164
- const readObject = {
165
- apiVersion: resource.apiVersion,
166
- kind: resource.kind,
167
- metadata: { name },
168
- };
169
- if (namespace) {
170
- readObject.metadata.namespace = namespace;
171
- }
172
- await this.k8sApi.read(readObject);
184
+ await this.k8sApi.read({
185
+ apiVersion: target.apiVersion,
186
+ kind: target.kind,
187
+ metadata,
188
+ });
173
189
  // Resource still exists, wait and try again
174
190
  await new Promise((resolve) => setTimeout(resolve, pollInterval));
175
191
  }
176
192
  catch (error) {
177
- const k8sError = error;
178
- if (k8sError.statusCode === 404) {
193
+ if (isNotFoundError(error)) {
179
194
  // Resource is gone, deletion successful
180
195
  return;
181
196
  }
@@ -183,7 +198,40 @@ export class ResourceRollbackManager {
183
198
  await new Promise((resolve) => setTimeout(resolve, pollInterval));
184
199
  }
185
200
  }
186
- throw new DeploymentTimeoutError(`Timeout waiting for resource deletion: ${this.getResourceIdentifier(resource)}`, resource.kind, this.extractStringValue(resource.metadata?.name) || 'unknown', timeout, 'deletion');
201
+ throw new DeploymentTimeoutError(`Timeout waiting for resource deletion: ${target.kind}/${target.name}`, target.kind, target.name, timeout, 'deletion');
202
+ }
203
+ /**
204
+ * Delete a single resource by header and GATE on its real 404, throwing
205
+ * {@link DeploymentTimeoutError} if it does not disappear within `timeout`.
206
+ *
207
+ * This is the engine's ONE gating deletion primitive, reused by the KRO
208
+ * teardown sequence (CR → RGD → CRD → Namespace) and the Alchemy KRO delete
209
+ * path so there is a single, real gate everywhere — replacing the hand-rolled
210
+ * "poll then silently return on timeout" waits that let a slow teardown
211
+ * proceed to the next step while the previous resource was still Terminating.
212
+ *
213
+ * A 404 on the delete itself is treated as success (already gone). Any other
214
+ * delete error propagates. On success, the read gate runs to a real 404.
215
+ */
216
+ async deleteResourceAndWait(target, options = {}) {
217
+ const timeout = options.timeout ?? DEFAULT_DELETE_TIMEOUT;
218
+ const metadata = target.namespace
219
+ ? { name: target.name, namespace: target.namespace }
220
+ : { name: target.name };
221
+ try {
222
+ await this.k8sApi.delete({ apiVersion: target.apiVersion, kind: target.kind, metadata }, undefined, undefined, options.gracePeriod);
223
+ }
224
+ catch (error) {
225
+ if (isNotFoundError(error)) {
226
+ this.logger.debug('Resource already gone before delete', {
227
+ kind: target.kind,
228
+ name: target.name,
229
+ });
230
+ return;
231
+ }
232
+ throw error;
233
+ }
234
+ await this.waitForDeletionByHeader(target, timeout);
187
235
  }
188
236
  /**
189
237
  * Extract string value from potentially complex metadata field
@@ -220,9 +268,7 @@ export class ResourceRollbackManager {
220
268
  * applied.
221
269
  */
222
270
  async rollbackDeployedResources(deployedResources, options) {
223
- const filtered = [...deployedResources]
224
- .reverse()
225
- .filter((r) => {
271
+ const filtered = [...deployedResources].reverse().filter((r) => {
226
272
  const scopes = getEffectiveScopes(r.manifest);
227
273
  if (options.targetScopes !== undefined) {
228
274
  return scopesMatchFilter(scopes, options.targetScopes);
@@ -256,7 +302,7 @@ export class ResourceRollbackManager {
256
302
  if (resource.status === 'failed' && resource.applied !== true)
257
303
  continue;
258
304
  try {
259
- await this.deleteDeployedResource(resource);
305
+ await this.deleteDeployedResource(resource, options.timeout);
260
306
  rolledBackResources.push(`${resource.kind}/${resource.name}`);
261
307
  }
262
308
  catch (error) {
@@ -285,7 +331,7 @@ export class ResourceRollbackManager {
285
331
  * should be deleted. Filtering at this level would silently drop
286
332
  * resources that the caller explicitly targeted for deletion.
287
333
  */
288
- async deleteDeployedResource(resource) {
334
+ async deleteDeployedResource(resource, timeout) {
289
335
  const deleteLogger = this.logger.child({
290
336
  resourceId: resource.id,
291
337
  kind: resource.kind,
@@ -311,10 +357,19 @@ export class ResourceRollbackManager {
311
357
  }
312
358
  throw error;
313
359
  }
360
+ // Namespace deletion is asynchronous and may be blocked by PVCs that
361
+ // Kubernetes cannot garbage-collect until their volumes are released.
362
+ // DirectResourceFactory owns that lifecycle: it removes PVCs only for
363
+ // explicitly targeted Namespaces and waits for the Namespace 404. Do
364
+ // not consume the generic per-resource timeout here before that cleanup
365
+ // has had a chance to run.
366
+ if (resource.kind === 'Namespace') {
367
+ return;
368
+ }
314
369
  // Wait for resource to be deleted
315
- const timeout = DEFAULT_DELETE_TIMEOUT;
370
+ const deleteTimeout = timeout ?? DEFAULT_DELETE_TIMEOUT;
316
371
  const startTime = Date.now();
317
- while (Date.now() - startTime < timeout) {
372
+ while (Date.now() - startTime < deleteTimeout) {
318
373
  try {
319
374
  await this.k8sApi.read({
320
375
  apiVersion: resource.manifest.apiVersion || '',
@@ -333,7 +388,7 @@ export class ResourceRollbackManager {
333
388
  throw error;
334
389
  }
335
390
  }
336
- throw new DeploymentTimeoutError(`Timeout waiting for resource ${resource.kind}/${resource.name} to be deleted`, resource.kind, resource.name, timeout, 'deletion');
391
+ throw new DeploymentTimeoutError(`Timeout waiting for resource ${resource.kind}/${resource.name} to be deleted`, resource.kind, resource.name, deleteTimeout, 'deletion');
337
392
  }
338
393
  catch (error) {
339
394
  deleteLogger.error('Failed to delete resource', ensureError(error));
@@ -1 +1 @@
1
- {"version":3,"file":"rollback-manager.js","sourceRoot":"","sources":["../../../src/core/deployment/rollback-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rollback-manager.js","sourceRoot":"","sources":["../../../src/core/deployment/rollback-manager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/core/serialization/core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/core/serialization/core.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,7 @@ import { finalizeCelForKro, isStaticExpression, processResourceReferences, } fro
24
24
  import { applyTernaryConditionalsToResources } from './kro-post-processing.js';
25
25
  import { generateKroSchemaFromArktype } from './schema.js';
26
26
  import { runStatusAnalysisPipeline } from './status-analysis-pipeline.js';
27
+ import { assertNoHoistWeakenedStatusFields, findDanglingHoistedReference, rewriteHoistedNamespaceReferences, rewriteHoistedNamespaceRefsInValue, selectHoistedNamespaces, } from '../deployment/kro-instance-safety.js';
27
28
  import { serializeResourceGraphToYaml } from './yaml.js';
28
29
  function isToYamlOptions(value) {
29
30
  if (typeof value !== 'object' || value === null || !Object.hasOwn(value, 'aspects')) {
@@ -1558,7 +1559,61 @@ function createTypedResourceGraph(definition, resourceBuilder, statusBuilder, op
1558
1559
  keys: Object.keys(nestedStatusCel),
1559
1560
  statusMappingsHasField: '__nestedStatusCel' in statusMappings,
1560
1561
  });
1561
- const kroSchema = generateKroSchemaFromArktype(definition.name, schemaDefinition, resourcesWithKeys, optimizedStatusMappings, Object.keys(nestedStatusCel).length > 0 ? nestedStatusCel : undefined);
1562
+ // HOIST EVERY owned Namespace OUT of the shared RGD graph (the unconditional
1563
+ // model — typekro NEVER emits a Namespace into RGD YAML). Selection is trivially
1564
+ // `kind === 'Namespace'` (see {@link selectHoistedNamespaces}). Leaving a
1565
+ // Namespace a graph CHILD would let deleting the instance garbage-collect the
1566
+ // namespace holding its own finalizer; the factory emits it as a sibling created
1567
+ // deps-first (and torn down after the RGD) instead. This keeps the graph-level
1568
+ // RGD (`graph.toYaml()`) consistent with the factory's RGD
1569
+ // (`factory('kro').toYaml()`), both of which drop it. Any remaining reference to
1570
+ // a hoisted Namespace's `metadata.name` is rewritten to that Namespace's own
1571
+ // concrete name expression (finding #3) so the RGD carries no dangling ref.
1572
+ const hoistedNamespaces = selectHoistedNamespaces(resourcesWithKeys);
1573
+ const hoistedNamespaceIds = new Set(hoistedNamespaces.keys());
1574
+ const graphResources = hoistedNamespaces.size === 0
1575
+ ? resourcesWithKeys
1576
+ : rewriteHoistedNamespaceReferences(Object.fromEntries(Object.entries(resourcesWithKeys).filter(([id]) => !hoistedNamespaceIds.has(id))), hoistedNamespaces);
1577
+ // BLOCKER #2 — apply the SAME status-reference rewriting the FACTORY path
1578
+ // already does (kro-factory.ts `buildRgdYaml`) to this graph/composition path.
1579
+ // Removing a hoisted Namespace from `graphResources` is not enough: the status
1580
+ // mappings, nested-composition CEL, and status overrides can ALSO reference it
1581
+ // (e.g. `status.nsName: ${ownedNamespace.metadata.name}`), which would emit an
1582
+ // RGD with `resources:[]` for that id and a dangling `${...}` KRO rejects.
1583
+ // Rewrite every such reference to the Namespace's own name expression (finding
1584
+ // #3), preserving the non-enumerable composition metadata on optimizedStatusMappings.
1585
+ let graphStatusMappings = optimizedStatusMappings;
1586
+ if (hoistedNamespaces.size > 0) {
1587
+ const rewritten = rewriteHoistedNamespaceRefsInValue(optimizedStatusMappings, hoistedNamespaces);
1588
+ if (rewritten !== optimizedStatusMappings) {
1589
+ // The rewrite clones via Object.entries, dropping non-enumerable
1590
+ // composition metadata — re-attach it from the original statusMappings.
1591
+ for (const metadataKey of [
1592
+ '__originalCompositionFn',
1593
+ '__nestedCompositionFns',
1594
+ '__nestedCompositionDefinitions',
1595
+ '__nestedCompositionResources',
1596
+ '__nestedCompositionSpecMappings',
1597
+ '__nestedStatusCel',
1598
+ ]) {
1599
+ const descriptor = Object.getOwnPropertyDescriptor(statusMappings, metadataKey);
1600
+ if (descriptor)
1601
+ Object.defineProperty(rewritten, metadataKey, descriptor);
1602
+ }
1603
+ }
1604
+ graphStatusMappings = rewritten;
1605
+ // #6 — REJECT (throw) HONESTLY, never silently drop: status fields that resolve
1606
+ // ONLY to a hoisted Namespace become a schema-only expression
1607
+ // (`schema.spec.namespace`), which KRO status CEL cannot evaluate, so they
1608
+ // cannot be represented in the KRO status schema. Fail loudly naming the
1609
+ // field(s) rather than ship a weakened status API. Resource-derived sibling
1610
+ // fields are unaffected.
1611
+ assertNoHoistWeakenedStatusFields(optimizedStatusMappings, hoistedNamespaces, definition.name);
1612
+ }
1613
+ const graphNestedStatusCel = hoistedNamespaces.size === 0
1614
+ ? nestedStatusCel
1615
+ : rewriteHoistedNamespaceRefsInValue(nestedStatusCel, hoistedNamespaces);
1616
+ const kroSchema = generateKroSchemaFromArktype(definition.name, schemaDefinition, graphResources, graphStatusMappings, Object.keys(graphNestedStatusCel).length > 0 ? graphNestedStatusCel : undefined);
1562
1617
  if (definition.group) {
1563
1618
  kroSchema.group = definition.group;
1564
1619
  }
@@ -1567,9 +1622,9 @@ function createTypedResourceGraph(definition, resourceBuilder, statusBuilder, op
1567
1622
  // Non-enumerable so it doesn't appear in the YAML output, but
1568
1623
  // accessible via KroSimpleSchemaWithMetadata for the YAML serializer
1569
1624
  // to resolve virtual composition IDs in resource templates.
1570
- if (Object.keys(nestedStatusCel).length > 0) {
1625
+ if (Object.keys(graphNestedStatusCel).length > 0) {
1571
1626
  Object.defineProperty(kroSchema, '__nestedStatusCel', {
1572
- value: nestedStatusCel,
1627
+ value: graphNestedStatusCel,
1573
1628
  enumerable: false,
1574
1629
  });
1575
1630
  }
@@ -1584,19 +1639,26 @@ function createTypedResourceGraph(definition, resourceBuilder, statusBuilder, op
1584
1639
  // factory's inline-CEL evaluator (see `evaluateStaticFieldValue`).
1585
1640
  const statusOverrides = compositionAnalysis?.statusOverrides ?? [];
1586
1641
  if (statusOverrides.length > 0) {
1587
- const resourceIdList = Object.keys(resourcesWithKeys);
1588
- const nestedCelForClassification = Object.keys(nestedStatusCel).length > 0 ? nestedStatusCel : undefined;
1642
+ // Classify against the HOISTED graph's resource ids (the hoisted Namespace
1643
+ // is no longer a graph resource) so an override that referenced only it is
1644
+ // treated correctly after rewriting.
1645
+ const resourceIdList = Object.keys(graphResources);
1646
+ const nestedCelForClassification = Object.keys(graphNestedStatusCel).length > 0 ? graphNestedStatusCel : undefined;
1589
1647
  for (const override of statusOverrides) {
1648
+ // BLOCKER #2 — rewrite any reference to a hoisted Namespace in the override
1649
+ // expression too (finding #6), so a status override never dangles at the
1650
+ // removed id (mirrors the factory path).
1651
+ const celExpression = rewriteHoistedNamespaceRefsInValue(override.celExpression, hoistedNamespaces);
1590
1652
  // Schema-only overrides (no resource refs) are hydrated client-side by
1591
1653
  // the static-field path, like any other static status field — KRO
1592
1654
  // status CEL cannot reference `schema.spec.*`. Only inject the
1593
1655
  // resource-referencing (dynamic) overrides into the KRO schema.
1594
- if (isStaticExpression(override.celExpression, nestedCelForClassification, resourceIdList))
1656
+ if (isStaticExpression(celExpression, nestedCelForClassification, resourceIdList))
1595
1657
  continue;
1596
1658
  if (!kroSchema.status) {
1597
1659
  kroSchema.status = {};
1598
1660
  }
1599
- const yamlSafe = override.celExpression.replace(/"([^"\\]*)"/g, "'$1'");
1661
+ const yamlSafe = celExpression.replace(/"([^"\\]*)"/g, "'$1'");
1600
1662
  kroSchema.status[override.propertyPath] = yamlSafe;
1601
1663
  }
1602
1664
  }
@@ -1612,7 +1674,19 @@ function createTypedResourceGraph(definition, resourceBuilder, statusBuilder, op
1612
1674
  applyTernaryConditionalsToResources(resourcesWithKeys, kroSchema.__ternaryConditionals, kroSchema.__nestedStatusCel);
1613
1675
  }
1614
1676
  }
1615
- const rgdYaml = serializeResourceGraphToYaml(definition.name, resourcesWithKeys, options, kroSchema);
1677
+ const rgdYaml = serializeResourceGraphToYaml(definition.name, graphResources, options, kroSchema);
1678
+ // BLOCKER #2 — the SAME post-serialization dangling-reference assertion the
1679
+ // factory path runs (kro-factory.ts `assertNoDanglingHoistedReferences`). After
1680
+ // hoisting an owned Namespace out of the graph, NO reference to it may remain
1681
+ // anywhere in the emitted RGD (resource templates, status CEL, nested CEL,
1682
+ // overrides). If one slipped through a form the rewrite didn't structurally
1683
+ // cover, fail LOUDLY here instead of shipping an RGD KRO rejects at runtime.
1684
+ const dangling = findDanglingHoistedReference(rgdYaml, hoistedNamespaceIds);
1685
+ if (dangling !== undefined) {
1686
+ throw new ValidationError(`Hoisting the owned Namespace left a dangling reference to removed resource "${dangling}" ` +
1687
+ `in the emitted RGD for composition "${definition.name}". This would make KRO reject the ` +
1688
+ `graph. Report this as a typekro bug (the reference form was not structurally rewritten).`, 'ResourceGraphDefinition', definition.name, `status/${dangling}`);
1689
+ }
1616
1690
  // Singleton owners are deployed once outside any consuming instance's
1617
1691
  // ApplySet (see `singleton(...)`). The factory's `deploy()` creates them
1618
1692
  // imperatively; for the GitOps `toYaml()` path we must emit their RGDs too,