Commit Graph

10821 Commits

Author SHA1 Message Date
pulse-triage[bot] bfd4ce6c85 Merge candidate 20260906T125520Z-core-runtime
Change-source: pulse-maintainer
2026-09-06 14:16:35 +01:00
pulse-triage[bot] 35181d4c91 fix(tests): supply valid PBS datastore health fixture
The advanced proposal's complete backend shard exposed a shared PBS fixture that returned an array from the datastore-status endpoint. Supply the healthy datastore observation those node-metric lifecycle tests intend, preventing the live datastore evaluator from fabricating an unrelated connectivity incident.

Change-source: pulse-maintainer
2026-09-06 14:12:46 +01:00
rcourtman f5f440dbad Separate command connectivity from monitoring evidence
Name command transport explicitly in shared query results and preserve
unobserved connection state in topology and Assistant inventory context.
Keep parent-node transport distinct from a direct guest connection so
monitoring evidence cannot imply command access or collection downtime.

Existing execution policy and approval checks remain authoritative.
2026-09-06 14:10:11 +01:00
pulse-triage[bot] f5eba15cf6 test(pbs): enforce datastore policy through live polling
Cover disabled alerting, storage suppression and canonical datastore overrides before the polled capacity lifecycle. Removing the conversion alias makes the disabled-override regression case fail.

Change-source: pulse-maintainer
2026-09-06 14:02:02 +01:00
pulse-triage[bot] 3eea42fd49 test(alerts): reject stale healthy evidence after queue refresh failure
A pre-action health read can finish after retry or dismissal succeeds but its follow-up read fails. Exercise this combined race for both actions so old healthy evidence cannot erase delivery uncertainty.

Change-source: pulse-maintainer
2026-09-06 14:01:05 +01:00
pulse-triage[bot] cd12b62bae Merge benchmark executable provenance evidence
Preserve the exact reviewed candidate and bind future CI samples to executed binary hashes.\n\nChange-source: pulse-maintainer

Change-source: pulse-maintainer
2026-09-06 13:48:10 +01:00
pulse-triage[bot] acaf1045f5 Merge web alert uncertainty regression coverage
Preserve the exact reviewed candidate while combining it with existing mainline PBS coverage.\n\nChange-source: pulse-maintainer

Change-source: pulse-maintainer
2026-09-06 13:48:10 +01:00
rcourtman 4d302109ce Record storage diagnosis qualification limits
Bind the ordinary read-only storage assessment to the corrected runtime and
persisted tool evidence. Keep useful capacity observations separate from
unsupported causal and temporal claims so completion is not counted as a
qualified diagnosis or autonomous outcome.
2026-09-06 13:38:54 +01:00
pulse-triage[bot] 7475fbf5f4 fix(ci): bind benchmark samples to executed binary hashes
Record executable SHA-256 before measured Go test invocations without logging paths or arguments. Preserve sample ordering and failure status; document instrumentation limits rather than dismissing historical regressions.

Change-source: pulse-maintainer
2026-09-06 13:32:05 +01:00
pulse-triage[bot] 1eb6d46c35 test(alerts): preserve uncertainty after queue action refresh failure
A successful retry or dismissal does not establish that the queue is healthy when the follow-up read fails. Cover both actions so connection loss cannot silently clear the attention state, and verify the independent evidence refresh still runs and busy flags settle.

Change-source: pulse-maintainer
2026-09-06 13:27:22 +01:00
rcourtman 355ac1f0a4 Resolve configuration reads from current inventory
Native container config reads confused missing session discovery with a
missing resource and could reuse stale placement. Read identity and
capability from canonical inventory while preserving explicit query
restrictions and existing action authority.

Keep unavailable providers, unsupported adapters and empty observations
distinct from resource absence, with the tool error bit preserved.
2026-09-06 13:25:00 +01:00
pulse-triage[bot] 64575d7b7d test(pbs): preserve capacity incidents across failed datastore listings
Fresh PBS polling now evaluates datastore alerts directly. Protect the missing-list boundary so permission errors, upstream failures, malformed responses and empty listings cannot silently resolve an existing capacity incident during unified sync; retain observed recovery and recurrence checks.

Change-source: pulse-maintainer
2026-09-06 13:24:18 +01:00
pulse-triage[bot] 15e7f5c20c Merge core-runtime PBS datastore alert evaluation
Change-source: pulse-maintainer
2026-09-06 13:11:34 +01:00
pulse-triage[bot] f513acda40 fix(tests): format alert delivery card coverage
The combined Frontend formatting gate also found the newest reactive warning
and busy-control tests outside the repository's Prettier form. Apply only the
formatter output so those accepted assertions can run under the normal gate.

Change-source: pulse-maintainer
2026-09-06 13:06:34 +01:00
rcourtman 0fcb2ee147 Align partial I/O regression expectations
A missing direction cannot establish aggregate throughput. Update the
remaining coverage cases to expect an unavailable total, consistent with
the observation contract and user-visible missing readings.
2026-09-06 13:05:01 +01:00
pulse-triage[bot] f0466ce2cf fix(tests): format delivery failure regression coverage
The existing proposal's Frontend job rejected the retained queue-action test
because its nested parameterized callback did not match the repository's
Prettier output. Apply formatting only so the reviewed behavioural assertions
can pass the unchanged frontend gate.

Change-source: pulse-maintainer
2026-09-06 13:04:56 +01:00
pulse-triage[bot] 3b21ed22a4 fix(pbs): evaluate configured datastore alerts on live polls
Connect fresh PBS storage observations to the existing capacity and connectivity evaluator. Exercise HTTP polling through unified sync, absent counter retention, confirmed empty recovery and recurrence with alternate counter names.

Change-source: pulse-maintainer
2026-09-06 12:59:04 +01:00
rcourtman f48c806718 Preserve observed Docker storage evidence
Missing block I/O and container image sizes could become false evidence
for diagnosis. Preserve per-direction counter presence and measured zero
through collection, resource conversion and browser rendering. Separate
new observed history from ambiguous retained disk series without deleting
old rows or changing public metric names.

Keep partial host rates distinct and persist a newly enabled Disk I/O
column across the first preference reload.
2026-09-06 12:45:40 +01:00
pulse-triage[bot] 7cb3a361a7 test(alerts): protect delivery warning transitions and busy controls
Keep unavailable status from presenting stale failure advice and prevent conflicting retry/dismiss controls while queue actions are pending. Existing hook tests cover request ordering, but rendered transition and busy-state behaviour lacked direct regression assertions. Focused tests pass; removing status precedence or mutual disabling makes the new cases fail.

Change-source: pulse-maintainer
2026-09-06 12:45:30 +01:00
pulse-triage[bot] 9482597f11 Merge candidate 20260906T112005Z-web-product
Change-source: pulse-maintainer
2026-09-06 12:34:54 +01:00
pulse-triage[bot] 2d36bb7d4d test(assistant): add portable identity browser regression
Release-line could reproduce tool identity and shared evidence regressions but could not replay browser evidence tied to private capture paths. Supply a synthetic standalone real reducer/transcript journey with blocked backend and external requests, desktop and narrow assertions, and content-hashed receipts. This verifies renderer behaviour without claiming provider, production or release admission qualification.

Change-source: pulse-maintainer
2026-09-06 12:29:50 +01:00
pulse-triage[bot] 2e93644991 test(alerts): protect storage connectivity recovery across restart
Exercise mirror and SQLite restoration through missing connectivity, independent healthy capacity, confirmed recovery and a second restart. Negative control fails in both modes with the old missing-status recovery behaviour.

Change-source: pulse-maintainer
2026-09-06 12:24:27 +01:00
pulse-triage[bot] a8c1b067d6 Merge candidate 20260906T105022Z-core-runtime
Change-source: pulse-maintainer
2026-09-06 12:14:27 +01:00
pulse-triage[bot] be74f56aff Merge upstream main at 20260906T105913Z batch boundary
Change-source: pulse-maintainer

# Conflicts:
#	frontend-modern/browser-verification.json
2026-09-06 12:02:03 +01:00
pulse-triage[bot] 5aa9d44b0a test(alerts): cover storage recurrence across persistent restarts
The storage persistence regression stopped after recovery, leaving a later occurrence untested. Extend both recovery-mirror and SQLite paths through renewed pressure, restart, missing capacity and measured recovery to protect occurrence identity without claiming notification receipt.

Change-source: pulse-maintainer
2026-09-06 11:58:18 +01:00
pulse-triage[bot] 1152e3f8f5 test(web): preserve failure evidence after unsuccessful queue actions
Cancelled or rejected retained-delivery actions must keep readable degraded health and must not trigger success-path refresh callbacks. Cover both retry and dismissal, including busy-state reset; a negative control refreshing after rejection fails both new rejection cases.

Change-source: pulse-maintainer
2026-09-06 11:56:40 +01:00
rcourtman 6b0abc3bee Merge pull request #1934 from rcourtman/fix/assistant-tool-identity
fix(assistant): preserve tool evidence identity
2026-09-06 11:56:18 +01:00
pulse-triage[bot] d6dc795128 Merge candidate 20260906T102520Z-core-runtime
Integrate the reviewed host ownership rollback regression test without re-parenting its exact candidate commit.

Change-source: pulse-maintainer
2026-09-06 11:40:17 +01:00
pulse-triage[bot] 8c5fdd6e20 Merge candidate 20260906T102519Z-web-product
Integrate the reviewed notification evidence regression test without re-parenting its exact candidate commit.

Change-source: pulse-maintainer
2026-09-06 11:40:17 +01:00
pulse-triage[bot] 1a3450a5b0 test(config): protect failed dormant host ownership transfer
Verify failed node-link persistence rolls back both the displaced owner and replacement, preserves report watermarks and reservations, and permits a durable retry on the same store. A rollback-omission negative control reproduces the assertion failure; no runtime behaviour changes.

Change-source: pulse-maintainer
2026-09-06 11:29:44 +01:00
pulse-triage[bot] a49bd503ea test(web): cover held-event refresh failure isolation
Protect the independent evidence paths when a previously readable held-event feed fails. Stale suppression rows must clear without marking a successful delivery-log read unavailable; this transition was not covered by the overlap and disposal tests.

Change-source: pulse-maintainer
2026-09-06 11:28:42 +01:00
rcourtman 33b852f66b fix(assistant): preserve tool evidence identity
Concurrent calls with the same tool name could collapse pending activity or
remove a sibling approval. Deep transcript reconciliation also mutated shared
tool objects when status rows disappeared, replacing earlier evidence with a
later result. Match supplied invocation IDs strictly and key immutable message
rows without reconciling their nested evidence.

Add regressions for both causes and record desktop, intermediate and narrow
browser replay of all 23 captured tool results. Record the healthy and dependency
model qualification limits separately from renderer and fixture-cleanup proof.
2026-09-06 11:21:10 +01:00
pulse-triage[bot] 7a0fced1f7 Merge candidate 20260906T095829Z-delivery-trust
Change-source: pulse-maintainer
2026-09-06 11:18:09 +01:00
pulse-triage[bot] 989fcc4708 Merge candidate 20260906T094514Z-core-runtime
Change-source: pulse-maintainer
2026-09-06 11:18:09 +01:00
pulse-triage[bot] 449f3b1bc8 fix(monitoring): persist operator host node link intent
Commit link and unlink journal updates before publishing state, preserve manual selections across report and provider refresh boundaries, and reserve dormant owners across restart. Re-evaluate known automatic associations using provider names while retaining legacy unknown links.

Change-source: pulse-maintainer
2026-09-06 11:13:59 +01:00
pulse-triage[bot] cbfe0d8eac ci: retain exact benchmark collection provenance
PR #1933 failed paired normalization benchmarks despite unchanged hot-path source. Preserve actual checkout identities, selected toolchains and sample order so investigation does not confuse PR head metadata with measured source. Keep thresholds and sample collection unchanged.

Change-source: pulse-maintainer
2026-09-06 11:12:42 +01:00
pulse-triage[bot] e05776356e Merge candidate 20260906T091009Z-web-product
Change-source: pulse-maintainer
2026-09-06 10:37:42 +01:00
pulse-triage[bot] 505789890a Merge candidate 20260906T091021Z-core-runtime
Change-source: pulse-maintainer
2026-09-06 10:37:42 +01:00
pulse-triage[bot] c27c8abc77 fix(web): retain current delivery evidence across overlapping reads
Mount and Retry reads can finish out of order, erasing current attempts and held-event evidence or hiding an unavailable result. Assign refresh ownership and ignore abandoned completions after disposal. Ordinary regression tests and six scripted Chromium cases protect ordering and loading state; this does not qualify installed notification delivery.

Change-source: pulse-maintainer
2026-09-06 10:19:46 +01:00
pulse-triage[bot] c268d25e54 test(monitoring): protect manual links against stale association cleanup
Record reproduced restart gaps and legacy provenance ambiguity; do not enable destructive cleanup.\n\nChange-source: pulse-maintainer

Change-source: pulse-maintainer
2026-09-06 10:19:41 +01:00
pulse-triage[bot] 9761e5e914 Merge remote-tracking branch 'origin/main'
Change-source: pulse-maintainer
2026-09-06 10:00:52 +01:00
pulse-triage[bot] 9b4fa52d84 Merge pull request #1931 from rcourtman/maintainer/20260906T080623Z
Keep storage alerts dependable and TrueNAS setup checks accurate
2026-09-06 09:52:30 +01:00
pulse-triage[bot] dba3307c59 Merge candidate 20260906T083019Z-core-runtime
Change-source: pulse-maintainer
2026-09-06 09:38:58 +01:00
pulse-triage[bot] 7f80c2c0b8 test(monitoring): protect asymmetric bridge association boundaries
Symmetric bridge fixtures can pass when one address inventory loses its filter. Exercise repeated ingestion with one-sided Docker bridges and valid custom management bridges, checking both link directions. Mutation checks reject loss of either filter and the earlier broad bridge exclusion.

Change-source: pulse-maintainer
2026-09-06 09:33:06 +01:00
pulse-triage[bot] 47a45324bf Merge candidate 20260906T082503Z-web-product
Change-source: pulse-maintainer
2026-09-06 09:33:00 +01:00
pulse-triage[bot] 2ed9965968 fix(monitoring): preserve custom bridge link evidence
Limit automatic Docker bridge filtering to the generated br-<12 hex> convention so custom management bridges such as br-mgmt remain eligible for host association. Keep docker-prefixed and non-global-unicast exclusions intact.

Change-source: pulse-maintainer
2026-09-06 09:28:51 +01:00
pulse-triage[bot] e2a125ac34 test(alerts): retain delivery-log ordering defect reproductions
Mount and retry reads can overlap and overwrite newer delivery evidence. Preserve three explicit expected-failure invariants so the pending repair has deterministic reproduction, plus proof that held events do not delay the primary read. Mock held-event requests rather than leaking network calls from hook tests.

Contract-Neutral: tests only; no runtime or user-visible behaviour changed
Change-source: pulse-maintainer
2026-09-06 09:27:24 +01:00
pulse-triage[bot] 20bd7092c2 Merge candidate 20260906T081300Z-core-runtime
Change-source: pulse-maintainer
2026-09-06 09:26:09 +01:00
pulse-triage[bot] 386fc0415e fix(monitoring): reject host-local addresses in agent auto-linking
A Docker bridge or link-local address can be unique among monitored PVE nodes but also exist on an unrelated NAS. Counting PVE owners alone then creates a false reciprocal agent association. Exclude host-local IPs and known Docker bridge interfaces from automatic network evidence, preserving management bridges and explicit unicast report IPs.

Seven synthetic negative cases fail before this repair and pass afterwards. Focused matcher and host-report tests pass under the race detector. This prevents a reproduced backend misassociation; it does not establish the cause or resolution of issue #1930, whose diagnostic payload remains unavailable.

Change-source: pulse-maintainer
2026-09-06 09:18:59 +01:00
pulse-triage[bot] a8a1c87696 Merge candidate 20260906T075004Z-web-product
Integrate the reviewed Proxmox inventory membership boundary test after the batch-boundary upstream merge while preserving candidate ancestry.

Change-source: pulse-maintainer
2026-09-06 09:16:14 +01:00