{
  "description": "MoE routing table — maps a classified problem type to the expert(s) that should run, and the experts that must never run for that problem type. Used by ux-story-gate Phase 1.5 and persona-orchestrator.",
  "rules": [
    {
      "problem_type": "design_director",
      "signals": ["design-director", "design director", "guide how to design", "design and build", "implement the spec", "design spec build", "producer path"],
      "route_to": ["design-director"],
      "never_route_to": ["design-critic_chain"],
      "notes": "Producer path — ideation → DesignSpec → spec gates → build. Use /design-director skill, not critique chain."
    },
    {
      "problem_type": "ideation_wireframe",
      "signals": ["wireframe", "mockup", "new screen", "design from scratch", "layout", "ia concept", "ideation", "ux ideator", "text wireframe", "screen layout"],
      "route_to": ["ideation_chain"],
      "never_route_to": ["design-critic_chain", "zara"],
      "notes": "Uses ideation_chain from chain.json — full text wireframes via Noor + Anuj. Never the critique lite chain."
    },
    {
      "problem_type": "structure_ia",
      "signals": ["structure", "ia", "navigation", "nested_ui", "information architecture", "wizard", "form flow"],
      "route_to": ["noor"],
      "never_route_to": ["zara"]
    },
    {
      "problem_type": "ux_friction",
      "signals": ["ux friction", "accessibility", "responsive", "interaction bug", "usability"],
      "route_to": ["arjun"],
      "never_route_to": ["zara"],
      "notes": "Zara is never used for contrast fixes."
    },
    {
      "problem_type": "brand_design_system",
      "signals": ["brand", "tokens", "contrast", "design system", "ds compliance", "hex", "!important"],
      "route_to": ["ds_gate", "arjun_color_system_only"],
      "never_route_to": ["zara", "noor_alone"],
      "notes": "DS Gate runs first; Arjun is scoped to Color System diagnostic only, not a general critique."
    },
    {
      "problem_type": "business_priority",
      "signals": ["business priority", "metric alignment", "north-star", "monetization", "retention", "pricing"],
      "route_to": ["meera"],
      "never_route_to": []
    },
    {
      "problem_type": "build_effort",
      "signals": ["build size", "modal vs wizard", "feasibility", "effort sizing", "state machine"],
      "route_to": ["priya"],
      "never_route_to": []
    },
    {
      "problem_type": "delight",
      "signals": ["delight", "onboarding", "peak moment", "empty state", "first impression"],
      "route_to": ["zara"],
      "never_route_to": [],
      "notes": "Only after the DS Gate has passed."
    },
    {
      "problem_type": "daily_use_density",
      "signals": ["daily use", "bulk actions", "density", "keyboard shortcuts", "power user"],
      "route_to": ["anuj"],
      "never_route_to": [],
      "notes": "Not for learning products unless usage frequency is daily/weekly."
    },
    {
      "problem_type": "stalemate",
      "signals": ["stalemate", "block", "conflicting verdicts"],
      "route_to": ["raj"],
      "never_route_to": []
    },
    {
      "problem_type": "chunked_run",
      "signals": ["chunked", "chunk planner", "run-chunked", "cheap models", "free models", "ollama"],
      "route_to": ["chunk-planner"],
      "never_route_to": ["design-critic_chain"],
      "notes": "Explain or inspect the v2.0 chunked execution planner."
    },
    {
      "problem_type": "full_screen_review",
      "signals": ["full screen review", "critique this screen", "review this page"],
      "route_to": ["design-critic_chain"],
      "never_route_to": ["direct_noor_without_gate"],
      "notes": "Always enter through ux-story-gate, never call /noor directly without the gate."
    },
    {
      "problem_type": "collect_knowledge",
      "signals": ["kavi", "/kavi", "collect knowledge", "scan codebase", "build vault", "knowledge archivist", "collect-knowledge"],
      "route_to": ["kavi"],
      "never_route_to": ["design-critic_chain", "zara", "arjun", "meera", "priya"],
      "notes": "Producer only — run /kavi or `npx analyzthis_design collect`. Never part of a critique chain."
    },
    {
      "problem_type": "mood_board",
      "signals": ["mood board", "mood-board", "/mood-board", "visual direction", "references", "inspiration", "style direction", "design direction"],
      "route_to": ["mood-board"],
      "never_route_to": ["design-critic_chain", "zara", "noor_alone"],
      "notes": "Visual direction setting — collect references, tag them, pull DS patterns, run team deliberation. Not a screen critique."
    }
  ]
}
