✅ Release Asset Validation (Post-Publish): PASSED
Assets were revalidated after publication due to a release edit.
Status: Live release assets re-validated ✅
Validated: 2026-03-01 23:15:41 UTC
Workflow: Pulse Release Pipeline #168
Validation Summary
- All required assets present ✓
- Checksums verified ✓
- Version strings correct ✓
- Binary architectures validated ✓
Bug Fixes
-
fix(ai): record patrol token usage in cost store for budget enforcement — Patrol runs, evaluation passes, and QuickAnalysis calls were consuming tokens without recording them in the cost store, making the
cost_budget_usd_30dbudget setting ineffective. Token usage is now tracked on all code paths including partial runs that error out. -
fix(proxmox): make monitor reload synchronous after auto-registration (#1303) — Auto-registered Proxmox nodes appeared in Settings but not on the main Proxmox tab because the monitor reload ran asynchronously and could fail silently. Now matches the manual add path.
-
fix(ai): route OpenRouter slash-delimited models to OpenAI provider (#1296) — Models like
google/gemini-2.5-flashorgoogle/gemini-2.0-flash:freefailed because the provider routing only handledprovider:modelcolon format. Slash-delimited OpenRouter model IDs are now correctly routed to the OpenAI-compatible provider. -
fix(ui): show PULSE_PUBLIC_URL value in settings and expand node tables to full width (#1305, #1304) — The settings API wasn't exposing the public URL from runtime config, and PVE/PBS/PMG node tables were missing the
w-fullCSS class. -
fix(patrol): clarify wearout semantics so AI knows 100% = healthy (#1300) — Renamed the wearout JSON field to
ssd_life_remaining_pctand updated patrol context so 100% is correctly interpreted as fully healthy. -
fix(installer): avoid "No space left on device" on QNAP — Write agent binary to persistent storage instead of tmpfs on QNAP QTS/QuTS hero systems.
-
fix(docs): audit and fix agent docs vs install script discrepancies (#1299) — Corrected
--enable-*=falseflags to--disable-*and other doc/script mismatches.
New Features
- feat(api): add POST /api/ai/patrol/undismiss endpoint (#1300) — Users can now revert dismissed or suppressed findings. Previously the
Undismiss()method existed internally but was never exposed via the API.
Installation
Docker (recommended):
docker pull rcourtman/pulse:5.1.16Docker Compose:
Update your docker-compose.yml to use rcourtman/pulse:5.1.16
See the Installation Guide for complete setup instructions.