Record stores facts
Every project has one canonical.niceeval/record.sqlite file. The Runner freezes expected slots when it creates a Run. Each Attempt becomes readable after its own atomic publication transaction completes, even if its origin Run remains active. Published Attempts and terminal Runs are immutable.
After an Invocation finishes completely and passes the portable gate, the canonical file itself can be copied or archived. query and show validate an external copy selected by --record <file> completely before opening it read-only.
Inspection closes read semantics
An Inspection operation closes its source, selector, sealed cutoff, data gaps, issues, Evidence, and comparison before returning plain data. The fixed catalog covers Runs, Attempts, traces, diffs, sources, artifacts, and comparisons. It does not expose SQL, JSON paths, or formulas.Three consumers deliver results
niceeval queryis machine Query for AI, scripts, and CI. It outputs aniceeval.query/v1JSON document.niceeval showis terminal Show for people reviewing and drilling into results quickly.niceeval viewis browser View for people using fixed first-party Insight in a protected loopback browser.