mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-10-19 10:33:29 +00:00
Prepare v6.4.0-rc.4 release
This commit is contained in:
parent
1b754d8bfe
commit
5194e0ca4d
13 changed files with 165 additions and 55 deletions
|
|
@ -7,8 +7,8 @@ For historical v4 notes that previously lived in this repo, see:
|
|||
`docs/releases/RELEASE_NOTES_v4.md`
|
||||
|
||||
For the current v6 release candidate packet (the current v6 support release candidate packet), see:
|
||||
- `docs/releases/RELEASE_NOTES_v6.4.0-rc.3.md`
|
||||
- `docs/releases/V6_CHANGELOG_v6.4.0-rc.3.md`
|
||||
- `docs/releases/RELEASE_NOTES_v6.4.0-rc.4.md`
|
||||
- `docs/releases/V6_CHANGELOG_v6.4.0-rc.4.md`
|
||||
|
||||
For the current stable v6 packet, see:
|
||||
- `docs/releases/RELEASE_NOTES_v6.3.2.md`
|
||||
|
|
@ -19,10 +19,12 @@ For the preceding stable v6 packet, see:
|
|||
- `docs/releases/V6_CHANGELOG_v6.3.1.md`
|
||||
|
||||
For the preceding v6.4 release candidate packet, see:
|
||||
- `docs/releases/RELEASE_NOTES_v6.4.0-rc.3.md`
|
||||
- `docs/releases/V6_CHANGELOG_v6.4.0-rc.3.md`
|
||||
|
||||
For earlier v6.4 release candidate packets, see:
|
||||
- `docs/releases/RELEASE_NOTES_v6.4.0-rc.2.md`
|
||||
- `docs/releases/V6_CHANGELOG_v6.4.0-rc.2.md`
|
||||
|
||||
For the earlier v6.4 release candidate packet, see:
|
||||
- `docs/releases/RELEASE_NOTES_v6.4.0-rc.1.md`
|
||||
- `docs/releases/V6_CHANGELOG_v6.4.0-rc.1.md`
|
||||
|
||||
|
|
|
|||
|
|
@ -4,8 +4,8 @@ This guide covers practical upgrade steps for existing Pulse installs moving to
|
|||
|
||||
For the current v6 release candidate packet (the current v6 support release candidate packet), see:
|
||||
|
||||
- `docs/releases/RELEASE_NOTES_v6.4.0-rc.3.md`
|
||||
- `docs/releases/V6_CHANGELOG_v6.4.0-rc.3.md`
|
||||
- `docs/releases/RELEASE_NOTES_v6.4.0-rc.4.md`
|
||||
- `docs/releases/V6_CHANGELOG_v6.4.0-rc.4.md`
|
||||
|
||||
For the current stable v6 packet, see:
|
||||
|
||||
|
|
@ -19,11 +19,13 @@ For the preceding stable v6 packet, see:
|
|||
|
||||
For the preceding v6.4 release candidate packet, see:
|
||||
|
||||
- `docs/releases/RELEASE_NOTES_v6.4.0-rc.3.md`
|
||||
- `docs/releases/V6_CHANGELOG_v6.4.0-rc.3.md`
|
||||
|
||||
For earlier v6.4 release candidate packets, see:
|
||||
|
||||
- `docs/releases/RELEASE_NOTES_v6.4.0-rc.2.md`
|
||||
- `docs/releases/V6_CHANGELOG_v6.4.0-rc.2.md`
|
||||
|
||||
For the earlier v6.4 release candidate packet, see:
|
||||
|
||||
- `docs/releases/RELEASE_NOTES_v6.4.0-rc.1.md`
|
||||
- `docs/releases/V6_CHANGELOG_v6.4.0-rc.1.md`
|
||||
|
||||
|
|
|
|||
|
|
@ -1774,25 +1774,29 @@ diagnostics. The same release workflow also executes the generated self-signed
|
|||
and custom-CA Windows installer commands through Windows PowerShell 5.1 before
|
||||
release assembly, so the first HTTPS fetch is release proof rather than a
|
||||
string-shape assertion.
|
||||
The active prerelease `v6.4.0-rc.3` cut sets the repo-root `VERSION`, repo-root
|
||||
The active prerelease `v6.4.0-rc.4` cut sets the repo-root `VERSION`, repo-root
|
||||
`docker-compose.yml` image default, `scripts/install-docker.sh` fallback, and
|
||||
Helm chart release metadata to the same `6.4.0-rc.3` release version. It follows
|
||||
`v6.4.0-rc.2` on the published `v6.4.0` candidate line. This prerelease keeps
|
||||
Helm chart release metadata to the same `6.4.0-rc.4` release version. It follows
|
||||
`v6.4.0-rc.3` on the published `v6.4.0` candidate line. This prerelease keeps
|
||||
`rollback_version=v6.3.2`, publishes a versioned public GitHub prerelease
|
||||
plus versioned Docker and Helm artifacts, and does not move stable/latest
|
||||
install pointers or stable semver aliases. The candidate makes large-estate
|
||||
workload, infrastructure, storage, and platform rendering incremental;
|
||||
canonicalizes table, drawer, touch, disclosure, sorting, and navigation
|
||||
behavior; adds notification delivery history and a least-privilege agent
|
||||
profile; provides deliberate Docker and Kubernetes re-enrolment recovery; and
|
||||
fixes metrics-history retention, Patrol startup recovery, backup pagination,
|
||||
stale storage and stale container-health presentation, and backup scope
|
||||
persistence. API-only Proxmox nodes also retain node metrics history without
|
||||
presenting agent-only disk I/O. The changes since `v6.4.0-rc.2` do not require a Pulse Mobile
|
||||
install pointers or stable semver aliases. The candidate moves resources,
|
||||
Connected infrastructure, and active alerts onto keyed per-client deltas;
|
||||
defers expensive realtime merges during operator input; preserves windowed-row
|
||||
identity across reordered snapshots; and isolates REST recovery from the
|
||||
websocket delta baseline. It also restores Proxmox network details, hardens
|
||||
backup and drawer history targeting, clears committed notification delivery
|
||||
warnings immediately, and keeps supported Proxmox VM/LXC lifecycle requests on
|
||||
the governed action path without a QEMU guest-agent prerequisite or manual
|
||||
command fallback. The changes since `v6.4.0-rc.3` do not require a Pulse Mobile
|
||||
client change and preserve
|
||||
the existing mobile, Relay, onboarding, and mobile-facing API contracts, so the
|
||||
server cut is classified `no-mobile-impact`; no companion upload or public
|
||||
mobile-store rollout is part of this candidate. The prerelease Windows path
|
||||
mobile-store rollout is part of this candidate. The canonical mobile
|
||||
compatibility projection and route/method/scope, request/response, pairing, and
|
||||
push checks passed against Pulse Mobile revision
|
||||
`57353a83eb950d1102c90074aa8fe67e1559685b`, iOS build 12, and Android build 9.
|
||||
The prerelease Windows path
|
||||
retains exact-SHA, checksum, and detached-signature verification without
|
||||
Authenticode. Stable `v6.4.0` also skips SignPath under the standing unavailable
|
||||
policy and retains the same exact-SHA, checksum, detached-signature, manifest,
|
||||
|
|
@ -1801,9 +1805,15 @@ only after the release owner explicitly confirms that production credentials
|
|||
and certificate authorization are ready and a reviewed policy/code change
|
||||
restores it.
|
||||
|
||||
The preceding `v6.4.0-rc.3` cut published from exact source SHA
|
||||
`cf0ca6f127540e9997c2eb97eeed32f27619d242`. Its tag and versioned artifacts
|
||||
remain immutable; `v6.4.0-rc.4` supersedes it without moving stable install
|
||||
pointers or stable semver aliases from `v6.3.2`.
|
||||
|
||||
The preceding `v6.4.0-rc.2` publication attempt built and staged the exact
|
||||
candidate artifacts but failed release convergence before public activation.
|
||||
Its tag is immutable and the candidate is superseded by `v6.4.0-rc.3`; stable
|
||||
Its tag is immutable and the candidate is superseded by later `v6.4.0`
|
||||
prereleases; stable
|
||||
install pointers and stable semver aliases remained on `v6.3.2`.
|
||||
|
||||
The preceding prerelease `v6.4.0-rc.1` cut set the repo-root `VERSION`,
|
||||
|
|
@ -2237,8 +2247,8 @@ For the active stable `v6.1.2` cut, the repo-root compose default and
|
|||
`scripts/install-docker.sh` fallback must both pin `6.1.2` whenever the
|
||||
governed `VERSION` is that stable cut. The stable promotion guard remains in
|
||||
force and rejects leftover `-rc.` defaults.
|
||||
For the active prerelease `v6.4.0-rc.3` cut, the repo-root compose default and
|
||||
`scripts/install-docker.sh` fallback must both pin `6.4.0-rc.3` until the next
|
||||
For the active prerelease `v6.4.0-rc.4` cut, the repo-root compose default and
|
||||
`scripts/install-docker.sh` fallback must both pin `6.4.0-rc.4` until the next
|
||||
governed stable cut moves them forward. Each new release moves
|
||||
these two pins together with the repo-root `VERSION` and the Helm chart metadata
|
||||
in the same commit; a cut that leaves any of the four on a superseded value is a
|
||||
|
|
|
|||
33
docs/releases/RELEASE_NOTES_v6.4.0-rc.4.md
Normal file
33
docs/releases/RELEASE_NOTES_v6.4.0-rc.4.md
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
# Pulse v6.4.0-rc.4 Release Notes
|
||||
|
||||
`v6.4.0-rc.4` is a release candidate for the next v6 minor release. It fixes two customer-reported trust issues, restores several Proxmox views, and makes live large-estate screens steadier while data is changing.
|
||||
|
||||
## What's improved
|
||||
|
||||
- **Steadier large-estate screens** — Resource, infrastructure, and alert updates now use keyed deltas. Pulse defers expensive live merges while an operator is interacting, then applies the queued state afterward.
|
||||
- **Smaller resource snapshots** — Repeated capability descriptions and default policy metadata are deduplicated without changing the resource shape consumed by the web interface.
|
||||
- **More useful workload tables** — Workload IDs can be sorted, columns can be resized deliberately, and header alignment remains stable across the table.
|
||||
- **Restored Proxmox network details** — Node network interfaces and their configuration are visible again in the Proxmox detail view.
|
||||
- **Clearer operational API access** — API token scopes now expose the governed agent-lifecycle capability used for lifecycle operations.
|
||||
|
||||
## Fixes
|
||||
|
||||
- Delivery warnings now clear as soon as the committed notification queue becomes healthy after a retry, dismissal, cancellation, or successful delivery ([#1761](https://github.com/rcourtman/Pulse/issues/1761)).
|
||||
- Assistant no longer treats the QEMU guest agent as a prerequisite for governed Proxmox VM or LXC lifecycle actions, and no longer redirects supported requests to manual `qm` or `pct` commands ([#1782](https://github.com/rcourtman/Pulse/issues/1782)).
|
||||
- Keyed resource rows retain their identity when full snapshots arrive in a different order, and REST recovery no longer contaminates the websocket delta baseline.
|
||||
- Proxmox backup rows keep the correct alert attribution, filter by repository correctly, and hydrate reliably when backup data arrives after the initial page state.
|
||||
- Docker container history keeps the selected container identity across filtered refreshes.
|
||||
- Workload and infrastructure drawers use the canonical history target, preventing one resource from showing another resource's metrics.
|
||||
- Mock storage and workload histories preserve continuity so release render checks exercise the same stable chart behavior as a live runtime.
|
||||
- Proxmox network detail formatting and offline-node browser coverage are back under their qualified checks.
|
||||
|
||||
## Before you upgrade
|
||||
|
||||
- This is a release candidate. Stable installations remain on v6.3.2 unless an operator explicitly selects this version.
|
||||
- Existing configurations remain valid and no manual data migration is required.
|
||||
- Pulse Mobile does not consume the changed browser resource stream. The canonical route, request/response, pairing, and push compatibility checks passed against Pulse Mobile 1.0.0 build 12 on iOS and build 9 on Android, so no companion update is required.
|
||||
- Windows Unified Agent binaries are checksum- and detached-signature-verified but are not Authenticode-signed, so Windows may show an Unknown Publisher warning.
|
||||
|
||||
## Known issues
|
||||
|
||||
- Windows Authenticode signing remains unavailable for this candidate; use the published checksum and detached signature when verifying Windows agent downloads.
|
||||
66
docs/releases/V6_CHANGELOG_v6.4.0-rc.4.md
Normal file
66
docs/releases/V6_CHANGELOG_v6.4.0-rc.4.md
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
# Pulse v6.4.0-rc.4
|
||||
|
||||
_This changelog describes the changes since `v6.4.0-rc.3` included in
|
||||
`v6.4.0-rc.4`._
|
||||
|
||||
## Added
|
||||
|
||||
- API token scope presentation includes the governed agent-lifecycle scope.
|
||||
- Workload tables support deliberate column-width persistence and sorting by
|
||||
workload ID.
|
||||
- Webhook presentation retains stable message keys and explicit resource
|
||||
context for language-neutral downstream handling.
|
||||
|
||||
## Changed
|
||||
|
||||
- Resources, connected-infrastructure entries, and active alerts use per-client
|
||||
keyed deltas. Unkeyed or missing-baseline transitions fail safely to a full
|
||||
payload instead of attempting a partial merge.
|
||||
- Browser resource ingestion deduplicates capability catalogs, default policy
|
||||
posture, AI-safe summaries, and self-alias identity entries while restoring
|
||||
the existing consumer shape at the ingestion boundary.
|
||||
- Realtime resource application defers during operator input and coalesces the
|
||||
queued changes after the gesture. Windowed workload, storage, and platform
|
||||
rows preserve identity while scrolling and while reordered snapshots arrive.
|
||||
- REST state recovery is isolated from the websocket baseline, so a late REST
|
||||
response cannot advance or replace the per-connection delta source of truth.
|
||||
- History drawers resolve canonical storage, Docker, host, VM, and container
|
||||
targets before querying metrics, including mock and API-only source paths.
|
||||
|
||||
## Fixed
|
||||
|
||||
- Notification queue health is reconciled immediately after committed queue
|
||||
transitions, clearing stale delivery system alerts after retry, dismissal,
|
||||
cancellation, purge, or successful delivery
|
||||
([#1761](https://github.com/rcourtman/Pulse/issues/1761)).
|
||||
- Proxmox VM/LXC lifecycle actions remain available through the governed action
|
||||
path without a QEMU guest-agent prerequisite. Assistant grounding no longer
|
||||
suggests manual `qm`/`pct` fallback for supported lifecycle requests
|
||||
([#1782](https://github.com/rcourtman/Pulse/issues/1782)).
|
||||
- Proxmox node network details render again and retain browser-qualified layout
|
||||
coverage.
|
||||
- Backup recovery data retains the correct source attribution, repository
|
||||
filter, and delayed-hydration state.
|
||||
- Docker container history retains its selected target through filtered
|
||||
refreshes, and workload drawer history no longer crosses resource identities.
|
||||
- Keyed platform rows retain component identity when a full snapshot reorders
|
||||
otherwise unchanged entries.
|
||||
- Mock storage and workload histories preserve continuity across refreshes.
|
||||
- Offline-node E2E coverage returned to the qualified stable tier after its
|
||||
repaired proof passed.
|
||||
|
||||
## Release Metadata
|
||||
|
||||
- Version: `v6.4.0-rc.4`
|
||||
- Previous candidate tag: `v6.4.0-rc.3`
|
||||
- Previous stable: `v6.3.2`
|
||||
- Rollback target: `v6.3.2`
|
||||
- Rollback command: `./scripts/install.sh --version v6.3.2`
|
||||
- Promotion path: exact-SHA single-build release candidate from `main`
|
||||
- Windows signing decision: prereleases publish checksum- and
|
||||
detached-signature-verified Windows agents without Authenticode while
|
||||
SignPath remains unavailable; Windows may show an Unknown Publisher warning
|
||||
- Mobile decision: `no-mobile-impact`; the changed keyed stream is a browser
|
||||
transport and the canonical core/mobile contract passed against Pulse Mobile
|
||||
revision `57353a83eb950d1102c90074aa8fe67e1559685b`, iOS build 12, and Android
|
||||
build 9, so no companion build or public store rollout is required
|
||||
Loading…
Add table
Add a link
Reference in a new issue