Context. surface studio · domain isis · route /studio/isis/animatediff-lightning · auth signed-in + studio entitlement (AAA-gated — segment animatediff-lightning in AAA_ONLY_STUDIO_ROUTES) · source apps/oshun/web/src/app/studio/isis/animatediff-lightning/page.tsx
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)
Purpose#
Admin lane console for few-step diffusion scheduling: the embedded schedule lane
is wired to the real timestep-schedule planner via
/v1/admin/isis/animate-diff-lightning, computing the denoising timestep
schedule (diffusers leading/trailing/linspace spacing; Lightning uses trailing)
for a chosen inference step count. It is admin-scoped and fails closed.
Entry points#
- Sibling quick-action from
/studio/isis/provider-integration - Studio index (
/studio) - Direct URL / bookmark (AAA entitlement required)
Layout regions#
page.tsx mounts <ShellLayout active="studio"> (no breadcrumb panel) and three
panels: the workspace, the Route Map, and sibling quick-actions.
- Header: shell header
- Workspace panel (
data-isis-animatediff-lightning-workspace):<h1>(WorkspaceHeading) "Isis AnimateDiff Lightning Workspace"- Summary paragraph (
data-isis-animatediff-lightning-summary) - Embedded schedule lane with its own
<h2>(data-dsl-heading) "Live Diffusion Timestep Schedule" — schedule form + plan result
- Route Map panel (
data-isis-animatediff-lightning-route-map):<h2>Route Map</h2>overSTUDIO_ISIS_ANIMATEDIFF_LIGHTNING_ROUTE_MAP(5 entries) - Sibling quick-actions panel:
/studio/isis/provider-integration,/studio
States#
- Loading —
outcome === null;data-dsl-loading"Loading schedule planner…" - Unauthorized — 401/403 admin-scope fail-closed;
data-dsl-unauthorized - Error — non-OK or malformed catalog;
data-dsl-error - Ready (form) — catalog present;
data-dsl-formrenders the schedule JSON textarea - Result — after a plan POST,
data-dsl-result; invalid JSON or a planner rejection surfaces indata-dsl-plan-error("Payload must be valid JSON." / planner detail)
Interactions#
Schedule planner (data-dsl-form)#
- Schedule payload (
data-dsl-payload,<textarea>,aria-label="schedule json") - Plan schedule (
data-dsl-submit, submit) —POST /v1/admin/isis/animate-diff-lightning/plan-schedule
Route Map#
- Route-map articles ×5
Sibling quick-actions#
- Open Isis Provider Integration workspace →
/studio/isis/provider-integration - Back to Studio workspace index →
/studio
Data & contracts#
- Reads:
GET /v1/admin/isis/animate-diff-lightning(planner catalog) - Writes:
POST /v1/admin/isis/animate-diff-lightning/plan-schedule(returns the computed denoising timestep schedule) - Realtime: none
- Caching: client fetch on mount,
cache: 'no-store',buildBffAuthHeaders() - Auth/role check: admin-scoped (Isis scope), fail-closed (401/403); route gated on signed-in + studio entitlement (AAA segment)
- Component sources:
apps/oshun/web/src/components/studio/StudioIsisAnimateDiffLightningWorkspace.tsxapps/oshun/web/src/components/studio/StudioIsisAnimateDiffLightningRouteMap.ts
Cross-references#
- Studio overview:
../../studio-overview.md - AAA gating:
libs/isis/entitlements/src/studio-boundary.ts - Sibling routes:
Open questions / known gaps#
- No breadcrumb on this route — navigation is via sibling quick-actions
- The schedule payload is a free-form JSON textarea rather than typed fields; confirm whether structured inputs are planned