Context. surface studio · domain isis · route /studio/isis/video-generation · auth signed-in + studio entitlement (NOT AAA-gated — video-generation is not in AAA_ONLY_STUDIO_ROUTES; neither is the sibling ai-video-generation. Both render as-is on the contemplative product) · source apps/oshun/web/src/app/studio/isis/video-generation/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 that surfaces the real @isis/job-envelope generation-type
manifest for the text-to-video entry via the shared
/v1/admin/isis/generation-manifest route: UI requirements (requires-prompt,
image-controls) + output-package rules + an output-package compatibility checker.
Generation itself runs on the external provider; this lane documents and
validates the contract. It is admin-scoped and fails closed.
Entry points#
- Sibling quick-action from
/studio/isis/image-generation - Studio index (
/studio) - Direct URL / bookmark
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-video-generation-workspace):<h1>(WorkspaceHeading) "Isis Video Generation Workspace"- Summary paragraph (
data-isis-video-generation-summary) - Contract manifest (
<h2>"… contract",data-video-gen-manifest) listingdata-video-gen-requires-prompt,data-video-gen-image-controls, and the output-package rules (data-video-gen-output-rule=<type>) - Output-package compatibility checker (
<h2>,data-video-gen-check-form)
- Route Map panel (
data-isis-video-generation-route-map):<h2>Route Map</h2>overSTUDIO_ISIS_VIDEO_GENERATION_ROUTE_MAP(5 entries) - Sibling quick-actions panel:
/studio/isis/image-generation,/studio
States#
- Loading —
data-video-gen-loading - Unauthorized — 401/403 admin-scope fail-closed;
data-video-gen-unauthorized - Error — non-OK or malformed manifest;
data-video-gen-error - Ready — manifest present; contract + output rules + checker render
- Result — after a check POST,
data-video-gen-compatible=true|false; check failures surface indata-video-gen-check-error
Interactions#
Output-package compatibility checker (data-video-gen-check-form)#
- Output package type (
data-video-gen-field-output,<select>from the manifest's output-package types) - Check output (
data-video-gen-check-submit, submit; "Checking…" while in flight) —POST /v1/admin/isis/generation-manifest/check-output
Route Map#
- Route-map articles ×5
Sibling quick-actions#
- Open Isis Image Generation workspace →
/studio/isis/image-generation - Back to Studio workspace index →
/studio
Data & contracts#
- Reads:
GET /v1/admin/isis/generation-manifest(thetext-to-videogeneration-type entry: UI requirements + output-package rules) - Writes:
POST /v1/admin/isis/generation-manifest/check-output(returns{ compatible }for the chosen output-package type) - Realtime: none
- Caching: client fetch on mount,
cache: 'no-store',buildBffAuthHeaders() - Auth/role check: admin-scoped, fail-closed (401/403); route gated on signed-in + studio entitlement
- Component sources:
apps/oshun/web/src/components/studio/StudioIsisVideoGenerationWorkspace.tsxapps/oshun/web/src/components/studio/StudioIsisVideoGenerationRouteMap.ts
Cross-references#
- Studio overview:
../../studio-overview.md - Sibling routes:
Open questions / known gaps#
- No breadcrumb on this route — navigation is via sibling quick-actions
- This lane documents and validates the text-to-video contract but does not submit a generation job; the actual generation runs on the external provider — confirm where the job is enqueued