Submatter/plans/Plan-automation-foundation/Epic-model-provider-registry/Task-settings-ai-role-routing-ui.md
Randall Stillwell dfe73b3647 feat(automation): complete model provider registry epic (tasks 3–6)
Adds ai.models tRPC router with provider CRUD, role routes, testProvider, and
resolveForRole; Vercel AI SDK client factory in packages/ai; Settings pages
for providers and role routing; agent_runs model metadata columns with MCP
complete_task fields and runs UI column.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 14:07:47 -05:00

1.8 KiB

kind slug title plan_slug epic_slug status priority tenant_id owner cursor_todo_id updated_at agent_prompt
task settings-ai-role-routing-ui Settings UI — per-role model routing automation-foundation model-provider-registry done P1 global unassigned null 2026-07-03 Read docs/adr-model-routing.md. apps/web UI. Route: /[workspaceSlug]/settings/ai/role-routing. Allow adding custom role_id strings. claim_task before work.

Task summary

Build the Settings page that maps role_id → provider alias, with pipeline defaults seeded and support for custom roles.

Description

Route

apps/web/app/(app)/[workspaceSlug]/settings/ai/role-routing/page.tsx

UI

  • Table: role id, display label (optional friendly name), provider alias (dropdown from listProviders), tier badge from provider metadata, enabled toggle
  • “Add role” — free-text role_id + alias dropdown (for gate-copilot, custom auditors, etc.)
  • “Reset to pipeline defaults” — calls upsert for nine L2 roles + gate-copilot + chat-default if matching aliases exist; confirm dialog
  • Link to ADR / note about convoy model_policy overrides

Default labels

Map known role_id to human labels (Conductor, Architect, …) in a const — custom roles show raw id.

Subtasks

  • Page + list routes query
  • Upsert/disable per row
  • Add custom role flow
  • Reset defaults action
  • Settings nav entry

Estimation

M

Acceptance criteria

  • User can set role-architect → claude-planning, role-implementer → qwen-coder
  • User can add gate-copilot role row
  • Dropdown only lists enabled providers for the workspace
  • Epic: ./Epic-model-provider-registry.md
  • Depends on: Task-trpc-models-router.md, Task-settings-ai-providers-ui.md (providers should exist first for dogfood; soft dependency)