---
path: /studio/isis/provider-factory
surface: studio
domain: isis
auth: signed-in + studio entitlement (NOT AAA-gated)
source: apps/oshun/web/src/app/studio/isis/provider-factory/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 Provider Factory

## Purpose

Read-only admin lane console exposing the real `@isis/ai-providers` multi-cloud
ComfyUI provider registry. It lists each cloud provider with its endpoint paths
and non-secret default config — base URL, GPU cost/hour, max concurrency,
cold-start time, and warm-instance support. API keys are configured at deploy
time, not here.

## Entry points

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

## Layout regions

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

- **Workspace panel** (`data-isis-provider-factory-workspace`):
  - `<h1>` "Isis Provider Factory Workspace" (`WorkspaceHeading`)
  - Summary paragraph (`data-isis-provider-factory-summary`)
  - Registered-providers section (`<h2>` "Registered cloud providers (N)") of
    `data-provider-factory-entry` cards, each showing
    `data-provider-factory-base-url`, `data-provider-factory-cost`, and
    `data-provider-factory-submit` (submit endpoint)
- **Route map panel** (`data-isis-provider-factory-route-map`): `<h2>` "Route
  Map" enumerating `STUDIO_ISIS_PROVIDER_FACTORY_ROUTE_MAP`
- **Quick-actions panel**: `quickAction` links to
  `/studio/isis/unified-provider-architecture` and "Back to Studio workspace
  index" → `/studio`

## States

- [ ] **Loading** — `data-provider-factory-loading` "Loading provider registry…"
- [ ] **Unauthorized** — `data-provider-factory-unauthorized` (admin-scope
      fail-closed on 401/403, "Isis workspace scope required to view the provider
      factory.")
- [ ] **Error** — `data-provider-factory-error` on non-OK / malformed response
- [ ] **Ready** — registered-providers cards render

## Interactions

### Provider registry

- [ ] **Provider cards** — non-interactive read-only entries
      (`data-provider-factory-entry`); no form / write verb

### Route map

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

### Quick-actions

- [ ] **Open Isis Unified Provider Architecture workspace** →
      `/studio/isis/unified-provider-architecture`
- [ ] **Back to Studio workspace index** → `/studio`

## Data & contracts

- **Reads**: `GET /v1/admin/isis/provider-factory`
  (`PROVIDER_FACTORY_ENDPOINT`) on mount — providers + registry
- **Writes**: None (read-only registry view)
- **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/StudioIsisProviderFactoryWorkspace.tsx`
  - `apps/oshun/web/src/components/studio/StudioIsisProviderFactoryRouteMap.ts`

## Cross-references

- Studio overview: [`../../studio-overview.md`](../../studio-overview.md)
- Sibling routes:
  - [`studio-isis-unified-provider-architecture.md`](./studio-isis-unified-provider-architecture.md)
  - [`studio-isis-ai-providers.md`](./studio-isis-ai-providers.md)

## Open questions / known gaps

- [ ] Config shown is the non-secret deterministic registry; live provider
      instances require per-cloud API keys provisioned at deploy time
- [ ] No way to register / edit a provider from this surface — read-only by
      design
