Output Files#
Every path on this page is relative to output_dir/expt_name from the generation
config, except the evaluation artifacts, which land in outputs.output_dir from the
eval config and must sit outside the generation tree. The groups appear in the order a
run produces them. For the stages behind each group, see
Pipeline Overview. To see representative values change across
these files, follow the transfer-fee task in
Follow One Task Through the Pipeline.
Pack Preparation#
stage=prepare normalizes the oracle pack into stage_cache/ so that no later stage
reads pack files directly.
File |
Description |
|---|---|
|
The resolved pack manifest. |
|
Which file supplied each pack artifact. |
|
Model-facing tool schemas. |
|
Tool schemas including fields withheld from the model. |
|
Fixture collections with resolved primary keys. |
|
Conversation templates. |
|
Pack validation cases. |
|
The held-out policy, when the pack declares one. It is removed when no policy is declared. |
|
The Gold gate verdict. |
Generation Stage Cache#
One table per canonical stage, keyed by task_id, plus the reports and model I/O caches
each stage produces. The canonical stage order is reference_profile, expand,
state_machine, render, expected_trace, schema_validation, executable_replay,
surface_quality, dedup_balancing, final_output. The last two run only when their
config section is enabled.
File |
Written by |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Note
The three *_io_cache.jsonl files are append-only and shared across runs. A resumed
stage replays the recorded responses instead of paying for new ones, so a resume renders
the same surfaces as the original run.
Checkpoint Chain#
Each enabled stage writes one verified checkpoint under
stage_cache/checkpoints/<stage>/, forming a parent chain that skip_until walks
backwards to restore the immediate enabled predecessor.
File |
Description |
|---|---|
|
Contract |
|
Contract |
|
Immutable copies of the artifacts the stage may change, each carrying its content hash, size, row count, and schema fingerprint. |
Restore is fail-closed. A checkpoint whose parent chain, run identity, artifact hashes, or task set no longer verify is refused rather than partially reused, so do not edit checkpoint manifests, state, or snapshots.
Published Benchmark#
File |
Description |
Content-addressed |
|---|---|---|
|
Every schema-valid, replay-valid row, before surface-quality drops and before deduplication and balancing. This is the audit table that explains a score. |
Yes, as |
|
The published rows. Same schema as the raw table; the difference is a selection, never a rewrite. |
Yes, as |
|
The commit marker. Written last. |
It is the record; the artifacts it names carry the hashes. |
The publication contract re-derives the published set from the stage decisions, reads both files back from disk, and refuses the run unless every published row is byte-identical to its raw counterpart across every column.
run_manifest.json is what makes the tree published, and an evaluation reads it rather
than a bare table. These are the fields that give it that role:
Field |
Meaning |
|---|---|
|
Identity of this run, combining |
|
The benchmark row schema the tables were written with. A consumer selects its adapter by this value. |
|
One content hash per stage artifact plus |
|
Both row counts, both table content hashes, which surface gate decided, and which ordering applies. |
|
|
|
|
|
The frozen clock and the seed derivation, which together make the bindings reproducible. |
|
The publication verdict and, when it is negative, why. |
|
Which model roles read published rows, which is the inventory the contamination gate compares candidates against. |
|
Config identity, computed with the eval reference keys excluded so an eval edit cannot move a benchmark’s identity. |
|
The full generation funnel, from expansion to published rows. |
|
Enabled and disabled formats, their schema versions, row counts, paths, and tree hashes. |
Important
If run_manifest.json is absent, any benchmark table or export beside it is not
published, even though the files exist. Rerun stage=generate; startup removes
abandoned staging trees and the final stage replaces all payloads before writing the
manifest last.
Compatibility Exports#
Written only when the matching exports flag is on. Both formats derive from one
canonical projection of benchmark.parquet and are read back for equivalence before the
manifest is written.
Path |
Description |
|---|---|
|
The question records in upstream BFCL layout. |
|
The matching answer records. |
|
The native adapter descriptor. |
|
One record per published task. |
|
The schema |
|
Provenance of the bundle. |
|
The native adapter contract. It is not a standalone NeMo Evaluator Launcher run config. |
|
The distinct system prompts the dataset references. |
|
Read-back evidence that every enabled export matches |
Each export is content-addressed as a tree hash over its complete file set, recorded in
the manifest’s exports section. The bundle is verified by exact file set, so one extra
file in that directory fails the next verification. Never repair one file in place.
Translation Artifacts#
stage=translate is a later run over a completed, verified generation tree. It writes
a new experiment directory and does not modify the source run_manifest.json. See
Translate a Published Benchmark.
File |
Description |
|---|---|
|
Localized published rows, for example |
|
Commit marker for the localized release: source binding, translator identity, contamination scope, and artifact hashes. |
|
Forward-translation evidence. |
|
Backtranslation evidence. |
|
Recomputed quality-metric evidence. |
A localized Parquet file without the adjacent translation manifest is not a localized release.
Evaluation Artifacts#
These land in outputs.output_dir from the eval config, which may not overlap the
generation publication tree.
File |
Description |
Content-addressed |
|---|---|---|
|
Evidence that the evaluated source is the committed publication: manifest hash, both table hashes, publication semantics, the task index, and for executable mode the oracle pack fingerprint. |
Records hashes rather than carrying one. |
|
Which models read which published rows, which candidates could not be separated from them, and the task set each candidate is authorized to answer. |
Records the authorization plan. |
|
Append-only, hash-verified native function-calling requests, HTTP attempts, and completion markers for replayable provider completions. Provider/transport failures remain retryable and are recorded in executable episode evidence instead; therefore this file is validly empty when no request completed. Written when |
Yes, hashed per record and in |
|
Append-only, hash-verified complete executable episodes for oracle-free replay. Written when |
Yes, hashed per record and in |
|
The candidate aggregates and per-metric results. |
Yes, hashed into |
|
One row per authorized task, with the episode- and gate-layer failure records. Written when |
Yes, hashed into |
|
Binds the verified source, the authorization plan, the candidate aggregates, the result hashes, and both replay caches into one artifact set. Written when |
It is the record. |
|
Optional audit view of the resolved eval config, with resolved paths kept outside the hashed payload. It may only be written below |
Yes, its own content hash is returned by the writer. |
A trace-only run publishes the same three artifacts stamped eval_scope: trace, with
the oracle, assertion, milestone, and final-answer columns left null, and it persists no
tool-trace cache. A trace-only artifact set never stands in for an executable one.
Note
An interrupted cache is evidence, not a failure to clean up. A claimed request without a completion marker is preserved deliberately so an interruption is never replayed as the model’s answer. Resume into a new output directory rather than repairing the file.