ViewBus 0.9.1
Download
- ViewBus_0.9.1_x64-setup.exe — Windows installer (x64). Direct download for everyone.
- viewbus_0.9.1_x64.msix — MSIX package, for Microsoft Store submission and sideload installs.
- ViewBus_0.9.1_aarch64.dmg — macOS (Apple Silicon, unsigned — see install notes). Intel Macs can run this under Rosetta 2.
macOS install: the DMGs are unsigned. macOS will say the app is damaged — it isn't. Drag ViewBus.app to /Applications, then run xattr -cr /Applications/ViewBus.app in Terminal. See install/macos.md for the full ritual.
Changes since v0.8.5
- [Patch] Stop CI caches from eating the monthly storage allowance
- [Patch] Record how a dead tag truncates release notes
- [Minor] Bump version to 0.9.1
- [Patch] Drop peeked messages the counts say are already gone
- [Patch] Stop release artifacts from filling the storage quota
- [Patch] Unbreak the macOS build on a Windows-only toast constant
- [Minor] Bump version to 0.9.0
- Merge pull request #25 from haakofli/FIX-011-todo-quick-wins
- [Patch] FIX-011: Reconcile TODO with what actually shipped
- [Patch] FIX-011: Document the webhook delivery contract
- [Patch] FIX-011: Grow the peek-all buffer in place
- [Patch] FIX-011: Make failures that only reached a toast reconstructable
- [Patch] FIX-011: Trust the backend's peek timeout messages
- [Patch] FIX-011: Wait out concurrent SQLite writers instead of failing
- [Patch] FIX-011: Keep manual connections when the keychain is unreadable
- Merge pull request #24 from haakofli/FIX-010-code-quality-audit-fixes
- [Patch] FIX-010: Correct the error-logging ledger
- [Patch] FIX-010: TODO.md reflects logError labels and audit outcomes
- [Patch] FIX-010: Lint config hardening + crash-path regression test
- [Patch] FIX-010: Adopt ESLint with layer-boundary rules; lint gates releases
- [Patch] FIX-010: Carry the sample-timestamp semantics into the shared module
- [Patch] FIX-010: Remove dead monitoring exports
- [Patch] FIX-010: Shared formatters — kill the diverged relativeAge copies
- [Patch] FIX-010: One label per failure path in monitoring logging
- [Patch] FIX-010: Monitoring catches route through logError
- [Patch] FIX-010: Boundary label wired once; demo tree-shake contract noted
- [Patch] FIX-010: Warn that mocking toastStore breaks the Toaster
- [Patch] FIX-010: Close the last services/ui layer violations
- [Patch] FIX-010: Toast store lives in stores/, Toaster in features/
- [Patch] FIX-010: Tighten announcements parse severity and log docs
- [Patch] FIX-010: Retry of the boot subscription load logs WARN too
- [Patch] FIX-010: Expected-offline fetch failures log at WARN
- [Patch] FIX-010: Pin the network-error log wiring with tests
- [Patch] FIX-010: Correct the log-storm rationale in wiki and comment
- [Patch] FIX-010: Collapse offline scheduler warnings to one line per tick
- [Patch] FIX-010: Keep the peek session hint off DLQ timeouts and hedge its cause
- [Patch] FIX-010: Sessionful peek timeout names the likely cause
- [Patch] FIX-010: Bulk worker re-opens session via let-else instead of unwrap
- [Patch] FIX-010: Sources queries propagate SQL errors instead of dropping namespaces
- [Patch] FIX-010: Correct the parking_lot rationale comment
- [Patch] FIX-010: MCP sidecar uses parking_lot Mutex — no poisoning
- [Patch] FIX-010: Log dropped bulk-job writes and terminal emits
- [Patch] FIX-010: Plan for the code-quality audit fixes
- [Patch] FIX-010: Pin unsigned-by-design webhook delivery in the drain
- [Patch] FIX-010: Refuse unsigned webhook test sends
- [Patch] FIX-010: Harden webhook signing and surface dead-letters
- [Patch] FIX-010: Abort webhook drain on set-listing failure instead of dead-lettering
- [Patch] FIX-010: Keychain read failure defers webhook instead of sending unsigned
- Merge pull request #23 from haakofli/DEV-021-back-forward-navigation
- [Patch] DEV-021: Integration test for the history round-trip
- [Patch] DEV-021: Don't exit monitoring on Esc in inputs or dialogs
- [Patch] DEV-021: Esc hint on the monitoring exit button
- [Minor] DEV-021: Alt+Left/Right keyboard back and forward
- [Minor] DEV-021: Track navigation and bind mouse back/forward buttons
- [Minor] DEV-021: Navigation history store (back/forward stack)
- [Patch] DEV-021: Design back/forward navigation + esc hint
- [Patch] DEV-020: clippy-clean the Phase 7 test scaffolding, record gates
- [Patch] DEV-020: monitoring wiki brought in line with shipped behavior
- [Patch] DEV-020: source ids match literally in the enrolment query
- [Patch] DEV-020: backoff jitter survives Rust upgrades
- [Patch] DEV-020: user webhook headers cannot clobber framing or signature
- [Patch] DEV-020: a partial sweep says so instead of passing as whole
- [Patch] DEV-020: notification channels fetch one set, not all of them
- [Patch] DEV-020: remove dead monitoring components, listener, and stale comments
- [Minor] DEV-020: collapse Source to rest_admin - rows migrated, runbook truthful
- [Minor] DEV-020: Rules answers what's watched, firing, and muted
- [Minor] DEV-020: retire the Live pane - the dashboard absorbs its tools
- [Patch] DEV-020: drop the alert strip - the worklist is the page
- [Minor] DEV-020: dashboard is a ranked worklist with inline expansion
- [Patch] DEV-020: design the dashboard-as-worklist rebuild
- [Patch] DEV-020: finish surface coherence pass on the dashboard
- [Patch] DEV-020: flatten the dashboard, restore the sidebar collapse and expand controls
- [Patch] DEV-020: the resource tree waits for the button to land on the way back
- [Patch] DEV-020: sequence the monitoring entry as a cascade
- [Patch] DEV-020: separate the exit from the section label, always animate
- [Patch] DEV-020: the way out of monitoring is always visible
- [Minor] DEV-020: morph the sidebar button with FLIP, open the dashboard with coverage
- [Patch] DEV-020: pane header stops overlapping the sidebar and its own content
- [Patch] DEV-020: no employer names in test data or docs
- [Minor] DEV-020: entering monitoring animates the sidebar swap
- [Patch] DEV-020: sources are configured in one place
- [Minor] DEV-020: active alerts read as a triage list, charts survive a lopsided estate
- [Patch] DEV-020: pane header bars, honest breadcrumb, one off-state
- [Minor] DEV-020: monitoring nav lives in the sidebar, not a second one
- [Patch] DEV-020: monitoring pane is shared state, not page-local
- [Patch] DEV-020: plan the monitoring surface coherence work
- [Patch] DEV-020: record Phase 6 gate results
- [Minor] DEV-020: export a resource's samples to CSV
- [Minor] DEV-020: namespace dead-letter trend
- [Minor] DEV-020: 24h sparklines on Live rows
- [Minor] DEV-020: History shows MTTR, flappiest, longest-burning
- [Minor] DEV-020: estate dead-letter trend on the dashboard
- [Minor] DEV-020: Dashboard pane - active alerts, top offenders, activity heatmap
- [Patch] DEV-020: Phase 5 gate passed manual testing
- [Patch] DEV-020: record Phase 5 gate results, carry forward the 3+4 manual checklist
- [Minor] DEV-020: Live pane can rank by active backlog
- [Minor] DEV-020: alert editor - four explicit alert types, no silent conversion
- [Minor] DEV-020: oldest-age conditions wired - DLQ head-age probing for alerted resources
- [Minor] DEV-020: for-duration qualifier - fire only on sustained breach
- [Minor] DEV-020: conditions can target the active message count
- [Minor] DEV-020: one-click start monitoring for the active subscription
- [Minor] DEV-020: create an alert from the queue - resource tab, sidebar menu, Live rows
- [Minor] DEV-020: sources show last-checked, failure count, and stale enrolments
- [Minor] DEV-020: Sources pane - enrolment and cadence live inside the monitoring surface
- [Minor] DEV-020: monitoring is a full content view, not a 640px dialog
- [Minor] DEV-020: optional re-notification while an alert stays firing
- [Patch] DEV-020: toasts lead with the count and resource, set name demoted to body
- [Minor] DEV-020: toast click focuses viewbus and jumps to the alerting resource (Windows)
- [Patch] DEV-020: alert feed distinguishes new dead letters from the total
- [Patch] DEV-020: Alerts table shows the rule, not the ignored cadence
- [Patch] DEV-020: Live pane and Refresh respect the master switch
- [Patch] DEV-020: stop the watchdog killing healthy slow ticks
- [Patch] DEV-020: Sampling... pill shows only during real sweeps
- [Patch] DEV-020: charts show known values - anchor, extend-to-now, step rendering, rollup fallback
- [Patch] DEV-020: delta window anchors fall back to hourly rollups so 7d/30d alerts work
- [Minor] DEV-020: last-value rollup columns; daily tier no longer requires a 24/24 day
- [Patch] DEV-020: evict raw samples by last_seen_ts so current-state rows survive
- [Patch] DEV-020: delta alerts resolve when the count is stable past the window
- [Patch] Log per-file heap in CI so the next test stall is diagnosable
- [Patch] Make unit tests fail loudly on real Tauri IPC instead of hanging
- [Patch] Stop a stalled CI runner failing the release as a test timeout
- [Patch] Correct the paging notes — the feed does carry a next link
The "Source code" archives below are auto-generated by GitHub from the viewbus-site repo. They are not the app source and can be ignored.