Artifacts And Manifest
Artifacts are durable outputs of an experiment. The manifest is the audit trail.
This page distinguishes current core L8 artifacts from legacy experiment artifacts.
Core L8 Artifacts
macroforecast.core.runtime.execute_minimal_forecast writes L8 artifacts when the recipe includes 8_output.
Baseline layout:
output_directory/
manifest.json or manifest.jsonl
recipe.json
summary/
metrics_all_cells.csv
ranking.csv
cell_001/
forecasts.csv
diagnostics/
*_diagnostic_v1.json
tests_summary.json
importance_summary.json
The exact files depend on saved_objects.
Saved object |
File currently written |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
diagnostics_all expands to the four diagnostic saved objects.
L8 Manifest
The core L8 manifest records:
recipe hash,
package/runtime version marker,
Python/runtime environment fields,
dependency lockfile paths when present,
saved objects,
upstream sink inventory,
exported files.
L8ArtifactsArtifact also exposes output_directory, exported_files, artifact_count, and upstream_hashes in memory.
Legacy Experiment Artifacts
The older experiment engine can write files such as:
predictions.csvprediction_row_schema.jsonmetrics.jsoncomparison_summary.jsonevaluation_summary.jsonstat_test_*.jsonimportance_*.jsonartifact_manifest.json
These remain documented for backward compatibility, but new L0-L8 layer-contract recipes should use the core L8 output contract above.
Design Requirements
every run records resolved defaults where possible,
every output can be read without rerunning the experiment,
diagnostic outputs are non-blocking,
advanced render/export formats must not be reported as materialized until the corresponding runtime writer exists.