Skip to main content
Local file · 9:12

Debugging a local screen recording without re-watching it

QA sends you a 9-minute screen recording of a bug. Hand the local mp4 to your AI — it gives you the click sequence, console output visible at each step, and the exact second the bug appears.

WHAT YOU ASKED YOUR AI

Watch this bug recording. Give me the exact click path, the console output, and the timestamp where the bug first appears.

SCENES VIDEO VISION MCP EXTRACTED

0:12

App opens — version visible bottom-right v3.4.1

0:35

Click: 'New Project' button

1:12

Template B selected — config panel opens

3:00

Save clicked — POST /projects (DevTools open)

4:05

🐞 Bug appears: spinner stuck after 200 OK

4:30

Console error: TypeError on hydration

TRANSCRIPT SNIPPET

...QA voice over: 'Okay so I'm clicking new project, then I select template B, fill in the name, hit save...' [4 minutes in] 'and now you can see the loading spinner doesn't go away even though...'

WHAT YOUR AI HANDED BACK

Reproduction

  1. Open app v3.4.1
  2. Click New Project (0:35)
  3. Pick Template B, fill name (1:12)
  4. Click Save (3:00) — POST /projects returns 200

Where it breaks (4:06) Spinner persists despite a successful 200 response. Console at 4:30 shows:

TypeError: Cannot read properties of undefined (reading 'config')
  at ProjectShell.hydrate (ProjectShell.tsx:142)

Likely root cause The success-handler is reading response.data.project.config but the API now returns response.data.config directly. Hydration crashes silently, spinner state never resets.

Fix candidates ProjectShell.tsx:142 — defensively read response.data.config ?? response.data.project?.config.

Want this for your own videos?

Free, MIT, no API keys. Works in Claude Code, Cursor, Cline, Windsurf.

Install Video Vision MCP →