Complete rc.11 view-preference release coverage

This commit is contained in:
pulse-triage[bot]
2026-08-28 11:24:07 +01:00
parent dfc9435af8
commit a60375debc
4 changed files with 8 additions and 3 deletions
@@ -1846,7 +1846,8 @@ persistence. The rc.11 corrective set extends that boundary to token creation,
agent-install issuance, and agent-removal revocation; corrects version-specific
Anthropic cost estimates; merges complete cross-source disk identities; retains
uniquely resolved dismissed TrueNAS SMART risk; and stabilizes narrow alert
investigation plus shared chart interaction. It also checkpoints active-state
investigation, shared chart interaction, and responsive inline View preferences.
It also checkpoints active-state
recovery synchronously after durable lifecycle failure and prevents any Pulse
host interface from satisfying an external dead-man signal. The changes since
`v6.4.0-rc.6` add the canonical `alert_fired`
+2 -2
View File
@@ -1,6 +1,6 @@
# Pulse v6.4.0-rc.11 Release Notes
`v6.4.0-rc.11` follows the alerting improvements in rc.10 with corrective reliability work for credentials, AI cost controls, storage identity, and narrow-screen incident investigation.
`v6.4.0-rc.11` follows the alerting improvements in rc.10 with corrective reliability work for credentials, AI cost controls, storage identity, and everyday investigation controls.
## What's improved
@@ -8,7 +8,7 @@
- **Accurate Anthropic budgets** - Current Opus and Haiku versions use version-specific first-party rates, so stale estimates no longer stop Patrol early or understate current Haiku usage.
- **Stronger disk identity and risk** - PVE and agent observations of the same RAID volume merge across normalized serial/WWN forms, while dismissed TrueNAS SMART alerts continue to flag uniquely identified disks with critical hardware evidence.
- **Safer recovery and watchdog isolation** - Alert lifecycle failures checkpoint recoverable active state without deadlocking, and external dead-man targets fail closed when DNS or a literal address points to any Pulse host interface.
- **More stable incident investigation** - Mobile-width alert timelines keep context and actions together, shared history charts expose readable numeric axes, and grouped charts synchronize hover timestamps.
- **More stable incident investigation** - Mobile-width alert timelines keep context and actions together, history charts expose readable axes and synchronized hover times, and View preferences expand inline without covering tables.
- **Durable alert lifecycles** - Alert history and active state now rebuild from the event log after restarts, with persisted identities migrated automatically and false all-clear states prevented during hydration.
- **Better notification control** - Alerts can be snoozed individually, maintenance can recur by scope, escalation repeats can target specific destinations, delivery routes can filter by severity, and informational events remain distinct from warnings.
- **Earlier capacity warnings** - Rolling metric windows and predictive storage forecasts surface sustained pressure and likely exhaustion before a single threshold breach becomes an outage.
@@ -19,6 +19,7 @@ This changelog describes the changes since `v6.4.0-rc.10`. The candidate also re
- Alert-lifecycle append failures synchronously checkpoint a lock-independent active-state recovery projection, while an epoch guard prevents overlapping stale checkpoints from clearing degraded state.
- Dead-man configuration and dial-time DNS validation reject every address assigned to the Pulse host and fail closed when local-interface enumeration is unavailable.
- Alert investigation on narrow layouts uses a dedicated timeline dialog, while shared history charts synchronize hover timestamps and retain readable axes.
- Remembered table View preferences expand in a responsive inline disclosure with consistent controls instead of a floating panel over the monitored resources.
- The append-only event log is the authority for alert history and active lifecycle reconstruction, including restart recovery, acknowledgement, resolution, suppression, notification, and migration evidence.
- Alert identities and persisted history migrate to canonical resource keys, while active state uses durable atomic snapshots and ordered recovery.
- Escalation and delivery decisions are destination-specific, repeated holds are coalesced, and destination updates persist before the active runtime changes.
@@ -36,6 +37,7 @@ This changelog describes the changes since `v6.4.0-rc.10`. The candidate also re
- Failed durable lifecycle writes no longer risk losing current active alerts or resurrecting alerts resolved before restart, and stale periodic checkpoints cannot overwrite the failure snapshot.
- A watchdog hostname or private-LAN address that resolves back to Pulse can no longer masquerade as an external progress signal.
- Mobile alert timelines remain scroll-stable, selected incident history revalidates correctly, chart axis labels remain readable, and grouped hover timestamps stay aligned.
- View preferences and the nested column selector no longer clip, cover table content, or leave mismatched controls on narrow and desktop layouts.
- Alert hydration no longer exposes a false all-clear state before persisted incidents are restored.
- Restart recovery, history queries, and mock alert timelines preserve lifecycle order, observation time, and complete incident evidence.
- Fresh rolling-window metric data remains authoritative, including when older samples or counter resets are present.
@@ -897,6 +897,7 @@ func TestCurrentPrereleasePacketTracksInstallMetadata(t *testing.T) {
"Safer governed actions",
"Safer recovery and watchdog isolation",
"external dead-man targets fail closed when DNS or a literal address points to any Pulse host interface",
"View preferences expand inline without covering tables",
"Existing Pulse Mobile iOS build 12 and Android versionCode 9 remain compatible",
"The new `alert_fired` push uses the already-supported `view_alert` action",
"not Authenticode-signed",
@@ -922,6 +923,7 @@ func TestCurrentPrereleasePacketTracksInstallMetadata(t *testing.T) {
"Docker lifecycle results distinguish command acceptance from independently observed post-action state",
"Alert-lifecycle append failures synchronously checkpoint a lock-independent active-state recovery projection",
"Dead-man configuration and dial-time DNS validation reject every address assigned to the Pulse host",
"Remembered table View preferences expand in a responsive inline disclosure",
"Email, ntfy, and mobile push presentation preserve informational priority instead of elevating non-warning events to warning treatment.",
"Windows signing decision: prereleases publish checksum- and detached-signature-verified Windows agents without Authenticode",
"Mobile decision: `existing-mobile-build-compatible`",