Commit Graph

15115 Commits

Author SHA1 Message Date
pulse-triage[bot] 3096fb2748 Require complete Proxmox password sessions before publication
Reject incomplete or ambiguous 200 login bodies before replacing ticket, CSRF, expiry and PVE generation. Preserve retained sessions, joined renewal failures, normal encoding fallback and later ordinary recovery; cover real pinned startup/poll/broadcast consumption.

Contract-Neutral: Restore existing complete-session and failed-renewal preservation guarantees; no API/wire schema, TLS trust, credential authority, guest lifecycle, polling cadence or History contract delta.
Change-source: pulse-maintainer
2026-10-14 04:25:26 +01:00
pulse-triage[bot] cdaf3f565a Record consuming proof for the full retirement notice
Bind the actual current retirement notice to its parent with desktop/390px, light/dark and existing entitled/unlicensed controls. Preserve the independently inspected ten originals and the auth golden-comparison failures separately; no full probation, native phone, installed monitoring or release claim is made.

Contract-Neutral: Evidence-only receipt records existing source consumer proof; no additional runtime or contract change.
Change-source: pulse-maintainer
2026-10-14 04:21:56 +01:00
pulse-triage[bot] a3fe70feb8 Avoid runtime CI fan-out for browser-receipt-only tree changes
Classify the complete tree diff before builds or browser setup. Only nonempty top-level browser receipt JSON changes are exempt; mixed source, graphs, controls, docs and unavailable diffs keep ordinary runtime checks. Keep per-push secret scanning, independent canonical receipt validation and a strict E2E verdict which never calls skipped tests passing. Exercise real Git ranges and both workflow admission/result paths.

Contract-Neutral: Only browser-evidence-only tree diffs omit redundant runtime CI; application, dependency, trust and required source-proof contracts are unchanged.
Change-source: pulse-maintainer
2026-10-14 04:13:00 +01:00
pulse-triage[bot] 6ced391ac3 Use the real phone viewport in PBS consuming proof
The first WebKit consuming run rendered the fixture in the default wide mobile layout and native tapping missed its visible table. Give this existing fixture the same viewport metadata as the served application, so a 390px proof exercises the narrow table/drawer rather than a scaled desktop layout. Keep the already completed desktop cases and run only the missing phone cases.

Contract-Neutral: Browser-fixture metadata matches the existing application viewport; production rendering, history and monitoring contracts do not change.
Change-source: pulse-maintainer
2026-10-14 04:06:36 +01:00
pulse-triage[bot] 63590904de Record consuming proof for Windows guest-reading help
Desktop Chromium and 390 px touch WebKit exercise the actual shipped guide, native bookmarks, existing agent readings and backup safety. Record native pixel review, exact tested content and earlier driver failures without claiming a runtime repair.

Contract-Neutral: Add exact-source documentation browser evidence only; no runtime or subsystem contract delta.
Change-source: pulse-maintainer
2026-10-14 03:53:14 +01:00
pulse-triage[bot] 8423ed2e2e Match Windows guide tests to native fragment links
Use the renderer's preserved same-page hrefs and retain real heading-target checks. Qualify the existing OS-specific guidance without changing the renderer or guest-read behaviour.

Contract-Neutral: Correct rendered-guide test selectors only; no runtime, route or subsystem contract delta.
Change-source: pulse-maintainer
2026-10-14 03:46:04 +01:00
pulse-triage[bot] f90a3da1c7 Keep the full Pulse Mobile retirement notice readable on phones
Current 390px consuming pixels showed the free-tier notice still inside a two-line sales gate, clipping the phone-alert alternatives. Use the shared labelled InlineNotice for that existing guidance, retain the entitled configuration and pairing controls, and target the actual notice rather than the hidden mobile page subtitle. No offer, entitlement, billing, configuration or service change is introduced.

Change-source: pulse-maintainer
2026-10-14 03:21:16 +01:00
pulse-triage[bot] 13984070ff Keep Proxmox recovery authentication within its caller budget
Carry cancellation through PVE/PBS construction, cluster probes and retained sessions, startup retries and port fallback. Preserve prior health/errors on caller termination; accepted clients retain independent ordinary reads and full timeouts. Cover real pinned HTTPS cancellation, deadlines, form fallback and first-poll publication.

Contract-Neutral: Restore existing caller cancellation and usable-session guarantees; no wire/API schema, agent lifecycle, TLS trust, guest safety, polling cadence or History contract delta.
Change-source: pulse-maintainer
2026-10-14 03:18:40 +01:00
pulse-triage[bot] 5384298c17 Use the current scoped phone review navigation label
The current source renders Next issue inside Review queue navigation; the phone proof still requested the old Next decision label. Preserve the scoped navigation, disabled previous control, focus, containment and reload checks while selecting the current button.

Contract-Neutral: Test-only selector update preserves the existing phone navigation and Patrol contracts.
Change-source: pulse-maintainer
2026-10-14 03:15:30 +01:00
pulse-triage[bot] e19d17af53 Exercise Patrol evidence through its current keyboard disclosure
Current consuming proof found the retained observation text hidden inside the deliberate Evidence and history disclosure. Check that boundary, open it by keyboard, keep every evidence, protection and lifecycle assertion, and attach the actual expanded detail. The synthetic shell also supplies the existing empty active-alert array rather than an invalid catch-all object.

Contract-Neutral: Test-only keyboard disclosure and typed fixture repair preserves Patrol and alert runtime contracts.
Change-source: pulse-maintainer
2026-10-14 03:13:40 +01:00
pulse-triage[bot] 177f664e20 Format the Windows guest-read guide controls for qualification
Use the assigned offline dependency export after the canonical formatter path refused a read; preserve that refusal and keep the assertions unchanged.

Contract-Neutral: Formatting of documentation regression checks only; no runtime or contract delta.
Change-source: pulse-maintainer
2026-10-14 03:13:07 +01:00
pulse-triage[bot] a1824f157a Supply the real digest shape in the Patrol attention fixture
The isolated current-source consumer entered its error boundary when Activity parsed the fixture catch-all empty object as a successful weekly digest. Supply the existing empty history fields, with no fabricated verified work, so Activity navigation remains tested alongside the unchanged acknowledgement, evidence and failure controls.

Contract-Neutral: Test-only fixture supplies the existing Patrol digest schema; runtime and operational contracts are unchanged.
Change-source: pulse-maintainer
2026-10-14 03:12:00 +01:00
pulse-triage[bot] ff862da592 Keep Windows guest-read diagnosis separate from Linux file permissions
Existing Windows restart reports supply unsupported meminfo reads beside working guest filesystems. Explain the distinction and existing safe views without new probes, agent churn, wider permissions or an unverified recovery claim.

Contract-Neutral: Existing documentation and rendered-guide regression coverage only; no monitoring, permission, API or runtime contract change.
Change-source: pulse-maintainer
2026-10-14 03:11:53 +01:00
pulse-triage[bot] 5e2bd40c87 Keep phone reload proof aligned with the resource-qualified Patrol title
The original detail assertion now matches the current resource-first title, but the same phone journey still required its obsolete title after reload. Assert the same canonical identity across both navigations without changing the fixture title or reducing detail, overflow, focus or adverse-state controls.

Contract-Neutral: Test-only selector repair preserves the existing Patrol title and operational contracts.
Change-source: pulse-maintainer
2026-10-14 03:06:29 +01:00
pulse-triage[bot] b7e6ddce78 Compose retained Web consumer repairs with current maintained source
Preserve the exact reviewed history and own-parent Docker receipt; complete the remaining isolated auth, retirement, navigation and PBS proof.

Contract-Neutral: Additive source composition preserves runtime contracts; imported fixture and browser-guard repairs do not change product behaviour.
Change-source: pulse-maintainer
2026-10-14 03:04:35 +01:00
pulse-triage[bot] 35ab8b0585 Integrate reviewed Solid serializer graph admission guard
Preserve the existing exact security exception while rejecting unqualified newer Solid serializer edges before installation. Retain exact candidate identity and completed regression proof.

Change-source: pulse-maintainer
2026-10-14 03:00:19 +01:00
pulse-triage[bot] 70c8009ad4 Integrate reviewed lifetime startup connection recovery
Retain the exact Core commits and completed capped-cadence, cancellation, trust and consuming proof. This is source recovery, not installed or released acceptance.

Change-source: pulse-maintainer
2026-10-14 03:00:17 +01:00
pulse-triage[bot] 1c92c4067a Record consuming proof for phone History help
Bind both shipped guides to their producer parent, actual Docs navigation and shared phone controls at desktop and narrow viewports. Retain native pixel observations and the safe fixture limits.

Contract-Neutral: Browser verification metadata only; no rendered source, runtime, access or collection contract changes.
Change-source: pulse-maintainer
2026-10-14 02:35:12 +01:00
pulse-triage[bot] 30bce19ac5 Retain existing paid-phone controls in the navigation journey
After following the real entitled sidebar, read the existing Mobile controls and retirement date without pairing a phone or changing configuration. Keep new-sale prompts absent.

Contract-Neutral: Existing-flow browser assertions only; no licence, mobile service or offer changes.
Change-source: pulse-maintainer
2026-10-14 02:18:36 +01:00
pulse-triage[bot] 5cd659b325 Explain collapsed phone History charts before missing-data diagnosis
Guide existing phone readers through Show and Show fewer charts without refreshing, probing or restarting. Keep older layouts, selected ranges, empty samples and unavailable/access states distinct, and clarify that PBS CPU/memory is already in Utilization.

Contract-Neutral: Existing chart navigation help and its regression tests only; no runtime, API, access or collection contract changes.
Change-source: pulse-maintainer
2026-10-14 02:09:21 +01:00
pulse-triage[bot] 1bf1040c91 Verify the final Docker Overview through its real drawer
Record a new desktop/phone browser pass for the integrated final bytes. Active warnings, History ranges/spread, truthful unknown-versus-zero disk facts, retained tab identity and hidden-tab polling are exercised and the eight original captures inspected. Imported receipts and history remain unchanged.

Contract-Neutral: Fresh consuming proof for unchanged integrated runtime; no drawer or monitoring contract delta.
Change-source: pulse-maintainer
2026-10-14 01:59:50 +01:00
pulse-triage[bot] 48eecf1a8d Integrate reviewed stored-chart navigation and peak help
Accept exact PI commits c670f6b6 and 647664b6: correct existing PBS and metrics guides, preserve shipped mirrors and bookmarks, and retain source-bound Docs/browser proof. Documentation maintenance adds no product surface.

Change-source: pulse-maintainer
2026-10-14 01:57:22 +01:00
pulse-triage[bot] 8ad58162e8 Compose recorded upstream phone charts with reviewed maintenance
Incorporate the upstream frontier present at batch review without re-parenting reviewed source or repeating unrelated qualification.

Change-source: pulse-maintainer
2026-10-14 01:56:26 +01:00
pulse-triage[bot] 1691d91bf8 Run serialization graph regression controls in the pre-install CI check
Keep the negative, partial-repair and nested-resolution controls beside the actual locked-graph check so future edits cannot silently disable the intended safeguard.

Contract-Neutral: Run the existing serialization regression suite in its pre-install CI check; no additional contract or user-visible runtime change.
Change-source: pulse-maintainer
2026-10-14 01:54:51 +01:00
pulse-triage[bot] 699deceaa4 Reject stale Solid serialization overrides before frontend installation
Bind the existing qualified security override to its exact consumer and serializer pair instead of letting npm overrides silently carry it into a newer Solid runtime. Resolve nested lock edges, retain the strict complete audit and security floors, and cover the two stale dependencies actually present in PR 2759 with positive, partial-repair and nested-resolution controls.

Change-source: pulse-maintainer
2026-10-14 01:53:13 +01:00
pulse-triage[bot] ad54b566c1 Check PBS CPU at its existing ratio and percentage boundaries
The poll stores the provider ratio unchanged, while the canonical broadcast converts it to the percentage consumed by the table. Assert both boundaries without changing runtime values, reducing coverage or redoing the completed predecessor controls.

Change-source: pulse-maintainer
2026-10-14 01:50:00 +01:00
pulse-triage[bot] 90a8b890e0 Show one chart panel in phone drawers and the rest on request (#2923)
Stacked on rcourtman/Pulse#2921, which sits on rcourtman/Pulse#2920;
this branch contains both. It lands after them or together with them.

With history charts on every drawer's Overview, a phone stacked three or
four chart panels before a guest's facts, a node's hardware or an
agent's details. At 390px a guest drawer was 1043px tall.

Below the `sm` breakpoint, the shared drawer chart component
(`GuestDrawerHistory`, used by the guest, node, Docker host and
resource-detail drawers) now shows:
- the first panel (Utilization), plus any panel carrying an active
alert;
- one full-width "Show Network I/O, Disk I/O, Thermals" button
(`aria-expanded`) that reveals the rest and then reads "Show fewer
charts".

Wider layouts are unchanged. It is a CSS class on panels that stay
mounted, so it adds no read.

Measured at 390px on the built preview:

| Drawer | Height | Notes |
| --- | --- | --- |
| Guest | 657px (was 1043px) | |
| Node | 597px | 3 panels collapsed |
| Agent | 715px | 3 panels collapsed |

At 1440px every panel shows and there is no toggle.

Tests: the new cases in `GuestDrawerHistory.inspection.test.tsx` cover
the collapse, the toggle, and an alerting panel staying visible.
Typecheck plus the Workloads, Infrastructure, Docker and Storage suites
pass on pulse-dev.
2026-10-14 01:43:11 +01:00
pulse-triage[bot] 8d2288f1be Allow bounded alert observations in the host drawer fixture
Exercise active Docker reading warnings beside Overview charts at narrow widths without creating a live alert or changing monitoring.

Contract-Neutral: Browser fixture input only; alert and drawer runtime contracts are unchanged.
Change-source: pulse-maintainer
2026-10-14 01:42:13 +01:00
pulse-triage[bot] 9e81bd661e Align browser guards with retirement and current navigation
Preserve auth pixels, hidden-form and entitlement controls while pinning the visual runtime/org inventory. Exercise the existing Mobile retirement notice separately from sales gates, and retain scoped Coverage links and resource-qualified Patrol decisions. Supply the real runtime providers to the existing PBS snapshot fixture.

Contract-Neutral: Test and browser-fixture repair only; no runtime, entitlement, retirement or monitoring contract changes.
Change-source: pulse-maintainer
2026-10-14 01:38:16 +01:00
pulse-triage[bot] 6b49fc4c67 Capture the normal broadcast scope in startup recovery proof
The connected fixture must read state with its actual mock-mode epoch before passing it to the unchanged production broadcast boundary. Keep the original failed result and every lifecycle/TLS assertion; do not weaken the fence or alter runtime recovery.

Change-source: pulse-maintainer
2026-10-14 01:37:55 +01:00
pulse-triage[bot] 647664b637 Record consuming proof for stored-chart navigation help
Bind actual Docs producer responses, desktop keyboard and phone touch links, and inspected navigation/bucket-bound pixels to the unchanged guide source.

Contract-Neutral: Browser evidence metadata only; no product or subsystem contract change.
Change-source: pulse-maintainer
2026-10-14 01:26:38 +01:00
pulse-triage[bot] 1080e2f9dd Keep missing startup connections eligible for ordinary recovery
A provider that returns after the five-minute startup window was permanently outside polling until Pulse restarted. Preserve the capped retry cadence, cancellation, paused connections and saved TLS trust; connect the registered contract proof to six-minute virtual-time recovery and the real PBS constructor, scheduler and broadcast producer.

Change-source: pulse-maintainer
2026-10-14 01:25:15 +01:00
pulse-triage[bot] c670f6b666 Guide stored charts on Overview without losing incident peaks
Replace the removed PBS drawer History route with the current Overview chart and range control, while preserving older installed tabs and safe no-replay diagnosis. Explain bucket averages, low-high bounds and local peaks without treating them as continuous coverage or incident timestamps. Keep both shipped guide mirrors and their rendered links checked.

Contract-Neutral: Existing documentation and consuming guide tests only; no monitoring, storage, permissions, entitlement or navigation contract changes.
Change-source: pulse-maintainer
2026-10-14 01:21:25 +01:00
pulse-triage[bot] 558d1262f9 Integrate reviewed drawer composition with current published maintenance
Preserve the exact 9eb52f5c candidate ancestry. Select its already browser-verified whole NodeDrawerOverview file and retain current disk guidance, pressure fixture and viewport protection. No new combined frontend content or changed release packet.

Change-source: pulse-maintainer
2026-10-14 01:20:57 +01:00
pulse-triage[bot] f248e2105a Compose current published History ranges with reviewed maintenance
Preserve the reviewed batch and current upstream identities through additive integration.

Change-source: pulse-maintainer
2026-10-14 01:14:02 +01:00
rcourtman e735c464da Name history ranges the same way in every range picker (#2921)
Stacked on rcourtman/Pulse#2920 (this branch contains its commit); it
lands after or together with that PR.

The drawer range picker said "24 hours", the physical disk detail said
"Last 24 hours" and the storage pool detail said "24h".
`historyChartModel.ts` now owns one label table,
`formatHistoryRangeOptionLabel`, and all three pickers take their option
names from it: "1 hour", "24 hours", "7 days". That matches how the rest
of the app names durations (system settings, Patrol schedule).

The chart header's compact segmented range buttons keep their short
"24h" tokens. They are a different control, and they are hidden inside
these details.

Proofs: option text is asserted in
`GuestDrawerHistory.inspection.test.tsx` and `DiskDetail.test.tsx`. A
guardrail stops a local label list from coming back, and
`historyChartModel.branchcov2.test.ts` checks the disk and pool option
lists against the shared table. In the built preview, I read the option
text of the guest drawer, pool and disk pickers.
2026-10-14 01:05:14 +01:00
pulse-triage[bot] 4bbbf60ee2 Integrate reviewed read-only Kubernetes setup help
Retain exact product-intelligence commits, copied-guide regression controls and source-bound browser receipt.

Change-source: pulse-maintainer
2026-10-14 00:59:32 +01:00
pulse-triage[bot] c3563b495b Integrate reviewed usable-session cluster recovery
Retain exact Core candidate identity and its connected recovery regression evidence.

Change-source: pulse-maintainer
2026-10-14 00:59:30 +01:00
pulse-triage[bot] 759e9dc0a4 Reconcile batch-start published main frontier
Preserve the exact published beta and storage history commits alongside already reviewed local integration history.

Change-source: pulse-maintainer
2026-10-14 00:59:19 +01:00
pulse-triage[bot] f49cbaec62 Release v6.6.0-beta.3 (#2922)
Release preparation for `v6.6.0-beta.3`. After this merges, the release
workflow runs at this exact head
`0f7bdda87868e5f9eed0c1deb3bf8ef0f15f82fe`.
2026-10-13 23:51:05 +00:00
rcourtman dd36a296d0 Show storage pool and disk history in the detail itself (#2920)
Stacked on rcourtman/Pulse#2918 (this branch contains its commit); it
lands after or together with that PR.

Every resource drawer now charts history on its Overview. The Storage
page's pool and physical-disk details were the last to keep it behind a
History tab, and History was their only other tab.

- **Pool detail:** one view, no tab strip. The Capacity Trend card
leads, with the range picker in its header, then Configuration,
topology, ZFS and devices.
- **Physical disk detail:** one view, no tab strip. The health verdict
and SMART facts come first, as the evidence behind the verdict. Then the
History charts, with the range picker beside the heading, then Live I/O
(30m).
- The storage-recovery contract (item 15) required these charts to stay
behind the History tab; it now records today's decision instead.

Tests: the Storage, DiskDetail, StoragePoolDetail and guardrail suites
are updated. `GuestPhysicalDisks.test.tsx` now accepts "Reallocated
Sectors" appearing as both the SMART card and the chart label, because a
guest's expanded linked disk shows its charts too.

Verification: typecheck plus the Storage, shared, storageBackups,
Workloads and Infrastructure suites on pulse-dev. I took full-resolution
screenshots of the built bytes at 1440 and 390px for a ZFS service pool
and a failing physical disk.

Noticed, not changed: the pool range picker labels read "24h / 7d" while
the disk picker reads "Last 24 hours"; they come from separate option
lists.
2026-10-14 00:50:50 +01:00
pulse-triage[bot] 9eb52f5c4b Verify composed Overview history and source-qualified readings
Record fresh desktop and phone consuming proof for the five newly combined frontend files. Keep all earlier receipts/history intact; inspect all 36 originals natively, preserve failed attempts and reuse completed identical-source scenes. Correct only the qualification driver's actual peak format and settled range waiter.

Contract-Neutral: Own-parent browser evidence and qualification-driver corrections only; no runtime or subsystem contract delta.
Change-source: pulse-maintainer
2026-10-14 00:44:25 +01:00
pulse-triage[bot] ece7e958f1 Keep the recorded beta packet on its exact cumulative wording check
The accepted beta.2 packet uses the earlier explicit cumulative introduction, while the new upstream general helper recognises the metadata tools standard introduction. Keep that historical packet on its strict existing stable-base introduction and heading checks; later numbered packets use the new incremental-or-cumulative helper. All remaining packet/signing/mobile checks remain shared and unchanged.

Contract-Neutral: Integration test branch reconciliation only; release source, notes, workflow behavior and publication rules are unchanged.
Change-source: pulse-maintainer
2026-10-14 00:34:48 +01:00
pulse-triage[bot] e114ccafd7 Retain published cumulative beta packet checks in the reviewed batch
Merge exact upstream 1844f6c0ed after completed bounded refresh 4ced96dc6a4e6278a4bba6fb79fb21cf68d954d95d49d67c27d425621a7d9f3f. Preserve every reviewed commit and the specific beta.2 cumulative-list assertions while using the new general incremental/cumulative-base validation for other packets. Only installer release-packet tests change; final frontend bytes remain identical.

Change-source: pulse-maintainer
2026-10-14 00:34:10 +01:00
pulse-triage[bot] f60d3fb9cc Exercise accessible cache guidance on its current warning path
Corrected-source proof source-emk3_ot6 passes types and 509 of 510 selected tests. The one older accessibility fixture expected a Cache cue at its default healthy 50 percent after upstream intentionally suppressed low-pressure captions. Set its consistent byte and percentage input to the existing warning boundary; preserve every source/time, safe-setup, interaction and no-mutation assertion and the independent quiet-reading controls. No runtime or threshold changes.

Contract-Neutral: Integration fixture input only; runtime rendering, warning thresholds, provenance and safety guidance are unchanged.
Change-source: pulse-maintainer
2026-10-14 00:30:58 +01:00
pulse-triage[bot] 832841d74a Keep composed drawer imports and observation narrowing type-safe
Exact offline proof source-4s0ongp7 stopped at two TypeScript diagnostics before tests or build: the retained stable-help summary does not use upstream DetailSection, and the new unavailable early return narrows the later observation state. Remove only the unused type import and now-unreachable comparison; keep stopped-agent qualification and all observation semantics. Format the newly combined reading disclosure.

Contract-Neutral: Composition import, type narrowing and formatting repair only; reading states, provenance, access, rendering and recovery contracts are unchanged.
Change-source: pulse-maintainer
2026-10-14 00:23:42 +01:00
rcourtman d54b055272 Merge remote-tracking branch 'origin/main' into pulse/sidecar-live 2026-10-14 00:21:28 +01:00
rcourtman da74fb4209 Show one chart panel in phone drawers and the rest on request
With history charts on every drawer's Overview, a phone stacked three or
four chart panels before a guest's facts, a node's hardware or an
agent's details: a guest drawer ran 1043px tall at 390px wide.

Below the sm breakpoint the shared chart component now shows the first
panel (Utilization) and any panel carrying an active alert, then one
full-width "Show Network I/O, Disk I/O, Thermals" button that reveals
the rest. The guest drawer drops to 657px. Wider layouts are unchanged.
It is a CSS class on panels that stay mounted, so it adds no read and
the hidden panels keep their data for when they are shown.
2026-10-14 00:21:18 +01:00
pulse-triage[bot] 095a5bae65 Bind disk-help assertions to current unavailable-reading copy
Additive upstream composition retired the visible N/A caption and retains Usage unavailable plus actionable permission and agent errors. Assert the actual documented states without weakening producer, expiry, keyboard, phone, same-guest or safe-recovery checks. The first five-test fixture run failed on its obsolete N/A requirement; all five corrected controls pass.

Contract-Neutral: Documentation regression labels only; runtime, guidance, provenance and recovery contracts are unchanged.
Change-source: pulse-maintainer
2026-10-14 00:13:42 +01:00
rcourtman 96d307dcbe Merge commit 'cca21dcc2cf61720faf80723ab87e21fd397024b' into pulse/sidecar-live 2026-10-14 00:13:39 +01:00