At the start of every cycle, your agent reads the full train.py file. At around lines, it fits inside a single context window with room to spare.
This is a deliberate design choice. When the entire codebase lives in one file, the agent can reason about the whole system at once. No multi-file confusion. No hallucinated imports. No lost context between files.
The agent also reads results.tsv to see what it has already tried. This log tells it which experiments succeeded, which failed, and what the current best val_bpb is.