AI Executive Office — CXO Assistant Platform (On-Premises) · View 08 of 30 · 3 · Structure
Decisions and rationale
- Kubernetes is the substrate for everything except the databases: one cluster per site, a namespace per tenant in the pooled tier, a whole cluster per tenant in the siloed one. PostgreSQL, Neo4j and the object store run outside it on dedicated hardware, because a stateful rebuild during an incident is not a place to discover the storage driver
- Temporal for investigations because an investigation is a long-running, resumable orchestration with checkpoints — not a long HTTP request. Workflow state survives a pod restart, which is what makes the asynchronous experience honest rather than a spinner
- Every service authenticates with a mesh-issued workload identity (SPIFFE), and every secret it still needs is leased from Vault with a short time to live. There are no connection strings in configuration anywhere in this diagram
- MCP tool servers are their own deployable, one container per domain, so a finance tool change ships without redeploying the orchestrator and a misbehaving server is restarted alone
Assumptions
- Eight H100-class GPUs per site are assumed for the 07:10 brief spike: a 70B reasoning model held resident, a 7B router and the embedding and reranking models sharing a MIG-partitioned card. GPU lead times are months, so this is sized and ordered before contract, not after
- Twelve worker cores and 500 GB of usable object storage is the starting analytical footprint for a mid-size tenant. Sizing is a per-tenant exercise driven by refresh frequency, not user count
Deliberate omissions
- Every service-to-service hop runs over mutual TLS inside the mesh, but that is drawn only in views 21 and 26, where it is the subject rather than clutter
- The self-hosted integration runtime is drawn once; in practice one runs per on-premises network the tenant exposes