{
  "generatedBy": [
    "pipeline/assay-analyser/generate_curves.py",
    "pipeline/assay-analyser/make-prism-example.mts",
    "pipeline/assay-analyser/reference.R"
  ],
  "recordedOn": "2026-10-06",
  "referenceRSha256": "912ea05cabc1bd2ddccee30bc815ee09defd3b505ab717c10c4cbfdbc39420f7",
  "use": "Tests read these files in place from pipeline/assay-analyser/fixtures/ and check each file's sha256 against this manifest; nothing is copied under src/ but the generated example modules a test checks against them (CSO ruling, 6 October 2026). Run generate_curves.py and make-prism-example.mts, then reference.R, which writes this manifest.",
  "files": {
    "synthetic-curves.json": {
      "sha256": "6b564a434829d9250f230bbc5fe6dd552e69819422af490b2693931d57e0928a"
    },
    "mtt-example.json": {
      "sha256": "50029b58c869ecb47767215f6b6ba9b54ef33575a77dcd1044cf2c6b3c2a8214"
    },
    "mtt-example.csv": {
      "sha256": "6871d36dddce0ebf7e6257c8ccbf8305c44be839d0a1954faea5f3006bc8ad8c"
    },
    "zprime-controls.json": {
      "sha256": "dd3f2b587d4585ac1a15ab09c3f39de68087920a4297491245c0a8a0fa6bb356"
    },
    "drc-reference.json": {
      "sha256": "27d99000551acaf26efcbc4c67831aeaf2f933258409bc5aa63704daeff0e351"
    },
    "prism-erlotinib-hcc827.json": {
      "sha256": "65be764ae7970993d8aa325005fb7ffdbba12c079e122629bb16bccc72c8f774"
    },
    "prism-erlotinib-hcc827.csv": {
      "sha256": "12557f9de9ae99b8341593ed736d5f0147cf83e917f03ce35e4317bd3cbec33b"
    },
    "prism-erlotinib-hcc827.reference.json": {
      "sha256": "76caef919c0ef98de20c19be69ada8a5c54b7f0d6f37f8570df80085b7465e12"
    },
    "calibration-4pl-scipy.json": {
      "sha256": "a39ce2db4d4030bcdbc1843a369f0dbabaa68933b2e4a31f7101809f7bcf174a",
      "script": "pipeline/assay-analyser/oracles/calibration_4pl_scipy.py",
      "scriptSha256": "55dd595390e7876482d2b35624c9eff42cabef045ac0654c8c1899b8d9dc5f9e",
      "recordedOn": "2026-10-10",
      "method": "standard-curve-interpolation (4PL)"
    },
    "calibration-linear-exact.json": {
      "sha256": "f5c95440d8ca84402aab8edb40463770525478028acd1593f2cf80630c5f0e1e",
      "script": "pipeline/assay-analyser/oracles/calibration_linear_exact.py",
      "scriptSha256": "21780ddf62e4a6d6f6205fa1c67dba788fb620b08b46d0890f474e42b16c9740",
      "recordedOn": "2026-10-10",
      "method": "standard-curve-interpolation (linear)"
    },
    "replicate-summaries.json": {
      "sha256": "d5115ec009dc225291b4b89ea80498716e10e5e6e32fc51727f47f13c964cfdb",
      "script": "pipeline/assay-analyser/oracles/replicate_summaries.py",
      "scriptSha256": "cc6063fdd3320d3a385f54658e3bc35295ab90cb8b0f88747b5354c22a35ea7b",
      "recordedOn": "2026-10-10",
      "method": "replicate-summaries (chart)"
    },
    "zprime-degenerate.json": {
      "sha256": "c29e2fcc9e5889e319f2cbb5d302e51cb8837badb28f311fa99e14be3fb9c9ee",
      "script": "pipeline/assay-analyser/oracles/zprime_degenerate.R",
      "scriptSha256": "4d75340f93d5b663d49772326eeac72de6e242a23109535e594c8c957477be5a",
      "recordedOn": "2026-10-10",
      "method": "z-prime (degenerate and adverse sets)"
    },
    "growth-window.json": {
      "sha256": "f39a7b7678d0f182753d061d0fb6795f69a6354b6f7e5d7d350fe107204f9d0c",
      "script": "pipeline/assay-analyser/oracles/growth_window.py",
      "scriptSha256": "a9a1412b2f65fb46c3f8d3ffe3482dd5560ad64af02190646edc7835accf3468",
      "recordedOn": "2026-10-10",
      "method": "growth-window-rate"
    },
    "michaelis-menten.json": {
      "sha256": "718e6c603509763b22e3bf5aacd86693c68bbd93d120dd5fc37908e29df3dd11",
      "script": "pipeline/assay-analyser/oracles/michaelis_menten.py",
      "scriptSha256": "470e84aa305d94f2f326b55bf37911a00670e6754489254730b3f7d1c970cdcc",
      "recordedOn": "2026-10-10",
      "method": "michaelis-menten-initial-rate"
    },
    "ki-cheng-prusoff.json": {
      "sha256": "e9bf8e6c2efae63e3e78e444f1919beb41ffccb595284217d28b05724bc17899",
      "script": "pipeline/assay-analyser/oracles/ki_cheng_prusoff.py",
      "scriptSha256": "d54934cedb47b6540153bdda7b7d43816fe13d848e7192e0d8c848939de9e9ba",
      "recordedOn": "2026-10-10",
      "method": "ki-cheng-prusoff-competitive"
    }
  }
}
