Repository navigation
WolfStack v25.0.0
v25.0.0: container/VM lists no longer come up blank for 10-20s — offload blocking handlers to web::block
KO4BSR/Gary (browser ON the node, no proxy): the docker/lxc/vm lists come up
blank and populate 15-20s later. Same root cause as wabil's flicker behind
Pangolin — just the other end of it.
The list/stats handlers ran their blocking work (docker ps / lxc-info / qm /
virsh / pgrep subprocesses, on a cache miss) DIRECTLY in the async handler —
a violation of WolfStack's own coding canon. On page load the browser fires a
burst of these at once; each one pinned an actix request worker, so on a
low-core host the workers were starved and every list queued ~15-20s before
rendering (the 'Running [0/4]' count comes from in-memory node data, which is
why it showed while the table was blank). Through a reverse proxy the queued
requests time out → 502/504 → the flicker wabil saw.
Fix: docker_list/stats/images, lxc_list/stats, container_runtime_status and
list_vms now run their blocking work inside web::block (the dedicated blocking
pool, 5×cores) so they never starve the async request workers. list_vms also
no longer holds the std Mutex on the request worker. Same JSON on success
(no behaviour change); a rare blocking-pool error returns non-OK so the
v24.57.36 frontend guard keeps the current list instead of blanking it.
Complements .36 (frontend resilience) with the backend-speed half.
Major version bump 24.57.x -> 25.0.0. Build + clippy clean; 84 vms + 76
container tests pass.
Verifying this release
Each binary is signed via cosign keyless OIDC (no key distribution — signing identity is the GitHub Actions workflow itself, anchored to the Sigstore Fulcio CA and the Rekor transparency log) and ships with a SLSA build provenance attestation.
Verify the cosign signature:
cosign verify-blob \
--bundle wolfstack-x86_64.cosign.bundle \
--certificate-identity-regexp 'https://github.com/wolfsoftwaresystemsltd/WolfStack/\.github/workflows/release\.yml@.*' \
--certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
wolfstack-x86_64
Verify the build provenance:
gh attestation verify wolfstack-x86_64 --repo wolfsoftwaresystemsltd/WolfStack
Verify the SHA-256 checksum:
sha256sum -c SHA256SUMS
Artifacts
wolfstack-x86_64/wolfstack-aarch64— static musl binaries (Linux x86_64 and ARM64 / Raspberry Pi 4+).wolfstack-<arch>.cosign.bundle— cosign signature bundle (cert + signature + Rekor entry).SHA256SUMS— checksums for both binaries.
For per-version history see CHANGELOG.md.