Whiskers v0.14.0 is out. Three releases have shipped since the last post — 0.13.0, 0.13.1 and 0.14.0. Here are the highlights.

New in 0.14.0

  • AutoPatch: nightly same-tag security patching. Whiskers pulls the new image, replaces the container and rolls back if something goes wrong. Off by default and starts as a dry run; it never touches major versions.
  • Measured update risk: assess_update_risk pulls the candidate image and compares it with the running one — instead of guessing whether an update breaks something.
  • DNS records over MCP (module dns, Infomaniak first): list records and set them idempotently.
  • Dashboard: the “Stopped” and “Unhealthy” tiles now filter straight to the affected containers.
  • Whiskers about itself (/self-status): how healthy its own background loops are, what changed across the fleet in the last hours, and whether automatic actions actually helped. Plus an emergency stop for its own background checks.
  • Better alerts: a server that stops answering now raises an alert; hosts under sustained load are reported; alerts close themselves once the server recovers. Container logs growing without a limit are reported before the disk fills.
  • Certificates: warnings before they expire, and renew_mtls_certificate renews a proxy certificate without locking anyone out. Onboarding no longer ships the private key across the network.
  • borg-fleet (deploy/borg-fleet): nightly append-only backups of every server to a storage box, one sub-account per server.
  • The generic outbound webhook can sign its requests.

Fixed in 0.14.0

  • Copying silently failed over plain HTTP (e.g. an API key) while the page still said “copied”. Now with a fallback and an honest result.
  • The update check never saw stale containers, because it resolved the image through the tag instead of the running container.
  • Whiskers held a two-core host at 98% CPU for six days — its own doing, via the log monitor. Fixed, and a per-server load budget now keeps the background loops from piling up.
  • Log alerts watched only one server, container filters in rules did not apply, muting covered only a third of the alerts — all fixed.
  • Plus a pass over the whole UI: buttons that claimed success without checking, filters that did not filter and pages that crashed on empty data.

0.13.0 and 0.13.1

  • Full English UI and handbook — English is now the default, German remains one click away.
  • Guided “Secure AI Operations” setup and an end-to-end correlated governance chain: every agent tool call can be traced from the history through audit log and approvals to the guardrail.
  • Server groups and tags for the dashboard.
  • Signed release images (cosign/Sigstore, keyless).
  • 0.13.1 was an urgent fix: the MCP server had exposed no tools since 0.12.0. A test now guards against that.

Transparency note: 0.13.0 revealed that CI had never actually run the test suite — the test project was missing from the solution. That is fixed; every push now runs all tests.

Addendum: v0.14.1

Shortly after 0.14.0 comes a security fix in Settings. Whitelisted addresses without a role of their own showed up in the role table as Admin — and the next save of any role actually stored them as Admin, even after they had been deleted from the role list. The table now shows only real entries; whitelisted addresses without a role are listed below it, with the role they really have.

Also: saving no longer resets the default role, unsaved toggles of MCP keys survive creating or deleting a key, and deleting a key requires Admin and is written to the audit log. If you run 0.14.0, please update and check in Settings whether the role list contains Admins that do not belong there.

Upgrade

Image: ghcr.io/lupusmalusdeviant/whiskers:0.14.1 · Helm chart: oci://ghcr.io/lupusmalusdeviant/charts/whiskers. Full details in the changelog, all assets in the GitHub release.

Weitere Beiträge