Fix#102 (PR #1326) added a platform-mirror Continuum CR with
`openova.io/continuum-mirror-of: <ns>/<name>` which renders to the
illegal label value `qa-omantel/cont-omantel`. K8s label VALUES may
not contain `/` (`^[a-z0-9A-Z]([-_.a-z0-9A-Z]*[a-z0-9A-Z])?$`) — only
label KEYS may use it as the prefix separator.
Bp-catalyst-platform install crashes on Continuum CR validation:
Continuum.dr.openova.io "cont-omantel" is invalid:
metadata.labels: Invalid value: "qa-omantel/cont-omantel": a valid
label must be an empty string or consist of alphanumeric...
Cascade-wedged every fresh Sovereign provision (prov #10 evidence:
c460bd7078dda0f1).
Fix: split the cross-namespace reference into two separate, valid
labels — both with canonical `openova.io/` prefix:
openova.io/continuum-mirror-of-namespace: qa-omantel
openova.io/continuum-mirror-of-name: cont-omantel
Information preserved (still queryable via
`kubectl get continuums -A -l openova.io/continuum-mirror-of-namespace=<ns>`)
and target-state per OpenOva canonical pattern (label keys may have
`/`, label values never).
Verified via `helm template` rendered manifests + full label-value
scan: 0 illegal values remain. `kubectl create --dry-run=client`
against rendered manifests passes validation.
Per principle 4 (`feedback_inviolable_principles.md` #4) both halves
stay values-overridable through `qaFixtures.namespace` and
`qaFixtures.continuumName`.
Files changed:
- products/catalyst/chart/templates/qa-fixtures/continuum-qa.yaml
Split single label into two; both values-overridable, both quoted.
- products/catalyst/chart/Chart.yaml: 1.4.134 → 1.4.135.
- clusters/_template/bootstrap-kit/13-bp-catalyst-platform.yaml:
Pin bumped 1.4.134 → 1.4.135 with Fix#119 changelog.
Co-authored-by: hatiyildiz <hatice.yildiz@openova.io>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>