Skip to content

WolfStack v25.0.0

Choose a tag to compare

@github-actions github-actions released this 26 Jun 18:06
· 1010 commits to master since this release

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.