Three surgical fixes for the 11 cosmetic-guard regressions caught on
CI run 26112245005 (issue #1976 / TBD-A64). 8 of 11 deferred — see
TBD-A65..A71 for the architectural follow-up tickets.
1. wizard/steps/logoTone.ts:126
`alloy` tile background `#FFFFFF` → `#FD6F00` (canonical Grafana
Alloy swirl colour per grafana.com/oss/alloy hero). The vendored
Badge already paints a white glyph; on a white tile the mark was
invisible. Cosmetic-guards `logo tiles use canonical brand surface`
test now matches LOGO_SURFACE_CANON[alloy] = '#FD6F00'.
2. wizard/steps/stepComponentsCopy.ts:33-34 + StepComponents.tsx:920-941
Retired the legacy "Choose Your Stack" / "Always Included" labels
(renamed to "Components" / "Foundation") and dropped `role="tablist"`
+ `role="tab"` on the section toggle. Matches the canonical SME
marketplace single-grid pattern in
core/marketplace/src/components/AppsStep.svelte. The
`tab === 'choose' | 'always'` state machine stays — only the
operator-visible strings + ARIA semantics changed.
`stepDescription` rephrased to drop both legacy phrases.
StepComponents.test.tsx updated for the new labels + `aria-pressed`.
3. sovereign/AppDetail.tsx:806-859
`data-testid="sov-app-tab-${id}"` alias exposed on every TabButton
via an absolutely-positioned aria-hidden span overlay (a single DOM
node can't carry two `data-testid` values, the primary
`app-tab-${id}` stays on the <button> for back-compat with the
AppDetail.test.tsx matrix). Unblocks the 22+ existing
`sov-app-tab-*` Playwright selectors in application-pages-t-o-p,
continuum-dr-section, compliance-dashboards, and rbac-membership
that have been broken since the rename.
Chart bump: bp-catalyst-platform 1.4.208 → 1.4.209.
Bootstrap-kit pin: 13-bp-catalyst-platform.yaml 1.4.208 → 1.4.209.
Refs #1976 TBD-A64.
Co-authored-by: hatiyildiz <hatiyildiz@users.noreply.github.com>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>