Commit Graph

10622 Commits

Author SHA1 Message Date
pulse-triage[bot] 65c7a7dbc1 Merge pull request #1918 from rcourtman/maintainer/20260905T212144Z
Keep alert delivery and release checks trustworthy
2026-09-06 02:26:53 +01:00
pulse-triage[bot] 4a68f98602 Merge commit '3413b37940add4305f7b8f16369d37320799073f'
Change-source: pulse-maintainer
2026-09-06 01:01:28 +01:00
pulse-triage[bot] 4051b7d32a Merge commit '9d1b726da9a08797c6adb6330a1d1bac6d763ac7'
Change-source: pulse-maintainer
2026-09-06 01:01:28 +01:00
pulse-triage[bot] 3413b37940 fix(ci): include release trains in build and E2E triggers
PR #1921 targets release/v6.4 but receives only docs and boundary checks because build and E2E triggers still name the historical release branch. Include versioned release trains for push and pull request events without changing job gates or path filters. A focused regression fails all four event/workflow combinations before repair and passes after it.

Change-source: pulse-maintainer
2026-09-06 00:58:57 +01:00
pulse-triage[bot] 9d1b726da9 Fix stale notification health ownership with browser regression proof
Keep overlapping success, failure and loading completion owned by the latest started read. Retain caller and queue-action controls, subsystem contracts and exact-source scripted Chromium evidence. Installed delivery and release qualification remain separate.

Change-source: pulse-maintainer
2026-09-06 00:57:10 +01:00
pulse-triage[bot] b34ca8ec3d Merge candidate 20260905T230019Z-core-runtime
Preserve the reviewed recurring-alert restart regression and its exact ancestry on current canonical main.

Change-source: pulse-maintainer
2026-09-06 00:57:00 +01:00
pulse-triage[bot] bde794de79 test(relay): serve revocation fixture over trusted TLS
The workspace-scoped managed relay proof still supplied an HTTP revocation origin after the canonical relay began enforcing HTTPS-only credential transport. Use a local TLS server and pass its certificate to the child process so the combined canonical repositories exercise the production boundary rather than failing during startup.

Change-source: pulse-maintainer
2026-09-06 00:53:30 +01:00
pulse-triage[bot] aed8b8923a test(release): require exact public Helm package receipt
The exact-byte public package check superseded metadata-only chart inspection, but the broader deployment contract still required the removed command and failed deterministically. Require the consumer-path pull and byte comparison so the contract matches the stronger workflow guarantee.

Change-source: pulse-maintainer
2026-09-06 00:17:44 +01:00
pulse-triage[bot] a61ef55d56 Protect recurring alert delivery after resolution and restart
Resolution must retire obsolete queue rows without permanently muting a resource condition. Extend the restart/retry regression to require delivery of a new incident sharing the resolved alert ID, alongside recovery and surviving grouped alerts.

Change-source: pulse-maintainer
2026-09-06 00:13:19 +01:00
pulse-triage[bot] 2a833eccdf Guard resolved notification durability across abrupt process exit
Exercise pending, interrupted, failed and dead-lettered grouped alerts without closing SQLite before restart. Verify that resolution survives and retry preserves only live members and genuine recovery. Also fix the disabled-delivery test race found by repeated race testing: queue construction already starts workers, so use the locked processor setter and await reconciliation.

Change-source: pulse-maintainer
2026-09-05 23:52:17 +01:00
pulse-triage[bot] 229d8668af Record disabled queued notifications as cancelled, not delivered
Distinguish policy skips from provider success so suppressed jobs do not create false sent rows or successful audit entries. Reconcile cancelled queue health after releasing alert gates, preserve real attempt history, and cover all three providers for firing/recovery and global/destination disablement.

Change-source: pulse-maintainer
2026-09-05 23:29:16 +01:00
pulse-triage[bot] f9b5f6254a Merge candidate 20260905T215524Z-core-runtime
Preserve the reviewed notification retry finality fix and its exact ancestry after incorporating the batch-start upstream main.

Change-source: pulse-maintainer
2026-09-05 23:15:23 +01:00
pulse-triage[bot] fe273fc949 Prevent notification retries from replaying resolved alerts
Resolution only cancelled pending/sending rows, so retained failures could resurrect healthy incidents after operator retry and restart. Suppress terminal firing entries too, preserve unrelated grouped alerts and recovery jobs, and reconcile queue health after releasing locks. Reject stale per-item retries of cancelled or delivered rows. Regression tests reproduce both bypasses and retain failed-attempt history; focused race tests pass.

Change-source: pulse-maintainer
2026-09-05 23:11:02 +01:00
pulse-triage[bot] ce0c5a9795 Merge current upstream main before reliability proposal update
Incorporate the landed Patrol evidence-trust repair while preserving reviewed publication tip 6d6a776ef5 unchanged in ancestry.

Change-source: pulse-maintainer
2026-09-05 23:10:56 +01:00
rcourtman 4f9de86ef8 Merge pull request #1917 from rcourtman/fix/patrol-evidence-trust
fix(patrol): preserve refusals and expose measured summary evidence
2026-09-05 23:09:05 +01:00
pulse-triage[bot] 6d6a776ef5 Merge reviewed changed-data recovery qualification
Retain the exact reviewed browser regression commit and admission-clean source qualification receipts on current canonical main.\n\nChange-source: pulse-maintainer

Change-source: pulse-maintainer
2026-09-05 22:52:30 +01:00
pulse-triage[bot] b3395d9116 docs(web): retain admission-clean recovery qualification receipts
Preserve original failed-run JUnit bytes in deterministic gzip archives while normalising trailing CDATA whitespace in reviewable XML. Bind the passing source-build results, invocation flags and table-access attachments without changing tests or implying installed delivery qualification.

Change-source: pulse-maintainer
2026-09-05 22:47:25 +01:00
pulse-triage[bot] 1abaea81c3 test(web): qualify changed backend incidents across socket recovery
Existing browser qualification only compared unchanged navigation. Exercise genuine backend acknowledgement and empty active-alert responses while browser reads are interrupted, then assert rendered recovery without reload. Bind the target to the current generated estate and follow acknowledgement through list windowing. Both focused cases and the complete ten-case recovery matrix pass.

Change-source: pulse-maintainer
2026-09-05 22:44:25 +01:00
pulse-triage[bot] 64e2da1e0c Merge commit '135abb541439882545e299abc1d68112fc42624e'
Change-source: pulse-maintainer
2026-09-05 22:43:20 +01:00
pulse-triage[bot] 1bb8643f1d Merge reviewed exact Helm public-package receipt
Preserve the delivery candidate commit and combine it with the already-integrated Patrol evidence repair.

Change-source: pulse-maintainer
2026-09-05 22:37:23 +01:00
rcourtman 5288b64d40 fix(patrol): preserve refusals and expose measured summary evidence
A provider policy refusal was classified as a connection failure, while
summary tools mixed high-utilisation heuristics with unchecked health claims.
Preserve explicit refusals before tool recovery and provide retained metrics
with source scope, observation timestamps and bucket extrema for diagnosis.

Record the live qualification limits and the shared temporal tier-query gap.
2026-09-05 22:29:48 +01:00
pulse-triage[bot] 135abb5414 fix(api): validate Docker update agent running health readback
Replacement identity alone could confirm an unhealthy or restarting container when no independent observer was available. Check agent-reported running state and health, retaining inconclusive truth for unknown health and preserving intentionally stopped updates. Seven regression cases cover these distinctions; the four unsafe cases failed before the repair. Execution and compensation history are unchanged.

Change-source: pulse-maintainer
2026-09-05 22:25:48 +01:00
pulse-triage[bot] b5784df4b7 fix(delivery): verify public Helm package against qualified bytes
Readable chart metadata does not prove that the public index serves the OCI-qualified package. Pull through the consumer repository and compare exact bytes before reporting convergence, with offline regression coverage for mismatched, missing and unavailable downloads. Activation and publication authority remain unchanged.

Change-source: pulse-maintainer
2026-09-05 22:24:18 +01:00
pulse-triage[bot] c5e0ade24e Merge current upstream main before reliability publication\n\nIncorporate the landed Patrol resource-evidence repair while preserving the exact reviewed publication tip and its ancestry.\n\nChange-source: pulse-maintainer
Change-source: pulse-maintainer
2026-09-05 22:23:58 +01:00
rcourtman 7e33b2d37c Merge pull request #1916 from rcourtman/fix/patrol-resource-evidence
Repair resource evidence and Patrol readiness gates
2026-09-05 22:16:14 +01:00
pulse-triage[bot] adeecd4079 Merge pre-batch upstream main after web evidence review
Preserve the reviewed documentation commit unchanged while incorporating the exact upstream main state that existed before this coordination batch began.\n\nChange-source: pulse-maintainer

Change-source: pulse-maintainer
2026-09-05 22:09:26 +01:00
pulse-triage[bot] 7ddd910cb6 docs: clarify conditional navigation qualification evidence
The retained JUnit cannot establish that opt-in table assertions ran, and the repeat command omitted their flag. Make the repeat complete and distinguish navigation recovery from changed-data recovery so this receipt is not over-weighted in release decisions.

Change-source: pulse-maintainer
2026-09-05 22:04:45 +01:00
pulse-triage[bot] 88bf626d3a Merge pull request #1909 from rcourtman/maintainer/20260905T170325Z
Keep alerts accurate through outages, restarts, and genuine recovery
2026-09-05 22:03:23 +01:00
pulse-triage[bot] 364aa783d2 Merge reviewed navigation recovery qualification
Retain the exact evidence-only web candidate after inspecting its synthetic screenshots, unmodified result record, source binding, and explicitly bounded qualification claims.

Change-source: pulse-maintainer
2026-09-05 21:53:13 +01:00
pulse-triage[bot] 4c2e5e4417 Merge reviewed Docker update verification repair
Integrate the exact core-runtime candidate after confirming its independent state and health checks preserve execution history, stopped-container semantics, and receipt reconciliation boundaries.

Change-source: pulse-maintainer
2026-09-05 21:53:13 +01:00
pulse-triage[bot] 6375d09a8b fix(runtime): reject contradicted Docker update readback
Independent update verification must match the replacement's reported state and reject unhealthy running observations, not just match container identity. Preserve intentionally stopped replacements and keep missing agent readback inconclusive. Reproduced stopped, restarting and unhealthy false confirmations before the fix; 19 focused API tests and three lifecycle replay tests pass. This does not establish the root cause of issue #1891.

Change-source: pulse-maintainer
2026-09-05 21:49:41 +01:00
pulse-triage[bot] e0f93d03e9 test: record integrated navigation recovery qualification
The combined mainline recovery and narrow-screen repairs need independent integrated evidence after recent merges. Retain eight passing isolated Chromium results and representative screenshots, with explicit limits so source-only navigation success is not mistaken for candidate or notification-delivery qualification.

Change-source: pulse-maintainer
2026-09-05 21:46:59 +01:00
pulse-triage[bot] 9c70c2e1ec fix(release): report skipped mutable channel convergence debt
The scheduled reconciler can select a preview retry while silently excluding the mutable stable head. Report that concrete continuity debt in the existing log and job summary, without changing retry eligibility, credential containment or publication authority.

Validated with 37 reconciler and 47 release policy tests. New debt assertions fail against the original code; read-only live discovery reports v6.4.1 debt and preserves preview candidate 33674637446.

Change-source: pulse-maintainer
2026-09-05 21:44:23 +01:00
rcourtman b7f546f81a Repair resource evidence for Patrol and Assistant
Real homelab investigations lost metrics behind mismatched resource IDs,
queried only post-restart memory, and filtered every physical disk out.
Resolve canonical metrics targets, use retained history, preserve CPU
topology and chronological samples, and separate disk operation and format.

Keep unattached resource shortcuts blocked while allowing named resources
to be resolved through query search. Report incomplete readiness honestly,
including saved evaluations, without granting Patrol suitability.
2026-09-05 21:43:02 +01:00
pulse-triage[bot] c8931787ad Merge commit '83cdde5b421588552d2c2a21e60c66492f7ad335'
Change-source: pulse-maintainer
2026-09-05 21:30:58 +01:00
pulse-triage[bot] a8038a051a Merge remote-tracking branch 'origin/main'
Change-source: pulse-maintainer
2026-09-05 21:30:58 +01:00
pulse-triage[bot] 2de83c0e27 Merge Helm publication version binding
Change-source: pulse-maintainer
2026-09-05 21:25:59 +01:00
rcourtman 7f48f22123 Merge pull request #1914 from rcourtman/fix/investigation-evidence
Preserve investigation evidence and Proxmox temperatures
2026-09-05 21:24:53 +01:00
pulse-triage[bot] 12a3b87529 fix(governance): recognize proven frontend-only reformats
The open publication proposal exposed an earlier additive formatting correction that lacked a Contract-Neutral trailer and therefore could not pass per-commit governance without rewriting reviewed history. Infer neutrality only for immutable commits whose every governed runtime path is byte-for-byte the locked Prettier output of its parent; mixed, unreadable, added, deleted, or non-frontend changes continue to fail closed.

Change-source: pulse-maintainer
2026-09-05 21:21:04 +01:00
pulse-triage[bot] 83cdde5b42 test(alerts): cover storage lifecycle across abrupt process exit
Orderly restart tests explicitly checkpoint and stop the manager, so they cannot detect dependence on shutdown cleanup. Exercise firing and recovery in child processes that exit without cleanup while the JSON mirror is stale, then verify SQLite restores active state and lifecycle history without inventing recovery from missing counters. This adds interruption regression coverage, not installed delivery or power-loss qualification.

Change-source: pulse-maintainer
2026-09-05 21:14:11 +01:00
pulse-triage[bot] 96bc6f084f fix(release): bind Helm application version to chart release
Reject mismatched image defaults before packaging; preserve equal and default versions. Reproduced four accepted mismatches before the fix. All 58 focused tests pass; no publication performed.

Change-source: pulse-maintainer
2026-09-05 21:13:23 +01:00
pulse-triage[bot] d7f34995de Merge candidate 20260905T195009Z-delivery-trust
Change-source: pulse-maintainer
2026-09-05 20:59:01 +01:00
pulse-triage[bot] 7c373a5162 fix(release): reject draft Helm chart publication retries
Reproduce draft and unknown publication states reaching the Pages index boundary. Require an explicitly non-draft existing release before uploading, editing or advertising its chart, without implicitly publishing operator drafts.

Exercise the actual publication shell with a fake GitHub CLI and wire its seven retry tests into canonical governance. Existing digest and maturity behaviour remains covered.

Change-source: pulse-maintainer
2026-09-05 20:55:01 +01:00
pulse-triage[bot] 0b6d65dfd2 Merge candidate 20260905T192514Z-core-runtime
Change-source: pulse-maintainer
2026-09-05 20:52:28 +01:00
pulse-triage[bot] daaa201fd7 Merge candidate 20260905T191028Z-web-product
Change-source: pulse-maintainer
2026-09-05 20:47:42 +01:00
pulse-triage[bot] 76f87c1249 Merge candidate 20260905T191020Z-delivery-trust
Change-source: pulse-maintainer
2026-09-05 20:47:42 +01:00
rcourtman 3e8dbb8276 Preserve investigation evidence and Proxmox temperatures
Real homelab evaluation exposed missing node sensor observations and loss of
recent tool evidence before the model reached its conclusion. Project both
canonical sensor sources and retain observations while context fits.

Add source and selection regressions plus a multi-turn retention proof.
Record the live diagnosis result and the unresolved Patrol provider block.
2026-09-05 20:47:38 +01:00
pulse-triage[bot] d79ee6449f Merge remote-tracking branch 'origin/main'
Change-source: pulse-maintainer
2026-09-05 20:35:05 +01:00
pulse-triage[bot] 99a212a489 style(frontend): format combined alert and Docker coverage
Apply the repository formatter to two files whose combined-head drift was exposed by the publication gate. This is an additive formatting-only correction; reviewed behavior and commit identities remain unchanged.\n\nChange-source: pulse-maintainer

Change-source: pulse-maintainer
2026-09-05 20:34:50 +01:00
pulse-triage[bot] 49928385ba test(alerts): preserve storage recovery semantics across restart
Exercise storage evaluation with JSON recovery and SQLite authority through firing, restart, missing capacity, confirmed-empty recovery and a second restart. Focused race-enabled lifecycle checks pass three times. No installed receiver qualification claimed.

Change-source: pulse-maintainer
2026-09-05 20:27:15 +01:00