migration pipeline — deterministic recipes + agent fallback deterministic pass OpenRewrite (Java) libcst (Python) 70-80% of rewrites Daytona sandbox target runtime preinstalled branch-scoped, read-only input per-branch build agent loop Claude Opus 4.7 + GPT-5.4-Codex classify failure -> patch -> rerun budget: 30min / $8 / 20 turns failure taxonomy (across 50 repos) dep_upgrade_required 30% build_tool_drift 20% custom_annotation 18% syntax_edge_case 17% test_flake 15% what the taxonomy unlocks top 3 classes become the next recipe target agent stops relearning mechanical patterns per-class pass rate drives Moderne-style policy metrics (pass set) MigrationBench pass@1: 60-70% target mean $/repo: $2-4 at 50-repo scale coverage delta: within +/- 1% of base time-to-green p50: < 10 min compare-to-baseline deterministic-only: 35-45% pass rate the agent layer is where the delta lives publish side-by-side, by failure class