Skip to main content
The control plane owns durable Organizations, Integrations, Alert Events, Incidents, Conversations, Investigations, Findings, audit records, and Postmortems. One HTTP server handles /api/v1, /webhooks/v1, health, readiness, and metrics. A separate gRPC listener accepts outbound Relay sessions when Relay support is enabled. The Relay performs closed Kubernetes reads from the customer boundary. Provider adapters remain behind Integration interfaces. PostgreSQL is the deployment truth, and api/openapi.yaml is the only editable public HTTP contract. See the repository ARCHITECTURE.md for implementation details. Product requests authenticate a User, select one Organization, and cross one declared route table into a domain handler. Only the PostgreSQL adapter touches deployment data, and every Organization-owned query predicates on its identifier. Webhook intake has separate authentication and contracts even though it shares the HTTP server; operational probes remain outside the product OpenAPI contract. The control plane offers closed, read-only Tool capabilities. Provider adapters or Relay execute them, and the Investigation engine records bounded Tool Runs and cited results. The public control-plane repository owns this documentation and HTTP contract. The Apache-licensed Relay protocol is consumed from the pinned github.com/open-cluster/oc-relay/gen/go module. Review the repository ARCHITECTURE.md before changing a cross-repository protocol.