-
Onebox v32.5.4
StableRelease / build-and-release (push) Successful in 20m13sreleased this
2026-09-24 03:32:22 +00:00 | 156 commits to main since this release2026-09-24 - 32.5.4
Fixes
- Embed a single
@lossless.org/clientruntime, 1.5.1, in the release binaries.@apiclient.xyz/docker9.x, which Onebox moved to in 32.5.2, brought its own@lossless.org/client1.5.1 beside the 1.0.0 that Onebox,@push.rocks/smartmigrationand@serve.zone/corestore32.2.0 used, so the binary embedded both and the release workflow's check of the compiled binary refused it: release run 4681 of v32.5.3 failed withMixed embedded @lossless.org/client runtime versions: 1.0.0, 1.5.1, and v32.5.3 has no binaries. v32.5.2 locked the same two versions and has no binaries either; its release run stopped earlier, at the test timeout described under 32.5.3.@serve.zone/corestore32.4.1 pins@lossless.org/client1.5.1, the version the Docker client uses, and Onebox moves its own client to 1.5.1 with it, so the binary now embeds one client runtime, 1.5.1, and passes the check.
Maintenance
- Move
@serve.zone/corestorefrom 32.2.0 to 32.4.1,@lossless.org/clientfrom 1.0.0 to 1.5.1 and@serve.zone/interfacesfrom 32.3.0 to 32.15.0 inpackage.json,pnpm-lock.yamland the binary'sdeno.lock. Onebox uses only the database allocation type and functions of corestore'sts/corestore.database.ts, which is unchanged between the two versions, so the Corestore platform image pin stays as it is. Corestore 32.4.1 pins@serve.zone/interfaces32.15.0, and the binary's lock resolved@serve.zone/apiand@serve.zone/workloadinit, which accept any 32.x, to that copy while the pnpm install the tests run resolved them to Onebox's 32.3.0, so the binary would have run the CoreMail control client's desired-state normalization and digest from another interfaces release than the tests. Onebox now pins 32.15.0 itself and the pnpm lock is deduplicated, so Onebox, corestore,@serve.zone/apiand@serve.zone/workloadinitresolve 32.15.0 in both the tests and the binary; only@serve.zone/appstore32.1.1, which pins 32.3.0 exactly, keeps its own 32.3.0 copy. Of the interfaces changes between 32.3.0 and 32.15.0, only 32.7.1's reaches code Onebox runs:data.normalizeCoreMailCredentialVerifieralso accepts an argon2id parameter block inm,p,torder and re-emits it asm,t,p, and Onebox already writes every verifier inm,t,porder, so its verifiers, desired state and digests are unchanged. Corestore 32.4.1 also moves@lossless.org/nosqldbfrom 10.3.0 to 10.5.0 and@lossless.org/objectstoragefrom 10.0.1 to 10.3.1, and the binary's lock moves@push.rocks/smartrustfrom 2.2.0 to 2.3.0. The deduplication also moves the pnpm install'swsfrom 8.21.1 to 8.21.3 andsemverfrom 7.8.1 to 7.8.5, the versions the binary's lock already resolves, and, in the development tooling only,@push.rocks/smartexitfrom 2.0.3 to 2.2.0,@push.rocks/smartclifrom 4.3.0 to 4.3.1,@push.rocks/smartconfigfrom 6.2.3 to 6.2.5 and the@types/nodeof four type packages from 26.5.1 to 26.6.1. - Run the check of the compiled binaries from
scripts/verify-binary-embedded-packages.ts, whichpnpm run build:binarynow runs after it compiles, locally as in the release workflow;pnpm run verify:binaryruns it on its own. The check was a script inline in the release workflow'sVerify binary startup and embedded packagesstep, which a local build never ran, so a binary that embedded two versions of a package that must be embedded once only failed the release run after its tag was pushed, as release run 4681 of v32.5.3 did withMixed embedded @lossless.org/client runtime versions: 1.0.0, 1.5.1. The check is unchanged: the x64 binary reports the package version, passes the OpsServer Typed RPC runtime self-test on port 39117, and embeds each of the eleven listed packages at its installed version,@lossless.org/client,@apiclient.xyz/docker,@serve.zone/workloadinit,@api.global/typedrequest,@api.global/typedserverand@api.global/typedsocketat that version only. It now reads the expected version frompackage.json, which the workflow checks against the tag beforehand, and it reads the embedded packages from the one directory the binary extracted with its npm packages, failing when there is not exactly one, where the inline step took the first directory it found. The self-test's temporary state and runtime directories are removed afterwards.
Downloads
- Embed a single