C4 — container view¶
Target
This page describes intended behaviour or structure. No implementation is claimed unless a section is explicitly marked Current implementation or Evidence.
Rewritten 2026-10-09
Containers are the standalone hosts of model/services/_registry.yaml (one per platform) plus gateways and stores from the model. Modules inside each host are listed on the platform's generated microservices page.
C4Container
title ConnectSoft AI Factory — containers (level 2)
Person(user, "Factory user", "Any of the seven roles")
System_Boundary(exp, "Experience") {
Container(studio, "Factory Studio", "Blazor Shell + MFEs", "Scoped shell, modules; EN/HE/RU")
Container(cli, "CLI and VS Code extension", ".NET", "Same APIs as the Studio")
Container(gw1, "Edge gateway GW-01", "ApiGatewayTemplate", "TLS, token validation, routing")
Container(bff, "StudioBff GW-02", "ApiGatewayTemplate", "Composition and session projections")
}
System_Boundary(ctl, "Control") {
Container(cp, "ControlPlaneApi", ".NET 10 modular API", "Projects, asset publication, run control, approvals, usage accounting, Factory tenancy and commerce")
}
System_Boundary(rt, "Agent & Orchestration runtime / Model & Compute") {
Container(worker, "AgentRuntimeWorker", ".NET 10 worker", "Attempt execution, workflow engine, release loading")
Container(mg, "ModelGatewayHost GW-04", ".NET 10 (in-process first)", "Profiles, policy, reservation, routing, receipts")
}
System_Boundary(cap, "Capability & Tools / Execution") {
Container(tools, "ToolExecutorHost GW-05", ".NET 10", "Governed executor, MCP hosting and registry")
Container(integ, "IntegrationHost GW-06", ".NET 10", "Connections, connectors, webhooks")
Container(sandbox, "Sandbox pool", "microVM / containers", "Per-run workspaces, egress policy")
Container(delivery, "DeliveryHost / RuntimeCloudHost / FleetOperationsHost", ".NET 10", "Pipelines and releases; provisioning and capacity; fleet operations")
}
System_Boundary(kn, "Knowledge & Memory") {
Container(knowledge, "KnowledgeHost", ".NET 10", "Ingestion, retrieval, repository intelligence, artifacts, context, memory")
}
System_Boundary(trust, "Trust & Operations") {
Container(gov, "GovernanceHost", ".NET 10", "Policy, approval policy, audit, classification, secret broker")
Container(obs, "ObservabilityHost", ".NET 10", "Operations projections, evaluation, FinOps")
}
System_Boundary(data, "Data & Event") {
ContainerDb(sql, "Relational stores", "Azure SQL / NHibernate", "control, runtime, knowledge, governance, observability")
ContainerDb(vec, "Vector index", "Qdrant or Azure AI Search profile", "Derived, rebuildable")
ContainerDb(blob, "Artifact and audit stores", "Blob (immutable audit)", "Content by hash")
ContainerQueue(bus, "Messaging transport", "MessagingModel profile: Orleans outbox/inbox, Azure Service Bus, NServiceBus", "ADR-0012")
ContainerDb(kv, "Key Vault", "Secrets", "Behind the secret broker")
}
System_Ext(idp, "Identity Platform", "Sole token issuer")
System_Ext(models, "Model deployments", "Approved providers")
Rel(user, studio, "Uses")
Rel(user, cli, "Uses")
Rel(studio, gw1, "HTTPS")
Rel(cli, gw1, "HTTPS")
Rel(gw1, bff, "")
Rel(bff, cp, "REST / gRPC")
Rel(gw1, idp, "Validates tokens")
Rel(cp, bus, "Transitions + outbox")
Rel(bus, worker, "Dispatch, outcomes")
Rel(worker, cp, "Leases, outcomes, approval requests", "gRPC")
Rel(worker, mg, "Model invocations")
Rel(mg, models, "Provider calls")
Rel(worker, tools, "Tool invocations", "gRPC")
Rel(tools, sandbox, "Jobs")
Rel(tools, integ, "Connections")
Rel(worker, knowledge, "Retrieval, context, artifacts")
Rel(cp, gov, "Policy decisions, approval eligibility")
Rel(tools, gov, "Policy decisions, secrets")
Rel(cp, sql, "")
Rel(knowledge, vec, "")
Rel(knowledge, blob, "")
Rel(gov, kv, "")
Rel(obs, bus, "Projections from events")
UpdateLayoutConfig($c4ShapeInRow="3", $c4BoundaryInRow="2")
Hold "Alt" / "Option" to enable pan & zoom
Containers and their platforms¶
| Container | Platform | Modules | Catalog |
|---|---|---|---|
| ControlPlaneApi | Control Plane | 27 | microservices |
| AgentRuntimeWorker | Agent Mesh | 5 | microservices |
| ModelGatewayHost | Model & Compute | 6 | microservices |
| KnowledgeHost | Knowledge | 22 | microservices |
| ToolExecutorHost | Tools & MCP | 3 | microservices |
| IntegrationHost | Integration | 13 | microservices |
| MarketplaceHost | Marketplace | 11 (later) | microservices |
| DeliveryHost, RuntimeCloudHost, FleetOperationsHost | DevOps/GitOps, Runtime Cloud, Fleet Operations | 12, 10, 3 | delivery · environments · fleet |
| DataEventFoundations | Data & Event | 1 | microservices |
| GovernanceHost, ObservabilityHost | Governance, Observability | 14, 14 | governance · observability |
| StudioBff | Factory Studio | 6 | microservices |
| TemplateCatalogHost, GeneratedProductHost | Template & Library, Generated SaaS | 19, 1 | templates · generated SaaS |
Module counts are those of the registry on 2026-10-09; the generated services catalog is authoritative.