fix: pin Claudexor 3.15.1 with truthful Windows doctor exit

Claudexor 3.15.0 printed valid doctor JSON on Windows and then aborted in libuv (Node 24 close race on forced process.exit after fetch), so the hosted Windows consumer witness correctly failed on exit status. 3.15.1 (upstream #356/#357, build fd83507ad287937e1156be9801ba86ef739680e7) lets the Windows CLI exit naturally after output drain. The pin values come from the signed candidate closure whose exact bytes the publish workflow promotes: sha256 33cbf3ecf3c67792c1a05ae1d974ff5e5e158538d1e4c578e33cd6cfa094e79e, 7874102 bytes. The witness comment now names the known cause instead of "unknown".
This commit is contained in:
Ouroboros 2026-09-25 23:55:47 +03:00
parent 1e1f374be0
commit a5fa2c9984
3 changed files with 11 additions and 9 deletions

View file

@ -1,12 +1,12 @@
{
"schema_version": 1,
"release": {
"version": "3.15.0",
"build_sha": "68faf93622cff0876e1d63de9f45dadb0384f2c9",
"version": "3.15.1",
"build_sha": "fd83507ad287937e1156be9801ba86ef739680e7",
"protocol_major": 3,
"archive_url": "https://github.com/razzant/claudexor/releases/download/v3.15.0/claudexor-runtime-3.15.0.tar.gz",
"sha256": "f468e22ada83b0e6d6c2a2b3b7e3b0e1ef3736c3345069172e1f27918f3a098a",
"size_bytes": 7874252,
"archive_url": "https://github.com/razzant/claudexor/releases/download/v3.15.1/claudexor-runtime-3.15.1.tar.gz",
"sha256": "33cbf3ecf3c67792c1a05ae1d974ff5e5e158538d1e4c578e33cd6cfa094e79e",
"size_bytes": 7874102,
"node_version": "24.16.0",
"node_artifacts": {
"darwin-arm64": {

View file

@ -346,9 +346,11 @@ def doctor_witness(harness: str, command: List[str], env: Dict[str, str], binary
rows = gateway.harnesses()
finally:
gateway.close()
# Use the full doctor verb proven by Claudexor's Windows release smoke.
# Our targeted --harness call aborted in libuv on two Windows CI runs;
# the precise cause is unknown. The exact harness row is checked below.
# Use the full doctor verb. On Windows, Claudexor <= 3.15.0 printed valid
# doctor JSON and then aborted in libuv (Node 24 close race on forced
# process.exit after fetch; fixed upstream in Claudexor 3.15.1, PR #356), so
# the exit status here is part of the witness. The exact harness row is
# checked below.
report = _cli_json([*command, "doctor", "--json"], "harness_doctor_failed", env)
except ClaudexorUnavailable as exc:
_stop_owned_daemon(daemon)

View file

@ -155,7 +155,7 @@ def test_tracked_pin_names_a_cli_capable_release():
of this proposal converged on while the pin was still pre-CLI 3.6.0)."""
pin = runtime.load_runtime_pin()
assert pin is not None
assert pin.version == "3.15.0"
assert pin.version == "3.15.1"
assert pin.cli_entrypoint == "claudexor.bundle.cjs"