Skip to content

Control Plane — data model

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.

AgentCardService

erDiagram
    AgentCard {
        guid cardId PK
        string tenantId
        string agentId
        string releaseId
        enum_CardVisibility visibility
        list_string skills
        list_string inputDescriptors
        list_string outputDescriptors
        list_string authenticationSchemes
        uri taskEndpoint
        hash releaseHash
        datetime publishedAt
    }
Hold "Alt" / "Option" to enable pan & zoom

Tables: dbo.AgentCards — see the DDL appendix.

AgentRegistryService

erDiagram
    AssetRelease {
        string releaseId PK
        string tenantId
        enum_AssetKind assetKind
        string assetId
        string version
        enum_ReleaseState state
        string sourceRepository
        string sourceCommit
        hash manifestHash
        string evaluationRecordRef
        guid approvalId
        datetime publishedAt
        string publishedBy
        long version_
    }
    ClosureEntry {
        enum_AssetKind kind

        string assetId

        string version

        hash hash

    }
    Alias {
        string name

        string releaseId

        datetime movedAt

        string movedBy

    }
    Signature {
        string algorithm

        string keyId

        string value

    }
    AssetRelease ||--o{ ClosureEntry : contains
    AssetRelease ||--o{ Alias : contains
Hold "Alt" / "Option" to enable pan & zoom

ClosureEntry (entity)

One resolved dependency with exact version and hash.

Field Type Required Description
kind enum:AssetKind yes
assetId string yes
version string yes
hash hash yes

Alias (entity)

A mutable name (latest, stable) pointing at a release; moving an alias never changes accepted runs.

Field Type Required Description
name string yes
releaseId string yes
movedAt datetime yes
movedBy string yes

Signature (value-object)

Detached signature over the manifest hash.

Field Type Required Description
algorithm string yes
keyId string yes
value string yes

Tables: dbo.AssetReleases, dbo.ReleaseClosure, dbo.ReleaseAliases — see the DDL appendix.

CostUsageService

erDiagram
    Budget {
        guid budgetId PK
        string tenantId
        guid projectId
        string period
        decimal limitUsd
        decimal committedUsd
        decimal approvalThresholdUsd
        long version
    }
    Reservation {
        guid reservationId PK
        string tenantId
        guid projectId
        guid runId
        guid budgetId
        decimal estimatedUsd
        decimal settledUsd
        enum_ReservationState state
        guid approvalId
        datetime expiresAt
    }
    UsageRecord {
        guid usageId PK
        string tenantId
        guid projectId
        guid runId
        guid attemptId
        enum_Meter meter
        json dimensions
        decimal quantity
        enum_UsageStatus status
        string pricingRevision
        decimal estimatedCostUsd
        decimal confirmedCostUsd
        string sourceReceipt
        datetime occurredAt
    }
    PricingRevision {
        string revision

        enum_Meter meter

        string dimensionKey

        decimal unitPriceUsd

        datetime validFrom

        datetime validTo

    }
    UsageRecord ||--o{ PricingRevision : contains
Hold "Alt" / "Option" to enable pan & zoom

PricingRevision (entity)

Versioned price list per meter and dimension.

Field Type Required Description
revision string yes
meter enum:Meter yes
dimensionKey string yes
unitPriceUsd decimal yes
validFrom datetime yes
validTo datetime no

Tables: dbo.Budgets, dbo.Reservations, dbo.UsageRecords, dbo.PricingRevisions — see the DDL appendix.

EnvironmentService

erDiagram
    Environment {
        guid environmentId PK
        guid projectId
        string tenantId
        string name
        enum_EnvironmentClass class
        enum_EnvironmentState state
        string region
        list_guid connectionIds
        string desiredDeploymentRef
        long version
    }
Hold "Alt" / "Option" to enable pan & zoom

Tables: dbo.Environments, dbo.EnvironmentConnections — see the DDL appendix.

FactoryCommercialService

erDiagram
    FactorySubscription {
        guid subscriptionId PK
        string tenantId
        enum_EditionCode edition
        string editionReleaseId
        int seats
        enum_SubscriptionState state
        string billingModel
        datetime currentPeriodStart
        datetime currentPeriodEnd
        long version
    }
    Invoice {
        guid invoiceId

        datetime periodStart

        datetime periodEnd

        decimal totalUsd

        string state

        string usageSnapshotRef

    }
    FactorySubscription ||--o{ Invoice : contains
Hold "Alt" / "Option" to enable pan & zoom

Invoice (entity)

Period invoice built from reconciled usage records and seat counts.

Field Type Required Description
invoiceId guid yes
periodStart datetime yes
periodEnd datetime yes
totalUsd decimal yes
state string yes
usageSnapshotRef string yes

Tables: dbo.FactorySubscriptions, dbo.Invoices — see the DDL appendix.

ProjectService

erDiagram
    Project {
        guid projectId PK
        string tenantId
        string key
        string name
        enum_ProjectState state
        string region
        string policyOverrideRevision
        int retentionDays
        guid budgetId
        long version
    }
    Membership {
        string subjectId

        enum_MembershipRole role

        string grantedBy

        datetime grantedAt

    }
    Delegation {
        guid delegationId

        string grantorId

        string granteeId

        enum_MembershipRole role

        datetime expiresAt

        string reason

        datetime revokedAt

    }
    SourceScopeEntry {
        string kind

        string reference

        guid connectionId

    }
    ProjectKey {
        string value

    }
    Project ||--o{ Membership : contains
    Project ||--o{ Delegation : contains
    Project ||--o{ SourceScopeEntry : contains
Hold "Alt" / "Option" to enable pan & zoom

Membership (entity)

A subject's role assignment in the project.

Field Type Required Description
subjectId string yes
role enum:MembershipRole yes
grantedBy string yes
grantedAt datetime yes

Delegation (entity)

Time-bound delegation of the same or a lesser role (D18); audited and revocable.

Field Type Required Description
delegationId guid yes
grantorId string yes
granteeId string yes
role enum:MembershipRole yes
expiresAt datetime yes
reason string yes
revokedAt datetime no

SourceScopeEntry (entity)

A repository, document collection or tool a run in this project may touch.

Field Type Required Description
kind string yes repository
reference string yes
connectionId guid no Connection in BC-16 when credentials are needed.

ProjectKey (value-object)

Lower-case key 3–32 characters.

Field Type Required Description
value string yes

Tables: dbo.Projects, dbo.Memberships, dbo.Delegations, dbo.SourceScopes — see the DDL appendix.

RunControlService

erDiagram
    Run {
        guid runId PK
        string tenantId
        string projectId
        string environmentId
        string idempotencyKey
        string workflowId
        string releaseId
        string policyRevision
        string modelProfileId
        enum_RunState state
        hash inputHash
        guid snapshotId
        guid budgetReservationId
        string requestedBy
        long version
    }
    Step {
        guid stepId PK
        ref_Run runId
        string tenantId
        int ordinal
        string agentId
        string skillId
        enum_StepState state
        int maxAttempts
        string gate
    }
    Attempt {
        guid attemptId PK
        ref_Step stepId
        string tenantId
        int number
        guid leaseId
        enum_AttemptOutcome outcome
        hash outcomeHash
        string failureClass
        datetime dispatchedAt
        datetime settledAt
    }
    Lease {
        guid leaseId PK
        ref_Attempt attemptId
        string tenantId
        string holder
        datetime expiresAt
        long fencingToken
    }
    ApprovalRequest {
        guid approvalId PK
        ref_Run runId
        ref_Step stepId
        string tenantId
        string actionClass
        hash proposalHash
        string policyRevision
        string approverRule
        datetime expiresAt
        enum_ApprovalState state
        string decidedBy
        datetime decidedAt
        string reason
        long version
    }
    CancellationIntent {
        string requestedBy

        string reason

        datetime requestedAt

    }
    RecoveryJournalEntry {
        long sequence

        string fromState

        string toState

        string cause

        datetime occurredAt

    }
    ReleaseRef {
        string releaseId

        hash hash

    }
    PolicyRef {
        string policyId

        string revision

    }
    Run ||--o{ CancellationIntent : contains
    Run ||--o{ RecoveryJournalEntry : contains
    Run ||--o{ Step : "runId"
    Step ||--o{ Attempt : "stepId"
    Attempt ||--o{ Lease : "attemptId"
    Run ||--o{ ApprovalRequest : "runId"
    Step ||--o{ ApprovalRequest : "stepId"
Hold "Alt" / "Option" to enable pan & zoom

CancellationIntent (entity)

Recorded request to cancel with reason and actor.

Field Type Required Description
requestedBy string yes
reason string yes
requestedAt datetime yes

RecoveryJournalEntry (entity)

Append-only journal of transitions used for restart recovery (no replay promise; ADR-0014).

Field Type Required Description
sequence long yes
fromState string yes
toState string yes
cause string yes
occurredAt datetime yes

ReleaseRef (value-object)

Release id + content hash.

Field Type Required Description
releaseId string yes
hash hash yes

PolicyRef (value-object)

Policy revision used at acceptance.

Field Type Required Description
policyId string yes
revision string yes

Tables: dbo.Runs, dbo.CancellationIntents, dbo.RecoveryJournal, dbo.Steps, dbo.Attempts, dbo.Leases, dbo.ApprovalRequests — see the DDL appendix.