.niceeval/record.sqlite.
Run creation, in-progress aggregation, published Attempts, Attachments, Content, coordination state, and Invocation Sessions are all rows in the same ProjectDatabase.
A Run is discoverable as soon as it is created. An Attempt becomes readable in a fixed PublicationCutoff after its atomic publication completes; the Run does not need to close first.
Inspection, query, show, and view all respect this boundary. A published Attempt closure is immutable. Cache, credentials, and OS-user Service state are not Record facts.
Carry a Record
query and show treat a file selected by --record as hostile input. They read it only after exact current-schema, SQLite-integrity, and domain-invariant validation. A Record can still contain sensitive business data, so its sender owns permissions, redaction, and retention.
Read boundaries
Record does not own presentation, statistics, or comparisons. A fixed Inspection operation reads published facts within aPublicationCutoff, then passes the closed result to query, show, or first-party view. A read path cannot give external code the database, a reader, a Content handle, or SQL capability.
See CLI to choose a read path.