V1 Web PWA · Walk result

Runtime walk — automated sweep (2026-05-29)

A dated evidence record for V1 Web PWA: observed behavior, current source reconciliation, automation evidence, and explicit proof limits.

walked · no verdict· date unknown
4sections2 minread1table

On this page

Walks the drafted per-view files against the running V1 build (web next start :3010 + BFF USE_MOCK_ADAPTERS=true :4010), signed in via /api/auth/signup. A headless Playwright pass visits every route and records: final HTTP status, console + uncaught page errors, every /v1 data call and its status (self-healing 401-retries excluded), whether the documented heading/content renders, and a screenshot.

What this verifies: the view loads, renders the documented content, its data calls resolve 2xx, no console/page errors, and gates/redirects behave as documented. What it does NOT verify (still needs a manual assistive-tech pass): live screen-reader audio, physical touch-target feel, offline/service-worker behavior, and push/telemetry delivery. Files that pass are flipped draftedwalked with that scope noted in last_walked; files with a defect stay drafted with the finding in their "Open questions".

Summary#

Surface Routes Walked Held (drafted)
customer 181 181 0
studio 483 483 0
operator 10 10 0
workspace 2 2 0
total 676 676 0

Disposition classes: PASS 572, FIXED 34, REDIRECT-OK 2, GATE-OK 16, WALKED-REAL-ID 1, DATA-404 51.

  • PASS — renders cleanly with live data.
  • GATE-OK / REDIRECT-OK — the documented auth gate / 308 redirect fired correctly for this context.
  • BUG — a runtime defect (held drafted).
  • NEEDS-REAL-ID — a dynamic [id] route a placeholder id couldn't populate (held; re-walk with a real id).

Defects found (held at drafted)#

None.

Gates & redirects verified working (18)#

  • /arete/weekly — documented redirect -> /arete/review
  • /domains/nyx/renderer — operator-preview gate -> notFound in prod (coverage P3 #10)
  • /domains/nyx/widgets — operator-preview gate -> notFound in prod (coverage P3 #10)
  • /lilith-studio — editorial role gate (matches doc)
  • /lilith-studio/asana — editorial role gate (matches doc)
  • /lilith-studio/avatar-costume — editorial role gate (matches doc)
  • /lilith-studio/concerts — editorial role gate (matches doc)
  • /lilith-studio/music — editorial role gate (matches doc)
  • /lilith-studio/personas — editorial role gate (matches doc)
  • /lilith-studio/provenance — editorial role gate (matches doc)
  • /lilith-studio/scene/new — editorial role gate (matches doc)
  • /lilith-studio/scenes — editorial role gate (matches doc)
  • /lilith-studio/tara — editorial role gate (matches doc)
  • /metis/upload — documented redirect -> /metis/byom
  • /welcome/test-achievements — test-harness gate (coverage P3 #3)
  • /welcome/test-assistant — test-harness gate (coverage P3 #3)
  • /welcome/test-routines — test-harness gate (coverage P3 #3)
  • /welcome/test-wearable — test-harness gate (coverage P3 #3)

Method / re-run#

Harness: /tmp/claude-oshun-lt-2-walkthrough/ + /tmp/walk/{sweep,dispose,apply,report}.mjs. Per-route raw evidence: /tmp/walk/results-<surface>.jsonl; screenshots: /tmp/walk/shots-<surface>/. Re-run a surface: node /tmp/walk/sweep.mjs <surface> && node /tmp/walk/dispose.mjs <surface> && node /tmp/walk/apply.mjs <surface>.