{
  "side": "after",
  "events": [
    {
      "ms": 0,
      "action": "Click end of composer",
      "text": "a -> b => c",
      "selection": "",
      "anchorOffset": 11,
      "focusOffset": 11
    },
    {
      "ms": 885,
      "action": "ArrowLeft 1/8",
      "text": "a -> b => c",
      "selection": "",
      "anchorOffset": 10,
      "focusOffset": 10
    },
    {
      "ms": 1310,
      "action": "ArrowLeft 2/8",
      "text": "a -> b => c",
      "selection": "",
      "anchorOffset": 9,
      "focusOffset": 9
    },
    {
      "ms": 1732,
      "action": "ArrowLeft 3/8",
      "text": "a -> b => c",
      "selection": "",
      "anchorOffset": 8,
      "focusOffset": 8
    },
    {
      "ms": 2189,
      "action": "ArrowLeft 4/8",
      "text": "a -> b => c",
      "selection": "",
      "anchorOffset": 7,
      "focusOffset": 7
    },
    {
      "ms": 2629,
      "action": "ArrowLeft 5/8",
      "text": "a -> b => c",
      "selection": "",
      "anchorOffset": 6,
      "focusOffset": 6
    },
    {
      "ms": 3070,
      "action": "ArrowLeft 6/8",
      "text": "a -> b => c",
      "selection": "",
      "anchorOffset": 5,
      "focusOffset": 5
    },
    {
      "ms": 3541,
      "action": "ArrowLeft 7/8",
      "text": "a -> b => c",
      "selection": "",
      "anchorOffset": 4,
      "focusOffset": 4
    },
    {
      "ms": 4037,
      "action": "ArrowLeft 8/8",
      "text": "a -> b => c",
      "selection": "",
      "anchorOffset": 3,
      "focusOffset": 3
    },
    {
      "ms": 4504,
      "action": "Shift+ArrowLeft selects one hyphen",
      "text": "a -> b => c",
      "selection": "-",
      "anchorOffset": 3,
      "focusOffset": 2
    },
    {
      "ms": 5447,
      "action": "Type x to replace the selected hyphen",
      "text": "a x> b => c",
      "selection": "",
      "anchorOffset": 3,
      "focusOffset": 3
    },
    {
      "ms": 6127,
      "action": "Backspace deletes x",
      "text": "a > b => c",
      "selection": "",
      "anchorOffset": 2,
      "focusOffset": 2
    },
    {
      "ms": 6808,
      "action": "Retype - to restore original source",
      "text": "a -> b => c",
      "selection": "",
      "anchorOffset": 3,
      "focusOffset": 3
    },
    {
      "ms": 7682,
      "action": "Select all and copy ASCII source",
      "text": "a -> b => c",
      "selection": "a -> b => c",
      "anchorOffset": 0,
      "focusOffset": 1
    },
    {
      "ms": 8607,
      "action": "End clears selection; Enter sends",
      "text": "\n",
      "selection": "",
      "anchorOffset": 0,
      "focusOffset": 0
    },
    {
      "ms": 8739,
      "action": "Sent row appeared",
      "text": "a -> b => c"
    },
    {
      "ms": 10068,
      "action": "Turn stopped, UI settled",
      "stopRequestedMs": 8739,
      "settledFirstMs": 9226,
      "pixelIdentical500ms": true
    },
    {
      "ms": 11927,
      "action": "Final settled frame; hold complete"
    }
  ],
  "frames": [
    {
      "file": 0,
      "ms": 133
    },
    {
      "file": 1,
      "ms": 208
    },
    {
      "file": 2,
      "ms": 337
    },
    {
      "file": 3,
      "ms": 412
    },
    {
      "file": 4,
      "ms": 546
    },
    {
      "file": 5,
      "ms": 629
    },
    {
      "file": 6,
      "ms": 726
    },
    {
      "file": 7,
      "ms": 831
    },
    {
      "file": 8,
      "ms": 941
    },
    {
      "file": 9,
      "ms": 1037
    },
    {
      "file": 10,
      "ms": 1176
    },
    {
      "file": 11,
      "ms": 1275
    },
    {
      "file": 12,
      "ms": 1382
    },
    {
      "file": 13,
      "ms": 1470
    },
    {
      "file": 14,
      "ms": 1572
    },
    {
      "file": 15,
      "ms": 1662
    },
    {
      "file": 16,
      "ms": 1761
    },
    {
      "file": 17,
      "ms": 1878
    },
    {
      "file": 18,
      "ms": 1991
    },
    {
      "file": 19,
      "ms": 2095
    },
    {
      "file": 20,
      "ms": 2188
    },
    {
      "file": 21,
      "ms": 2310
    },
    {
      "file": 22,
      "ms": 2408
    },
    {
      "file": 23,
      "ms": 2522
    },
    {
      "file": 24,
      "ms": 2637
    },
    {
      "file": 25,
      "ms": 2762
    },
    {
      "file": 26,
      "ms": 2876
    },
    {
      "file": 27,
      "ms": 2987
    },
    {
      "file": 28,
      "ms": 3132
    },
    {
      "file": 29,
      "ms": 3218
    },
    {
      "file": 30,
      "ms": 3359
    },
    {
      "file": 31,
      "ms": 3474
    },
    {
      "file": 32,
      "ms": 3604
    },
    {
      "file": 33,
      "ms": 3713
    },
    {
      "file": 34,
      "ms": 3789
    },
    {
      "file": 35,
      "ms": 3943
    },
    {
      "file": 36,
      "ms": 4071
    },
    {
      "file": 37,
      "ms": 4178
    },
    {
      "file": 38,
      "ms": 4265
    },
    {
      "file": 39,
      "ms": 4384
    },
    {
      "file": 40,
      "ms": 4488
    },
    {
      "file": 41,
      "ms": 4586
    },
    {
      "file": 42,
      "ms": 4725
    },
    {
      "file": 43,
      "ms": 4836
    },
    {
      "file": 44,
      "ms": 4943
    },
    {
      "file": 45,
      "ms": 5061
    },
    {
      "file": 46,
      "ms": 5177
    },
    {
      "file": 47,
      "ms": 5294
    },
    {
      "file": 48,
      "ms": 5382
    },
    {
      "file": 49,
      "ms": 5512
    },
    {
      "file": 50,
      "ms": 5595
    },
    {
      "file": 51,
      "ms": 5724
    },
    {
      "file": 52,
      "ms": 5839
    },
    {
      "file": 53,
      "ms": 5938
    },
    {
      "file": 54,
      "ms": 6059
    },
    {
      "file": 55,
      "ms": 6177
    },
    {
      "file": 56,
      "ms": 6314
    },
    {
      "file": 57,
      "ms": 6410
    },
    {
      "file": 58,
      "ms": 6511
    },
    {
      "file": 59,
      "ms": 6625
    },
    {
      "file": 60,
      "ms": 6757
    },
    {
      "file": 61,
      "ms": 6878
    },
    {
      "file": 62,
      "ms": 6968
    },
    {
      "file": 63,
      "ms": 7086
    },
    {
      "file": 64,
      "ms": 7179
    },
    {
      "file": 65,
      "ms": 7303
    },
    {
      "file": 66,
      "ms": 7427
    },
    {
      "file": 67,
      "ms": 7543
    },
    {
      "file": 68,
      "ms": 7634
    },
    {
      "file": 69,
      "ms": 7760
    },
    {
      "file": 70,
      "ms": 7931
    },
    {
      "file": 71,
      "ms": 8075
    },
    {
      "file": 72,
      "ms": 8157
    },
    {
      "file": 73,
      "ms": 8261
    },
    {
      "file": 74,
      "ms": 8405
    },
    {
      "file": 75,
      "ms": 8494
    },
    {
      "file": 76,
      "ms": 8599
    },
    {
      "file": 77,
      "ms": 8720
    },
    {
      "file": 78,
      "ms": 8845
    },
    {
      "file": 79,
      "ms": 8960
    },
    {
      "file": 80,
      "ms": 9335
    },
    {
      "file": 81,
      "ms": 9498
    },
    {
      "file": 82,
      "ms": 9608
    },
    {
      "file": 83,
      "ms": 9707
    },
    {
      "file": 84,
      "ms": 9831
    },
    {
      "file": 85,
      "ms": 9953
    },
    {
      "file": 86,
      "ms": 10166
    },
    {
      "file": 87,
      "ms": 10290
    },
    {
      "file": 88,
      "ms": 10395
    },
    {
      "file": 89,
      "ms": 10501
    },
    {
      "file": 90,
      "ms": 10607
    },
    {
      "file": 91,
      "ms": 10720
    },
    {
      "file": 92,
      "ms": 10814
    },
    {
      "file": 93,
      "ms": 10908
    },
    {
      "file": 94,
      "ms": 11035
    },
    {
      "file": 95,
      "ms": 11115
    },
    {
      "file": 96,
      "ms": 11263
    },
    {
      "file": 97,
      "ms": 11340
    },
    {
      "file": 98,
      "ms": 11446
    },
    {
      "file": 99,
      "ms": 11548
    },
    {
      "file": 100,
      "ms": 11655
    },
    {
      "file": 101,
      "ms": 11750
    },
    {
      "file": 102,
      "ms": 11843
    },
    {
      "file": 103,
      "ms": 12007
    }
  ],
  "copied": "a -> b => c",
  "sent": "a -> b => c",
  "typography": {
    "font": "\"Inter Variable\", -apple-system, BlinkMacSystemFont, \"Inter Variable\", \"Segoe UI\", system-ui, sans-serif",
    "fontSize": "14px",
    "fontVariantLigatures": "normal",
    "fontFeatureSettings": "normal"
  },
  "clock": "2026-11-03T04:00:00Z",
  "browser": "148.0.7778.96",
  "viewport": {
    "width": 1440,
    "height": 1000
  },
  "dpr": 1,
  "fontScaling": "100%",
  "reducedMotion": true,
  "playwright": "1.60.0",
  "theme": "light",
  "interfaceFont": "Inter Variable",
  "promptFont": "Inter Variable",
  "stopRequestedMs": 8739,
  "settledMs": 10068,
  "settledFirstMs": 9226,
  "pixelIdentical500ms": true,
  "finalHoldMs": 1859,
  "finalState": "Code\nWorking\n1\nSettled\n0\nAL\nArrow ligatures\n/\nArrow ligatures\nStopped\nYou\n\na -> b => c\n\n4:12 AM\n\nRun interrupted\n\u00b7\u00a0Run interrupted before provider start\nYou\n\na -> b => c\n\n4:12 AM\n\nRun interrupted\n\u00b7\u00a0Run interrupted before provider start\n\n\n\n\nAsk anything. @ files, $ skills, / commands\nDefault\nFull access\nfs-21\nOpen in editor\nAdd project script\ncapture\nPublish repository\nChanges\n+0\n-0\nToggle Sidebar\nSidebar hidden",
  "narratedSteps": [
    {
      "action": "Click end of composer",
      "actionCaptureMs": 0,
      "videoSeconds": 0.4,
      "encodedFrame": 4,
      "decodedFrameSha256": "e16b456ba2b65a9c353b9eac5e0a3799075bd7f858d119bb0ddc1a3887846022"
    },
    {
      "action": "ArrowLeft 1/8",
      "actionCaptureMs": 885,
      "videoSeconds": 1.1,
      "encodedFrame": 11,
      "decodedFrameSha256": "ea6ab3697ac4c0eaf0281e93f26b8bed84aed59e77c5e2d9abe99aaa04add4ef"
    },
    {
      "action": "ArrowLeft 2/8",
      "actionCaptureMs": 1310,
      "videoSeconds": 1.5,
      "encodedFrame": 15,
      "decodedFrameSha256": "44e3b5981b7a7a1f1e6ca0ab619beb407d2e47b68a425a3203a737b7167600ec"
    },
    {
      "action": "ArrowLeft 3/8",
      "actionCaptureMs": 1732,
      "videoSeconds": 1.9,
      "encodedFrame": 19,
      "decodedFrameSha256": "e6d9bd8f48f3452f4ca2181bcd7a405c07d1fd94a23fc51e82408eb505f445a9"
    },
    {
      "action": "ArrowLeft 4/8",
      "actionCaptureMs": 2189,
      "videoSeconds": 2.4,
      "encodedFrame": 24,
      "decodedFrameSha256": "c3f11c24b244a762ac21f3402b68070d6ac2d094d917cfe75aaba2241e5d3a58"
    },
    {
      "action": "ArrowLeft 5/8",
      "actionCaptureMs": 2629,
      "videoSeconds": 2.8,
      "encodedFrame": 28,
      "decodedFrameSha256": "50744f873e4d01a71366c9b05fb18d2befbc60ab7315c44d68791a570848c5ba"
    },
    {
      "action": "ArrowLeft 6/8",
      "actionCaptureMs": 3070,
      "videoSeconds": 3.3,
      "encodedFrame": 33,
      "decodedFrameSha256": "684de633a9c546883f3c82f6912cd957fb8b99bfab8243da10afd07327af792f"
    },
    {
      "action": "ArrowLeft 7/8",
      "actionCaptureMs": 3541,
      "videoSeconds": 3.7,
      "encodedFrame": 37,
      "decodedFrameSha256": "e6abeefded3e3fabcc7527192849cfc396a16e6e6f16e1a9e8655848b0565343"
    },
    {
      "action": "ArrowLeft 8/8",
      "actionCaptureMs": 4037,
      "videoSeconds": 4.3,
      "encodedFrame": 43,
      "decodedFrameSha256": "8e58971b04f5395980091d27b59e7f9c84bc78c7e0ce7ca55873b8645a9fba5b"
    },
    {
      "action": "Shift+ArrowLeft selects one hyphen",
      "actionCaptureMs": 4504,
      "videoSeconds": 4.8,
      "encodedFrame": 48,
      "decodedFrameSha256": "a5703751b5f040e0eef2ff950adce8a01099062e5c8bf2144de6d4240b7a53cc"
    },
    {
      "action": "Type x to replace the selected hyphen",
      "actionCaptureMs": 5447,
      "videoSeconds": 5.7,
      "encodedFrame": 57,
      "decodedFrameSha256": "335ae2f3b487b8035c4d00276af03220bb2da3fc2394408dd1dfc4c6b42d5157"
    },
    {
      "action": "Backspace deletes x",
      "actionCaptureMs": 6127,
      "videoSeconds": 6.4,
      "encodedFrame": 64,
      "decodedFrameSha256": "00a81349bc020edf3b6c8556d02be64a163b0c664ec26e71a684a90c86dbf82c"
    },
    {
      "action": "Retype - to restore original source",
      "actionCaptureMs": 6808,
      "videoSeconds": 7.1,
      "encodedFrame": 71,
      "decodedFrameSha256": "2d93ae5ad28bb3b5a552a6eaf63a05d7ff9a97ea07d29c0f1f041723c474aa0d"
    },
    {
      "action": "Select all and copy ASCII source",
      "actionCaptureMs": 7682,
      "videoSeconds": 8.1,
      "encodedFrame": 81,
      "decodedFrameSha256": "9a5dc5c00754fc2b2643e6cf388ba1c45998cb08f5f1682f7cca75c009a751b9"
    },
    {
      "action": "End clears selection; Enter sends",
      "actionCaptureMs": 8607,
      "videoSeconds": 8.9,
      "encodedFrame": 89,
      "decodedFrameSha256": "fbdab4757fe3d7c1db61f96891d574834521c44e1feba6c6adb17efd4a41e81d"
    },
    {
      "action": "Sent row appeared",
      "actionCaptureMs": 8739,
      "videoSeconds": 9.0,
      "encodedFrame": 90,
      "decodedFrameSha256": "3627107c1f628f5596b6c87201fc8f6243a2ff36ae6b01473744b20ca2b6d44f"
    },
    {
      "action": "Turn stopped, UI settled",
      "actionCaptureMs": 10068,
      "videoSeconds": 10.1,
      "encodedFrame": 101,
      "decodedFrameSha256": "7d4476789ddfce7081d45fd6726b4b7e34af19b6cba05493cb494dd13bcf5264"
    },
    {
      "action": "Final settled frame; hold complete",
      "actionCaptureMs": 11927,
      "videoSeconds": 11.9,
      "encodedFrame": 119,
      "decodedFrameSha256": "c34a925fb535cc572a54fe379fac821fd2bacb5077e646c2d1809a1a6857df4c"
    }
  ],
  "narrationClock": "Encoded MP4 time, verified decoded frames after each interaction; events[].ms retains action-onset capture time.",
  "pixelComparison": {
    "firstSha256": "8b10bfaff68f1720d75615dda4c8b979e43336940cc10757b273bf08d59624e0",
    "secondSha256": "8b10bfaff68f1720d75615dda4c8b979e43336940cc10757b273bf08d59624e0",
    "finalSha256": "8b10bfaff68f1720d75615dda4c8b979e43336940cc10757b273bf08d59624e0",
    "comparison": "PNG byte-identical; first and second screenshots separated by waitForTimeout(500); final screenshot after waitForTimeout(1700)."
  }
}
