AgentRegistryService — DDL appendix¶
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.
Dialect shown: SQL Server (nvarchar, uniqueidentifier, datetimeoffset). Migrations are authored as FluentMigrator classes in the service's DatabaseModel.Migrations project; the TenantId column and the NHibernate tenant filter follow canonical ADR-0100 in SharedDb mode.
dbo.AssetReleases¶
Owner: AssetRelease
CREATE TABLE [dbo].[AssetReleases] (
[ReleaseId] nvarchar(256) NOT NULL,
[TenantId] nvarchar(64) NOT NULL,
[AssetKind] int NOT NULL,
[AssetId] nvarchar(128) NOT NULL,
[Version] nvarchar(64) NOT NULL,
[State] int NOT NULL,
[SourceRepository] nvarchar(512) NOT NULL,
[SourceCommit] nvarchar(64) NOT NULL,
[ManifestHash] nvarchar(128) NOT NULL,
[ManifestRef] nvarchar(512) NOT NULL,
[EvaluationRecordRef] nvarchar(512) NULL,
[ApprovalId] uniqueidentifier NULL,
[PublishedAt] datetimeoffset NULL,
[PublishedBy] nvarchar(256) NULL,
[RowVersion] rowversion NOT NULL,
CONSTRAINT [PK_AssetReleases] PRIMARY KEY ([ReleaseId])
);
CREATE UNIQUE INDEX [UX_Releases_Tenant_Asset_Version] ON [dbo].[AssetReleases] ([TenantId], [AssetKind], [AssetId], [Version]);
CREATE INDEX [IX_Releases_State] ON [dbo].[AssetReleases] ([TenantId], [AssetKind], [State]);
| Column | Type | Null | Key | Description |
|---|---|---|---|---|
ReleaseId |
nvarchar(256) |
no | PK | |
TenantId |
nvarchar(64) |
no | ||
AssetKind |
int |
no | ||
AssetId |
nvarchar(128) |
no | ||
Version |
nvarchar(64) |
no | ||
State |
int |
no | ||
SourceRepository |
nvarchar(512) |
no | ||
SourceCommit |
nvarchar(64) |
no | ||
ManifestHash |
nvarchar(128) |
no | ||
ManifestRef |
nvarchar(512) |
no | Blob reference of the manifest JSON. | |
EvaluationRecordRef |
nvarchar(512) |
yes | ||
ApprovalId |
uniqueidentifier |
yes | ||
PublishedAt |
datetimeoffset |
yes | ||
PublishedBy |
nvarchar(256) |
yes | ||
RowVersion |
rowversion |
no |
dbo.ReleaseClosure¶
Owner: ClosureEntry
CREATE TABLE [dbo].[ReleaseClosure] (
[ReleaseId] nvarchar(256) NOT NULL,
[DepKind] int NOT NULL,
[DepAssetId] nvarchar(128) NOT NULL,
[TenantId] nvarchar(64) NOT NULL,
[DepVersion] nvarchar(64) NOT NULL,
[DepHash] nvarchar(128) NOT NULL,
CONSTRAINT [PK_ReleaseClosure] PRIMARY KEY ([ReleaseId], [DepKind], [DepAssetId])
);
ALTER TABLE [dbo].[ReleaseClosure] ADD CONSTRAINT [FK_ReleaseClosure_AssetReleases_ReleaseId] FOREIGN KEY ([ReleaseId]) REFERENCES [dbo].[AssetReleases] ([ReleaseId]);
| Column | Type | Null | Key | Description |
|---|---|---|---|---|
ReleaseId |
nvarchar(256) |
no | PK FK → AssetReleases.ReleaseId | |
DepKind |
int |
no | PK | |
DepAssetId |
nvarchar(128) |
no | PK | |
TenantId |
nvarchar(64) |
no | ||
DepVersion |
nvarchar(64) |
no | ||
DepHash |
nvarchar(128) |
no |
dbo.ReleaseAliases¶
Owner: Alias
CREATE TABLE [dbo].[ReleaseAliases] (
[TenantId] nvarchar(64) NOT NULL,
[AssetKind] int NOT NULL,
[AssetId] nvarchar(128) NOT NULL,
[Name] nvarchar(32) NOT NULL,
[ReleaseId] nvarchar(256) NOT NULL,
[MovedAt] datetimeoffset NOT NULL,
[MovedBy] nvarchar(256) NOT NULL,
CONSTRAINT [PK_ReleaseAliases] PRIMARY KEY ([TenantId], [AssetKind], [AssetId], [Name])
);
ALTER TABLE [dbo].[ReleaseAliases] ADD CONSTRAINT [FK_ReleaseAliases_AssetReleases_ReleaseId] FOREIGN KEY ([ReleaseId]) REFERENCES [dbo].[AssetReleases] ([ReleaseId]);
| Column | Type | Null | Key | Description |
|---|---|---|---|---|
TenantId |
nvarchar(64) |
no | PK | |
AssetKind |
int |
no | PK | |
AssetId |
nvarchar(128) |
no | PK | |
Name |
nvarchar(32) |
no | PK | |
ReleaseId |
nvarchar(256) |
no | FK → AssetReleases.ReleaseId | |
MovedAt |
datetimeoffset |
no | ||
MovedBy |
nvarchar(256) |
no |