Self-critique by the same model/thread yields inflated ratings; the fix is architectural, not prompt-level: spawn two *blind* sub-agents with different evaluation roles (a heuristic 'design director' and a deterministic, browser-evidence 'detector'), then have the main thread synthesize their independent findings.
It relocates review responsibility out of the authoring thread into decoupled evaluator agents, which is directly reusable for code review, security audits, and output ranking — and explains why 'review your own work' loops underperform.
Any agentic pipeline where a single model both produces and grades output can be improved by separating generation from evaluation across independent, information-isolated evaluators with heterogeneous criteria.
Asking an LLM to review its own work results in high self-ratings; spawning two blind sub-agents produces balanced critiques.
Two blind opinions beat one confident guess.
Sub-agent A (Design Director: hierarchy, slop, heuristics)