- Replace SIGALRM+exec() with subprocess.run(timeout=) for test execution - Add --test_only flag to skip generation and test existing completions - Add --generate_only flag for generation-only runs - Derive pass@k values from num_samples (filter k > n) - Support loading completions from array JSON (not just JSONL)