{
  "scope": "Read-only constructor, entry and exit observations during complete unmodified DOSBox playback. Poll counts include the initialization poll before modal depth increments. Final Q exits precede player controls; automatic outcome exits follow perception and power updates.",
  "runs": [
    {
      "demo": 1,
      "source": "analysis/tapes/replays/demo1-modal/frames.jsonl.gz",
      "dialogs": [
        {
          "frame": 1938,
          "first_poll": 1939,
          "vtable": "0x9507e",
          "message": 13,
          "caller": "0x59fab",
          "next_poll": 2308,
          "polls": 369,
          "response": 1,
          "done": 3
        }
      ],
      "total_packets": 2308
    },
    {
      "demo": 2,
      "source": "analysis/tapes/replays/demo2-modal/frames.jsonl.gz",
      "dialogs": [
        {
          "frame": 1829,
          "first_poll": 1830,
          "vtable": "0x9507e",
          "message": 6,
          "caller": "0x59a65",
          "next_poll": 2951,
          "polls": 1121,
          "response": 1,
          "done": 3
        }
      ],
      "total_packets": 2951
    },
    {
      "demo": 3,
      "source": "analysis/tapes/replays/demo3-modal/frames.jsonl.gz",
      "dialogs": [
        {
          "frame": 967,
          "first_poll": 968,
          "vtable": "0x951ae",
          "message": null,
          "caller": null,
          "next_poll": 1007,
          "polls": 39,
          "response": 8,
          "done": 3
        },
        {
          "frame": 998,
          "first_poll": 1038,
          "vtable": "0x951ae",
          "message": null,
          "caller": null,
          "next_poll": 1053,
          "polls": 15,
          "response": 8,
          "done": 3
        },
        {
          "frame": 1685,
          "first_poll": 1740,
          "vtable": "0x9507e",
          "message": 4,
          "caller": "0x59fab",
          "next_poll": 2470,
          "polls": 730,
          "response": 1,
          "done": 3
        }
      ],
      "total_packets": 2470
    }
  ]
}
