{
  "name": "Critical Care Lab private preview",
  "wave": "03b",
  "generated": "2026-10-24",
  "status": "technical-preview-only",
  "clinicalValidation": false,
  "learnerDeploymentApproved": false,
  "storage": "Device-local only: progress, preferences and records live in each browser (localStorage) and are not synced, shared or backed up. No cloud database.",
  "deploymentAdapters": [
    {
      "path": "/modules/cockpit/k2v-0.9.13/config.js",
      "purpose": "Disable the local Workbench lookup and route available modules within this HTTPS preview.",
      "preservedReleaseFile": "/modules/cockpit/k2v-0.9.13/config.release.js"
    }
  ],
  "previousStagingPackage": "cloudflare-wave-03-staging",
  "statusAxes": {
    "technical": "Each lane ran its own tests, type check and seal for its Wave 03e release; the Packager checked this package over HTTP in headless Chrome emulation at 390 px and 1440 px. No Codex review of these releases. Technical status only; it does not imply the content is right.",
    "clinical": "NOT assessed. Content is AI-drafted and unreviewed by a clinician. No clinical value, threshold, dose or label was promoted. Simulation only, not for patient care.",
    "ownerReview": "Not yet reviewed by the owner. No build is designated stable. Cloudflare Access for the Worker is an open owner item."
  },
  "mediaNote": "Cardiac, CRRT and ECMO media folders are carried as in Wave 01 and Wave 02. CRRT and ECMO ship a CREDITS.md. The Cardiac media list and rights remain an open owner item (CARD-Q1); to exclude them, remove each module's media/ folder and rebuild.",
  "modules": [
    {
      "id": "cockpit",
      "name": "Cockpit",
      "revision": "platform/r120",
      "release": "k2v-0.9.13",
      "previousWave03Release": "k2v-0.9.12",
      "path": "modules/cockpit/k2v-0.9.13/",
      "files": 7,
      "bytes": 479571,
      "entrySha256": "f6c0cd6f353155c87ae19e9b72000f6c68fc0f15134fd915ada49077670014dc",
      "changedSincePreviousStaging": "Wave 03e: five Try-it interactives (guess first, PEEP handle on the bedside ventilator, heart ghost, drip what-if, Guyton handles), an Impella lab route, a reassessment timeline, a read-only device-context client and module report, the shared order schema and local feedback saved on the device. Presentation and engineering only; no clinical value changed.",
      "sourceDir": "C:/dev/CCL-Core-cockpit/releases/k2v-0.9.13",
      "fileHashes": [
        {
          "path": "assets/index-Cpr7tkdK.css",
          "sha256": "f6acf475352e5d6dadc918f8ed86a9ce3472f2a87816366145298e33bc54d1f1",
          "bytes": 52972
        },
        {
          "path": "assets/index-CWPZMiB4.js",
          "sha256": "bdb950d5afedb7c5cabbe4b224c3221a5bd857db07a9cdc5695ec999f965558b",
          "bytes": 423027
        },
        {
          "path": "BUILD.json",
          "sha256": "f6c93ee1257dcfce55fcc887e03e251195d826a6ccd82f8b8ada6c4cdc52ba8e",
          "bytes": 605
        },
        {
          "path": "config.js",
          "sha256": "b2eb45a0fe459c2962e9b6a56f556b2c0084681537f2d3b70798fadc0fa190dd",
          "bytes": 748,
          "sealedSha256": "2dd9130a52f14007c941a7b6a37f38f64657fd1fd7633cee78f1dbc75e4cc813",
          "adapter": true
        },
        {
          "path": "config.release.js",
          "sha256": "2dd9130a52f14007c941a7b6a37f38f64657fd1fd7633cee78f1dbc75e4cc813",
          "bytes": 1167,
          "preservedSealedCopy": true
        },
        {
          "path": "index.html",
          "sha256": "f6c0cd6f353155c87ae19e9b72000f6c68fc0f15134fd915ada49077670014dc",
          "bytes": 716
        },
        {
          "path": "SHA256SUMS.txt",
          "sha256": "da8165fbc872db33e1193e6afb4a8185390fdbdbc3023ba017cbd213b22080b8",
          "bytes": 336
        }
      ],
      "localReferencesInSealedBytes": [
        {
          "path": "config.release.js (sealed copy, not loaded)",
          "hits": [
            "100.122.",
            ":5180",
            "localhost",
            "127.0.0.1"
          ]
        }
      ]
    },
    {
      "id": "pharmacology",
      "name": "Pharmacology",
      "revision": "pharmacology/r023",
      "release": "pumpbay-0.5.17",
      "previousWave03Release": "pumpbay-0.5.16",
      "path": "modules/pharmacology/pumpbay-0.5.17/",
      "files": 5,
      "bytes": 567620,
      "entrySha256": "da96b61382e3289b705aeb1200913b3093748397d8ba30595f6e7875abb95a23",
      "changedSincePreviousStaging": "Wave 03e: orders and a medication record (request, place, hold and give scheduled doses), moving an infusion between lines, a start-dialog mode chooser, a setup check, and five interactives (run it forward, add a second drug, predict first, flow scene, dose-response curve). No clinical value, dose, threshold or target changed.",
      "sourceDir": "C:/dev/CCL-Core-pharmacology/releases/pumpbay-0.5.17",
      "fileHashes": [
        {
          "path": "assets/index-B3J7meB2.js",
          "sha256": "0232cdceb2a84598cd68cbd257fbced8734b826840317909fbe956cd7cf936db",
          "bytes": 498535
        },
        {
          "path": "assets/index-BH1D2l30.css",
          "sha256": "62c8a88a94174efd0dc1902aa85036dd6831e1584af8bf40cb097da4279a42f6",
          "bytes": 67325
        },
        {
          "path": "BUILD.json",
          "sha256": "d1dba1aed0a81124abf22500f1051574c2b2a22d5692ca76012f0b124f9c8079",
          "bytes": 749
        },
        {
          "path": "index.html",
          "sha256": "da96b61382e3289b705aeb1200913b3093748397d8ba30595f6e7875abb95a23",
          "bytes": 751
        },
        {
          "path": "SHA256SUMS.txt",
          "sha256": "99b4b58574aa8413ee93d0e5288b7121ed3f6f7abc91e4b6e802f0ae127fe812",
          "bytes": 260
        }
      ],
      "localReferencesInSealedBytes": []
    },
    {
      "id": "airway",
      "name": "Airway",
      "revision": "airway/r032",
      "release": "v0.14.2-wave03e.2",
      "previousWave03Release": "v0.14.1-wave03c.1",
      "path": "modules/airway/v0.14.2-wave03e.2/",
      "files": 2,
      "bytes": 604359,
      "entrySha256": "c4fc6547c76d259dfe58ee2d37b93f876aeb101e376b9c3f1384433ca0895f44",
      "changedSincePreviousStaging": "Wave 03e: arterial-line what-if changes, a different preparation device or position part-way through preparation, and a \"Hints, one step at a time\" panel in the debrief; a phone label fix (.2). Engine unchanged; no clinical value changed.",
      "sourceDir": "C:/dev/Airway-Management-Lab/releases/v0.14.2-wave03e.2",
      "fileHashes": [
        {
          "path": "BUILD.json",
          "sha256": "73814a4d2d46fab422b3236377320942fb5bc21f98a4ca3114932b78120f780b",
          "bytes": 592
        },
        {
          "path": "index.html",
          "sha256": "c4fc6547c76d259dfe58ee2d37b93f876aeb101e376b9c3f1384433ca0895f44",
          "bytes": 603767
        }
      ],
      "localReferencesInSealedBytes": []
    },
    {
      "id": "cardiac",
      "name": "Cardiac POCUS",
      "revision": "cardiac/r036",
      "release": "v0.8.1-lightbox-focus",
      "previousWave03Release": "v0.8.1-lightbox-focus",
      "path": "modules/cardiac/v0.8.1-lightbox-focus/",
      "files": 7,
      "bytes": 2525821,
      "entrySha256": "7335ec4b7e405922038d0826b631bb27bc28b21aa3935692c7f0e737632cfc5f",
      "changedSincePreviousStaging": "Unchanged since the previous staging package: the same release, byte-identical.",
      "sourceDir": "C:/dev/Cardiac-POCUS-Lab/99_RELEASES/v0.8.1-lightbox-focus/app",
      "fileHashes": [
        {
          "path": "assets/index-BVE6j9Mf.js",
          "sha256": "58df93776edc40b053620155ee5261a2c0e55f284b283ed502e05c0fe6323751",
          "bytes": 651391
        },
        {
          "path": "assets/index-Cx1ad1g0.css",
          "sha256": "2cfdd1d8052895526c57430db40abc9159c053f1d779f988a9b17f79bc2efd5c",
          "bytes": 54510
        },
        {
          "path": "assets/worker-CM6eWrDB.js",
          "sha256": "798adf21e9181fe12db430a2581d4e17211b0c4004e8a636eee8f0fb2a0d387d",
          "bytes": 25359
        },
        {
          "path": "index.html",
          "sha256": "7335ec4b7e405922038d0826b631bb27bc28b21aa3935692c7f0e737632cfc5f",
          "bytes": 549
        },
        {
          "path": "media/image2.png",
          "sha256": "3b922da0d2187771122b4923d423f8aa85c85c43f0667dee849399152c2bf86c",
          "bytes": 39781
        },
        {
          "path": "media/image23.png",
          "sha256": "6c5f26c511379f5393605d4bb352871b40b7d0aaaed2cd916216908eab8287b4",
          "bytes": 88810
        },
        {
          "path": "media/image30.gif",
          "sha256": "4b04fd9e90e3bfd0e54dcc36f28b6ef43a07167f86bf06f8e188086af087f5ff",
          "bytes": 1665421
        }
      ],
      "localReferencesInSealedBytes": []
    },
    {
      "id": "crrt",
      "name": "CRRT",
      "revision": "crrt/r029",
      "release": "p0.26.0",
      "previousWave03Release": "p0.25.3",
      "path": "modules/crrt/p0.26.0/",
      "files": 16,
      "bytes": 1230850,
      "entrySha256": "9205c1215a9e50b7e809449169f1cfa7cdb88c3d1feaa4555bf1517a7daefce5",
      "changedSincePreviousStaging": "Wave 03e: time-lapse what-if, predict-then-reveal in both explorers, a blood pump knob (select, turn, confirm) and bag look-ahead, a stops-and-holds timeline, fluid-compartment and bath-and-dose explorers, larger phone targets. No clinical number, threshold, dose or scoring changed.",
      "sourceDir": "C:/dev/CRRT-Lab/releases/p0.26.0",
      "fileHashes": [
        {
          "path": "BUILD.json",
          "sha256": "e037f681f52d51f87c67c16c9b005b53947c3fef1eac24d98cabd04a29fd8453",
          "bytes": 3733
        },
        {
          "path": "index.html",
          "sha256": "9205c1215a9e50b7e809449169f1cfa7cdb88c3d1feaa4555bf1517a7daefce5",
          "bytes": 278603
        },
        {
          "path": "media/CREDITS.md",
          "sha256": "1780465d69736964cc8cd2ebbc91a89a9dc1a0b22cdb1590d9505d03038dcaaf",
          "bytes": 4774
        },
        {
          "path": "media/crrt-blood-vs-dialysate.jpg",
          "sha256": "da3ca0669b091a886ad8eaa12ce869d3db3ccc4affc86a830786c2f89cf1c75d",
          "bytes": 41684
        },
        {
          "path": "media/crrt-catheter.jpg",
          "sha256": "b17962d30a2934967931a47d7dd891dcacbd282eaa7825d56d8fae9fcc64c9ce",
          "bytes": 49073
        },
        {
          "path": "media/crrt-circuit-cvvhdf.jpg",
          "sha256": "6cd5f7cc1fe183a3d92d8a2eadfeb84d30de523f4cdd6264f55b21fa5c781d39",
          "bytes": 55481
        },
        {
          "path": "media/crrt-cvvhdf-diagram.jpg",
          "sha256": "d06338fdf360f4616fcc96286f56073600c82163659509f212f3b6a9fdf4132a",
          "bytes": 55861
        },
        {
          "path": "media/crrt-dialysis-vs-uf.jpg",
          "sha256": "6b84d78e348e5d80bb26d668831622f207d0de4dfaafe6f8711b44ea6cd4d878",
          "bytes": 14171
        },
        {
          "path": "media/crrt-diffusion.jpg",
          "sha256": "a10d34e9f804ea3798127aee3f992ebfbba6a8d7dadcf7fef02481c084dbdb77",
          "bytes": 54793
        },
        {
          "path": "media/crrt-hyperkalaemia-algorithm.jpg",
          "sha256": "25405d2756f8d7d0a72565768fc22ba7ede20b358c18a88690f5b21189cab465",
          "bytes": 112257
        },
        {
          "path": "media/crrt-modalities.jpg",
          "sha256": "a1a7c83d0324df8678aa42d8d941b1628cc026992da6f76ea646943f44f808a2",
          "bytes": 103802
        },
        {
          "path": "media/crrt-nxstage-bedside.jpg",
          "sha256": "ad5389ba99647b4edce9114a9ee26e6984fd5916ead7b6411b0c4dc748e0eee5",
          "bytes": 57019
        },
        {
          "path": "media/crrt-onepage-lab.svg",
          "sha256": "4d3ffa4a09098b04f18a4107620ddeaff94d7a88395d8762d190147aeb0fdcfb",
          "bytes": 15443
        },
        {
          "path": "media/crrt-onepager-rrt.jpg",
          "sha256": "f5181e619b247be7f22ca8d06e4a3730f0cca6afc2644ae8fca7ce5733550bfc",
          "bytes": 314317
        },
        {
          "path": "media/crrt-prismax-screen.jpg",
          "sha256": "0de3d8369e75a311d2e077bc361c4ea807c112faa4b7fa059cc5d20d3a9f748b",
          "bytes": 62166
        },
        {
          "path": "media/gallery.json",
          "sha256": "9331c06b6dff75c8ca4b9a42ee6720c47aa67d8305326e661e40feb93c84e11c",
          "bytes": 7673
        }
      ],
      "localReferencesInSealedBytes": []
    },
    {
      "id": "ecmo",
      "name": "ECMO",
      "revision": "ecmo/r027",
      "release": "p0.6.19",
      "previousWave03Release": "p0.6.18",
      "path": "modules/ecmo/p0.6.19/",
      "files": 14,
      "bytes": 1201218,
      "entrySha256": "40e1a7160fa5ec505fef1acd9a633bfb95e7415fef22ce0b51f496893e819c43",
      "changedSincePreviousStaging": "Wave 03e: the gas line as a fifth scene part with a one-check card, \"Replay the case\" in the debrief, and a read-only strip from the shared device context. Physiology, constants, cases and scoring unchanged; no constant promoted.",
      "sourceDir": "C:/dev/ECMO-Physiology-Lab/releases/p0.6.19",
      "fileHashes": [
        {
          "path": "BUILD.json",
          "sha256": "442f47fa09a606373f11ef0b1d5b782aa892413523f4cfde5e5e79640a99d715",
          "bytes": 4310
        },
        {
          "path": "index.html",
          "sha256": "40e1a7160fa5ec505fef1acd9a633bfb95e7415fef22ce0b51f496893e819c43",
          "bytes": 301142
        },
        {
          "path": "media/CREDITS.md",
          "sha256": "7a46bbeaf162febc244195af41e4fc1cfcbb2459482303c8ed849d758c3ee415",
          "bytes": 3437
        },
        {
          "path": "media/ecmo-bedside-lisbon.jpg",
          "sha256": "24891e37aa752742379d27e61638c3c7c5f53ef63c5a337885d55f1baaa42615",
          "bytes": 223293
        },
        {
          "path": "media/ecmo-cart-heater.jpg",
          "sha256": "486dbe759e1bf1263759edf9239626aabd25a4d0cf217135e9ed53c1ac5229d5",
          "bytes": 77155
        },
        {
          "path": "media/ecmo-clamping-class.jpg",
          "sha256": "b7af4500fde449c589a4c598f5d905a0028b6d10bc2ffba4f263a301524a1344",
          "bytes": 185799
        },
        {
          "path": "media/ecmo-differential-hypoxia.jpg",
          "sha256": "2322c9c574d7d5031ad5cacb9f0513940a5061b68117a853b3aa43dc93421436",
          "bytes": 30379
        },
        {
          "path": "media/ecmo-femoral-va.jpg",
          "sha256": "6a1a90dbfcc5751554479c08b3518b0e9a0cba4b3eefe06d8838686459fb4932",
          "bytes": 38968
        },
        {
          "path": "media/ecmo-oxygenator.jpg",
          "sha256": "e1d680e14d46a6bfaf2e6b54f31e99d95a7798cef37d1a01687f3afbe6d5d034",
          "bytes": 192282
        },
        {
          "path": "media/ecmo-va-configurations.jpg",
          "sha256": "86afaa03afd8f5a4667df308b89489314e9ca618ac864c876a8d7be5f961e198",
          "bytes": 54390
        },
        {
          "path": "media/ecmo-vv-configurations.jpg",
          "sha256": "cb05d66439d402393b933ed5c492ba44884f1b67ae7c4c4a91d54bbeb3c7913b",
          "bytes": 33022
        },
        {
          "path": "media/gallery.json",
          "sha256": "5c7c1cba5ddb9b6c076f6dbe845eb201748d0f1d5ef2451f9149eafe7105e28a",
          "bytes": 5558
        },
        {
          "path": "media/mcs-device-overview.jpg",
          "sha256": "72701feb19006b762dc181201d587d888c8194f372a166b4bddc9e7082f96d74",
          "bytes": 37668
        },
        {
          "path": "media/mcs-support-capacity.jpg",
          "sha256": "73ac1df893083e6906603a8b2f30f0e848238b0409653314a911b5db040d3346",
          "bytes": 13815
        }
      ],
      "localReferencesInSealedBytes": []
    },
    {
      "id": "ventilator",
      "name": "Ventilator",
      "revision": "ventilator/r031",
      "release": "v0.9.2",
      "previousWave03Release": "v0.9.0",
      "path": "modules/ventilator/v0.9.2/",
      "files": 2,
      "bytes": 364045,
      "entrySha256": "0b8f4096a61e785a4c1aa16546c9af26506f07cbe19f8e194d1fbc8ba1759a2f",
      "changedSincePreviousStaging": "Wave 03e: \"Guess before Apply\" (off by default, Learn and Deep) and six drawn handles on the Try it curves. Engine, formulas and content unchanged.",
      "sourceDir": "C:/dev/Ventilator-Physiology-Lab/releases/v0.9.2",
      "fileHashes": [
        {
          "path": "BUILD.json",
          "sha256": "2ea32eda5420de8b3708f6100101c7386f79b651b8e1b91bf9563a8d06c9e885",
          "bytes": 1970
        },
        {
          "path": "index.html",
          "sha256": "0b8f4096a61e785a4c1aa16546c9af26506f07cbe19f8e194d1fbc8ba1759a2f",
          "bytes": 362075
        }
      ],
      "localReferencesInSealedBytes": [
        {
          "path": "BUILD.json",
          "hits": [
            "file://"
          ]
        }
      ]
    }
  ],
  "exclusions": [
    {
      "what": "Impella v0.7.12-static",
      "why": "Its 46 JPEG and 3 PNG figures have no recorded rights, and the mean-flow-cap draft was parked after failing a test. Excluded until the media rights are recorded. No newer rights note exists on disk."
    },
    {
      "what": "VExUS and Hemodynamics v0.28.1 standalones",
      "why": "Each embeds JPEG data URIs (53 and 28) with no recorded rights. Excluded until rights are recorded."
    },
    {
      "what": "ECG",
      "why": "Carries a licensed recording whose cloud-use terms are not recorded; learner launch is disabled. Excluded."
    },
    {
      "what": "Workbench",
      "why": "Depends on local disk scanning; not a cloud-static portal and has no numbered release. Excluded."
    },
    {
      "what": "Labs, Radiology, Resuscitation, Forge",
      "why": "No rights or cloud note allowing transmission is recorded; Labs identity is unresolved and Forge is not opened. Excluded with reason."
    }
  ]
}
