feat(omo): route impeccable critique to dedicated model categories

Impeccable's critique runs two isolated assessments. design-critique-a
runs the design-director review on Claude Opus 5.5 at xhigh, with Fable
5.1 behind it; Opus 5.5 has the top Design Arena website score of the
models in this config. design-critique-b runs the detector and browser
pass on GPT-6.1 Sol at high, with Sonnet 5.5 behind it so the second
assessment still runs without a ChatGPT login. critique.md sends each
assessment to its category.
This commit is contained in:
David Ibia
2026-10-10 14:56:06 +01:00
parent cac5c1d036
commit 12f283e7c9
2 changed files with 29 additions and 0 deletions
+27
View File
@@ -110,6 +110,33 @@
"reasoning": "high",
"prompt_append": "Before substantive UI work, load frontend-workflow. Follow the product's design context, keep one writer per file set, inspect actual desktop and mobile screenshots, exercise the primary interaction, and report verification evidence. Stop when acceptance criteria pass."
},
// impeccable critique. A = design-director review (taste, heuristics): Opus 5.5 has the top Design Arena
// website Elo of the models we run (1339 vs Sonnet 5.5 1322, Fable 5.1 1318; GPT-6 unranked, Oct 2026).
// B = detector + browser evidence (mechanical tool use): GPT-6.1 Sol, with a Claude fallback so B stays available.
"design-critique-a": {
"models": [
{
"model": "anthropic-subscription/claude-opus-5-5",
"reasoning": "xhigh"
},
{
"model": "anthropic-subscription/claude-fable-5-1",
"reasoning": "xhigh"
}
]
},
"design-critique-b": {
"models": [
{
"model": "chatgpt-subscription/gpt-6.1-sol",
"reasoning": "high"
},
{
"model": "anthropic-subscription/claude-sonnet-5-5",
"reasoning": "high"
}
]
},
"writing": {
"models": [
{
@@ -32,6 +32,8 @@ Resolve one stable target, run two independent assessments, synthesize a design
Delegate Assessment A and Assessment B to separate sub-agents. They must not see each other's output. Do not show findings to the user until synthesis.
OmO routing: when the task tool accepts a category, spawn Assessment A with `category: "design-critique-a"` and Assessment B with `category: "design-critique-b"`. Never pass `model` with a category.
Sub-agent gate (all harnesses):
- Unless a harness-specific gate below overrides this, spawn A and B as two isolated, parallel sub-agents whenever a sub-agent/Task tool is exposed. This is the default and is mandatory; do not run them inline because it is faster.
- "Unavailable" means exactly one thing: no sub-agent/Task tool is exposed in this session (or, on harnesses that ask, the user declined). It does not mean inconvenient.