iGent Concert
/diminuendo/architecture/

Diminuendo Architecture

Gateway composition and upstream service boundaries

Diminuendo is a Bun service with HTTP, WebSocket, app API, protocol adapter, auth, persistence, integration, and observability layers. Its job is to make the distributed Fabric system usable from clients without collapsing service ownership.

Gateway Composition

Diminuendo
├── HTTP and WebSocket server
├── Auth0 and development auth paths
├── Tenant, member, project, and session services
├── Conversation, stream, and presentation projection
├── REST app APIs
├── File, skill, integration, GitHub, and automation services
├── Fabric RPC dispatch
├── Edge sidecars
│   ├── ACP
│   ├── MCP
│   ├── A2A
│   └── AG-UI
├── Upstream clients
│   ├── Podium runtime gateway
│   ├── Ensemble inference service
│   └── Unison resource/config service
└── Observability, resilience, and security middleware

Upstream Boundaries

UpstreamDiminuendo uses it forOwnership remains with
PodiumAgent deployment, instance lifecycle, runtime stream routingPodium gateway/coordinator
EnsembleModel list and generation surfaces when brokered through the gatewayEnsemble
UnisonTenant/user/project/session resource state and subscriptionsUnison
GitHubRepository, PR, issue, and webhook integrationExternal GitHub API

Diminuendo may expose a unified client experience, but it should not become the authority for runtime, inference, distributed config, or file versioning.

Data Isolation

Diminuendo enforces tenant, member, project, and session visibility at the product gateway, but it does not own durable runtime or config state as local tenant SQLite files. Shared resource metadata lives in Unison, agent runtime history and instance state live behind Podium, inference state lives behind Ensemble, and workspace authority lives behind Chronicle when enabled.

The architectural rule is still stable: Diminuendo may cache or project data for the client experience, but the durable authority remains with the service that owns that domain.

Edge Adapter Layer

The sidecars under diminuendo/src/protocols/sidecars/ translate external protocol envelopes into Fabric semantics:

AdapterTypical use
ACPAgent client compatibility
MCPTool/resource exposure to model hosts
A2AAgent-to-agent exchange
AG-UIAgentic UI event streams

Adapters should preserve identity, permission scope, and correlation metadata. They should fail explicitly when the external protocol cannot express a Fabric feature.

Public Auth Shape

The current public dev tuple is:

FieldValue
Domaindiminuendo-dev.eu.auth0.com
Client IDs4jhFF4oQDY6JlO6TqOU5E0f23dHEFJK
Audiencehttps://diminuendo-dev.eu.auth0.com/api/v2/
Callbackhttps://fabric.dev.aws.igent.ai/auth/callback

Never deploy the retired Auth0 tenant or retired client ID, and never ship the public app with DEV_MODE=true.