§"A La Carte Components (26)" header was stale. Pass 27 added
anthropic-adapter to the table body but didn't update the header count.
Pass 40 confirmed canonical count is 27 in PLATFORM-TECH-STACK §1.
Verified by counting:
- Mandatory: 25 platform/-folder components + OpenTelemetry note = 26 ✓
- A La Carte: 27 platform/-folder components ✓
- Total platform/ folders: 52 (matches Overview L11 "all 52 platform
components" and the 52 directories in platform/)
Fixed header (26) → (27). 25 + 27 = 52 = Overview claim. Internally
consistent.
Lesson: union-equality checks must verify both body count AND header
count. Adding an item to a body without updating the header creates
off-by-one drift.
§"Removed Components" Dapr/RabbitMQ "Kafka covers..." entries reviewed:
defensible context (app-level use cases; NATS is control-plane only,
Kafka via Strimzi is the Application Blueprint).
§"Product Impact Analysis / Fabric" L110 "Merging Titan + Fuse into
Fabric" — historical product-rename narrative (Pass 26 documented).
Capital-F "Fuse" missed by case-sensitive \bfuse\b grep — extending
Pass 38 case-insensitivity lesson to this category as well.
platform/syft-grype/README.md: clean. Banner correct (per-host-cluster
§3.3). Catalyst integration accurate.
opensearch was listed under "Mandatory Components" but per PLATFORM-TECH-STACK
§4.4 + §10 it is an Application Blueprint — customers install it (alongside
ClickHouse + bp-specter) only when they want the SIEM pipeline. Conversely
keycloak was under "A La Carte Components" but §2.1 places it inside the
Catalyst control plane (per-Org realms in SME, per-Sovereign realm in
corporate — present on every Sovereign).
Swapped the two entries and added a classification-basis banner above the
Mandatory section explicitly pointing at PLATFORM-TECH-STACK §2/§3/§4 so the
forecast's Mandatory/A-la-carte axis lines up with the architectural
categorization in canonical docs.
platform/milvus/README.md: clean.
Validation log Pass 27 entry added.
Targeted updates to BUSINESS-STRATEGY.md §5.1 and §9.2 plus
TECHNOLOGY-FORECAST §removed-components.
- BUSINESS-STRATEGY.md §5.1: OpenOva Catalyst row repositioned. It is
the platform itself (the self-sufficient Kubernetes-native control
plane that turns any cluster into a Sovereign), not a sub-product
bundling bootstrap+IDP+lifecycle manager. Other OpenOva products
(Cortex, Fingate, Fabric, Relay, Specter, Axon) run ON Catalyst as
composite Blueprints.
- BUSINESS-STRATEGY.md §9.2: capability matrix "Developer portal" cell
updated from "Catalyst IDP" to "Catalyst console" — IDP function is
one of the console's responsibilities, not a separate product.
- TECHNOLOGY-FORECAST.md §removed-components: Backstage row updated to
describe replacement as "Catalyst console (the platform's own
developer-facing UI)" rather than the now-retired "Catalyst IDP"
sub-product.
Strategy narrative, market segmentation, pricing model, and migration
playbook are unchanged — they stand on their own.
Refs #37