Measured against Orrery 0.6.1 with the maintained UK dense declaration
(76 operations, 5,355 presentation nodes) and recorded synthetic runs,
the first export landed badly in the viewer: cards hid gate verdicts
behind execution and cache badges, every replay phase relabelled
computed operations as cache hits, each column file became its own
artifact reference, the compiler schema was embedded twice, and the UK
substring grouping put 65 of 76 operations in "enrichment".
Shared exporter
- Contain each field node in the operation that provides it, so folding
an operation or group folds its versioned fields; describe fields by
population version and provider; label declared reads.
- Lead gate kernels with the gate badge and omit it elsewhere; summarise
the cache state across every supplied phase ("Computed: numerical ·
reused 2×", "Reused: 3 cache hits; computation not in supplied
phases") instead of reporting the last replay.
- Emit one artifact reference per content-store object with its byte
digest when it is a single file; keep per-file digests in the phase
record; attach native run files to activities only.
- Name the executing kernel as each activity's agent and record the
kernel role per phase.
- Put the presentation scope into the document id and default title.
- Replace the embedded compiler schema with a digest-bound summary.
- Add shared helpers: save_graph_schema (copies and relinks checkpoint
bytes), checkpoint_references (links only verifiable files, names
absent ones with their digest), publish_run_evidence (flat publication
merged across attempts, refusing files that no longer verify).
UK contracts
- Replace substring grouping with an explicit roster and group
descriptions; unrostered operations land in "other" and the maintained
declarations are tested to have none.
- Summarise spine, full and national gate reports per gate through the
summary registry, and record the spine's execution evidence index as
a checkpoint reference.
- Wire the spine driver to the UK summary providers and the drivers to
the shared helpers.
The contract check asserts badge policy, containment, agents and
aggregated artifacts rather than a badge count.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
UK graph exports currently show the declared graph without enough evidence to explain a recorded build or connect it to upstream checkpoints. This builds on #888 by adding country-neutral presentation and execution contracts, then supplying UK metadata and aggregate artifact providers through adapters.
Changes
--evidenceand--storeinputs. Orrery JSON and HTML remain explicit exports; builds save native evidence, not automatic viewer snapshots.Country details enter through presentation metadata and registered artifact-summary providers; the shared schema and execution code do not dispatch on UK-specific names. Detailed value lineage (#865), new visualizer features, and published demonstrations remain separate work.
Validation
Production declaration export through both spine/full gate batteries, holdout and export preparation: 77 operations, 5,156 presentation nodes, 19,593 edges, accepted by Orrery 0.6.1. The actual 65,971-character full gate contract now round-trips; focused schema, Orrery and UK presentation tests: 45 passed. CI for
e0ba98ais pending.Prior 10 GitHub Actions checks passed on
383fe76: engine-free, UK, and US suites on Python 3.13 and 3.14; UK integration; lint; wheel packaging; and country-test selection. Each engine-free suite reports 14,892 passed, 140 skipped.Registered engine-free suite: 14,888 passed, 142 skipped, with Hugging Face offline mode. Final focused checks after the last changes: executor/evidence 111 passed, dense driver 44 passed, and UK calibration/national evidence 56 passed.
Ruff, test-plan registration, graph acceptance registry, and diff checks pass. Frozen graph declarations and kernel interfaces are unchanged.
Orrery 0.6.1 public parser and browser checks cover groups, Record, Sources, Activity, and independent status badges. A synthetic export retains all 22,053 calibration targets; maintained UK dense and size graphs remain within exporter limits.
A separate online run reproduces an existing live-loader mismatch:
uk-2025-nationalexpects amicrocosm-uk-2025-release, while the current pointer resolves tomicrocosm-uk-2024-25-national. The loader and its test are unchanged.UK staging smoke integration: 2 passed, including export of the saved native evidence with the full gate declarations. Country-engine suites and a licensed population build were not run locally; UK driver tests use synthetic fixtures.
Closes #1079
Closes #1080