V1 Web PWA · Surface walkthrough

Isis Automated Quality Scoring

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

walked
8sections3 minread

On this page

Context. surface studio · domain isis · route /studio/isis/automated-quality-scoring · auth signed-in + studio entitlement; Studio Isis production boundary hard-blocks this route. Automated lane verification uses the explicit localhost-only E2E bypass. · source apps/oshun/web/src/app/studio/isis/automated-quality-scoring/page.tsx

Last walked. 2026-07-23 automated desktop Chromium + Pixel 7 mobile walk — production hard-block, localhost-only lane entry, deterministic fixture report, GET-only refresh, filtering, denied and malformed fail-closed states, route status, touch targets, responsive containment, and applicable axe verified

Purpose#

Admin read model that runs the source-defined golden-output perceptual regression suite over its built-in deterministic fixture dataset. It reports the suite-local threshold verdict, pass rate, expectation accuracy, mean perceptual score, failed thresholds, and per-case validity-vs-expectation with breaches. It does not accept customer assets, persist runs, or authorize a production release. Initial load and refresh both use GET /v1/admin/isis/quality-scoring; admin-scoped and fail-closed.

Entry points#

  • Embedded as a lane inside /studio/isis/anomaly-detection
  • Sibling quick-action from /studio/isis/artifact-detection
  • 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-automated-quality-scoring-workspace):
    • <h1> (WorkspaceHeading) "Isis Automated Quality Scoring Workspace"
    • Summary paragraph (data-isis-automated-quality-scoring-summary) and exact deterministic_fixture_regression_read_model disposition (data-isis-automated-quality-scoring-disposition)
    • Fixture-suite verdict (data-quality-gate=passed|failed), expectation accuracy, failed thresholds (data-quality-failed-thresholds), report refresh (data-quality-rerun), a case filter, and the per-case list (data-quality-cases, data-quality-case=<id> with data-quality-case-expectation); empty state data-quality-cases-empty
  • Route Map panel (data-isis-automated-quality-scoring-route-map): <h2>Route Map</h2> over one mounted-read-model entry and four documented-contract entries
  • Sibling quick-actions panel: /studio/isis/retention-policies, /studio

States#

  • Loadingdata-quality-loading "Running quality regression…"
  • Unauthorized — 401/403 admin-scope fail-closed; data-quality-unauthorized
  • Error — non-OK / malformed; data-quality-error ("Could not run quality scoring.") with explicit data-quality-retry
  • Ready (fixture verdict + cases) — a fully validated report is present
  • Result — refresh re-reads the report (data-quality-rerun)

Interactions#

Gate + cases#

  • Refresh fixture report (data-quality-rerun) — re-evaluates the deterministic built-in suite through GET; disabled while refreshing
  • Retry report (data-quality-retry) — retries a failed GET
  • Filter cases (data-quality-filter, <select>: all / expectation-met / expectation-unmet)
  • Per-case rows (data-quality-case=<id>, data-quality-case-expectation)

Route Map#

  • Mounted read model ×1
  • Documented route shapes without pages or authority ×4

Sibling quick-actions#

  • Open Isis Retention Policies workspace/studio/isis/retention-policies
  • Back to Studio workspace index/studio

Data & contracts#

  • Reads: GET /v1/admin/isis/quality-scoring (regression report: summary + per-case results)
  • Writes: none; POST /v1/admin/isis/quality-scoring is not registered and returns 404
  • Realtime: none
  • Caching: client fetch on mount, cache: 'no-store', buildBffAuthHeaders()
  • Validation: the browser requires report version/timestamps, finite summary metrics, integer/count consistency, string-only failure arrays, and every rendered case field before accepting a response
  • Auth/role check: BFF admin-scoped and fail-closed (401/403); the web route is signed-in and then production-hard-blocked by the Studio Isis boundary
  • Component sources:
    • apps/oshun/web/src/components/studio/StudioIsisAutomatedQualityScoringWorkspace.tsx
    • apps/oshun/web/src/components/studio/StudioIsisAutomatedQualityScoringRouteMap.ts

Cross-references#

Open questions / known gaps#

  • No breadcrumb on this route — navigation via sibling quick-actions
  • Route-map sub-paths (/scenes, /exports, /revisions, /governance) are documented shapes only, with no pages, persisted records, exports, rollback, governance decisions, approvals, or release signoff
  • The built-in fixture suite is not customer-asset evaluation, durable run history, signed evidence, or production release authority