Skip to content

Model & Compute Platform — events

Generated from the architecture model

This page is rendered from model/**/*.yaml by tools/docs_model during mkdocs build. Edit the YAML, not this page; hand-written design lives on the linked service, platform and plane pages.

Topics follow context.area.vN.event-name (ADR-0012 port, ADR-0014 envelope). The context segment is the producing bounded context's slug.

Event Producer Topic Scope Consumers
ComputePoolRegistered ComputePoolService compute-pools.pools.v1.compute-pool-registered integration 3
ComputePoolStateChanged ComputePoolService compute-pools.pools.v1.compute-pool-state-changed integration 4
ModelWarmed ComputePoolService compute-pools.cache.v1.model-warmed integration 2
ModelEvicted ComputePoolService compute-pools.cache.v1.model-evicted integration 2
PlacementDecided ComputePoolService compute-pools.placement.v1.placement-decided integration 2
ModelProfileActivated ModelRouterService model-access.profiles.v1.model-profile-activated integration 3
ModelProfileRetired ModelRouterService model-access.profiles.v1.model-profile-retired integration 2
DeploymentStateChanged ModelRouterService model-access.deployments.v1.deployment-state-changed integration 3
CapabilityEvidenceRecorded ModelRouterService model-access.deployments.v1.capability-evidence-recorded integration 2
RoutePlanResolved ModelRouterService model-access.routing.v1.route-plan-resolved integration 1
ModelInvoked ModelRouterService model-access.invocations.v1.model-invoked integration 4
ModelFallbackUsed ModelRouterService model-access.invocations.v1.model-fallback-used integration 2

ComputePoolRegistered

A pool exists with its metadata.

Producer ComputePoolService (BC-41 Compute Pools & Placement)
Scope / version integration / v1
Topic compute-pools.pools.v1.compute-pool-registered
Aggregate ComputePool
Consumers StudioBff, DashboardService, AuditService
Field Type Required Description
poolId string yes
tenantId string yes
kind enum:PoolKind yes
region string yes
securityBoundary enum:SecurityBoundary yes

ComputePoolStateChanged

Activated, draining, resumed or retired.

Producer ComputePoolService (BC-41 Compute Pools & Placement)
Scope / version integration / v1
Topic compute-pools.pools.v1.compute-pool-state-changed
Aggregate ComputePool
Consumers ModelRouterService, StudioBff, DashboardService, AuditService
Field Type Required Description
poolId string yes
tenantId string yes
fromState enum:PoolState yes
toState enum:PoolState yes

ModelWarmed

A model is loaded on a pool.

Producer ComputePoolService (BC-41 Compute Pools & Placement)
Scope / version integration / v1
Topic compute-pools.cache.v1.model-warmed
Aggregate ComputePool
Consumers ModelRouterService, DashboardService
Field Type Required Description
poolId string yes
tenantId string yes
model string yes
vramGb int yes

ModelEvicted

A model was unloaded from a pool.

Producer ComputePoolService (BC-41 Compute Pools & Placement)
Scope / version integration / v1
Topic compute-pools.cache.v1.model-evicted
Aggregate ComputePool
Consumers ModelRouterService, DashboardService
Field Type Required Description
poolId string yes
tenantId string yes
model string yes
reason string yes

PlacementDecided

A placement request was answered.

Producer ComputePoolService (BC-41 Compute Pools & Placement)
Scope / version integration / v1
Topic compute-pools.placement.v1.placement-decided
Aggregate PlacementDecision
Consumers DashboardService, AuditService
Field Type Required Description
placementId guid yes
tenantId string yes
deploymentId string yes
chosenPoolId string no
outcome enum:PlacementOutcome yes

ModelProfileActivated

A Published profile version is active in the gateway.

Producer ModelRouterService (BC-07 Model Access)
Scope / version integration / v1
Topic model-access.profiles.v1.model-profile-activated
Aggregate ModelProfile
Consumers StudioBff, DashboardService, AuditService
Field Type Required Description
profileId string yes
version string yes
tenantId string yes
releaseId string yes
privacyClass enum:PrivacyClass yes

ModelProfileRetired

A profile version is no longer selectable; pinned runs finish on their route plans.

Producer ModelRouterService (BC-07 Model Access)
Scope / version integration / v1
Topic model-access.profiles.v1.model-profile-retired
Aggregate ModelProfile
Consumers StudioBff, AuditService
Field Type Required Description
profileId string yes
version string yes
tenantId string yes

DeploymentStateChanged

Candidate, Evaluated, Approved, Degraded or Retired.

Producer ModelRouterService (BC-07 Model Access)
Scope / version integration / v1
Topic model-access.deployments.v1.deployment-state-changed
Aggregate ModelDeployment
Consumers StudioBff, DashboardService, AuditService
Field Type Required Description
deploymentId string yes
tenantId string yes
fromState enum:DeploymentState yes
toState enum:DeploymentState yes
healthy bool yes

CapabilityEvidenceRecorded

Capability scores of a deployment were recorded from an evaluation record.

Producer ModelRouterService (BC-07 Model Access)
Scope / version integration / v1
Topic model-access.deployments.v1.capability-evidence-recorded
Aggregate ModelDeployment
Consumers StudioBff, DashboardService
Field Type Required Description
deploymentId string yes
tenantId string yes
suiteVersion string yes
evidenceRef string yes

RoutePlanResolved

A run's route plan for a profile was resolved.

Producer ModelRouterService (BC-07 Model Access)
Scope / version integration / v1
Topic model-access.routing.v1.route-plan-resolved
Aggregate RoutePlan
Consumers DashboardService
Field Type Required Description
routePlanId guid yes
runId guid yes
tenantId string yes
profileId string yes
candidates list:string yes

ModelInvoked

A receipt was written (completed, partial, failed, denied or cancelled).

Producer ModelRouterService (BC-07 Model Access)
Scope / version integration / v1
Topic model-access.invocations.v1.model-invoked
Aggregate InvocationReceipt
Consumers CostUsageService, DashboardService, QualityScoreService, AgentTelemetryService
Field Type Required Description
invocationId guid yes
tenantId string yes
projectId string yes
runId guid no
attemptId guid no
profileId string yes
deploymentId string yes
outcome enum:InvocationOutcome yes
usageStatus enum:UsageStatus yes
inputTokens int no
outputTokens int no
estimatedCostUsd decimal no

ModelFallbackUsed

The first candidate failed and an equivalent-constraint fallback answered.

Producer ModelRouterService (BC-07 Model Access)
Scope / version integration / v1
Topic model-access.invocations.v1.model-fallback-used
Aggregate InvocationReceipt
Consumers DashboardService, AuditService
Field Type Required Description
invocationId guid yes
tenantId string yes
profileId string yes
fromDeploymentId string yes
toDeploymentId string yes
reason string yes

Commands

Command Service Handled by Result events Summary
RegisterComputePool ComputePoolService ComputePool ComputePoolRegistered
DrainComputePool ComputePoolService ComputePool ComputePoolStateChanged
WarmModel ComputePoolService ComputePool ModelWarmed
Place ComputePoolService PlacementDecision PlacementDecided
ResolveRoutePlan ModelRouterService RoutePlan RoutePlanResolved
Invoke ModelRouterService InvocationReceipt ModelInvoked, ModelFallbackUsed
RegisterDeployment ModelRouterService ModelDeployment DeploymentStateChanged
ApproveDeployment ModelRouterService ModelDeployment DeploymentStateChanged

Consumed from other services

Consumer Event Producer Handler Purpose
ModelRouterService AssetReleasePublished AgentRegistryService ActivateProfile Project Published model-profile assets into active profiles.
ModelRouterService AssetReleaseDeprecated AgentRegistryService RetireProfile Retire profile versions.
ModelRouterService AssetReleaseRevoked AgentRegistryService RetireProfile Retire revoked profile versions immediately.