Factory Studio — overview¶
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 (design plan P13)
This page replaces the June-2026 overview with its eight Studio microservices and nine modules. The 2026 design has one BFF and composition host, a notification module and a realtime gateway; the modules become the seven work areas of the UX model (design plan U1–U4). The old page is archived under catalogs 2026-06; the nine module pages stay as the June-2026 module descriptions and are mapped to work areas in the UX track.
The Factory Studio is where people observe, steer, review and govern the Factory. It is deliberately thin: every fact comes from the platform that owns it, every action is that platform's command with that platform's gates, and what the Studio itself keeps — sessions, saved views, notifications — is never factory truth.
| Platform | PF-14 Factory Studio (Experience) |
| Bounded contexts | BC-29 |
| Services | 7 (2 hosts, 5 modules, 0 external, 0 later) — 3 modelled |
| Gateways | GW-02 |
| Status | target |
Purpose¶
- Compose, never own. Screens are compositions of other platforms' read models under the session's scope, each source carrying its freshness (FUX-07); a degraded source is shown as degraded.
- Forward, never decide. Commands go to the owning platform with an idempotency key, the user's token and scope and, for gated classes, the approval binding; the BFF never retries, queues or widens.
- Switchers grant nothing. Organization, tenant, project and environment switchers change what the session reads under; permissions come from the identity platform and the Control plane (ADR-0015).
- States stay distinct. Asset readiness, deployment availability, run, approval, usage and freshness vocabularies are rendered as what they are, never collapsed into one "status" (FUX-01…12).
- Three locales, one shell. English, Hebrew (right-to-left) and Russian; WCAG 2.2 AA; keyboard-first; light and dark; reduced motion (D34).
- Four clients, one contract. The web Studio, the CLI, the VS Code extension and the SDK all speak to the BFF's screen compositions and commands.
Bounded context and services¶
| Context | Owns | Services (granularity) |
|---|---|---|
| BC-29 Experience Composition | Session projections, saved views, preferences, notifications, realtime subscriptions | StudioBff (standalone, GW-02; four composition rows merged) · StudioNotificationService (module) · StudioRealtimeGateway (standalone, cohosted first) |
| Service | Context | Granularity | Status |
|---|---|---|---|
| AgentFlowVisualizationService | BC-29 | module of host | unmodelled |
| DashboardAggregationService | BC-29 | module of host | unmodelled |
| KnowledgeExplorerBff | BC-29 | module of host | unmodelled |
| KnowledgeStudioBff | BC-29 | module of host | unmodelled |
| StudioBff | BC-29 | standalone host | target |
| StudioNotificationService | BC-29 | module of host | target |
| StudioRealtimeGateway | BC-29 | standalone host | target |
Context¶
flowchart LR
subgraph P["Factory Studio"]
StudioBff["StudioBff"]
StudioRealtimeGateway["StudioRealtimeGateway"]
end
GW_02{"GW-02 Studio BFF"} --> P
P --> ext_identity_platform["ext-identity-platform"]
P --> ControlPlaneApi["ControlPlaneApi"]
P --> ObservabilityHost["ObservabilityHost"]
P --> KnowledgeHost["KnowledgeHost"]
P --> GovernanceHost["GovernanceHost"]
P --> ModelGatewayHost["ModelGatewayHost"]
P --> ToolExecutorHost["ToolExecutorHost"]
P --> IntegrationHost["IntegrationHost"]
P --> DeliveryHost["DeliveryHost"]
P --> RuntimeCloudHost["RuntimeCloudHost"]
P --> FleetOperationsHost["FleetOperationsHost"]
P --> DataEventFoundations["DataEventFoundations"]
P --> ext_config_platform["ext-config-platform"]
P --> ConnectorRegistryService["ConnectorRegistryService"]
P --> DashboardService["DashboardService"]
P --> RunControlService["RunControlService"]
Containers¶
See microservices for the container view of hosts and modules.
Work areas (UX model, D35)¶
| Work area | Serves | Owning platforms behind it |
|---|---|---|
| Workspace | submit and follow runs; decide approvals; see what waits on me | Control plane, Observability |
| Assets | agents, skills, workflows, tools, model profiles, templates and their releases | Control plane (BC-04), Tools & MCP, Model & Compute, Template & Library |
| Intelligence | knowledge sources, memory, repository intelligence, context snapshots | Knowledge |
| Quality & releases | evaluation, evidence, feedback, learning proposals, product releases | Observability (BC-22), DevOps / GitOps |
| Operations & usage | runs timeline, overviews, status, alerts, usage and cost, capacity, fleet | Observability (BC-21), Runtime Cloud, Fleet, Control (BC-34) |
| Governance & administration | policies, approvals policy, audit, secrets references, connections, registry, retention, residency, users and roles | Governance, Integration, Data & Event, Control |
| Software Factory | blueprints, generation, delivery, environments, generated products | Template & Library, DevOps / GitOps, Runtime Cloud, Generated SaaS |
The June-2026 modules map onto these areas; the mapping and the screen inventory are in the UX track.
Related¶
- Workflows · UI surfaces · Clients and SDK · Localization and accessibility · Security · Observability · Deployment · Later capabilities
- Service pages: StudioBff · StudioNotificationService · StudioRealtimeGateway
- Plane pages: Clients and entry points · API edge and gateway roles · BFF APIs (June 2026) · Studio modules (June 2026)