---
path: /studio/isis/unified-provider-architecture
surface: studio
domain: isis
auth: signed-in + studio entitlement (NOT AAA-gated)
source: apps/oshun/web/src/app/studio/isis/unified-provider-architecture/page.tsx
status: walked
last_walked:
  '2026-05-29 automated runtime walk (Playwright headless) — render, /v1 data
  (2xx), console/page-errors, expected content, screenshot verified; live
  screen-reader, touch, offline, and telemetry-delivery checks pending a manual
  AT pass. Evidence: WALKTHROUGH/results/runtime-sweep-2026-05-29.md; body
  re-derived 2026-06-03 from current source (lane-console architecture)'
---

# Isis Unified Provider Architecture

## Purpose

Admin lane console for the unified provider-selection layer. Given a provider's
cost/latency parameters and a generation input, it estimates the cost and
latency and returns a weighted provider score (cost / quality / latency /
reliability), the same scorer the routing layer uses to pick providers.

## Entry points

- Sibling quick-action card from `/studio/isis/provider-factory`
- Studio index (`/studio`)
- Direct URL / bookmark

## Layout regions

`page.tsx` mounts `ShellLayout active="studio"` and three panels (no breadcrumb
panel).

- **Workspace panel** (`data-isis-unified-provider-architecture-workspace`):
  - `<h1>` "Isis Unified Provider Architecture Workspace" (`WorkspaceHeading`)
  - Summary paragraph (`data-isis-upa-summary`)
  - The "Score provider" form (`data-isis-upa-evaluate-form`)
  - Result block (`data-isis-upa-result`) with `data-isis-upa-cost`,
    `data-isis-upa-latency`, `data-isis-upa-score`
- **Route map panel** (`data-isis-unified-provider-architecture-route-map`):
  `<h2>` "Route Map" enumerating
  `STUDIO_ISIS_UNIFIED_PROVIDER_ARCHITECTURE_ROUTE_MAP`
- **Quick-actions panel**: `quickAction` links to
  `/studio/isis/conversational-ai` and "Back to Studio workspace index" →
  `/studio`

## States

- [ ] **Loading** — `data-isis-upa-loading` "Loading provider scorer…"
- [ ] **Unauthorized** — `data-isis-upa-unauthorized` (admin-scope fail-closed
      on 401/403)
- [ ] **Error** — `data-isis-upa-error` on non-OK / malformed response
- [ ] **Ready (form)** — score form renders (quality-tier options from the
      catalog)
- [ ] **Result** — `data-isis-upa-result` (kind `evaluated`) or
      `data-isis-upa-evaluate-error` (kind `error`)

## Interactions

### Score provider (`data-isis-upa-evaluate-form`)

- [ ] **base cost** — `data-isis-upa-field-basecost` input
- [ ] **per-unit cost** — `data-isis-upa-field-perunit` input
- [ ] **avg latency ms** — `data-isis-upa-field-latency` input
- [ ] **success rate** — `data-isis-upa-field-success` input
- [ ] **provider max quality** — `data-isis-upa-field-maxquality` select (catalog
      quality tiers)
- [ ] **prompt length** — `data-isis-upa-field-promptlen` input
- [ ] **images** — `data-isis-upa-field-images` input
- [ ] **videos** — `data-isis-upa-field-videos` input
- [ ] **required quality** — `data-isis-upa-field-quality` select (catalog
      quality tiers)
- [ ] **Score provider** — `data-isis-upa-evaluate-submit` submit; POSTs to
      `/v1/admin/isis/unified-provider-architecture/evaluate`

### Route map

- [ ] **Route-map articles** — non-interactive path + purpose entries

### Quick-actions

- [ ] **Open Isis Conversational AI workspace** →
      `/studio/isis/conversational-ai`
- [ ] **Back to Studio workspace index** → `/studio`

## Data & contracts

- **Reads**: `GET /v1/admin/isis/unified-provider-architecture` (`UPA_ENDPOINT`)
  on mount — catalog (`qualityTiers`)
- **Writes**: `POST /v1/admin/isis/unified-provider-architecture/evaluate`
  (`EVALUATE_ENDPOINT`) — estimate cost/latency + score
- **Realtime**: None
- **Caching**: client `fetch` on mount, `cache: 'no-store'`,
  `buildBffAuthHeaders()`
- **Auth**: admin-scoped fail-closed (401/403 → unauthorized state); route
  behind the signed-in + studio proxy gate
- **Component sources**:
  - `apps/oshun/web/src/components/studio/StudioIsisUnifiedProviderArchitectureWorkspace.tsx`
  - `apps/oshun/web/src/components/studio/StudioIsisUnifiedProviderArchitectureRouteMap.ts`

## Cross-references

- Studio overview: [`../../studio-overview.md`](../../studio-overview.md)
- Sibling routes:
  - [`studio-isis-provider-factory.md`](./studio-isis-provider-factory.md)
  - [`studio-isis-conversational-ai.md`](./studio-isis-conversational-ai.md)

## Open questions / known gaps

- [ ] The score weights (cost / quality / latency / reliability) are server-side
      constants; this view does not expose tuning them
- [ ] Single-provider scoring only — there is no comparative leaderboard across
      multiple providers in this surface
