merlint: complete E8xx interop testing rules (13 rules total)
New rules enforce the /interop-testing skill standards:
Structure:
E800 Missing generate.sh wrapper
E801 Dir named after language instead of oracle tool
E802 Missing committed traces / (source_tree traces) dep
E803 Test shells out to external tool (not replay-only)
Reproducibility:
E805 Python oracle missing requirements.txt
E806 Go oracle missing go.mod
E807 Rust oracle missing Cargo.toml
E835 pip install --break-system-packages (no venv)
Dune integration:
E810 Missing regen-traces alias
E815 REGEN_TRACES env var sentinel
CSV hygiene:
E820 Hand-rolled CSV parsing (use csvt)
E825 CSV traces without csvt dependency in dune
Generator quality:
E830 Inlined algorithm in generator (not calling oracle API)