# Tier 2 throw-away scripts live in `scripts/tier2/artifacts//` — NEVER in the base `scripts/tier2/` directory ## What it says When the Tier 2 autonomous agent writes throw-away scripts (audits, transforms, sanity checks, debugging helpers), it MUST put them under `scripts/tier2/artifacts//`. The base `scripts/tier2/` directory is reserved for production code that ships with the sandbox (`failcount.py`, `run_track.py`, `write_report.py`, the `.ps1` launchers). ## Why - **Base directory hygiene.** The base `scripts/tier2/` is the durable sandbox layer. Throw-away scripts pollute the file list, confuse the user during review, and risk shipping with the next sandbox release. - **Archival isolation.** Throw-away scripts are kept for archival but isolated in track-specific subdirectories so a reviewer of one track does not see another track's helpers. - **Track reproducibility.** Each track's helpers are co-located under `artifacts//` so the next agent that runs `--resume` on the track finds its working context. ## Pattern ``` scripts/tier2/ ├── failcount.py # production: shipped with sandbox ├── run_track.py # production: shipped with sandbox ├── write_report.py # production: shipped with sandbox ├── run_tier2_sandboxed.ps1 # production: shipped with sandbox └── artifacts/ # throw-away layer ├── tier2_autonomous_sandbox_20260616/ # archived helpers from that track ├── cruft_elimination_20260627/ # archived helpers from that track └── / # current track's working helpers ``` Throw-away scripts are committed (not deleted) so the work is auditable, but they are quarantined in their own subdirectory. ## Examples of throw-away helpers - `audit_.py` one-shot scripts that compute a single metric and print the result - `transform__to_.py` one-time data migrators - `compare__to_.py` one-shot diff helpers - `seed_.py` one-time test data generators None of these ship with the sandbox; none belong in the base directory.