@@ -213,12 +213,9 @@ target state, gated by this rule.
213213
214214` ` ` yaml
215215# recipes/overlays/gke-cos.yaml — device-plugin ownership
216- # Shown with the value set as originally drawn. Amended 2026-08-24: the
217- # family ships as gke-default plus bundle-installer — the drawn
218- # operator-selfdriver, which REPLACED the operator value (shipped
219- # v0.19.0 as driver-installer). The two shipped values differ in the
220- # opt-out pool label at generation time, so Deferred Decision 5 needed
221- # no durable marker.
216+ # Shown with the post-DD5 value set as drawn. Amended 2026-08-24:
217+ # operator-selfdriver shipped as bundle-installer, REPLACING operator
218+ # (shipped driver-installer) — see the Deferred Decision 5 resolution.
222219spec:
223220 profile:
224221 name: gpuStack
@@ -279,13 +276,8 @@ spec:
279276 componentRefs:
280277 - name: gcp-driver-installer
281278 overrides:
282- # Amended 2026-08-24: shipped as the nested installer.enabled,
283- # not the top-level ` install` drawn here — top-level
284- # `install`/`enabled` are component-PRESENCE gates (IsEnabled),
285- # so a false default would make the component "not enabled in
286- # the surviving composition" and deadlock resolution for every
287- # value; root `overrides.enabled` is separately rejected in
288- # fragments. A nested key is an ordinary owned value path.
279+ # Shipped as nested installer.enabled — top-level install is a
280+ # component-presence gate and deadlocks profile resolution.
289281 installer: {enabled: true}
290282 - name: gpu-operator
291283 overrides:
@@ -306,10 +298,9 @@ step 2 describes. Selection:
306298# gke-default (declared default; drawn above as csp-managed) — no flag needed
307299aicr recipe --service gke --os cos --accelerator h100 --intent inference
308300
309- # explicit alternative configuration (shipped name; drawn above as
310- # operator-selfdriver)
301+ # explicit alternative configuration (shipped name; drawn above as operator)
311302aicr recipe --service gke --os cos --accelerator h100 --intent inference \
312- --profile gpuStack=bundle -installer
303+ --profile gpuStack=driver -installer
313304` ` `
314305
315306A profile fragment may reference only components **enabled in the
@@ -334,8 +325,7 @@ explicit toggles from changing the pre-existing presence state, with
334325subset-filter semantics defined under Override locking.
335326
336327**Conditional installation is expressible in v1 through a values-gated
337- component** — the `operator-selfdriver` value above (shipped as
338- ` bundle-installer` ) is the pattern.
328+ component** — the `operator-selfdriver` value above is the pattern.
339329The component sits unconditionally in the composition and renders
340330nothing unless its gate value is selected; the profile value flips a
341331plain values path — owned, locked, and validated like any other —
@@ -1468,27 +1458,16 @@ recurrence — the shape the Problem section expects.
14681458 installer's synthetic `enabled` joins `ownedPaths`), which is a
14691459 family-wide re-qualification and evidence re-signing event.
14701460
1471- *Amended 2026-08-24 (issue # 1716).* The landing event shipped the value
1472- as `bundle-installer`, **replacing** `driver-installer` rather than
1473- joining it : the two named the same pool shape
1474- (`gpu-driver-version=disabled` + the opt-out label), differing only in
1475- who applied the installer DaemonSet — precisely Deferred Decision 5's
1476- ambiguity, which the replacement resolves without any signal. The
1477- shipped family is `gke-default` / `bundle-installer`, distinguished at
1478- generation time by the pool label alone. Selecting
1479- ` gpuStack=driver-installer` fails closed with the valid-values list;
1480- migration : delete any hand-applied `nvidia-driver-installer` DaemonSet
1481- (the bundle's DaemonSet shares its name) and regenerate with
1482- ` --profile gpuStack=bundle-installer` .
1461+ *Amended 2026-08-24 (#1716):* shipped as `bundle-installer`, replacing
1462+ ` driver-installer` (breaking; same pool shape — see Deferred Decision 5).
14831463
14841464 Any dcgm-exporter GPU-ID-mapping adjustment for `csp-managed` is an
14851465 external GKE behavior not verifiable from this repository. It is
14861466 verified and added during this step if required, with upstream
14871467 citations recorded in that PR. Before conversion, this step also
14881468 checks the family's `/v1` usage or announces a deprecation window so
14891469 clients do not discover the `/v1` rejection at cut-over.
1490- 4. Other consumers : once `operator-selfdriver` (shipped as
1491- ` bundle-installer` ) is declared, internal
1470+ 4. Other consumers : once `operator-selfdriver` is declared, internal
14921471 recipes (DGXC/NKX) migrate the cos-gpu-installer arrangement
14931472 (internal MR # 27) to the public value. The values-gated
14941473 ` gcp-driver-installer` component makes the case expressible without
@@ -1520,8 +1499,8 @@ work that resolves it.
15201499 GKE's managed driver install, so the standalone gate's prerequisite
15211500 needed the profile's per-value pairing), and the GKE `gpuStack`
15221501 profile now consumes the form per selected value (#1761 rollout
1523- PR 3) : positive for `driver-installer` (later `bundle-installer`),
1524- negated for the `gke-default` default.
1502+ PR 3) : positive for `driver-installer`, negated for the
1503+ ` gke-default` default.
152515043. **AKS node-pool-mode signal — resolved by the 2026-07-27 amendment.**
15261505 The provider-facing AgentPool `gpuProfile.driver` property is the
15271506 durable ownership marker. AKS adoption projects it into a snapshot
@@ -1548,8 +1527,7 @@ work that resolves it.
15481527 **Proposed: identify a durable signal during the value's adoption;
15491528 the `operator` and `csp-managed` values do not wait on it.**
15501529
1551- *Resolved 2026-08-24 (issue # 1716): no signal was needed.* The value
1552- shipped as `bundle-installer`, **replacing** `operator`
1553- (shipped `driver-installer`) — the two named the same pool shape, and
1554- with the sibling gone the family's values are mutually distinguishable
1555- at generation time by the opt-out pool label alone.
1530+ *Resolved 2026-08-24 (#1716): no signal was needed* — the value shipped
1531+ as `bundle-installer`, replacing `operator` (shipped `driver-installer`);
1532+ with the same-shaped sibling gone, the family is distinguishable at
1533+ generation time by the opt-out pool label alone.
0 commit comments