{
  "schema": "s2s-bench-v1",
  "exhibit": "ollama-and-vllm-on-one-rtx-3090",
  "dataset": "ollama-vs-vllm-2026-09-28",
  "generated_utc": "2026-10-07T12:59:47Z",
  "licence": "CC BY 4.0",
  "attribution": "strata→signal research, research.strata2signal.com",
  "contact": "hello@strata2signal.com",
  "what_this_is": "The receipts behind the exhibit *Ollama and vLLM on one RTX 3090* (https://research.strata2signal.com/ollama-and-vllm-on-one-rtx-3090/) that our rules could clear for release, and the name of every file they could not. The exhibit is the bench that put Ollama 0.34.4 and vLLM 0.30.0 on one EVGA GeForce RTX 3090 XC3 Ultra (24 GB) at 300 W with the same 4-bit Gemma 4 12B weights, from one request at a time to sixteen released together, and the first reading on the older pair it was proven on, vLLM 0.27.1 and Ollama 0.32.13.",
  "run_id": "ollama-vs-vllm-2026-09-28",
  "run_window_utc": {
    "arm_S_opened_utc": "2026-09-28T11:29:59Z",
    "arm_S_closed_utc": "2026-09-28T11:33:35Z",
    "arms_D_and_TT_opened_utc": "2026-09-28T17:20:32Z",
    "arms_D_and_TT_closed_utc": "2026-09-28T17:30:20Z",
    "arm_D_rerun_and_TT_replication_opened_utc": "2026-09-30T20:00:02Z",
    "arm_D_rerun_and_TT_replication_closed_utc": "2026-09-30T20:07:18Z",
    "arm_P_opened_utc": "2026-09-30T20:43:52Z",
    "arm_P_closed_utc": "2026-09-30T21:19:31Z",
    "arm_Q_opened_utc": "2026-09-30T21:27:35Z",
    "arm_Q_closed_utc": "2026-09-30T21:31:13Z",
    "arm_A_opened_utc": "2026-09-30T21:31:19Z",
    "arm_A_closed_utc": "2026-09-30T21:35:27Z",
    "arm_C_opened_utc": "2026-10-01T13:35:02Z",
    "arm_C_closed_utc": "2026-10-01T14:29:21Z"
  },
  "cut_by": {
    "tool": "tools/kit_sanitise.py",
    "how": "All but `README.md` and `KIT-NOTE.md` are taken from the record the bench wrote by a fixed list of files and by rules a program applied in a fixed order, never by hand: the frozen prompts and their manifest; arm S's per-request rows and board readings for both servers; the board readings and token-ID parity checks of arms D (both runs), C, P and Q, with the receipt lines the README lists; the results files the README lists; arm A's census cut to the twelve route rows the page prints; and the client modules the README lists.",
    "rule_order": [
      "digest-withheld",
      "digest-withheld-ruled",
      "manifest-source-blob-withheld",
      "manifest-source-commit-withheld",
      "home-path-withheld",
      "port-flag-withheld"
    ],
    "files_cut": 37
  },
  "sanitisation_rules": {
    "digest-withheld": "A digest a file prints of bytes the kit does not serve is withheld and marked, because a digest of a file as it stood before a rule rewrote it would let a reader check a guess at what was cut.",
    "digest-withheld-ruled": "A digest a file prints of bytes the kit does not serve is withheld and marked, because a digest of a file as it stood before a rule rewrote it would let a reader check a guess at what was cut.",
    "manifest-source-blob-withheld": "A digest a file prints of bytes the kit does not serve is withheld and marked, because a digest of a file as it stood before a rule rewrote it would let a reader check a guess at what was cut.",
    "manifest-source-commit-withheld": "A digest a file prints of bytes the kit does not serve is withheld and marked, because a digest of a file as it stood before a rule rewrote it would let a reader check a guess at what was cut.",
    "home-path-withheld": "A rule can cut the port flag or a home path by its shape.",
    "port-flag-withheld": "A rule can cut the port flag or a home path by its shape."
  },
  "rule_firings_total": {
    "home-path-withheld": 3,
    "port-flag-withheld": 2,
    "manifest-source-blob-withheld": 1,
    "manifest-source-commit-withheld": 2,
    "digest-withheld-ruled": 17
  },
  "what_was_not_touched": "Only what a rule rewrote, each rule counted per file in `provenance.json`: the port flag and home paths to their withheld markers, and the digests above to `withheld-2026-10-07`. No figure moved on the way out, and `index.json` carries the sha256 of every file it lists, as served.",
  "omitted": {
    "Files the rules could not clear.": "A rule can cut the port flag or a home path by its shape. A file it cannot clear that way is absent whole, because a hand edit would make it something other than a record, and the README names every such file. Among them are the per-request rows of every arm but S, every serve-line file and the pre-registration. So the figures the page prints for the other arms are on the page, and in the results files the README lists for the arms that have one; they cannot be re-derived from per-request rows here. The serve lines are printed on the page as code.",
    "Arm A's census.": "The page prints twelve route rows; the kit ships those twelve, in the page's order and labelled as a cut. The rest of arm A's census is withheld whole, by ruling.",
    "Digests of other records.": "A digest a file prints of bytes the kit does not serve is withheld and marked, because a digest of a file as it stood before a rule rewrote it would let a reader check a guess at what was cut. A rule withholds a digest it knows, whole or shortened; a short prefix of one it does not know, eight to fifteen hex characters as a record printed them, still stands. Two kinds stay, as the README says: the model's revision, a public identifier, and a digest you can reproduce from this kit's own files, or from a public file or with a public program named there; the README lists each one, and the kinds of short prefix that stand.",
    "The rest of the harness.": "The client modules the README lists ship. The box roster and its writer, the host-OS module, the arm drivers and seat modules, the stack locks and the kit's tools, and the kit's own spec, README and tests do not.",
    "Card identity.": "Every row file names the card by its label, never by a serial, a UUID or a bus address, the rule this shelf adopted on 2026-10-01 for every new page and kit."
  },
  "files": [
    {
      "file": "kit/client/client.py",
      "role": "Client modules from the harness that drove the servers: the timing sweep, the engine protocol and the drivers listed, the parity check, the framing that renders each prompt once, the gates that read every run after it ends and void a level that breaks one of our rules, and the seeded tag each request opens with, the same on every server, so that no prompt cache can answer one request from another's. They are a reading set, not a program you can run: they import modules this kit does not carry (`pen.py`, `prereg.py`, `seat.py`, `seatlib.py`, `servelines.py`).",
      "media_type": "application/octet-stream",
      "bytes": 27243,
      "sha256": "f32cd913be28937b5be71eceb52ca93aa6ee2b58e40877ef1d6e4248af0a0d7b",
      "sha256_original": "f32cd913be28937b5be71eceb52ca93aa6ee2b58e40877ef1d6e4248af0a0d7b",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/client/engine.py",
      "role": "Client modules from the harness that drove the servers: the timing sweep, the engine protocol and the drivers listed, the parity check, the framing that renders each prompt once, the gates that read every run after it ends and void a level that breaks one of our rules, and the seeded tag each request opens with, the same on every server, so that no prompt cache can answer one request from another's. They are a reading set, not a program you can run: they import modules this kit does not carry (`pen.py`, `prereg.py`, `seat.py`, `seatlib.py`, `servelines.py`).",
      "media_type": "application/octet-stream",
      "bytes": 21424,
      "sha256": "fd74542531f99930d2c08c786520a9e30f5acc5f73cb0be769f7025b636140e3",
      "sha256_original": "fd74542531f99930d2c08c786520a9e30f5acc5f73cb0be769f7025b636140e3",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/client/engine_ollama.py",
      "role": "Client modules from the harness that drove the servers: the timing sweep, the engine protocol and the drivers listed, the parity check, the framing that renders each prompt once, the gates that read every run after it ends and void a level that breaks one of our rules, and the seeded tag each request opens with, the same on every server, so that no prompt cache can answer one request from another's. They are a reading set, not a program you can run: they import modules this kit does not carry (`pen.py`, `prereg.py`, `seat.py`, `seatlib.py`, `servelines.py`).",
      "media_type": "application/octet-stream",
      "bytes": 23252,
      "sha256": "e23908fff7356eb2fa0800b6d7d210f68f2cfa1e19d997b93fc2a10eb6ccceb1",
      "sha256_original": null,
      "identical_to_original": false,
      "stripped": [
        "home-path-withheld",
        "port-flag-withheld"
      ],
      "strip_counts": {
        "home-path-withheld": 1,
        "port-flag-withheld": 1
      }
    },
    {
      "file": "kit/client/engine_llamaserver.py",
      "role": "Client modules from the harness that drove the servers: the timing sweep, the engine protocol and the drivers listed, the parity check, the framing that renders each prompt once, the gates that read every run after it ends and void a level that breaks one of our rules, and the seeded tag each request opens with, the same on every server, so that no prompt cache can answer one request from another's. They are a reading set, not a program you can run: they import modules this kit does not carry (`pen.py`, `prereg.py`, `seat.py`, `seatlib.py`, `servelines.py`).",
      "media_type": "application/octet-stream",
      "bytes": 11894,
      "sha256": "1052be672531225997e4efef15a5bd5c83916b710ad073d39c6a6eddfd5e74b0",
      "sha256_original": null,
      "identical_to_original": false,
      "stripped": [
        "port-flag-withheld"
      ],
      "strip_counts": {
        "port-flag-withheld": 1
      }
    },
    {
      "file": "kit/client/parity.py",
      "role": "Client modules from the harness that drove the servers: the timing sweep, the engine protocol and the drivers listed, the parity check, the framing that renders each prompt once, the gates that read every run after it ends and void a level that breaks one of our rules, and the seeded tag each request opens with, the same on every server, so that no prompt cache can answer one request from another's. They are a reading set, not a program you can run: they import modules this kit does not carry (`pen.py`, `prereg.py`, `seat.py`, `seatlib.py`, `servelines.py`).",
      "media_type": "application/octet-stream",
      "bytes": 7969,
      "sha256": "83600c11153b293d86a16d592804ffcf13965fe4c7c68000f2aa548d9d89b1bd",
      "sha256_original": "83600c11153b293d86a16d592804ffcf13965fe4c7c68000f2aa548d9d89b1bd",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/client/framing.py",
      "role": "Client modules from the harness that drove the servers: the timing sweep, the engine protocol and the drivers listed, the parity check, the framing that renders each prompt once, the gates that read every run after it ends and void a level that breaks one of our rules, and the seeded tag each request opens with, the same on every server, so that no prompt cache can answer one request from another's. They are a reading set, not a program you can run: they import modules this kit does not carry (`pen.py`, `prereg.py`, `seat.py`, `seatlib.py`, `servelines.py`).",
      "media_type": "application/octet-stream",
      "bytes": 6050,
      "sha256": "45425fee7c07ba125db8042742ca9e4a3aa22a3619b6d25e8f6eca7f29216059",
      "sha256_original": "45425fee7c07ba125db8042742ca9e4a3aa22a3619b6d25e8f6eca7f29216059",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/prompts/series-p512.txt",
      "role": "The frozen prompts the bench sent, byte for byte, arm P's questions and the frame each prompt was rendered with, and the manifest that names each prompt and its sha256.",
      "media_type": "text/plain",
      "bytes": 2101,
      "sha256": "90eedd0c53f9554ae3837674504fcb7090013d9a432a653352183c0f25a7ce5c",
      "sha256_original": "90eedd0c53f9554ae3837674504fcb7090013d9a432a653352183c0f25a7ce5c",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/prompts/long-write.txt",
      "role": "The frozen prompts the bench sent, byte for byte, arm P's questions and the frame each prompt was rendered with, and the manifest that names each prompt and its sha256.",
      "media_type": "text/plain",
      "bytes": 10618,
      "sha256": "e7fb0b295f6de90744d01abceec0e2273f80a4c4a1ddb32df493203952d9f3db",
      "sha256_original": "e7fb0b295f6de90744d01abceec0e2273f80a4c4a1ddb32df493203952d9f3db",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/prompts/long-prefill.txt",
      "role": "The frozen prompts the bench sent, byte for byte, arm P's questions and the frame each prompt was rendered with, and the manifest that names each prompt and its sha256.",
      "media_type": "text/plain",
      "bytes": 10364,
      "sha256": "36606657df453a20ee2aa9f64d0e395fd8f392ee08935f1e92d0feefe8a949e1",
      "sha256_original": "36606657df453a20ee2aa9f64d0e395fd8f392ee08935f1e92d0feefe8a949e1",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/prompts/prefix-questions.json",
      "role": "The frozen prompts the bench sent, byte for byte, arm P's questions and the frame each prompt was rendered with, and the manifest that names each prompt and its sha256.",
      "media_type": "application/json",
      "bytes": 1675,
      "sha256": "301683c98bd7b52be34c1149838bf5493a8d37a0a22a3d95d9a9382bc166928e",
      "sha256_original": null,
      "identical_to_original": false,
      "stripped": [
        "home-path-withheld"
      ],
      "strip_counts": {
        "home-path-withheld": 1
      }
    },
    {
      "file": "kit/prompts/frame/gemma4-canonical.json",
      "role": "The frozen prompts the bench sent, byte for byte, arm P's questions and the frame each prompt was rendered with, and the manifest that names each prompt and its sha256.",
      "media_type": "application/json",
      "bytes": 1133,
      "sha256": "eb7d0f01fe4ab7a2112eabdcc0a79be7238ef8d1c62b11d00b2392f4a8f821a5",
      "sha256_original": "eb7d0f01fe4ab7a2112eabdcc0a79be7238ef8d1c62b11d00b2392f4a8f821a5",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/prompts/MANIFEST.json",
      "role": "The frozen prompts the bench sent, byte for byte, arm P's questions and the frame each prompt was rendered with, and the manifest that names each prompt and its sha256.",
      "media_type": "application/json",
      "bytes": 3044,
      "sha256": "d6459064af474606306cfc027566bdcd64d011e4f9cc2fda903eb7297b7c1bd3",
      "sha256_original": null,
      "identical_to_original": false,
      "stripped": [
        "manifest-source-blob-withheld",
        "manifest-source-commit-withheld",
        "home-path-withheld"
      ],
      "strip_counts": {
        "manifest-source-blob-withheld": 1,
        "manifest-source-commit-withheld": 2,
        "home-path-withheld": 1
      }
    },
    {
      "file": "kit/rows/S/ovv-s-20260928T1130Z-ollama-scored.jsonl",
      "role": "Arm S's rows for both servers, the harness's own output: every scored request's token counts, first-token wait, decode rate and the server's own timers where it reports them, with the board's power at 2 Hz beside them.",
      "media_type": "application/x-ndjson",
      "bytes": 30440,
      "sha256": "8233204a8b5c6dbad2ec567136c21b0894a54d5c174a8ba0447c99423808944f",
      "sha256_original": "8233204a8b5c6dbad2ec567136c21b0894a54d5c174a8ba0447c99423808944f",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/rows/S/ovv-s-20260928T1130Z-vllm-scored.jsonl",
      "role": "Arm S's rows for both servers, the harness's own output: every scored request's token counts, first-token wait, decode rate and the server's own timers where it reports them, with the board's power at 2 Hz beside them.",
      "media_type": "application/x-ndjson",
      "bytes": 28039,
      "sha256": "6534ab68b0f9e787489a1d1c79174363dc534f18b29f0fd9cf5f0f81237c83a4",
      "sha256_original": "6534ab68b0f9e787489a1d1c79174363dc534f18b29f0fd9cf5f0f81237c83a4",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/rows/S/ovv-s-20260928T1130Z-ollama-scored-board.csv",
      "role": "Arm S's rows for both servers, the harness's own output: every scored request's token counts, first-token wait, decode rate and the server's own timers where it reports them, with the board's power at 2 Hz beside them.",
      "media_type": "text/csv",
      "bytes": 9735,
      "sha256": "36813013bdc659b85e873d12df45ba0dfa102dedb59e8febe5ec59c3fb3d6aa6",
      "sha256_original": "36813013bdc659b85e873d12df45ba0dfa102dedb59e8febe5ec59c3fb3d6aa6",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/rows/S/ovv-s-20260928T1130Z-vllm-scored-board.csv",
      "role": "Arm S's rows for both servers, the harness's own output: every scored request's token counts, first-token wait, decode rate and the server's own timers where it reports them, with the board's power at 2 Hz beside them.",
      "media_type": "text/csv",
      "bytes": 11604,
      "sha256": "a57a3cdeefe360a4789789172e3e2b4a29edbe16f49fae8d7e28604cbc3e5c33",
      "sha256_original": "a57a3cdeefe360a4789789172e3e2b4a29edbe16f49fae8d7e28604cbc3e5c33",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/rows/D-2026-09-28/D.power.csv",
      "role": "For arms D (both runs), C, P and Q: each run's board readings at 2 Hz and its token-ID parity check, the check that stops a run whose prompts the two servers turned into different token IDs; for arms D, C and P, the `RECEIPT` line each run printed.",
      "media_type": "text/csv",
      "bytes": 81426,
      "sha256": "e9bf2d78408448269e6b91b7339bb9f1a9af76971a55c9e5005aa83b0136324b",
      "sha256_original": "e9bf2d78408448269e6b91b7339bb9f1a9af76971a55c9e5005aa83b0136324b",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/rows/D-2026-09-28/parity.json",
      "role": "For arms D (both runs), C, P and Q: each run's board readings at 2 Hz and its token-ID parity check, the check that stops a run whose prompts the two servers turned into different token IDs; for arms D, C and P, the `RECEIPT` line each run printed.",
      "media_type": "application/json",
      "bytes": 112770,
      "sha256": "83c43ef5592a559556a9aaae33778b7fc5c4b86a5b6badb229fb5836e6b7297e",
      "sha256_original": "83c43ef5592a559556a9aaae33778b7fc5c4b86a5b6badb229fb5836e6b7297e",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/rows/D-2026-09-28/RECEIPT",
      "role": "For arms D (both runs), C, P and Q: each run's board readings at 2 Hz and its token-ID parity check, the check that stops a run whose prompts the two servers turned into different token IDs; for arms D, C and P, the `RECEIPT` line each run printed.",
      "media_type": "application/octet-stream",
      "bytes": 355,
      "sha256": "12fb654457e5dda243570994f3f7b4773cdfdd8e354e9c4da70149f011f5e7e5",
      "sha256_original": "12fb654457e5dda243570994f3f7b4773cdfdd8e354e9c4da70149f011f5e7e5",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/rows/D-2026-09-30/D.power.csv",
      "role": "For arms D (both runs), C, P and Q: each run's board readings at 2 Hz and its token-ID parity check, the check that stops a run whose prompts the two servers turned into different token IDs; for arms D, C and P, the `RECEIPT` line each run printed.",
      "media_type": "text/csv",
      "bytes": 80758,
      "sha256": "dbcd47d2e5c934ac922fedb59a625dd7d14185f092aa22c5eaf40d1df5d7ad55",
      "sha256_original": "dbcd47d2e5c934ac922fedb59a625dd7d14185f092aa22c5eaf40d1df5d7ad55",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/rows/D-2026-09-30/parity.json",
      "role": "For arms D (both runs), C, P and Q: each run's board readings at 2 Hz and its token-ID parity check, the check that stops a run whose prompts the two servers turned into different token IDs; for arms D, C and P, the `RECEIPT` line each run printed.",
      "media_type": "application/json",
      "bytes": 58376,
      "sha256": "3b0b9b436aaff34c3e76ee1f05040d26c799058b4a8bc81dbfeb3c24df6dcd9a",
      "sha256_original": "3b0b9b436aaff34c3e76ee1f05040d26c799058b4a8bc81dbfeb3c24df6dcd9a",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/rows/D-2026-09-30/RECEIPT",
      "role": "For arms D (both runs), C, P and Q: each run's board readings at 2 Hz and its token-ID parity check, the check that stops a run whose prompts the two servers turned into different token IDs; for arms D, C and P, the `RECEIPT` line each run printed.",
      "media_type": "application/octet-stream",
      "bytes": 313,
      "sha256": "3cdfb4a59db31dbdc78b88c7feb30f231f48cd7c89e97aa73a6ba6aeeb84ca62",
      "sha256_original": "3cdfb4a59db31dbdc78b88c7feb30f231f48cd7c89e97aa73a6ba6aeeb84ca62",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/rows/C/C.power.csv",
      "role": "For arms D (both runs), C, P and Q: each run's board readings at 2 Hz and its token-ID parity check, the check that stops a run whose prompts the two servers turned into different token IDs; for arms D, C and P, the `RECEIPT` line each run printed.",
      "media_type": "text/csv",
      "bytes": 923638,
      "sha256": "daab6b0a88455d66c95ceabed609382bb438e309d441bf93743605de8276f279",
      "sha256_original": "daab6b0a88455d66c95ceabed609382bb438e309d441bf93743605de8276f279",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/rows/C/parity.json",
      "role": "For arms D (both runs), C, P and Q: each run's board readings at 2 Hz and its token-ID parity check, the check that stops a run whose prompts the two servers turned into different token IDs; for arms D, C and P, the `RECEIPT` line each run printed.",
      "media_type": "application/json",
      "bytes": 36432,
      "sha256": "7742ee04c1ce7745ee83319b41cdd90209fdae08c56d2c77fce3e3772588e8ac",
      "sha256_original": "7742ee04c1ce7745ee83319b41cdd90209fdae08c56d2c77fce3e3772588e8ac",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/rows/C/RECEIPT",
      "role": "For arms D (both runs), C, P and Q: each run's board readings at 2 Hz and its token-ID parity check, the check that stops a run whose prompts the two servers turned into different token IDs; for arms D, C and P, the `RECEIPT` line each run printed.",
      "media_type": "application/octet-stream",
      "bytes": 367,
      "sha256": "fc88be6318fd20bdddff63a13e217227883ed8a3fb00cb069944f05a58c5bee3",
      "sha256_original": "fc88be6318fd20bdddff63a13e217227883ed8a3fb00cb069944f05a58c5bee3",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/rows/P/P.power.csv",
      "role": "For arms D (both runs), C, P and Q: each run's board readings at 2 Hz and its token-ID parity check, the check that stops a run whose prompts the two servers turned into different token IDs; for arms D, C and P, the `RECEIPT` line each run printed.",
      "media_type": "text/csv",
      "bytes": 559621,
      "sha256": "b5d48abab439294cf2eeba5587ec592d2d623be0b8ac412389da6b4ca6edc0c8",
      "sha256_original": "b5d48abab439294cf2eeba5587ec592d2d623be0b8ac412389da6b4ca6edc0c8",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/rows/P/parity.json",
      "role": "For arms D (both runs), C, P and Q: each run's board readings at 2 Hz and its token-ID parity check, the check that stops a run whose prompts the two servers turned into different token IDs; for arms D, C and P, the `RECEIPT` line each run printed.",
      "media_type": "application/json",
      "bytes": 12221,
      "sha256": "1f43cf52e1b0ce65f13a2914834f2701d14c451f681cedf9ac2c3b8018e92345",
      "sha256_original": "1f43cf52e1b0ce65f13a2914834f2701d14c451f681cedf9ac2c3b8018e92345",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/rows/P/RECEIPT",
      "role": "For arms D (both runs), C, P and Q: each run's board readings at 2 Hz and its token-ID parity check, the check that stops a run whose prompts the two servers turned into different token IDs; for arms D, C and P, the `RECEIPT` line each run printed.",
      "media_type": "application/octet-stream",
      "bytes": 259,
      "sha256": "98afb6dc7eeeb533217447a87454ada665878e931a4fa4aaaeb1b3f6476b5eb3",
      "sha256_original": "98afb6dc7eeeb533217447a87454ada665878e931a4fa4aaaeb1b3f6476b5eb3",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/rows/Q/Q.power.csv",
      "role": "For arms D (both runs), C, P and Q: each run's board readings at 2 Hz and its token-ID parity check, the check that stops a run whose prompts the two servers turned into different token IDs; for arms D, C and P, the `RECEIPT` line each run printed.",
      "media_type": "text/csv",
      "bytes": 48417,
      "sha256": "fe1988b299cbd244d28db27ada093c0e84eb58984bb703867779cb3e5ab7e867",
      "sha256_original": "fe1988b299cbd244d28db27ada093c0e84eb58984bb703867779cb3e5ab7e867",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/rows/Q/parity.json",
      "role": "For arms D (both runs), C, P and Q: each run's board readings at 2 Hz and its token-ID parity check, the check that stops a run whose prompts the two servers turned into different token IDs; for arms D, C and P, the `RECEIPT` line each run printed.",
      "media_type": "application/json",
      "bytes": 12136,
      "sha256": "a35ad7aded53e3c7ed0ab1a06ad5fdb040bf126d89bd8e513e9bb4deeecfc9d4",
      "sha256_original": "a35ad7aded53e3c7ed0ab1a06ad5fdb040bf126d89bd8e513e9bb4deeecfc9d4",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/rows/A/A.routes-cut.json",
      "role": "Arm A's census, cut to the twelve route rows the page prints, in the page's order and labelled as a cut. The rest of arm A's census is withheld whole, by ruling.",
      "media_type": "application/json",
      "bytes": 1920,
      "sha256": "98eb1569c3625955a71a12b6ca010e2159726d2b3d89da46f6f78dec999f593f",
      "sha256_original": null,
      "identical_to_original": false,
      "derived_by": "tools/kit_extract_ovv_routes.py",
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/records/D-2026-09-30-RESULTS.md",
      "role": "The results files of the arms they name, as the bench wrote them after each run, apart from the digests withheld in them.",
      "media_type": "text/markdown",
      "bytes": 23889,
      "sha256": "900ea9dced15a2158f92d68034ba4ec228a6b3a57a4533593b8b8578eae84439",
      "sha256_original": null,
      "identical_to_original": false,
      "stripped": [
        "digest-withheld-ruled"
      ],
      "strip_counts": {
        "digest-withheld-ruled": 5
      }
    },
    {
      "file": "kit/records/C-RESULTS.md",
      "role": "The results files of the arms they name, as the bench wrote them after each run, apart from the digests withheld in them.",
      "media_type": "text/markdown",
      "bytes": 20140,
      "sha256": "b94d6cef455debe79e722d6a15b070ae18f46d1e7a53eb009ebb6d103fa1f083",
      "sha256_original": null,
      "identical_to_original": false,
      "stripped": [
        "digest-withheld-ruled"
      ],
      "strip_counts": {
        "digest-withheld-ruled": 9
      }
    },
    {
      "file": "kit/records/P-RESULTS.md",
      "role": "The results files of the arms they name, as the bench wrote them after each run, apart from the digests withheld in them.",
      "media_type": "text/markdown",
      "bytes": 11951,
      "sha256": "886d8ff18fc6abfac877a43a04d7aaa7d164a720c7c28b7b73c41e15d6aef8ee",
      "sha256_original": null,
      "identical_to_original": false,
      "stripped": [
        "digest-withheld-ruled"
      ],
      "strip_counts": {
        "digest-withheld-ruled": 3
      }
    },
    {
      "file": "kit/client/gates.py",
      "role": "Client modules from the harness that drove the servers: the timing sweep, the engine protocol and the drivers listed, the parity check, the framing that renders each prompt once, the gates that read every run after it ends and void a level that breaks one of our rules, and the seeded tag each request opens with, the same on every server, so that no prompt cache can answer one request from another's. They are a reading set, not a program you can run: they import modules this kit does not carry (`pen.py`, `prereg.py`, `seat.py`, `seatlib.py`, `servelines.py`).",
      "media_type": "application/octet-stream",
      "bytes": 13658,
      "sha256": "4565956a74c76470047a5b49091ad5bfdc4d3be492bd48154b1ddb2f5e3a9d05",
      "sha256_original": "4565956a74c76470047a5b49091ad5bfdc4d3be492bd48154b1ddb2f5e3a9d05",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/client/nonces.py",
      "role": "Client modules from the harness that drove the servers: the timing sweep, the engine protocol and the drivers listed, the parity check, the framing that renders each prompt once, the gates that read every run after it ends and void a level that breaks one of our rules, and the seeded tag each request opens with, the same on every server, so that no prompt cache can answer one request from another's. They are a reading set, not a program you can run: they import modules this kit does not carry (`pen.py`, `prereg.py`, `seat.py`, `seatlib.py`, `servelines.py`).",
      "media_type": "application/octet-stream",
      "bytes": 5878,
      "sha256": "8e0e57b6cc8c995f9683692435f5303e08cf29b326edecc421c8fc3bb0964dc2",
      "sha256_original": "8e0e57b6cc8c995f9683692435f5303e08cf29b326edecc421c8fc3bb0964dc2",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    },
    {
      "file": "kit/prompts/short-chat.txt",
      "role": "The frozen prompts the bench sent, byte for byte, arm P's questions and the frame each prompt was rendered with, and the manifest that names each prompt and its sha256.",
      "media_type": "text/plain",
      "bytes": 300,
      "sha256": "b4f02741465c99256b4f20eb675efab4e450c9994868d667c58a25d126ce9cd6",
      "sha256_original": "b4f02741465c99256b4f20eb675efab4e450c9994868d667c58a25d126ce9cd6",
      "identical_to_original": true,
      "stripped": [],
      "strip_counts": {}
    }
  ]
}
