From 57e2897d69941a1de296df506e523840e0432abd Mon Sep 17 00:00:00 2001 From: magnaprog <132261408+magnaprog@users.noreply.github.com> Date: Wed, 1 Jul 2026 22:30:49 -0700 Subject: [PATCH 1/3] fix: update msgpack and jupyterlab locks for security advisories msgpack 1.2.0 to 1.2.1 resolves GHSA-6v7p-g79w-8964 (high: out-of-bounds read / crash on Unpacker reuse after a caught error); msgpack ships in the runtime container via the brokers extra. jupyterlab 4.5.8 to 4.6.1 resolves GHSA-vmhf-c436-hxj4 (medium: stored XSS in the extension manager) and pulls its dev-stack companions notebook 7.6.0 and jupyter-builder 1.0.2; these are development tooling only and are not packaged or shipped. Lock-level update only (neither package is a direct dependency); requirements exports regenerated with the pinned Poetry toolchain. Paper and expansion artifacts are regenerated in the follow-up commits because poetry.lock is a release-critical fingerprinted input. --- poetry.lock | 188 ++++++++++++++++++++---------------- requirements/brokers.lock | 2 +- requirements/dev.lock | 5 +- requirements/notebooks.lock | 5 +- requirements/runtime.lock | 2 +- 5 files changed, 112 insertions(+), 90 deletions(-) diff --git a/poetry.lock b/poetry.lock index 8cd91f3..9a8734e 100644 --- a/poetry.lock +++ b/poetry.lock @@ -2544,6 +2544,26 @@ jupyterlab = "*" nbconvert = "*" notebook = "*" +[[package]] +name = "jupyter-builder" +version = "1.0.2" +description = "JupyterLab build tools" +optional = false +python-versions = ">=3.10" +groups = ["dev"] +files = [ + {file = "jupyter_builder-1.0.2-py3-none-any.whl", hash = "sha256:b024f65d36e1d530542db597b00dd513261aa59842e0d0fbbb1015a9f1935e9c"}, + {file = "jupyter_builder-1.0.2.tar.gz", hash = "sha256:6155d78a5325010532a6419ffcba89eac643fd1aa56ea83115e661924d6f6aab"}, +] + +[package.dependencies] +jupyter-core = "*" +traitlets = "*" + +[package.extras] +dev = ["build", "hatch", "mypy", "pre-commit", "ruff (==0.15.11)"] +test = ["copier (>=9.3,<10)", "coverage", "jinja2-time", "pytest (>=7.0)", "pytest-check-links (>=0.7)", "pytest-cov"] + [[package]] name = "jupyter-client" version = "8.9.1" @@ -2715,14 +2735,14 @@ test = ["jupyter-server (>=2.0.0)", "pytest (>=7.0)", "pytest-jupyter[server] (> [[package]] name = "jupyterlab" -version = "4.5.8" +version = "4.6.1" description = "JupyterLab computational environment" optional = false -python-versions = ">=3.9" +python-versions = ">=3.10" groups = ["dev"] files = [ - {file = "jupyterlab-4.5.8-py3-none-any.whl", hash = "sha256:7d514c856d0d607601ec7692374da4f26e2aaf3b6e7cd363136b422a50588d6c"}, - {file = "jupyterlab-4.5.8.tar.gz", hash = "sha256:af54d7242cc689a1e6c3ad213cc9b6d9781787d9ec67c52ec9a8f4707088cadd"}, + {file = "jupyterlab-4.6.1-py3-none-any.whl", hash = "sha256:85a58546c831f3dce6cf919468c26874c9065e99c42279fb4abb8e1b552a98bb"}, + {file = "jupyterlab-4.6.1.tar.gz", hash = "sha256:75315982ed28427edaa62bb85eadb5105e4043a757643c910efd787fe6ed0837"}, ] [package.dependencies] @@ -2730,21 +2750,20 @@ async-lru = ">=1.0.0" httpx = ">=0.25.0,<1" ipykernel = ">=6.5.0,<6.30.0 || >6.30.0" jinja2 = ">=3.0.3" +jupyter-builder = ">=1.0.2" jupyter-core = "*" jupyter-lsp = ">=2.0.0" -jupyter-server = ">=2.4.0,<3" +jupyter-server = ">=2.19.0,<3" jupyterlab-server = ">=2.28.0,<3" notebook-shim = ">=0.2" packaging = ">=23.2" -setuptools = ">=41.1.0" tornado = ">=6.2.0" traitlets = "*" [package.extras] -dev = ["build", "bump2version", "coverage", "hatch", "pre-commit", "pytest-cov", "ruff (==0.11.12)"] -docs = ["jsx-lexer", "myst-parser", "pydata-sphinx-theme (>=0.13.0)", "pytest", "pytest-check-links", "pytest-jupyter", "sphinx (>=1.8,<8.2.0)", "sphinx-copybutton"] -docs-screenshots = ["altair (==6.0.0)", "ipython (==8.16.1)", "ipywidgets (==8.1.5)", "jupyterlab-geojson (==3.4.0)", "jupyterlab-language-pack-zh-cn (==4.3.post1)", "matplotlib (==3.10.0)", "nbconvert (>=7.0.0)", "pandas (==2.2.3)", "scipy (==1.15.1)"] -test = ["coverage", "pytest (>=7.0)", "pytest-check-links (>=0.7)", "pytest-console-scripts", "pytest-cov", "pytest-jupyter (>=0.5.3)", "pytest-timeout", "pytest-tornasync", "requests", "requests-cache", "virtualenv"] +dev = ["build", "bump2version", "coverage", "hatch", "pre-commit", "pytest-cov", "ruff (==0.15.15)", "shellcheck-py"] +docs-screenshots = ["altair (==6.0.0)", "ipykernel (<7.0)", "ipython (==8.16.1)", "ipywidgets (==8.1.5)", "jupyterlab-geojson (==3.4.0)", "jupyterlab-language-pack-zh-cn (==4.3.post1)", "matplotlib (==3.10.0)", "nbconvert (>=7.0.0)", "pandas (==2.2.3)", "scipy (==1.15.1)"] +test = ["coverage", "pytest (>=7.0)", "pytest-check-links (>=0.7)", "pytest-console-scripts", "pytest-cov", "pytest-jupyter (>=0.5.3)", "pytest-timeout", "pytest-tornasync", "pytest-xdist", "requests", "requests-cache", "virtualenv"] upgrade-extension = ["copier (>=9,<10)", "jinja2-time (<0.3)", "pydantic (<3.0)", "pyyaml-include (<3.0)", "tomli-w (<2.0)"] [[package]] @@ -3393,79 +3412,79 @@ tests = ["pytest (>=4.6)"] [[package]] name = "msgpack" -version = "1.2.0" +version = "1.2.1" description = "MessagePack serializer" optional = true python-versions = ">=3.10" groups = ["main"] markers = "extra == \"brokers\" or extra == \"all\"" files = [ - {file = "msgpack-1.2.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ed8c9495a0f12d17a2b4b69e23f895b88f26aabe40911c86594d3fbddecfff08"}, - {file = "msgpack-1.2.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d7384859c90b45a28a4b31aa50b49cca84504c9f27df459cea6e072627650dcb"}, - {file = "msgpack-1.2.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:63b35e8e65f04ff7ad5c9c70885da587c74f51e4b4eb3db624eac6d250e8cf59"}, - {file = "msgpack-1.2.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9004c5a02acd3eca4e15e1ae7b461c32e3711105a28b1ad78be2f6facff4c523"}, - {file = "msgpack-1.2.0-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:7e2032dacb0a973fcbf7bd088415a369dae31c5af40e199d234806be22e86765"}, - {file = "msgpack-1.2.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:c1feb100651fbe4b39826207cb20af065dfbfbfa43b1bafd7eaa2252abf7acfd"}, - {file = "msgpack-1.2.0-cp310-cp310-musllinux_1_2_riscv64.whl", hash = "sha256:82487709d4c597d252311a65370220675fb1cc859e7da9269a3060c03ac02cf6"}, - {file = "msgpack-1.2.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:0268c67a74f5f913f545a0fdbbfaa3f6ebcf23b4c3209bb99704a2ea87e13f90"}, - {file = "msgpack-1.2.0-cp310-cp310-win32.whl", hash = "sha256:7df87173b0e13ddd134919731f13525dbbf75204145597decf1cb86887ebb492"}, - {file = "msgpack-1.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:6371edb47788fbfd8a22016f9a97b5616dd9849bc50abcbb8e82d38f71efa096"}, - {file = "msgpack-1.2.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ec35cd3f127f50806aa10c3f74bf27b749f13ddf1d2217964ada8f38042d1653"}, - {file = "msgpack-1.2.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:317eb298297121bfad9173d748124a04a36af27b6ac39c2bbc1db1ce57608dcf"}, - {file = "msgpack-1.2.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:50fe6434de89073273026dd032a62e8b63f8857a261d7a2df5b07c9e72f3a8f7"}, - {file = "msgpack-1.2.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:106c6d333ff3d4eda075b7d4b9695d1752c5bcc635e40d0dbaf4e276c9ed80e1"}, - {file = "msgpack-1.2.0-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:67055a611e871cb1bd0acb732f2e9f64ca8155ca0bba1d0a5bb362e7209e5541"}, - {file = "msgpack-1.2.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:ceec7f8e633d5a4b4a32b0416bef90ee3cd1017ea36247f705e523072e576119"}, - {file = "msgpack-1.2.0-cp311-cp311-musllinux_1_2_riscv64.whl", hash = "sha256:7ec5851160a3c2c0f77d68ddec620318cd8e7d88d94f9c058190e8ce0dfa1d31"}, - {file = "msgpack-1.2.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:dd7140f7b09dbe1984a0dff3189375d840247e3e4cf4ac45c5a499b3b599c8d2"}, - {file = "msgpack-1.2.0-cp311-cp311-win32.whl", hash = "sha256:cbfd54018d386da0951c7a2be13de0f58559d251313e613b2155e52ed1cbd8f1"}, - {file = "msgpack-1.2.0-cp311-cp311-win_amd64.whl", hash = "sha256:653373c4614c31463ba486a67776e4bb396af289921bd5353e209534b71467fa"}, - {file = "msgpack-1.2.0-cp311-cp311-win_arm64.whl", hash = "sha256:7a260aea1e5e7d6c7f1d9284c7360d29021627b61dc4dd7df144b81210810537"}, - {file = "msgpack-1.2.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:e2d6047ccd11a12c96a69f2bfe026471abef67334c3d0494a93e5310e45140a2"}, - {file = "msgpack-1.2.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0347e3ac0dfee99086d3b68fe959da3f5f657c0019ddbaeaaa259a85f8603422"}, - {file = "msgpack-1.2.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:25552ff1f2ff3dc8333e27eabb94f702da5929ed0e07969688194a3e9f12e151"}, - {file = "msgpack-1.2.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a0d94420d9d52c56568159a69200af7e45eadb29615fa9d09fada140de1c38c7"}, - {file = "msgpack-1.2.0-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:d16e1f2db4a9eebc07b7cc91898d71e710f2eed8358711a605fee802caff8923"}, - {file = "msgpack-1.2.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:e9cb2e700e85f1e27bbb5c9de6cc1c9a4bc5ac64d5404bdcbcb37a0dc7a947a3"}, - {file = "msgpack-1.2.0-cp312-cp312-musllinux_1_2_riscv64.whl", hash = "sha256:717d0b166dd176a5f786aeafff081f6439680acf5af193eb63e6266c12b04d3d"}, - {file = "msgpack-1.2.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:e87c7a21654d18111eb1a89bd5c42baba42e61887365d9e89585e112b4203f9e"}, - {file = "msgpack-1.2.0-cp312-cp312-win32.whl", hash = "sha256:967e0c891f5f23ab65762f2e5dc95922759c79f1ef99ef4c7e1fdd863e0d0af9"}, - {file = "msgpack-1.2.0-cp312-cp312-win_amd64.whl", hash = "sha256:6c23e33cee28dcffa112ae205661da4636fd7b06bd9ad1559a890623b92d060b"}, - {file = "msgpack-1.2.0-cp312-cp312-win_arm64.whl", hash = "sha256:6eeb771571f63f68045433b1a35c0256b946f31ed62f006997e40b8ad8b735af"}, - {file = "msgpack-1.2.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:3a1d30df1f302f2b7a7404afbac2ab76d510036c34cf34dffb01f704a7288e45"}, - {file = "msgpack-1.2.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:581e317112260d8ca488d490cad9290a5682276f309c41c7de237a85ed8799c8"}, - {file = "msgpack-1.2.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c6827d12eacc16873eba62408a1b7bbe8ecfb4a8f7ed78a631ae9bae6ad43cf2"}, - {file = "msgpack-1.2.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a186027e4279efa4c8bf06ce30605498d7d0d3af0fba0b9799dce85a3fd4a93c"}, - {file = "msgpack-1.2.0-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:a96142c14a11cf1a509e8b9aaf72858a3b742b7613e095ce646913e88ce7bd99"}, - {file = "msgpack-1.2.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:50c220579b68a6085b95408b2eaa486b259520f55d8e363ddc9b5d7ba5a6ac6d"}, - {file = "msgpack-1.2.0-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:4dcb9d12ab100ecacdfaaf37a3d72fe8392eacc7054afc1916b12d1b747c8446"}, - {file = "msgpack-1.2.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:a804727188ab0ebb237fadb303b743f04925a69d8c3247292d1e33e679767c15"}, - {file = "msgpack-1.2.0-cp313-cp313-win32.whl", hash = "sha256:1a1ac6ae1fe23298f79380e7b144c8a454e5d05616b0096584f353ba2d750114"}, - {file = "msgpack-1.2.0-cp313-cp313-win_amd64.whl", hash = "sha256:1c3c80949d79578f9dc85fd9fb91edfe6694e8a729cd5744634d59d8455fdde3"}, - {file = "msgpack-1.2.0-cp313-cp313-win_arm64.whl", hash = "sha256:fcf8f76fa587c2395fd0057c7232dbf071241f9ad280b235adb7ab585289989e"}, - {file = "msgpack-1.2.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:f854fa1a8b55d75d82ef9a905d9cdbeffdf7897c088f6020bd221867da5e56a5"}, - {file = "msgpack-1.2.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:e90df581f80f53b372d5d9d9349078d729851a3a0d0bd74f53ccb598d01e45b8"}, - {file = "msgpack-1.2.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b276ed50d8ac75d1f134a433ae79af8557d0fa25ee5b4737da533dfc2ce382e8"}, - {file = "msgpack-1.2.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:544d972459c92aa32e63b800d07c2d9cf2734a3be29cee3a0b478a622850e9f5"}, - {file = "msgpack-1.2.0-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:a070147cc2cf6b8a891734e0f5c8fe8f70ed8739ab30ba140b058005a6e86af4"}, - {file = "msgpack-1.2.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:7685e23b0f51745a751629c31713fbefdef8896b31b2bb38299dfa4ae6c0740c"}, - {file = "msgpack-1.2.0-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:b9204daeee8d91a7ae5acf2d2a8e3983be9a3025f38aa21bfaefbd7eea84a7dc"}, - {file = "msgpack-1.2.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:bfc057248609742ebbabf6bcd27fea4fd99c4980584e613c168c9b002318298f"}, - {file = "msgpack-1.2.0-cp314-cp314-win32.whl", hash = "sha256:a3faa7edf2388337ae849239878e92f0298b4dab4488e4f1834062f9d0c410c9"}, - {file = "msgpack-1.2.0-cp314-cp314-win_amd64.whl", hash = "sha256:1a3effc392a57744e4681e55d05f97d5ee7b598747d718340a9b4b8a970c40e1"}, - {file = "msgpack-1.2.0-cp314-cp314-win_arm64.whl", hash = "sha256:56a318f7df6bec7b40928d6b0519961f20a510d8baabf6baa393a70444588f0a"}, - {file = "msgpack-1.2.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:afa4a65ab2097795e771a74a3a81ea49534aaeba874eaf426a3332268e045ae6"}, - {file = "msgpack-1.2.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:409550770632bb28daa70a11d0ed5763f7db38f40b06f7db9f11dd2794d01102"}, - {file = "msgpack-1.2.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:bf47e3cd11ce044965a9736a322afdd390b31ed602d1c1b10211d1a841f1d587"}, - {file = "msgpack-1.2.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:204bc9f5d6e59c1718c0a4a84fc8ff71b5b4562faac257c1a68bca611ecf9b72"}, - {file = "msgpack-1.2.0-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:610154307b27267266368bc1d1c7bb8aeb71da7be9356d403cb2442d9e6399f5"}, - {file = "msgpack-1.2.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:6799f157bb63e79f11e2e590cfdb28423fc18dd60c270c3914b5b4586ae36f7e"}, - {file = "msgpack-1.2.0-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:72bd844902cf0a5ac3af2ef742f253cd0b1e5bcd184f49b4fb9a6a1f7bf305e8"}, - {file = "msgpack-1.2.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:3c0bd450f78d0d81722c80da6cdbf674a856967870a9db2f6c4debc4d8b3c67c"}, - {file = "msgpack-1.2.0-cp314-cp314t-win32.whl", hash = "sha256:378caf74c4c718dfc17590ce68a6d710ed398ff6fcf08237de23b77755730b55"}, - {file = "msgpack-1.2.0-cp314-cp314t-win_amd64.whl", hash = "sha256:553b42598165c4dd3235994fd6e4b0dfb1ce5f3fd33d94ba9609442643015f38"}, - {file = "msgpack-1.2.0-cp314-cp314t-win_arm64.whl", hash = "sha256:2825bb1da548d214ab8a810906b7dd69a10f3838b615a2cc46e5172d3cb44f6e"}, - {file = "msgpack-1.2.0.tar.gz", hash = "sha256:8e17af38197bf58e7e819041678f6178f4491493f5b8c8580414f40f7c2c3c41"}, + {file = "msgpack-1.2.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:8c7b398c56ff125feae96c2737abfec5595f1fa0aa186df60c56040b8accb95c"}, + {file = "msgpack-1.2.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:1548006a91aa93c5da81f3bdcebc1a0d10cea2d25969754fbe848da622b2b895"}, + {file = "msgpack-1.2.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1dabedcd0f23559f3596428c6589c1cd8c6eaed3a0d720795b07b0225d769203"}, + {file = "msgpack-1.2.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:83efa1c898e0fc5380fc0cabbf75164c52e3b5cbb45973710d75821928380c73"}, + {file = "msgpack-1.2.1-cp310-cp310-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:01e2dd6c9b19d333a00282330cc8a73d38d8dabc306dc5b42cd668c3ac82e833"}, + {file = "msgpack-1.2.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:350cb813d0af6e65d2f7ef0d729f7ff5be5a8bce03665892f43e5883d4ecc1b8"}, + {file = "msgpack-1.2.1-cp310-cp310-musllinux_1_2_riscv64.whl", hash = "sha256:ee1d9ed27d0497b848923746cf762ed2e7db24f4be7eec8e5cbe8c766aa707b7"}, + {file = "msgpack-1.2.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:633727297ed063441fd1cda2288865487f33ad14eeb8831afb5f0c396a62cfce"}, + {file = "msgpack-1.2.1-cp310-cp310-win32.whl", hash = "sha256:298872ecf9e61950f1c6af4ca969b859ee91783bb920ef6e6172697d0c8aad74"}, + {file = "msgpack-1.2.1-cp310-cp310-win_amd64.whl", hash = "sha256:2ff164c1b0bcb740b073b99e945234d0212852fa378e44a208c425379140dbeb"}, + {file = "msgpack-1.2.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:29a3f6e9667868429d8240dfd063ea5ffdc1321c13d783aa23827a38de0dcb22"}, + {file = "msgpack-1.2.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:aded5bdf32609dc7987a49bbbd15a8ef096193f96dd8bbeb791de729e650acf5"}, + {file = "msgpack-1.2.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:146ee4e9ce80b365c6d4c47073da9da7bcec473e58194ceee5dd7620ace77e06"}, + {file = "msgpack-1.2.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a28d076ca7c82b9c8728ad90b7147489449557038bed50e4241eb832395169b4"}, + {file = "msgpack-1.2.1-cp311-cp311-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:7d31c0ac0c640f877804c67cb2bc9f4e23dc2db97e96c2e67fa27d38283b41f8"}, + {file = "msgpack-1.2.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:8ff92d7feeaf5bc26c51495b69e2f99ed97ab79346fb6555f44be7dd2ac6503b"}, + {file = "msgpack-1.2.1-cp311-cp311-musllinux_1_2_riscv64.whl", hash = "sha256:779197a6513bab3c3632265e3d0f7cb3227e62510841a6f34f1eaa37efbb345e"}, + {file = "msgpack-1.2.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:67f6dd22fa72a93752643f07889796d62739a13415ee630169a8ce764f86cf9f"}, + {file = "msgpack-1.2.1-cp311-cp311-win32.whl", hash = "sha256:91054a783328e0ea7954b8771095705c8d2243b814743fbaadf14552c9c52c5d"}, + {file = "msgpack-1.2.1-cp311-cp311-win_amd64.whl", hash = "sha256:2eda0b7ebb1283a98d3e4492ac933c8af6aff59fd3df1c3ed024f536af4b1dc8"}, + {file = "msgpack-1.2.1-cp311-cp311-win_arm64.whl", hash = "sha256:6ee967f7c7e1df2890c671ff2ee51a28ded0efc95da3e507176dee881ce36c66"}, + {file = "msgpack-1.2.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:2ef59c659f289eddf8aa6623823f19fa2f40a4029266889eac7a2505dd210c35"}, + {file = "msgpack-1.2.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d3567748a5107cb40cdf66a275430c2f87c07777698f4bfd25c35f44d533258c"}, + {file = "msgpack-1.2.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:60926b75d00c8e816ef98f3034f484a8bc64242d66839cef4cf7e503142316a0"}, + {file = "msgpack-1.2.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:020e881a764b20d8d7ca1a54fc01b8175519d108e3c3f194fddc200bda95951a"}, + {file = "msgpack-1.2.1-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:4202c74688ca06591f78cb18988228bd4cca2cc75d57b60008372892d2f1e6e6"}, + {file = "msgpack-1.2.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:8b267ce94efb76fbd1b3373511420074ee3187f0f7811bf394531de13294735a"}, + {file = "msgpack-1.2.1-cp312-cp312-musllinux_1_2_riscv64.whl", hash = "sha256:e4f1d0f8f98ade9634e01fb704a408f9336c0a8f1117b369f5db83dc7551d8b1"}, + {file = "msgpack-1.2.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:f02cf17a6ca1abe29b5f980644f7551f94d71f2011509b26d8625ce038f0df64"}, + {file = "msgpack-1.2.1-cp312-cp312-win32.whl", hash = "sha256:0c0d9802354507bcba62af19c17918e3eb437cc25e6f50657d511b5856a77aac"}, + {file = "msgpack-1.2.1-cp312-cp312-win_amd64.whl", hash = "sha256:5c24aa15d5963051e1a5c62b12c50cd705992502b5ec1f3bece6046f33c9fc24"}, + {file = "msgpack-1.2.1-cp312-cp312-win_arm64.whl", hash = "sha256:4227224aaec8f7fbcbfbd4272319347b2bb4030366502600f8c45588c5187b07"}, + {file = "msgpack-1.2.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:0a70e3cf2804a300d921bb0940426e35f4e489a23adfb77a808892241db0a064"}, + {file = "msgpack-1.2.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:491cc39455ca765fad51fb451bf2915eb2cf41192ab5801ce8d67c1d614fe056"}, + {file = "msgpack-1.2.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f310233ef7fb9c14e201c93639fe5f5260b005f56f0b29048e999c30935596cc"}, + {file = "msgpack-1.2.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:787c9bebb5833e8f6fc8abca3c0597683d8d87f56a8842b6b89c75a5f3176e2d"}, + {file = "msgpack-1.2.1-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:dc871b997a9370d855b7394465f2f350e847a5b806dd38dcc9c989e7d87da155"}, + {file = "msgpack-1.2.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:85f57e960d877f2977f6430896191b04a21f8901b3b4baf2e4604329f4db5402"}, + {file = "msgpack-1.2.1-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:1233ee2dd0cefba127583de50ea654677277047d238303521db35def3d7b2e7c"}, + {file = "msgpack-1.2.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:e3dc2feb0876209d9c38aa56cb1de169bd6c4348f1aa48271f241226590993e6"}, + {file = "msgpack-1.2.1-cp313-cp313-win32.whl", hash = "sha256:6d09badf350af2be9d189184e04e64cf54ad93569ab3d96fca58bd3e84aad707"}, + {file = "msgpack-1.2.1-cp313-cp313-win_amd64.whl", hash = "sha256:33f14fba63278b714efe6ad07e50ea5f03d91537aa6a1c5f1ceca4cf44013ca9"}, + {file = "msgpack-1.2.1-cp313-cp313-win_arm64.whl", hash = "sha256:afc5febcd4c99effbc02b528e49d6fd0760b2b7d48c05239e345a5fa6e743d9a"}, + {file = "msgpack-1.2.1-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:05f340e47e7e47d2da8db9b53e1bb1d294369e9ef45a747441309f6650b8351d"}, + {file = "msgpack-1.2.1-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:810b916696c86ef0deb3b74588480224df4c1b071136c34183e4a2a4284d7ac7"}, + {file = "msgpack-1.2.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ca0dacff965c47afdc3749a8469d7302a8f801d6a28758d55120d75e66ce6889"}, + {file = "msgpack-1.2.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0e2bf9280bceb5efca998435904b5d3e9fdbcc11d90dc9df30aec7973252b720"}, + {file = "msgpack-1.2.1-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:aa6c4be5d1c02a42b066ca6ddb71adf36432868fdcdb6ee87e634e86e0674190"}, + {file = "msgpack-1.2.1-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:ec0e675d59150a6269ddc9139087c722292664a37d071a849c05c473350f1f2d"}, + {file = "msgpack-1.2.1-cp314-cp314-musllinux_1_2_riscv64.whl", hash = "sha256:dd3bfe82d53edfe4b7fc9a7ec9761e23a7a5b1dac22264505af428253c29ed24"}, + {file = "msgpack-1.2.1-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:5ad5467fc3f68b5468e06c5f788d712e9f8ffc8b0cd1bcb160c105c1ee92dae7"}, + {file = "msgpack-1.2.1-cp314-cp314-win32.whl", hash = "sha256:98b58bdb89c46190e4609bb36abe17c6d4105ad13f9c5f8f6f64d320f8ced3fb"}, + {file = "msgpack-1.2.1-cp314-cp314-win_amd64.whl", hash = "sha256:74847557e28ce71bd3c438a447ca90e4b507e997ddbdef8a12a7b283b86c156b"}, + {file = "msgpack-1.2.1-cp314-cp314-win_arm64.whl", hash = "sha256:b50b727bd652bdc37d950336c848ef20ec54a4cafc38dce19b1cd86ad625d0f7"}, + {file = "msgpack-1.2.1-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:8d00f177ca88a77c1cf848d204a38f249751650b601cb6532acc68805d8a8273"}, + {file = "msgpack-1.2.1-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:5bb9c386f0a329c035ddbab4b72d1028bf9627add8dda41070288563d57ed1b1"}, + {file = "msgpack-1.2.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:20466cca18c49c7292a8984bc15d65857b171e7264bdcb5f96baf8be238791fc"}, + {file = "msgpack-1.2.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:196300e7e5d6e74d50f1607ab9c06c4a1484c383cd22defd727902591f7e8dde"}, + {file = "msgpack-1.2.1-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:575957e79cd51903a4e8495a242442949641e08f1efd5197b43bebd3ea7682b4"}, + {file = "msgpack-1.2.1-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:8c2ed1e48cc0f460bf3c7780e7137ff21a4e18433451916f2442c1b21036cd7d"}, + {file = "msgpack-1.2.1-cp314-cp314t-musllinux_1_2_riscv64.whl", hash = "sha256:5f6277e5f783c36786a145e0247fc189a03f35f84b251646e53592d2bc12b355"}, + {file = "msgpack-1.2.1-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:f9389552ecf4784886345ead0647e4edc96bee37cbab05b75540f542f766c48c"}, + {file = "msgpack-1.2.1-cp314-cp314t-win32.whl", hash = "sha256:c1c79a604a2969a868a78b6ebd27a887e00c624f14f66b3038e0590cb23332d1"}, + {file = "msgpack-1.2.1-cp314-cp314t-win_amd64.whl", hash = "sha256:f12038a35fabd52e56a3547bab42401af49a45caa6dd00b34c44de235bc93ee2"}, + {file = "msgpack-1.2.1-cp314-cp314t-win_arm64.whl", hash = "sha256:0adcf06ffde0777c0e1a9b771a2b1c4226ba1bbf748c8efcc02fcdeca3299107"}, + {file = "msgpack-1.2.1.tar.gz", hash = "sha256:04c721c2c7448767e9e3f2520a475663d8ee0f09c31890f6d2bd70fd636a9647"}, ] [[package]] @@ -3821,19 +3840,20 @@ test-extras = ["pytest-mpl", "pytest-randomly"] [[package]] name = "notebook" -version = "7.5.7" +version = "7.6.0" description = "Jupyter Notebook - A web-based notebook environment for interactive computing" optional = false -python-versions = ">=3.9" +python-versions = ">=3.10" groups = ["dev"] files = [ - {file = "notebook-7.5.7-py3-none-any.whl", hash = "sha256:1f95f79d117e47d20b5555b5c85a397d2cfecf136978aaab767cf0314b09165b"}, - {file = "notebook-7.5.7.tar.gz", hash = "sha256:d6d59288a25303b25e1dcb71e9b017ec3a785f7d92f38b9bc288ca1970d5b0a8"}, + {file = "notebook-7.6.0-py3-none-any.whl", hash = "sha256:98aa2811b54ac191321d5dfce12ca700f8a511a33a26e4de2fa106a357c43d6a"}, + {file = "notebook-7.6.0.tar.gz", hash = "sha256:ea13e79e601bf273074895fdfb17dd3f2da916d3c045e0b9c47d18b16ab62481"}, ] [package.dependencies] -jupyter-server = ">=2.4.0,<3" -jupyterlab = ">=4.5.8,<4.6" +jupyter-builder = ">=1.0.2,<2" +jupyter-server = ">=2.19.0,<3" +jupyterlab = ">=4.6.0,<4.7" jupyterlab-server = ">=2.28.0,<3" notebook-shim = ">=0.2,<0.3" tornado = ">=6.2.0" @@ -3841,7 +3861,7 @@ tornado = ">=6.2.0" [package.extras] dev = ["hatch", "pre-commit"] docs = ["myst-parser", "nbsphinx", "pydata-sphinx-theme", "sphinx (>=1.3.6)", "sphinxcontrib-github-alt", "sphinxcontrib-spelling"] -test = ["importlib-resources (>=5.0) ; python_version < \"3.10\"", "ipykernel", "jupyter-server[test] (>=2.4.0,<3)", "jupyterlab-server[test] (>=2.28.0,<3)", "nbval", "pytest (>=7.0)", "pytest-console-scripts", "pytest-timeout", "pytest-tornasync", "requests"] +test = ["ipykernel", "jupyter-server[test] (>=2.19.0,<3)", "jupyterlab-server[test] (>=2.28.0,<3)", "nbval", "pytest (>=7.0)", "pytest-console-scripts", "pytest-timeout", "pytest-tornasync", "requests"] [[package]] name = "notebook-shim" diff --git a/requirements/brokers.lock b/requirements/brokers.lock index ac7dc4c..4c28fd4 100644 --- a/requirements/brokers.lock +++ b/requirements/brokers.lock @@ -21,7 +21,7 @@ idna==3.18 ; python_version >= "3.11" and python_version < "3.15" joblib==1.5.3 ; python_version >= "3.11" and python_version < "3.15" kiwisolver==1.5.0 ; python_version >= "3.11" and python_version < "3.15" matplotlib==3.11.0 ; python_version >= "3.11" and python_version < "3.15" -msgpack==1.2.0 ; python_version >= "3.11" and python_version < "3.15" +msgpack==1.2.1 ; python_version >= "3.11" and python_version < "3.15" multidict==6.7.1 ; python_version >= "3.11" and python_version < "3.15" narwhals==2.22.1 ; python_version >= "3.11" and python_version < "3.15" nest-asyncio==1.6.0 ; python_version >= "3.11" and python_version < "3.15" diff --git a/requirements/dev.lock b/requirements/dev.lock index 0fe9dba..c3fa3d5 100644 --- a/requirements/dev.lock +++ b/requirements/dev.lock @@ -41,6 +41,7 @@ json5==0.14.0 ; python_version >= "3.11" and python_version < "3.15" jsonpointer==3.1.1 ; python_version >= "3.11" and python_version < "3.15" jsonschema-specifications==2025.9.1 ; python_version >= "3.11" and python_version < "3.15" jsonschema==4.26.0 ; python_version >= "3.11" and python_version < "3.15" +jupyter-builder==1.0.2 ; python_version >= "3.11" and python_version < "3.15" jupyter-client==8.9.1 ; python_version >= "3.11" and python_version < "3.15" jupyter-console==6.6.3 ; python_version >= "3.11" and python_version < "3.15" jupyter-core==5.9.1 ; python_version >= "3.11" and python_version < "3.15" @@ -52,7 +53,7 @@ jupyter==1.1.1 ; python_version >= "3.11" and python_version < "3.15" jupyterlab-pygments==0.3.0 ; python_version >= "3.11" and python_version < "3.15" jupyterlab-server==2.28.0 ; python_version >= "3.11" and python_version < "3.15" jupyterlab-widgets==3.0.16 ; python_version >= "3.11" and python_version < "3.15" -jupyterlab==4.5.8 ; python_version >= "3.11" and python_version < "3.15" +jupyterlab==4.6.1 ; python_version >= "3.11" and python_version < "3.15" kiwisolver==1.5.0 ; python_version >= "3.11" and python_version < "3.15" lark==1.3.1 ; python_version >= "3.11" and python_version < "3.15" markupsafe==3.0.3 ; python_version >= "3.11" and python_version < "3.15" @@ -65,7 +66,7 @@ nbconvert==7.17.1 ; python_version >= "3.11" and python_version < "3.15" nbformat==5.10.4 ; python_version >= "3.11" and python_version < "3.15" nest-asyncio2==1.7.2 ; python_version >= "3.11" and python_version < "3.15" notebook-shim==0.2.4 ; python_version >= "3.11" and python_version < "3.15" -notebook==7.5.7 ; python_version >= "3.11" and python_version < "3.15" +notebook==7.6.0 ; python_version >= "3.11" and python_version < "3.15" numpy==2.4.6 ; python_version >= "3.11" and python_version < "3.15" overrides==7.7.0 ; python_version == "3.11" packaging==26.2 ; python_version >= "3.11" and python_version < "3.15" diff --git a/requirements/notebooks.lock b/requirements/notebooks.lock index d846224..5ee2a85 100644 --- a/requirements/notebooks.lock +++ b/requirements/notebooks.lock @@ -39,6 +39,7 @@ json5==0.14.0 ; python_version >= "3.11" and python_version < "3.15" jsonpointer==3.1.1 ; python_version >= "3.11" and python_version < "3.15" jsonschema-specifications==2025.9.1 ; python_version >= "3.11" and python_version < "3.15" jsonschema==4.26.0 ; python_version >= "3.11" and python_version < "3.15" +jupyter-builder==1.0.2 ; python_version >= "3.11" and python_version < "3.15" jupyter-client==8.9.1 ; python_version >= "3.11" and python_version < "3.15" jupyter-console==6.6.3 ; python_version >= "3.11" and python_version < "3.15" jupyter-core==5.9.1 ; python_version >= "3.11" and python_version < "3.15" @@ -50,7 +51,7 @@ jupyter==1.1.1 ; python_version >= "3.11" and python_version < "3.15" jupyterlab-pygments==0.3.0 ; python_version >= "3.11" and python_version < "3.15" jupyterlab-server==2.28.0 ; python_version >= "3.11" and python_version < "3.15" jupyterlab-widgets==3.0.16 ; python_version >= "3.11" and python_version < "3.15" -jupyterlab==4.5.8 ; python_version >= "3.11" and python_version < "3.15" +jupyterlab==4.6.1 ; python_version >= "3.11" and python_version < "3.15" kiwisolver==1.5.0 ; python_version >= "3.11" and python_version < "3.15" lark==1.3.1 ; python_version >= "3.11" and python_version < "3.15" markupsafe==3.0.3 ; python_version >= "3.11" and python_version < "3.15" @@ -63,7 +64,7 @@ nbconvert==7.17.1 ; python_version >= "3.11" and python_version < "3.15" nbformat==5.10.4 ; python_version >= "3.11" and python_version < "3.15" nest-asyncio2==1.7.2 ; python_version >= "3.11" and python_version < "3.15" notebook-shim==0.2.4 ; python_version >= "3.11" and python_version < "3.15" -notebook==7.5.7 ; python_version >= "3.11" and python_version < "3.15" +notebook==7.6.0 ; python_version >= "3.11" and python_version < "3.15" numpy==2.4.6 ; python_version >= "3.11" and python_version < "3.15" overrides==7.7.0 ; python_version == "3.11" packaging==26.2 ; python_version >= "3.11" and python_version < "3.15" diff --git a/requirements/runtime.lock b/requirements/runtime.lock index 4861f6d..5e3cea0 100644 --- a/requirements/runtime.lock +++ b/requirements/runtime.lock @@ -30,7 +30,7 @@ lxml==6.1.1 ; python_version >= "3.11" and python_version < "3.15" markdown-it-py==4.2.0 ; python_version >= "3.11" and python_version < "3.15" matplotlib==3.11.0 ; python_version >= "3.11" and python_version < "3.15" mdurl==0.1.2 ; python_version >= "3.11" and python_version < "3.15" -msgpack==1.2.0 ; python_version >= "3.11" and python_version < "3.15" +msgpack==1.2.1 ; python_version >= "3.11" and python_version < "3.15" multidict==6.7.1 ; python_version >= "3.11" and python_version < "3.15" multitasking==0.0.13 ; python_version >= "3.11" and python_version < "3.15" narwhals==2.22.1 ; python_version >= "3.11" and python_version < "3.15" From dddead6351d956223e2c7aecf959dd2d93388be9 Mon Sep 17 00:00:00 2001 From: magnaprog <132261408+magnaprog@users.noreply.github.com> Date: Wed, 1 Jul 2026 22:40:12 -0700 Subject: [PATCH 2/3] fix: scope release cleanliness checks to release-critical paths The dual-release flow documented in CLAUDE.md (commit source once, run the expansion wrapper, then the paper wrapper, then commit generated artifacts) was unsatisfiable for changed release-critical source: the paper wrapper required a fully clean tracked tree AND an expansion manifest recording the current HEAD as its source commit. A committed manifest cannot record the commit that contains it, and running the expansion wrapper first leaves its regenerated artifacts uncommitted, which the full-tree check rejected. Both wrappers now scope their cleanliness checks to the release-critical source paths they already fingerprint. Generation happens in a detached worktree at the source commit, so artifact dirt in the working tree cannot corrupt a release; uncommitted generator, schema, lock, or TeX changes are still refused. This also makes each wrapper rerunnable after a failed partner run without reverting regenerated artifacts. --- scripts/release_expansion_artifacts.sh | 32 +++++++++------- scripts/release_paper_artifacts.sh | 52 ++++++++++++++------------ 2 files changed, 47 insertions(+), 37 deletions(-) diff --git a/scripts/release_expansion_artifacts.sh b/scripts/release_expansion_artifacts.sh index cdc8592..273ecdc 100755 --- a/scripts/release_expansion_artifacts.sh +++ b/scripts/release_expansion_artifacts.sh @@ -9,10 +9,25 @@ if [[ ! -x "${python_bin}" ]]; then printf '%s\n' "Python environment not found: ${python_bin}" >&2 exit 1 fi -if ! git -C "${repo_root}" diff --quiet || \ - ! git -C "${repo_root}" diff --cached --quiet; then +# Generation runs from a detached worktree at the source commit, so only +# uncommitted changes to release-critical source can corrupt a release. +# Scoping the cleanliness check to those paths keeps the wrapper rerunnable +# while regenerated artifacts sit uncommitted in the working tree. +release_source_paths=( + quantcortex + schemas/canonical_target_tape.schema.json + pyproject.toml + poetry.lock + paper/preregistration.md + paper/expansion/protocol.json + scripts/fetch_expansion_data.py + scripts/release_expansion_artifacts.sh + scripts/run_expansion_experiments.py +) +if ! git -C "${repo_root}" diff --quiet -- "${release_source_paths[@]}" || \ + ! git -C "${repo_root}" diff --cached --quiet -- "${release_source_paths[@]}"; then printf '%s\n' \ - "commit tracked source changes before releasing expansion artifacts" >&2 + "commit release-critical source changes before releasing expansion artifacts" >&2 exit 1 fi @@ -36,17 +51,6 @@ done current_commit="$(git -C "${repo_root}" rev-parse HEAD)" reviewed_manifest="${repo_root}/paper/expansion/results/manifest.json" -release_source_paths=( - quantcortex - schemas/canonical_target_tape.schema.json - pyproject.toml - poetry.lock - paper/preregistration.md - paper/expansion/protocol.json - scripts/fetch_expansion_data.py - scripts/release_expansion_artifacts.sh - scripts/run_expansion_experiments.py -) if [[ -n "${QUANTCORTEX_EXPANSION_GENERATED_AT:-}" ]]; then source_commit="${current_commit}" diff --git a/scripts/release_paper_artifacts.sh b/scripts/release_paper_artifacts.sh index 9bfa7b1..2470a77 100755 --- a/scripts/release_paper_artifacts.sh +++ b/scripts/release_paper_artifacts.sh @@ -9,10 +9,36 @@ if [[ ! -x "${python_bin}" ]]; then printf '%s\n' "Python environment not found: ${python_bin}" >&2 exit 1 fi -if ! git -C "${repo_root}" diff --quiet || \ - ! git -C "${repo_root}" diff --cached --quiet; then + +# Generation runs from a detached worktree at the source commit, so only +# uncommitted changes to release-critical source can corrupt a release. +# Scoping the cleanliness check to those paths lets the paper release run +# after the expansion wrapper has deposited regenerated artifacts in the +# working tree, which the documented dual-release flow requires. +release_source_paths=( + quantcortex + schemas + pyproject.toml + poetry.lock + scripts/build_paper.sh + scripts/generate_report.py + scripts/fetch_expansion_data.py + scripts/release_expansion_artifacts.sh + scripts/release_paper_artifacts.sh + scripts/run_expansion_experiments.py + scripts/run_paper_experiments.py + paper/main.tex + paper/anonymous.tex + paper/checklist.tex + paper/references.bib + paper/neurips_2026.sty + paper/preregistration.md + paper/expansion/protocol.json +) +if ! git -C "${repo_root}" diff --quiet -- "${release_source_paths[@]}" || \ + ! git -C "${repo_root}" diff --cached --quiet -- "${release_source_paths[@]}"; then printf '%s\n' \ - "commit tracked source changes before releasing paper artifacts" >&2 + "commit release-critical source changes before releasing paper artifacts" >&2 exit 1 fi @@ -88,26 +114,6 @@ else printf '%s\n' "reviewed source commit is unavailable" >&2 exit 1 fi - release_source_paths=( - quantcortex - schemas - pyproject.toml - poetry.lock - scripts/build_paper.sh - scripts/generate_report.py - scripts/fetch_expansion_data.py - scripts/release_expansion_artifacts.sh - scripts/release_paper_artifacts.sh - scripts/run_expansion_experiments.py - scripts/run_paper_experiments.py - paper/main.tex - paper/anonymous.tex - paper/checklist.tex - paper/references.bib - paper/neurips_2026.sty - paper/preregistration.md - paper/expansion/protocol.json - ) if ! git -C "${repo_root}" diff --quiet \ "${reviewed_source_commit}" "${current_commit}" -- \ "${release_source_paths[@]}"; then From c04004b9587edadad1b460c3f53a788a469adebd Mon Sep 17 00:00:00 2001 From: magnaprog <132261408+magnaprog@users.noreply.github.com> Date: Wed, 1 Jul 2026 22:53:47 -0700 Subject: [PATCH 3/3] docs: regenerate release artifacts for updated dependency locks Both releases regenerated from clean source commit dddead6 via the release wrappers (expansion first, then paper), with fixed UTC timestamps. Every economic CSV, figure, and target-tape hash is byte-identical to the prior release; the only content change in either PDF is the source-tree digest hex string in the reproducibility appendix (verified by pdftotext diff: one line per document). Manifests record the new source commit, clean worktree at start, and updated dependency-lock digest. --- docs/img/performance_manifest.json | 8 ++++---- paper/build_manifest.json | 10 +++++----- paper/expansion/results/manifest.json | 10 +++++----- paper/quantcortex_audit_anonymous.pdf | Bin 728819 -> 728812 bytes paper/quantcortex_audit_anonymous.sha256 | 2 +- paper/quantcortex_audit_neurips2026.pdf | Bin 730912 -> 730907 bytes paper/quantcortex_audit_neurips2026.sha256 | 2 +- ...antcortex_audit_neurips2026.sources.sha256 | 6 +++--- paper/results/generated_values.tex | 2 +- paper/results/manifest.json | 14 +++++++------- 10 files changed, 27 insertions(+), 27 deletions(-) diff --git a/docs/img/performance_manifest.json b/docs/img/performance_manifest.json index ecb5631..60f9f1f 100644 --- a/docs/img/performance_manifest.json +++ b/docs/img/performance_manifest.json @@ -1,18 +1,18 @@ { "schema_version": 4, - "generated_at": "2026-06-18T23:53:33Z", + "generated_at": "2026-07-02T05:47:22Z", "generator": { "path": "scripts/generate_report.py", "script_sha256": "b536aa7fc5e4fe7df6c7ff28c0992629a489869eaec46486db7aff1cb946099b", "git": { - "source_commit": "e0443b8f77cd23aee8f1fa64a2bc237e47626c47", + "source_commit": "dddead6351d956223e2c7aecf959dd2d93388be9", "worktree_clean_at_start": true }, "source_tree": { - "sha256": "441586b7f43e68245a94a797d291fa80f51bb413c3174651d2e3dada17f56d3a", + "sha256": "d0f255e6b88db78b61480a90312e6074b323eca8dd3456dd2a3ec275612f224e", "file_count": 109, "files": { - "poetry.lock": "c0fd02871263d959522bb3d3d4717cffa1b89bfa047f584c68b81c7ad7cbbb5b", + "poetry.lock": "d4e2e756f8ba3ca67ca0e7592c56d1e3c42303fd8b5af06dd52f25658d9e6ceb", "pyproject.toml": "eaeeb454c28bf7f6d9e530002bb7e88624b56b6c3e1fcb71e6414045cb9c42a0", "quantcortex/__init__.py": "14bf1ebdacd054c3738e4704d33da6709a39206463df8b8ced5376da342c4036", "quantcortex/alpha/__init__.py": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", diff --git a/paper/build_manifest.json b/paper/build_manifest.json index 3ca9e27..4c6bcb4 100644 --- a/paper/build_manifest.json +++ b/paper/build_manifest.json @@ -1,18 +1,18 @@ { "anonymous_pdf": { "path": "quantcortex_audit_anonymous.pdf", - "sha256": "cbcee2583ea2da700b259c108d9991061033a17dd97c11d0aab676396eabef7b" + "sha256": "7a7e5283b098957602eea34e38dde3ffe5b2968a622f4789e0ad8bdbe0c3bbb6" }, "pdf": { "path": "quantcortex_audit_neurips2026.pdf", - "sha256": "9bf806b296b6bade747de580142545a9825e2d3107c6a55531ea1456932ad2a5" + "sha256": "cf50fea34c2020061d86815c586106de87f26c9e29af46336524b899d1365cc2" }, "schema_version": 1, - "source_commit": "e0443b8f77cd23aee8f1fa64a2bc237e47626c47", - "source_date_epoch": 1781826790, + "source_commit": "dddead6351d956223e2c7aecf959dd2d93388be9", + "source_date_epoch": 1782970812, "source_manifest": { "path": "quantcortex_audit_neurips2026.sources.sha256", - "sha256": "51039d9c9da79353f3a26298189881f1669252496cf6dcf2e186bee5e94e9f22" + "sha256": "39e28d3967612a086eaab5d81bbb69023dbb939900c119f42d28cab3ec48a631" }, "tectonic_bundle": { "name": "default_bundle_v33.tar", diff --git a/paper/expansion/results/manifest.json b/paper/expansion/results/manifest.json index 49f54be..34f753a 100644 --- a/paper/expansion/results/manifest.json +++ b/paper/expansion/results/manifest.json @@ -163,9 +163,9 @@ } ] }, - "generated_at": "2026-06-18T23:53:33Z", + "generated_at": "2026-07-02T05:40:12Z", "git": { - "source_commit": "e0443b8f77cd23aee8f1fa64a2bc237e47626c47", + "source_commit": "dddead6351d956223e2c7aecf959dd2d93388be9", "tracked_worktree_clean_at_start": true }, "protocol": { @@ -180,7 +180,7 @@ "files": { "paper/expansion/protocol.json": "e49e41a12a19fa5404a573ba5e21eb8a2888e616985f8c610d9652866923315c", "paper/preregistration.md": "06f4407daed7bcd594e00bbf2751e7bd32c5d00eae530b2a6b2f66625b864162", - "poetry.lock": "c0fd02871263d959522bb3d3d4717cffa1b89bfa047f584c68b81c7ad7cbbb5b", + "poetry.lock": "d4e2e756f8ba3ca67ca0e7592c56d1e3c42303fd8b5af06dd52f25658d9e6ceb", "pyproject.toml": "eaeeb454c28bf7f6d9e530002bb7e88624b56b6c3e1fcb71e6414045cb9c42a0", "quantcortex/__init__.py": "14bf1ebdacd054c3738e4704d33da6709a39206463df8b8ced5376da342c4036", "quantcortex/alpha/__init__.py": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", @@ -290,9 +290,9 @@ "quantcortex/timing/vix_scaler.py": "a3667424e5573fb289e63c26c69da6a68d6c943742359f0466d29b25c56e3686", "schemas/canonical_target_tape.schema.json": "4f1c0bf6d5360305d2982adea78de3f61c4bc1ebae9207cb2ba2bd4379b43d44", "scripts/fetch_expansion_data.py": "678b5c7fcc1b89e333fc5298b1fdaeb8994de713bc7b2b5ed461e1ec1eb94403", - "scripts/release_expansion_artifacts.sh": "6d5da5f2a3c744d248f388249a0e956ec12c4f99995c3872238bdd3bf4472ae5", + "scripts/release_expansion_artifacts.sh": "c66de150012bc2ad4ea06f65e2f8993a564c003c717e3b220cf6c2f665d363e0", "scripts/run_expansion_experiments.py": "df9932dc67a1e1151faebc5dfd742f0aa622dfcf8093ce5ef9c55d9be4fbaf59" }, - "sha256": "91c1957542d9397c0478985389ba2236d94eaa78f81c31c517c298e92fcd733d" + "sha256": "3aeaab12c2c63f8022700be3a45978b4ca4f429703fde4566877eb4f2c830f0f" } } diff --git a/paper/quantcortex_audit_anonymous.pdf b/paper/quantcortex_audit_anonymous.pdf index 432b45fc6fb92099fafe5c1fb57e78808f0811d6..cfd8337f03a86ab32d41c4db4c72fd3df5f3830c 100644 GIT binary patch delta 6020 zcmV-~7klXQy)5j#EP#XogaU*Egaot&)l`2nK0XR_baG{3Z3=kWrC8gJ+sF}p&sXTh z00o5HzF(Xtdwf9_xp+OZPf1`j$<~OlM9L)P*~!=EG`lHEvl?d&YoJlH`gW?i>QpsX zUsiNQ@JCmgtu(cT4WCuDhwL8T_vw3o`h9)3`sp2AVWeV8tnM}|t_p$=UF9cX{jY!Q z(05~3b-Q)Wwalt+zi-AruX906=vq^eeQj#ruNlem-hVmzVT?ofesr}P-85Kdm211U zsob=X%0_qav9)!>)(>gPaoc-W$Btc7_O5SIpU!H3@NMneDs1|={?FadP$Z|Mumpb- z*j-nB#%Lx<=GrRXR zYlsP@(_X(8w?$NY0MxD@o`J}9p@@|EYPp`5t|=2^(Wdj+02&N*kc(AL<9 z^W`luCG;2;N2+bmc_HkoUrRK^$_9TVy}q z{_`JE`gv`G31o_QEGo`dMZ8d{q@6vf8^%uu-+$^_|LMU!e!55444>M6ZiMl`JXdg0 zCBuU?X$hEc+IZg#t=s$hEH|JD>#36)#+hPxg7??P z6Q&KR?1pLKY)N4o>I7%pP_wD=iwjCwBbXL znXFt>n;n~79fx%L$seZ$j^noL(dKi?o0d3qLjwkWj2-Z(c5H&9_CuxQ)G+ z8&0Q>Es^ks*#F@Bg!bmculb~A!HF^Ai5qn7?(r`esCkA!<`zr#UAxED5UTk^`#@x2 zWhE0}G-BG%58dQ{AZjTd!jlSFG>Kicg@Z1pA< zD=aTySt7Mzm)y6ABllfN8Nw1Nrq?2=$xI=b5vayE69vNsMu%4<%gYn+sUehMdECh` z3HpQqKfT+F)te5xT<6$j7H;2`&8hlbbAJp88Ta^1;vyjg%U*48wxOEK!(}D($*gpL zgWpYM4Tw4mr3Bt5gftl@9^3GCWok}!c4(aLN@4ir1u?8Q*V>>9+*Q*R3qyDF*@ZO@ zUDJ-SnJz9**zi=<;~mVnMM2h7DOCJiD!3}$UebG%<>f@G+r6*z-I)jPqI@6j2-Q$L zP4~ZlCxxoBK!QW9kt+?4GCEbzls%mZ{L7#I2XO?|gqM+b1r&#~Tm^@-Tn2};TnC4< zTnLA=TnV?cTna{|0XDb#0Shh+f9778&EftR7xx(ZAN;!;`*@Ct+Fn>!OpllzE;b*6 zB}c2%s(ih!o?may7fTrSY<^L#!(;f=u0GsO>&W^By8y`kd^0~^eIhREfc>}nlSp1N zBrrVIuj6;xicof8_B#66{-eitjj>@{@6)p@7P9CgL*2x}ae6R2w6iWff8Rpi$hKMn zJu*JnO;A9akYegBsa+o@)x-C+@6vvKzPZNvrX8IN3MAuj{zHWN+rUja*reAk$aevr zf2eJA5&gwv+d!TGBv?uN+8v=^*j%4;X}<=(zCJjC+?LKYu1eQM-D?YC?+LSJ+xR2X zwcfV_cGkM(81(#cYs~4If1ryVBkX_MU#;;l=Le1vNA0&v2UMBG>MZZkYPaK>xC+41 zGjzDp$-#D-Ug8NeU#yAJdp+@J(qD(^yi1(cjNTtXoQ8o@hT)QhcNMhd;W=hM$sW(9 z^G0JOOygYyo$P^*BUhukq=(-FPE-D<<@DAA2pjVsWF>MJSt|toe|J(&$8%E5N$0|c zbr9MfY__G{22m?1lj{-2clD)q+ff)tkye8ADr2_&5R2DXz;;kDV@!4b1|!B0w*x)K z7vp@&Fea3(*pfFr`4sOA^?~7ElWzy&M0Y;nMS&1G-c#m6zR-2f;4(yY90|w#KQwA| zETz}#=#!0rvAAeQe@PnMY8Ka{To@@+b&artXW+n1|8IT&#!+*#7Rfu`JJa@k zH;gB{E#e=VdDS6if91>Tj~n_zM|k<`;&k(Q9bT7=lNQ`Sf7<^%zrqZVZXbnREUlLh zmM5#z#qv{ly)Mj4R{1)rzlXV4`52R<#mV0C z(|J{}^5v$we|SUhRF;S5^G`4>2)$1;!+RX}M(#<)UVbi45CD{D3 z+T1D67Ud;PWY4R!P29U8UCNWy#l^hD4DxfeEHRB-tWL}I`F#DkTrI0|^Vh1}e7>rx z@(iG)r*NZRZy808%_saX_etA$nC=bhr<)iX(fBCdLDxa0l%NOM_?)$weUzfj@ z^YUYPQl6HOQGO~vmy7cM%HPZL@}gXptMan^qr58D<)*wY|1AG1zm$KM|GFD2p{eCK z{ym__sG!HGfR)x;QQ`i($8V0_^;9{oK3#87fwRd}FruM?lNlAb9i)QOV@wdPW`a;% zCYUWIf1I6@tEs1Qeu2I9e0f^_alP79krcON%D<|s)dac(i_0a}2O#TwwZ!3zMcn)2 z8t=_vxnY1(zm!ihTK%IT)*DdkZTVaIuKaj4Kl#1d1bx$f)c7ly7g0FgYMpvJ%<}k0CpImRMauqk%r;F;Ue_Air8G}b@vzx&!5ly@o+H%_UInDC? z#y;v ze|XC|!(96eb8cG9U;X3NqvNNcJG%|J_^yyUJ_I>Wh~qW*EyS(pA|640mcnLHZZaTq z%ckQfyEv*IjyZL?Xkq;A!Ry!0_tDwQ--f6wzXC_rpvcA{Y=+tngqZ5z^YqIPbSK|h z-NjIMF}zqTuh->ywO&_$T+h$TPqgrgf3y(3ROi(N<=w0K>EdL5p26F(csjnOi?8kB z>#_mQW%%wrd9?rT$&W`b?;j1}tES_tZ^D=Lq0PrG%-8PWT_r4ymqxc z!PPNfI$XX3SGx7y!o^22>6?Q$4__U_Imbh2>2Dp?HDtyQK!%$KDTSis><4uEe+h*K zvV-b;GcPaZCs!C<2gmixbFg)22&d6Il9tBY-pESnfyU8wC)egMP4-EAbfNW0zj{|} zB-QTk9lm@=3F&ws)0*$)6FcM++~rM4mR6VhKIzrsgKi-3Q;I;bLIp}FPBL&abEjjg zyV#oX^qaB$;NbCtUw;j$XaHIJf8BDg9~{1rA-tyFxS^j$aiR;Y9mu^IX1OKPW(=-h zUAazmrCXE^pS<|xah{ zX#4GSvA#T?{~dz7`n61{R_-&8)?_2MxvC1JPYm^E7#Nd0?R}Nin%5>zq)s|P2!u^-MhfkjT z7J_6OHNn1HxXaN}OVf{ADJr#W7cjj$+;dB&gVrsfe7}TJS*fpO3){2jM|;Q5DIX7@ z#=qO}qXv?IY*Rre(_X@LdL!&NC&y)#A#N7jK_FKN^@N z69(JxPM=3+7?S&WM?#p6gn=N0OIH*kZ;ae|H`{viR!p%(ODE%c&K94AV9{2V)kI)Fh8 zp^Fh%8|z>s*2O4{#(G#E8(>3hgpIKYHpOPx99v)vw!~O$g{`p-w#9bX9y?%1?1XXH z8M|Ot?1tSj9(!OkJQOhKEvrk3n18IZqKM zwn95o#Yrd(|AJ0p15IAU7jT$3NoO=4E>7Al(>ZODCZll_ju0pPpPG*p=kEVZ=e^OI zyo6(M9F7;~ey$k}U*|^Lgqv|Imf&{WfxE={Xn~&dWs>346Yv$Bh?8(KPQj`8DyE6^ zyq2D48t1X!IvuBDhB)7UM{Cb(^o+(mxDVfEbOvVP>o^l=zW@h7w}E(ue=IZ;~HFx z>#z{t!1cI6JWXrn;Z4pn0n4$1ya+dnr&D+BwErCYyBFhT+=^T9Ei4gF-$FfV8%Npy z$v)hPJ8-*rh91|>Qt^y8GvgUwt;t^8gS*7@^7oqW7SGdqrt|6VG}({#e^Q3!;`zf~ z9X*2YU?m<9Z~QTT9jy>=;-gH_=Y?(JrhrB&%0cSU8f)74SXN3i!c3uf_Aw{sWgyQt`1S5m+1Rh`;h*X7t2u9gSp$)2JI`J&eXE@t^uqJL^gyGA4X% zAo7VOjj$osmq6Vunm3R@&NkDT^SLHXB(Nf&JNyv|4sggvjqJ&HSZ$9jb}|~(PmA0Vh`*t!Qu&;$4l^=$)@w0qnh-_KG+xg zN$}f8Iyx8!;Xv#!p^PXU9U!3ve+r*1lohW@GA3bygtF5#Pn6K_lTGKNnz>4m&_{nY z$>XnoG)cuFI8;JU7=8AIjt*nqrsE+AeOayfaFPrOeOHsbK=L~E2z(Jo;YbPn63|Y2 z51lD)@H0)ukj$ojN!*6LG#^Vok9wTAZQ5%-o_xNz-L7b2p9B_&J8-rp6L2Rk!1wTd zyn#3I7EZ+5cn9y|J-m-u_yI1&Nw^r7;&RM?#XMZewKYP!)+SRo!KT;@n_~-%q0>HN z+kIdPPQ_!m1?}^ahk8Dq#kcWQEXKF!v@7=^Zo*1jiyP7I3|DX~7ICcI!PcXF3Ublz zHugEH4%!_i3hOeOjT`VyT!eO2PRAv<40CV==3@b_!VEluCAbZ@V=3;yUAP-x!@anF z5BH=V^z^$!;vh`G zL`=ekI1=rfR4R@@yDQoqZwih=yD!<@%C@K<=2|zihHnsiAkyo zG+80;kqDEVTcb&yxaXgnT-JK6xX-GzUMKE%PqZ!+_ov5N9~Sr5Lt3v#`;K6Dr()cKcCWKf y_@%fLcjI2%k7am3BAj7*=1M#bh*c8NIM#9g52VWSRhP;h3n2(K3MC~)Peuw)!3n>jX z02x?mc)w(ylFkJ?*h?ne^R&AND2Z+hu_Z^6)6@I)dni(t-Q&(qkZvSR6{+H>V%4dl zR$o?hMes{knyoaog$+NeY7f~x{=HBC?oWST->rUnM^{*>m=deI&5Emn;D@gAldymO zS9a*Tv8%e>I_FwuRkzB*|P`$AMonnSBlK`2K$pB4M+kJNA{2)Bh%f?b7%-`1Dfw82^sjG}Ry5 z09p6c#cdJI9ssrLhi4#iT_|ED zO%N+-g|0;9l&e+EsH>s6G8^cxs~QMhg(amElzLuQC1Zp+CMZ{em26|LLlivZ0ArUB zZ@ObU_UUjDt<8w|dIqK>1-E}z%$_uwY@B7Pl*ACOO{HX6D`rb;fv(oPq>5Ww*S?mT zk;+(6kqwtp8p@elV4kHMqF3OF!I8Q<5!&(1!aP81^ZH(R}BbRWC<7W7F ztX#CS@xB>axA*nSbuP8ensJEG z2so1RxaRAciOlVe$%236eVl|X3?-UBAt!e@?3#&S49&(a{AJmMFo_;uY?lw9(|J+v z(wJql5rN)}&D;>hwGRZ=&a0X>zIhwCVhR`tc@YRyrl5l0%&T~w;%1WfpzP+PD?+4* zH$V73lFn7uJ&`0&6f#OCPwP zWY0%EW%g=%GaMs|;#AJ|-EoMb-cRO7A3g+`$;vgg*|FKxaY?tI;&D=N9JgJMF`rA` zq~g#G4H)<_P9T4x+OY|N;`?FpJI`Ks<2KG-ZaAGjwnV`j;{1c}6WW^(zvh#f1t-Rc zCt=XFyT`v^q2?J9nOmsryLOMQAyo5;_JPQPW+f9~3}V^O58V_XYH1$AlL}QdiCwit zfJSL}#g#iB43a9lJsu8SKTh~Dd-K=$O0okZRQIdl`{92PE}WPrqza`mn*pgi-f!ar z!~)xB#OueCZ}SKEHNG|?8k_b$G%8eO2UmS|_w%z3sq4$G`yAIsMi1HNt7AygX;pGY z*sSckDM9bp777a|2Utef4>1H&WSXvA_2{Ktw@G#s*G}ybvr?^ zFn3cuTfV-mkUW|oj~-US6lh>1Dkeu8qKrVVvtNnO^P*$m=i=S!cJ<5LXBniWLSH$R zc2N+)Y0x2TXb*JE%MamfT%6BRa@1}preY1TqSk~sEa>9l+xPKr=sa?=0l8%6K_+UZ9;MEs% zZhaSsTTtzokG|i}B`Z}b8F(!<7*~8m*qM(6fEf757IFb4aFFH)UGz6(Ydc?H-oO61 zmZ+}RA@M?~1(M|RvElAO7Dt8Mzm4hl?eu@+Ijl+PGl8TE%_yDk0NB_BK!oWmM~}sl zlSpCA;v{%ao&e1Xz8lcDL+Khiv`>vD>VTlyeXOVw2 zWTp_z2y|ndiGtw*qr)eX<>LwX)DX&`9(OXl1bf1QpWf}o>P?4Tu5;}27H;2`&87NX zbAJp48Ta^1;vyjg%U*48wxOHL!(}DR$*gpP-%V`|h&l_c1imMPG8tYxw&Cl_G@SbE zFgV?n!t%=tV$e7D+Mo;ERnrvd?cUe7punNm$kCI740P(CDSP_z zFMs+Uy;0Wemtjx>6Nj-}1&6U*28Xd+2Zym-2#2v;3AeFa3P+^@H@Eo#3oZ&^LM3B#VvFRFET44>N7 zhudi#S>Iq60NI~!=I5(V#6=yj|5kqz$xDU=hR6DK{7zdD$}Y@aM?c$t^!TnZHf-yC zdUnM^7JX!>n^-tb4`zpU)}`lvTj(3vR!g8q#s|9z3TP8jOuZ$w>*J()_@4G%+ON+y z*Erv_qjN!lWE{?ah){nUxJd__^x6gaF2M5-wT&*KznE+r$P<7BD`{W5BlHWK>vJyc z*TC1;2Pcr*(z(V}>AI+UZ9(ikVb*LLe`LDW`*y(2TDKg7ooA>n ziPM_V`y+_cFmTE+T(a=4g0?(7$LuHB3yo;cdJ@O!{%${)3y z-g*FGWB!AzMD8MMg~0!RPRi+cPKr6{T==jKLfeDQwzS(IY9(cIJ;L~|zSM3z3gal! zN|0V<%(fq5@fr)*4hm+BsqWuk#2DgspvU-PoKG3Xgt8S|@}?)B;+>&BF#K!s?LeI9 z&L_Mm5F*EW%3R17y3QF~hNzAs;h6u2Mvac8^jaN#vJo&A7wss2NuyiM;(C+|BW0=% zT1mrv&PTa?w2Gr~eKa4t;&q|g$VNC7-b}M~&L=#=E1|<5w&P4c%j(|$L+7WQ+ojLV zy4`p^SuFVs9JuNKt?%DBYHrpddFOj)+P?3G@np9}{6jOZI>hX+e0lwGLtp3!FMnN} zZa%NW>ymNOf*VMG`=94mm;uu5qp*vm_42{;WOce&ehRPGg?Y*9^>Tq@6^_J7=l%J* z3Ozi2wDC4K6HE(2@6*ii z9>=|rds6W@xA2C22qzC0=M`SqG--7SHovSkcgnLxc}Wx5^XhC9_pV5n@?>>!F)uNL z{9G+dOd}Vo({g=2Uwk-a{;bON;!C-%{zUV=@_xBr9+VHt z!}4MIsC-<1J}r;RXXW$qMR|<-ey_^c<*((u{8*lprzK>RpUThWqWr(|_wu~FD3|4` zye$7HugZ0~DX+^v%fHGm<=^GM?gmR}YB`R759l!}=y57wrS(=+xc~0)o1=FZzPxU~fHNo|b=HuQpXA z#Vwiguj*$2Wj<}DDER(@~bu_?qQSB)u*dD%&X=n*PE(b#m)8U zqPnVo){Aw<;8EJ_W^hYH6Yqt#oOXRqvpm1CEP1^>-23(QkNZbQk2%|BDWA+zP_t&K zS1n8Nx^su6_wW`mQ;DipB&u4LaTROC_oyzy8{a4`bT4W7E>(ZWBLnlAYmtAEarZ%m zm!JT7nEd-0e!WN@-Hzg5vT+ETp|%4druz3h{qh6d$+uQ_G1OfQFBZ$|b$MQ`*VP}_^Yii(ExaOs zErc)Cd38Z~_iBE+IGLYk@OCVoj<4zBYkT;*Y`}9FzI#s|?Z12SGDcNnwq`v2W^6w=c>LhkUqdPyK-PYLx7_Oo zhc9FZujw~#=%-Pf=t64;a&LxNZppM6gX>pUu2Ws<7Nx@{FMfIX46+}*9ZCvrDokv0 z0<}ZTQ(#^go9ITWwLN@#71jD0<2zN_8$37Kemh;PFVE+Hhaj&$Z*c2y_1Cf~sGB3H z4z3SfUv`^ZUxo%5{2hoUlh${CYcJogy(kF`XM`7TUcGwyB$OzA+avz_*1Kw~a)`+q zWkNqO_+IsuLzkN}9l36`<<+Ec|7GvtlPAB0AlXJuu+^_bxSDUFQHUc>TB7;_U!r5-tlwF#{;PG?>79Xfg~UsmeEg7^;y<`tD@>*o(A{~ zyUd(vnKC_mmjR{oOv!Jxxbo!1+o#Wu24=~G!8W|p=TTY?FR=91+Az$_bPcf^9ES{n zY{SpLZLPA{^eaaV$lZ04vGQui;z+&{@=I6&X;(kqq5$hIY~;%ty+w`8#XCWs4!AVl^-@VKy;0WHd8kVPi5dVPrI8K0GouWo2eIWn^PBW@2JB zFfd^@F*js1Gh$(5GB9CeG-H>17Yj&#H9kHHb98cLVQmU{+BMgCP*vv{$MN%A?s`xJ z#RV5!qu_@7#v*7)+@i(}Be)wEzzr2~CmNNgD6SX~R5WUEAsRI%21OG!(?1$xOgo*n z*0j^4nMs{CW74#l*7APe$A3Qa%B9@rBTuow2mKG+xgVSgNe z19318!XcQ5Ntlc&;xzb!&hSuwW_URD7__yW^Hg!#R%mCMIEjVzzo3&8t;x&y622%- z@;S}Z#hF%XIx{D0G8#wW2ywFhsrg88>i%mwZ;jUE6&#D>aJ)FTSDDfJ>)eXl@h#km z#kdFe;(l@NXX`m%B}u2AfD>^NPR1#ifm87{oF>lWFg;Hu=ds^93#a3M3~_#l(w>?0 zjK+glif=PI3uogToQv~BoImOrUZ>yALmn=|g*aa%qFg%{h;&(3KYJ4A(_}H`Vzx+p zvF14<#U-Y5_i9a+<1$<#Qj(?lQjw>#Oy|=YO;(8f_&byQbkO*(%f_Eq82_DM{LfhJ zT#2hNU*wmDny@=fipybjmn2Hc37un^zC&A3H8G0*4WP0lj`%dvud z8*UX(Tu<$^{~Y_f7vWpD6L;V)EEZ4yLOp6XN7?^LDel9)xJNw0Pitq1c*dKV@r=Kx z$ss(5`^EF>51Jnk&%?&1^Wm>FIgIvyQikQ?`OP66J&8xL5|4;~H{q0yR){w#ul{V_ zq`R7&z$!c@-sI;i?znhMb4=&q5t_V%r|`6R%OW&CBi`~aOlS3VP2Oc5rlP%)OL!j7 zVYPTKg|z>ycyD}V&TunclZ*HsUJ!5HB+YBYmpZP#)0g)A*!S@=Ucsy48}_;BnRHfr zKHy61I{g%{<41UZO?+7wwev&qt=emj&2Od2O}v30i*NM_&1=Q?@QmsFYP%+%;BBlE z-)}QCza{>}Omjy|tk&d?_>&%*B-yMre@cyU=n`XUS7X{p?YxWkxJx?XCN49hQ|6e_ z`Xq#23_}rrZnTbi#9#2(^snisNe~0*6aU(on)}6H#ub)-hiT%9|A<+?{)&g1gkuA2 zDE`W)X7tQW9gSdyr%^Y@#u$Z-#9#dv?TnN_L~Q-Bfru|PX@*U)i3B2dY91|tm3vI* z%14^CkU)M=cleVMC^)M1JB-F)OKc^9O;7ZwcGwnUv9$!YKhx1R68JXVe9GTqHEE9> zup@Soz<1w&n4TXCwC4prH;cLt#$z0ImcY+>+Sx^dzLff7gT8&5^uX@eRf7In&AUl( z>jl%fZHFeku^0A~V9`X)6D0V3hUxtNlqP+#ANI!q68!sp9UY28a4-&((2PhO9VDUb z`n$Y@a(Zc!g2|XDq1;T(lO*)(p{Dcm=W~@Rq5I!|n&gXbG)co@I9x&x7=83uM_**# zrsHu5{rNM^(@ADX=*jcsC6YPRBk*M$g(D^OOHe!QJ#?VvF5x1h<87|{a+{UqX2iuJHDab{;+t}x*hG=(~Mi|LxE^fg$aS7U0 zIUSc_9+HDIP|EHng{SchzKhj( z7SG`YJc_f?u83oJ9INmIGh_Ed!7#LUhq=@~wC_sxE^raw$E$b^KgD@?2k&uI6gI{t z7|rN<+<|LV<-@{9I1wX*~xBwSQxLnfj5{oI=7TclSf!kvT?1-H(9y?=y z7mUN6*cH2BckF?EF#&sFZ|sBpZ~*qlfj9^U;}A^5BuvJ|I1=rfR2q&zyDQoqF9S!R z-IwfcX7?_;FWL2O-qLU+dk7IPu!v` zlN`v@WQDi~&ArJj+oj1$amyc=r1Cp|O;(9}EXE{N>omz1_hbW;T-d0|YH@46Hp!Kf zniPn8^}g0?#Jx7hj9&kfCTqp5jWEfLe`vB!+`2XnUXjp9B! zq4g$lpM0rxp}0Ri(E5b9|Etn^Gun3qyE_%(4zzoneZnuneRu#5;bAPpBNFZsr0bb0 f@fcP~c=Ps-^M540^1GMA9t$A|Hwq;sMNdWwLsmNm diff --git a/paper/quantcortex_audit_anonymous.sha256 b/paper/quantcortex_audit_anonymous.sha256 index 77fc144..42b9e73 100644 --- a/paper/quantcortex_audit_anonymous.sha256 +++ b/paper/quantcortex_audit_anonymous.sha256 @@ -1 +1 @@ -cbcee2583ea2da700b259c108d9991061033a17dd97c11d0aab676396eabef7b quantcortex_audit_anonymous.pdf +7a7e5283b098957602eea34e38dde3ffe5b2968a622f4789e0ad8bdbe0c3bbb6 quantcortex_audit_anonymous.pdf diff --git a/paper/quantcortex_audit_neurips2026.pdf b/paper/quantcortex_audit_neurips2026.pdf index 1e8cb8728f57de37a5c531c572d8930eca5c05fb..baf7f0248446fe8ef1804223c9a615c445f000c5 100644 GIT binary patch delta 9339 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 diff --git a/paper/quantcortex_audit_neurips2026.sha256 b/paper/quantcortex_audit_neurips2026.sha256 index 3f6d8bc..3281168 100644 --- a/paper/quantcortex_audit_neurips2026.sha256 +++ b/paper/quantcortex_audit_neurips2026.sha256 @@ -1 +1 @@ -9bf806b296b6bade747de580142545a9825e2d3107c6a55531ea1456932ad2a5 quantcortex_audit_neurips2026.pdf +cf50fea34c2020061d86815c586106de87f26c9e29af46336524b899d1365cc2 quantcortex_audit_neurips2026.pdf diff --git a/paper/quantcortex_audit_neurips2026.sources.sha256 b/paper/quantcortex_audit_neurips2026.sources.sha256 index 21c658d..0282f6a 100644 --- a/paper/quantcortex_audit_neurips2026.sources.sha256 +++ b/paper/quantcortex_audit_neurips2026.sources.sha256 @@ -4,11 +4,11 @@ c2b36aafee0ad2e3ac631e05a5fc1b20e1acce10dd0b4758667f0a809cafff51 checklist.tex 62609e68cbc90516cf19a46d52f80bf07ab0a4751880e4c078cc9be4ba842a5c references.bib 0c1ad36961fcd9198dcc2558cf2793e1df39973bde8264fd701f5e7970672757 neurips_2026.sty 06f4407daed7bcd594e00bbf2751e7bd32c5d00eae530b2a6b2f66625b864162 preregistration.md -c18f94e5566cfaf6336a01db507763dc48e8ce4a8fbec2cbdcd34555ae14fc37 results/generated_values.tex -8847942a3b68fe2ad0311bb4525907b26558892e7cfb6bcde16b0ee23b82046b results/manifest.json +32e1a703329d6767d4184a940009c158a723738ba53c7de0ecc57bfac861da9b results/generated_values.tex +105d350319bac9a92bfb746d10da7414ad7de43140b69f6987ec5b54eca4c713 results/manifest.json e49e41a12a19fa5404a573ba5e21eb8a2888e616985f8c610d9652866923315c expansion/protocol.json 2dbaa11bfdd9a1936b45114f61bd96c53e3d57eefe103a75c488352486c0e2f9 expansion/results/generated_values.tex -838a143d4b153370c44a0240ca359ce66d7356cb2bd18e81158f972a454935a4 expansion/results/manifest.json +1db304ba19a96ac6890c3b6bec2bb7dc13793bf1298af990712b03ce617c4066 expansion/results/manifest.json 18608aa1250c4554b2e27b507211f764fdf1ec1fb8e4b9f09e080601505e2e3a figures/accounting_summary.pdf 6765f7d1f827577ba648af7545d006ef7f005f0091194605c6130100215ac18c figures/audit_protocol.pdf 19df4c9eabe88add863ed4be4e9315aa0084b833be9deb4d5bb7633e769ced07 figures/bootstrap_robustness.pdf diff --git a/paper/results/generated_values.tex b/paper/results/generated_values.tex index aa0ba40..d83ba96 100644 --- a/paper/results/generated_values.tex +++ b/paper/results/generated_values.tex @@ -4,7 +4,7 @@ \newcommand{\PaperRequiredWarmupSessions}{274} \newcommand{\PaperBootstrapReplications}{5,000} \newcommand{\PaperInputDigest}{efb384a62157e56a0cd8065abf45c1ed07d90ec26c681e5d54d74fe4cb9c55e1} -\newcommand{\PaperSourceTreeDigest}{e5cbb756404c6776eb5945a1590664bb91b22dc7b0daea22efbf80a5be78c6b2} +\newcommand{\PaperSourceTreeDigest}{5bf7019e1a5f23262701fa5d8e02780c9f274a9b12821a4323818fd282efd295} \newcommand{\PaperNetCAGR}{1.40\%} \newcommand{\PaperGrossCAGR}{3.17\%} \newcommand{\PaperCashCAGR}{2.50\%} diff --git a/paper/results/manifest.json b/paper/results/manifest.json index 3720c01..05f5a98 100644 --- a/paper/results/manifest.json +++ b/paper/results/manifest.json @@ -20,7 +20,7 @@ "results/cost_sensitivity.csv": "25b9969cf8ecdabd19e7761ad2973252c9f5b9f994b6dc147595a2a112c24d88", "results/engine_comparison.csv": "ea0322dcd2aa4a1eb3b5996045c3a4b2ed25a85684a578ee788b013b99b643cd", "results/evaluation_contract.json": "77ee05ce64622ef9ba1bfbd7dae85c4f6fd44f07db0b21feaf6b3e0e418673e7", - "results/generated_values.tex": "c18f94e5566cfaf6336a01db507763dc48e8ce4a8fbec2cbdcd34555ae14fc37", + "results/generated_values.tex": "32e1a703329d6767d4184a940009c158a723738ba53c7de0ecc57bfac861da9b", "results/protocol_switches.csv": "20d5a0dc37e07a20c1f2772c8e9940ff6464ef1da98692edd5fdb06531bc2393", "results/return_decomposition.csv": "53a84aa9b91c92f0037e48dc09154807cbf003ccf0038f39da8406108bf709cc", "results/sharpe_uncertainty.csv": "aead873ced9b25c76c6944aa6e3ba0901ade65c784fa5cb8cc10ad1c6c01f136", @@ -240,14 +240,14 @@ "path": "results/evaluation_contract.json", "schema_version": 1 }, - "generated_at": "2026-06-18T23:53:33Z", + "generated_at": "2026-07-02T05:47:22Z", "generator": { "dependency_lock": { "path": "poetry.lock", - "sha256": "c0fd02871263d959522bb3d3d4717cffa1b89bfa047f584c68b81c7ad7cbbb5b" + "sha256": "d4e2e756f8ba3ca67ca0e7592c56d1e3c42303fd8b5af06dd52f25658d9e6ceb" }, "git": { - "source_commit": "e0443b8f77cd23aee8f1fa64a2bc237e47626c47", + "source_commit": "dddead6351d956223e2c7aecf959dd2d93388be9", "worktree_clean_at_start": true }, "packages": { @@ -265,7 +265,7 @@ "source_tree": { "file_count": 112, "files": { - "poetry.lock": "c0fd02871263d959522bb3d3d4717cffa1b89bfa047f584c68b81c7ad7cbbb5b", + "poetry.lock": "d4e2e756f8ba3ca67ca0e7592c56d1e3c42303fd8b5af06dd52f25658d9e6ceb", "pyproject.toml": "eaeeb454c28bf7f6d9e530002bb7e88624b56b6c3e1fcb71e6414045cb9c42a0", "quantcortex/__init__.py": "14bf1ebdacd054c3738e4704d33da6709a39206463df8b8ced5376da342c4036", "quantcortex/alpha/__init__.py": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", @@ -375,10 +375,10 @@ "quantcortex/timing/vix_scaler.py": "a3667424e5573fb289e63c26c69da6a68d6c943742359f0466d29b25c56e3686", "schemas/canonical_target_tape.schema.json": "4f1c0bf6d5360305d2982adea78de3f61c4bc1ebae9207cb2ba2bd4379b43d44", "schemas/evaluation_contract.schema.json": "970f24f587e669925306625d12c5a84dffd03ff5b222a59905849b2fa222784f", - "scripts/release_paper_artifacts.sh": "cbbde7be2dbe5fa51da153ded2d5f27a8e35a4844a5f658584fe527db5370fbd", + "scripts/release_paper_artifacts.sh": "410b1f444ce242b94fa9ba7bcf5868fcc74ad664f2c24f9503d4f3a230e8b38c", "scripts/run_paper_experiments.py": "922bf3c414e0eadca5c13ee831528347dd83a0cd174efbdf15a987b511845de5" }, - "sha256": "e5cbb756404c6776eb5945a1590664bb91b22dc7b0daea22efbf80a5be78c6b2" + "sha256": "5bf7019e1a5f23262701fa5d8e02780c9f274a9b12821a4323818fd282efd295" }, "threadpools": [ {