V1 Web PWA · Surface walkthrough

Studio Hathor · Narrative API

A per-surface walkthrough of the V1 Web PWA studio surface: layout, states, interactions, data, and cross-references.

walked
8sections2 minread

On this page

Context. surface studio · domain hathor · route /studio/hathor/narrative-api · auth signed-in + studio entitlement · source apps/oshun/web/src/app/studio/hathor/narrative-api/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#

Aggregator surface that composes Hathor's narrative-export-and-analysis lanes: a Capability Summary plus the embedded Narrative Export, Narrative Structure Analysis, and Narrative Theory Tooling workspaces. The page itself issues no /v1 fetch — each embedded lane owns its own admin-scoped, fail-closed backend wiring.

Entry points#

  • Breadcrumb — Studio › Hathor Narrative Export › Narrative API
  • Quick-action links to narrative-export, narrative-structure-analysis, narrative-theory-tooling, and Back to Studio
  • Aggregator embed: StudioHathorEventPublisherWorkspace mounts this workspace inline as its "Narrative API Lane"
  • Direct URL / bookmark — yes; alternates.canonical set
  • Studio overview — see ../../studio-overview.md

Layout regions#

page.tsx renders inside <ShellLayout active="studio">:

  • Breadcrumb panel (data-hathor-narrative-api-breadcrumbs): Studio → Hathor Narrative Export → Narrative API (current)
  • Workspace <section data-hathor-narrative-api-workspace>:
    • <h1> (WorkspaceHeading) "Hathor Narrative API Workspace"
    • Summary <p data-hathor-narrative-api-summary>
    • Capability Summary (data-hathor-narrative-api-capability-summary, <h2>)
    • Narrative Export Lane (data-hathor-narrative-api-export-lane, <h2>) → <StudioHathorNarrativeExportWorkspace />
    • Narrative Structure Analysis Lane (data-hathor-narrative-api-structure-lane, <h2>) → <StudioHathorNarrativeStructureAnalysisWorkspace />
    • Narrative Theory Tooling Lane (data-hathor-narrative-api-theory-lane, <h2>) → <StudioHathorNarrativeTheoryToolingWorkspace />
  • Route Map panel (data-hathor-narrative-api-route-map): <h2> "Route Map"
    • 6 entries from STUDIO_HATHOR_NARRATIVE_API_ROUTE_MAP
  • Quick-action lane: four Link.quickAction anchors (see Entry points)

States#

This page owns no fetch; each embedded lane carries its own loading / unauthorized / error / ready / result states:

  • Narrative Export Lane — delegated to the export workspace
  • Narrative Structure Analysis Lane — delegated to the structure workspace
  • Narrative Theory Tooling Lane — delegated to ./studio-hathor-narrative-theory-tooling.md

Interactions#

Embedded lanes#

  • Narrative Export Lane
  • Narrative Structure Analysis Lane
  • Narrative Theory Tooling Lane

Route Map panel#

  • 6 route entries — verify match with STUDIO_HATHOR_NARRATIVE_API_ROUTE_MAP

Quick-action lane#

  • "Open Hathor Narrative Export workspace" (→ /studio/hathor/narrative-export)
  • "Open Hathor Narrative Structure Analysis workspace" (→ /studio/hathor/narrative-structure-analysis)
  • "Open Hathor Narrative Theory Tooling workspace" (→ /studio/hathor/narrative-theory-tooling)
  • "Back to Studio workspace index" (→ /studio)

Data & contracts#

  • Reads / Writes: none at the aggregator level; embedded lanes own their /v1/admin/hathor/* fetches (Theory Tooling → /narrative-theory-tooling)
  • Realtime: none
  • Caching: embedded client fetches use cache: 'no-store' + buildBffAuthHeaders
  • Auth/role check: each embedded lane is admin-scoped fail-closed; route is behind the signed-in + studio proxy gate

Cross-references#

Open questions / known gaps#

  • Hathor is unconfirmed-v1 per WALKTHROUGH/matrix/routes.csv. Confirm whether the dedicated /studio/hathor/* admin lane consoles ship in V1.
  • Route Map advertises exports/, structure/, theory/, parity/, and governance/ sub-routes with no page.tsx yet.