Expand description
Schema metadata, relation registry, CI validator and ER export. Spec: docs/superpowers/specs/26-06-11-armdb-schema-metadata.md
Structs§
- Ambiguous
Ref - Built
Registry - Registry after a successful consistency check.
- Counter
Repair Stats - Per-counter repair counters — one row per declared
(collection, field)counter target actually compared. A target declined because its source had undecodable rows (seeRepairReport::undecodable_sources) contributes no row here — nothing was compared for it. - FkLabel
- Display label for an FK edge in the graph/report (not extraction — closures do that).
- Index
Repair Stats - Per-index repair counters.
- Mermaid
Er - Namespace
Conflict - One namespace key
repair_namespacesrefused to write to, because more than one live claimant disagreed about who owns it — either two or more declared claimants, or one declared claimant against the row’s actual (foreign) owner. MirrorsFinding::UniqueConflict’s shape exactly. - Namespace
Repair Stats - Per-namespace repair counters (T10 Task 10) — see the module doc for what
drives each field. Mirrors
super::IndexRepairStatsin shape. - Repair
Options - Options for
repair. - Repair
Report - Aggregate result of
repair. - Schema
Registry - Undecodable
Source - A source collection whose scan skipped rows it could not read or decode.
- Validation
Report
Enums§
- Ambiguity
Reason - Collection
Kind - Re-exported so building a registry and matching on a finding need no direct
armour_coredependency:CollectionKind/OnMissingare arguments ofregister/fk, andRowPart/PathSegare payload ofDanglingFkandAmbiguousRef. - Finding
- OnMissing
- Re-exported so building a registry and matching on a finding need no direct
armour_coredependency:CollectionKind/OnMissingare arguments ofregister/fk, andRowPart/PathSegare payload ofDanglingFkandAmbiguousRef. - PathSeg
- Re-exported so building a registry and matching on a finding need no direct
armour_coredependency:CollectionKind/OnMissingare arguments ofregister/fk, andRowPart/PathSegare payload ofDanglingFkandAmbiguousRef. One segment of a field path inside a stored type. - RefDesc
- Registry
Build Error - Registry consistency error reported by
SchemaRegistry::finish. - RowPart
- Re-exported so building a registry and matching on a finding need no direct
armour_coredependency:CollectionKind/OnMissingare arguments ofregister/fk, andRowPart/PathSegare payload ofDanglingFkandAmbiguousRef. Which part of a row a composite reference targets.
Traits§
- Index
Target - Write/delete in an index collection from a generated hook.
- Schema
Collection - Typed collection access for the schema registry and validator. Each impl knows how to scan and check key presence.
- Schema
Formatter - Text formatter for a schema graph. Model → formatter architecture: DOT can be added as a second implementation without changing the model.
Functions§
- repair
- Apply the same scan as
validateand fix index drift: put missing rows, rewrite mismatches, optionally delete orphans on complete targets. Also fixes counter drift (Decl::Countertargets): resolves each declared counter to its expected absolute value via [super::expected::build_counters] — the same shared passvalidatereads — and applies the difference through [crate::counter::ErasedCounterTarget::apply_delta]. - validate