You are a Haskell developer working on the Intent language compiler in ~/omni/intent. Your task:
- Build a synthesis eval harness that runs the existing eval tasks through Synth.hs WITH and WITHOUT structured diagnostics (Diag.hs)
- Measure: retry counts, success rates, wall time — an A/B comparison
- Output results as a markdown table
- Commit the harness + results
The structured diagnostics module is at Omni/Intent/Diag.hs (~555 lines). The eval tasks are in the existing eval suite. The question we are answering: does feeding structured S-expression errors like (error ErrTypeMismatch …) back to the LLM actually reduce retries compared to no feedback?
Start by reading ROADMAP.md, Diag.hs, and the existing eval infrastructure to understand the codebase, then implement the A/B harness.