# Benchmark Artifact Contract

This document is the source-of-truth for benchmark artifact locations.

## Canonical locations

- Run directory root variable: `ARTIFACT_RUNS_DIR` (defaults to `${ARTIFACT_BENCHMARK_DIR}/runs`)
- Per-run summary: `${ARTIFACT_RUNS_DIR}/<RUN_ID>/${ARTIFACT_SUMMARY_NAME}`
- Current symlink: `${ARTIFACT_LATEST_LINK}` (defaults to `${ARTIFACT_RUNS_DIR}/latest`)
- Latest run pointer file: `${ARTIFACT_LATEST_RUN_FILE}` (defaults to `${ARTIFACT_RUNS_DIR}/LATEST_RUN.txt`)
- Latest summary copy: `${ARTIFACT_LATEST_SUMMARY}` (defaults to `${ARTIFACT_RUNS_DIR}/latest_summary.json`)

These values are defined by `benchmarks/artifact_contract.sh` and are sourced by both
`run_benchmarks.sh` and `benchmarks/verify_benchmark_artifacts.sh`.

## Contract variables

- `ARTIFACT_RUNS_DIR`
- `ARTIFACT_SUMMARY_NAME`
- `ARTIFACT_LATEST_LINK`
- `ARTIFACT_LATEST_RUN_FILE`
- `ARTIFACT_LATEST_SUMMARY`
