Commit Graph

5347 Commits

Author SHA1 Message Date
pulse-triage[bot] 4efa529215 Close release-note qualification input and fixture gaps
Bind the new compiled notes helper and authored fixture in the rootful source manifest. Repair the visual rollback fixture's missing version and align the internal control-plane page with the active release-reliability target, without changing source routing or published packets.

Change-source: pulse-maintainer
2026-10-01 05:51:28 +01:00
pulse-triage[bot] 022b55083d Keep authored release notes compatible with safety checks
Bind stable notes to version and operator disclosures rather than obsolete prose. Support bounded grouped customer sections for v6.4.6 and later, align generation and rendering, and preserve published history and all qualification gates.

Change-source: pulse-maintainer
2026-10-01 05:28:54 +01:00
pulse-triage[bot] 6b23876ec8 Integrate reviewed truthful TrueNAS telemetry
Preserve exact Core candidate commits and per-metric missing-versus-zero semantics. Appliance recovery and release qualification remain separate outcomes.

Change-source: pulse-maintainer
2026-10-01 04:16:35 +01:00
pulse-triage[bot] 920aa2f27c Integrate reviewed post-publication watchdog observation
Change-source: pulse-maintainer
2026-10-01 03:39:51 +01:00
pulse-triage[bot] 8a0937a0f3 Integrate reviewed dated drawer History window
Change-source: pulse-maintainer
2026-10-01 03:39:50 +01:00
pulse-triage[bot] 22ca07ba71 Keep missing TrueNAS samples distinct from observed zero
Carry per-metric presence through REST and realtime snapshots, canonical host rows and shared History writes. Do not interpret arbitrary numeric object fields as reporting values. Preserve bounded telemetry failure diagnostics without blocking inventory or exposing provider text.

Change-source: pulse-maintainer
2026-10-01 03:25:28 +01:00
pulse-triage[bot] 857b6e416d Integrate reviewed safe TrueNAS diagnostics
Preserve the exact reviewed documentation candidate and its synthetic recipe evidence. Existing TrueNAS help becomes credential-safe and distinguishes capacity from observed telemetry; no runtime change.

Change-source: pulse-maintainer
2026-10-01 03:10:54 +01:00
pulse-triage[bot] 4101c37db5 Keep watchdog source observations separate from promotion gates
The exact no-mutation watchdog failed at published 6.4.5 because the release line has pending repairs but still declares its stable VERSION. Observe that governed source and its preceding stable reference without inventing a new promotion, while keeping candidate resolver gates unchanged and watchdog artifacts out of promotion-readiness records.

Change-source: pulse-maintainer
2026-10-01 02:56:58 +01:00
pulse-triage[bot] 1c8f51bf1f Integrate reviewed active alert acknowledgement retention
Change-source: pulse-maintainer
2026-10-01 02:49:11 +01:00
pulse-triage[bot] 5e886b04d6 Keep drawer History on one dated time window
Use the fulfilled API window and a common observed envelope across metric groups so sparse samples cannot look like a full selected range. Show dated endpoints, retain them with matching failed-refresh data, and clear them on range replacement. Preserve edge observations and reject non-date geometry.

Pin mounted/model regressions, update both affected contracts, and retain production PBS drawer browser proof with its installed-acceptance limits.

Change-source: pulse-maintainer
2026-10-01 02:45:12 +01:00
pulse-triage[bot] 19fa6b1c8d Make TrueNAS diagnostics safe and distinguish missing telemetry
Replace token and API-key shell arguments with private header and payload files, verify the exact test/save recipes with synthetic credentials, and separate hardware capacity from actual usage and History. Bound local logs and keep sanitized evidence and trusted HTTPS as the troubleshooting path.

Contract-Neutral: Documentation and synthetic recipe checks only; no runtime, API, transport or metric contract changes.
Change-source: pulse-maintainer
2026-10-01 02:16:44 +01:00
pulse-triage[bot] e256e9fc50 Retain active alert acknowledgements through tracking cleanup
The hourly sweep pruned canonical acknowledgement records after 24 hours even while their incidents remained active. Preserve active tracking identities as the ordinary cleanup already does, so a short recovery and recurrence retain the operator decision. Keep inactive expiry, legacy timestamp fallback and explicit unacknowledgement unchanged. Validate manual and automatic acknowledgements through provider-native pool incident reconciliation, JSON and durable checkpoint restart, dispatch counters and retention bounds; update the alert contract in the same commit.

Change-source: pulse-maintainer
2026-10-01 02:14:32 +01:00
pulse-triage[bot] 00f82e2afc Integrate reviewed common-time History pointer inspection
Preserve the exact reviewed Web candidate and its browser receipts. Existing PBS History pointer readings now share one stored timestamp; absent sibling observations remain unavailable.

Change-source: pulse-maintainer
2026-10-01 02:01:05 +01:00
pulse-triage[bot] 02090fe351 Keep drawer History pointer values at one observed time
Resolve pointer inspection against the group's actual stored timestamps. Missing series stay unavailable instead of borrowing neighbours or live readings, while keyboard focus, single samples and scoped refresh recovery remain intact. Add mounted regressions, the shared contract and exact-content browser receipts.

Change-source: pulse-maintainer
2026-10-01 01:38:17 +01:00
pulse-triage[bot] 7cbde2e3bf Keep observed unacknowledged alerts through retention cleanup
Age-based housekeeping deleted continuing conditions when automatic acknowledgement was disabled. Require last-observation inactivity as well as occurrence age, retain legacy timestamp fallback and inactive cleanup, and document the unchanged acknowledgement/recovery boundaries. Regression exercises cached, absent and failed Docker registry reports, callback/history identity and actual checkpoint restart.

Change-source: pulse-maintainer
2026-10-01 01:26:14 +01:00
pulse-triage[bot] 0dc858cb36 Integrate reviewed keyboard and touch History inspection
Preserve exact reviewed candidate d38e2ec61a and retain both History and update-progress browser evidence. Only the shared receipt file needed resolution; frontend runtime content matches the candidate receipt.

Change-source: pulse-maintainer
2026-10-01 01:13:28 +01:00
pulse-triage[bot] 6fa78a01f8 Integrate reviewed ZFS monitoring guidance
Change-source: pulse-maintainer
2026-10-01 00:59:20 +01:00
pulse-triage[bot] 4824d1067e Integrate reviewed bounded alert checkpoint worker
Change-source: pulse-maintainer
2026-10-01 00:51:00 +01:00
pulse-triage[bot] 5dea312f2b Bound asynchronous alert checkpoints during bursts
Coalesce full active-alert snapshots into one worker and one requested follow-up instead of queueing a goroutine per mutation. Preserve immediate lifecycle durability, fresh snapshots, failure recovery and the final shutdown save; reproduce the old burst amplification and validate the new admission and persistence boundaries.

Change-source: pulse-maintainer
2026-10-01 00:28:53 +01:00
pulse-triage[bot] 9093cc881d Integrate reviewed exact-source release watchdog
Preserve the fixed no-publication envelope, component verdicts and reviewed Delivery commit identities.

Change-source: pulse-maintainer
2026-10-01 00:28:33 +01:00
pulse-triage[bot] d38e2ec61a Make drawer History inspectable by keyboard and touch
Expose existing stored history through labelled native observation controls and dated accessible descriptions. Keep missing samples distinct from live or neighbouring readings, preserve the selected timestamp through refreshes and reset selection at resource/range boundaries. Cover input state and real native browser interaction without changing collection or licence gates.

Change-source: pulse-maintainer
2026-10-01 00:28:29 +01:00
pulse-triage[bot] cf8a3f9a6c Clarify monitoring for unregistered Proxmox ZFS pools
Explain the configured-storage boundary, the existing agent capacity path and the separate pool-health gap. Keep data-only pools unchanged and put storage membership ahead of permission changes in troubleshooting.

Change-source: pulse-maintainer
2026-10-01 00:24:25 +01:00
pulse-triage[bot] d80b49835c Incorporate newly landed update-progress repair
Preserve accepted History recovery and current upstream ancestry after the publication boundary detected an upstream advance. Resolve the browser receipt collision by retaining both original parent-bound records without claiming new browser execution.

Change-source: pulse-maintainer
2026-10-01 00:11:24 +01:00
courtmanr@gmail.com 119ac49d10 Keep the update progress modal moving when the update stream goes quiet
Updating to v6.4.5-rc.5 and then v6.4.5 left the progress modal on
"Downloading update... 10%" even though the update finished in the
background. The status stream could go silent behind a proxy (Tailscale
Serve, nginx buffering) and the modal only advanced on stream events.

Backend: the update SSE endpoint now sends the current status on connect,
writes events through one ordered writer with an explicit flush, sends a
15s heartbeat and sets X-Accel-Buffering: no.

Frontend: a silence watchdog falls back to status polling, the restart
phase is entered only on real restart evidence (restarting status, the
server going away, or a version change) rather than a single failed poll,
and the page never auto-reloads on unconfirmed completion without a
pre-update version baseline to compare against.
2026-09-30 23:39:35 +01:00
pulse-triage[bot] 0d3e5a801a Integrate reviewed History refresh recovery
Retain matching History through failed refreshes and settle superseding reads. Preserve the exact reviewed frontend commit and its browser receipts.

Change-source: pulse-maintainer
2026-09-30 23:28:59 +01:00
pulse-triage[bot] 40037f0035 Bind on-demand release watchdogs to reviewed main
Retain the scheduled governed-source selection and no-mutation demo verdict in a separate fixed dispatch mode. Check its control SHA and candidate-free envelope before checkout, preserve ordinary rehearsal rollback and exact event-source guards, and skip candidate builds.

Change-source: pulse-maintainer
2026-09-30 23:27:54 +01:00
pulse-triage[bot] 744160fa0e Keep drawer History usable through failed refreshes
Retain only matching stored observations with an explicit refresh-failure warning and a keyboard-safe scoped retry. Settle latest-read loading when polling overtakes a foreground refresh. Preserve target isolation, licence gates and diagnostic containment with regressions and exact-content browser receipts.

Change-source: pulse-maintainer
2026-09-30 23:02:05 +01:00
pulse-triage[bot] 66ec68c813 Incorporate batch-start upstream main
Change-source: pulse-maintainer
2026-09-30 22:32:19 +01:00
pulse-triage[bot] 4b2b469b68 Integrate reviewed bounded dual-stack service-health repair
Change-source: pulse-maintainer
2026-09-30 22:19:22 +01:00
pulse-triage[bot] 781cbfa98e Integrate reviewed drawer History source isolation
Change-source: pulse-maintainer
2026-09-30 21:42:48 +01:00
pulse-triage[bot] fffaa64e57 fix(server): make local service-health probes dual-stack and bounded
Try both loopback families for IPv6 wildcard listeners without changing explicit or IPv4-only binds. Reserve each family a share of the API deadline, keep all later checks on the responding address, and retry a failed observation once with a fresh bounded budget in the telemetry background runner.

Keep genuine API, UI and asset failures visible and report only a closed timeout category, never transport details. Cover both real listener families, startup recovery, failure and privacy boundaries; synchronise the disclosure and subsystem contract.

Change-source: pulse-maintainer
2026-09-30 21:36:39 +01:00
pulse-triage[bot] ac67b2375d Integrate reviewed scoped updater guidance validation
Preserve exact Delivery candidate identity and retain the current canonical TrueNAS repair.

Change-source: pulse-maintainer
2026-09-30 21:17:23 +01:00
pulse-triage[bot] 4ba830bfd3 Keep drawer History scoped to its current target and range
Use the existing non-suspending query's source-isolation option so an uncached target or range cannot display or cache former-host observations. Forward AbortSignal to the Charts API without changing matching-cache or same-source polling behaviour.

The assigned-base VM regression has six failures, including former-host cache contamination; the final mock-backed PBS browser check covers delayed reads, withdrawal, failure, late response and locked ranges at desktop and phone widths. Update the shared frontend contract with real renderer/cancellation regressions. Installed #1723 acceptance and the separate exact-graph security repair remain unresolved.

Change-source: pulse-maintainer
2026-09-30 21:12:44 +01:00
courtmanr@gmail.com 6ad6e18d53 Raise brace-expansion and DOMPurify past current advisories
GHSA-q2hr-2g5m-vwhr (brace-expansion quadratic {a},b} rewrite, below
1.1.21 and 4.0.0-5.0.11) fails the required frontend dependency audit on
every pull request. Move the locked copies to 1.1.21 and 5.0.12, and
DOMPurify from 3.4.15 to 3.4.16 for GHSA-p98j-92pf-mc4p (IN_PLACE
afterSanitize hook XSS). Lockfile only; the dependency security floors
move with it.
2026-09-30 20:45:07 +01:00
pulse-triage[bot] 9d77f09b4f Reject unscoped server updater commands in release bodies
Keep the existing signed installer fallback and require nearby Pulse helper ownership for every install and rollback example, including authored bullets. A distant community-scripts warning must not make an unsafe command publishable.

Change-source: pulse-maintainer
2026-09-30 20:28:17 +01:00
pulse-triage[bot] 21a35494ae fix(truenas): request supported reporting aggregations
Use TrueNAS default summaries for reporting queries so SCALE 25.04 can validate its History responses. Preserve raw samples, time windows, CORE live telemetry and existing error boundaries.

Refs #2346

Change-source: pulse-maintainer
2026-09-30 19:48:10 +01:00
pulse-triage[bot] a919a84a26 Integrate reviewed allocation-bounded snapshot and metadata maintenance
Change-source: pulse-maintainer
2026-09-30 14:00:19 +01:00
pulse-triage[bot] 91eed973d2 Integrate reviewed safe API authentication guidance
Change-source: pulse-maintainer
2026-09-30 13:51:13 +01:00
pulse-triage[bot] 6ef79688a5 Keep positive npm advisory evidence fail-closed
A missing or zero total must not erase package or severity findings. Require a complete typed zero verdict, retain bounded outage handling for unknown reports, and keep raw metadata out of workflow annotations. Add executable regression coverage and update the installability contract.

Change-source: pulse-maintainer
2026-09-30 13:23:29 +01:00
pulse-triage[bot] 901274ee92 Reduce snapshot and clone allocations without trusting ID hints
Batch WebSocket identity decoding from the encoded arrays and retain decoder-owned entry buffers. Keep canonical metadata refresh on every resource clone while replacing membership maps with small scope slices and a single sensitivity-tag scan. Preserve delta identity, scope ordering, policy precedence and clone isolation with reference/fuzz and transition tests.

Adapt the remaining performance work proposed in Pulse PR #2342 for issue #2199. The contributor's first-ID check cannot verify a stale tail; this candidate uses standard JSON decoding for every encoded identity instead. Keep the imported contributor history and branch unchanged.

Co-authored-by: Andy Prosser <andy.prosser@icloud.com>
Based-on: https://github.com/rcourtman/Pulse/pull/2342
Original-Commit: 0cbfa43186
Change-source: pulse-maintainer
2026-09-30 13:21:56 +01:00
pulse-triage[bot] 45b2fae8db Keep API diagnostic credentials out of command arguments
Use a private header file and an authenticated read-only summary rather than passing tokens in argv to a public health check. Exercise both header formats, file permissions, preserved content and failing HTTP auth errors with synthetic local fixtures.

Contract-Neutral: API authentication, routes, scopes and CSRF enforcement are unchanged; this updates existing usage guidance and executable documentation checks.
Change-source: pulse-maintainer
2026-09-30 13:15:15 +01:00
pulse-triage[bot] 500ebec96e Integrate reviewed safe port troubleshooting guidance
Preserve the exact reviewed Product intelligence candidate and its deployment-specific, credential-safe help. No runtime or new product surface changes.

Change-source: pulse-maintainer
2026-09-30 08:57:30 +01:00
pulse-triage[bot] feba5d3fd4 Integrate reviewed bounded npm advisory diagnostics
Change-source: pulse-maintainer
2026-09-30 08:35:19 +01:00
pulse-triage[bot] 9bc6f6ed64 Make port troubleshooting safe and deployment-specific
Remove the full service-environment dump, which can expose authentication and integration credentials. Explain listener precedence, the separate agent port, systemd reloads, and Docker port recreation without changing the image or deleting persistent data. Keep the shipped guide identical and protect these boundaries with documentation tests.

Contract-Neutral: Guidance and verification for existing port configuration only; no runtime, authentication, schema or frontend behaviour changes.
Change-source: pulse-maintainer
2026-09-30 08:17:43 +01:00
pulse-triage[bot] 173290127a Keep npm advisory diagnostics bound to the original verdict
Render escaped, allowlisted details from the captured audit response instead of making a second registry call outside the wall-clock watchdog. Preserve every advisory failure and outage policy; executable fixtures pin single-request diagnostics, missing detail, transport-error precedence and annotation-safe output.

Change-source: pulse-maintainer
2026-09-30 08:13:11 +01:00
pulse-triage[bot] ffc44a0f8c Honour configured alert flapping thresholds above ten
A fixed ten-entry history made accepted higher thresholds unreachable and silently disabled storm suppression. Bound retained observations to the configured threshold while preserving the existing diagnostic allowance, expiry and one-shot cooldown. Verify normal config updates, callback admission, delivery diagnosis, window expiry, rearming and threshold changes, and register the focused proof owner.

Change-source: pulse-maintainer
2026-09-30 08:12:35 +01:00
pulse-triage[bot] 6e81f06e09 Integrate reviewed safe cloned-host identity guidance
Preserve the exact reviewed documentation candidate and its focused proof while retaining the current canonical frontier.

Change-source: pulse-maintainer
2026-09-30 02:57:07 +01:00
pulse-triage[bot] 25a2e56d5e Make cloned-host identity guidance safe and persistent
The agent prefers its saved identity before deriving one from the OS. The old live machine-ID deletion recipe could disrupt unrelated services while leaving a Pulse collision unchanged. Explain managed overrides, precedence, private evidence and distinct-host verification in both shipped guides; cover the safe path with documentation and real-browser checks.

Contract-Neutral: Guidance and verification for existing agent identity options only; no runtime, authentication, schema or frontend behaviour changes.
Change-source: pulse-maintainer
2026-09-30 02:29:54 +01:00
pulse-triage[bot] 3ea52c25b5 Complete PBS identity safety candidate on current main
Compose the retained PBS identity repair with current reviewed source without rewriting its history. The continuation requires terminal exact-source race validation before this candidate is complete.

Change-source: pulse-maintainer
2026-09-30 02:21:58 +01:00
pulse-triage[bot] a0081d676b Keep PBS Agent identity fresh and reject host-local IP matches
Direct PBS host correlation could lend Agent History and SMART ownership through loopback, Docker-local or stale address evidence, and a stale Agent could block its fresh replacement. Reuse the provider address filter and the five-minute observation boundary, preserve IPv6 URL hosts, and cover unsafe evidence, private management controls, link replacement and the three-PBS/nine-Agent topology.

Change-source: pulse-maintainer
2026-09-30 00:36:07 +01:00