Tier2Blog
Engineering notes
How the product is built, written for the engineers who will be asked to approve it. Architecture decisions, the constraints behind them, and the tradeoffs we took knowingly.
Why our renderer deletes what the model wrote
Tier2 enforces citation in code rather than in the prompt: every claim in a diagnosis carries a probe_run_id, and the renderer drops any claim whose probe did not run in that session. This explains the invariant, the schema, the six renderer rules, the hallucinated-claim rate we gate releases on, and the two failure modes citation deliberately does not catch.
We did not give the agent SQL
Tier2 has no free-form SQL tool. The agent runs named, parameterized queries against a read replica with statement_timeout of 20s, max_parallel_workers_per_gather set to 0, and a per-session query budget. This covers why the obvious design is wrong, what an unbudgeted analyst query did to a production database, and why pg_stat_statements did not record it.
Ready when you are
Stop routing escalations by hand.
Give the evidence work to an agent that cites every claim. Your engineers debug, not triage.
Draft-only by defaultRead + probe access only