Prepare v6.0.5 RC2 release packet

Refs #1470

Refs #1471

Refs #1476

Refs #1483

Refs #1511

Refs #1515

Refs #1516

Refs #1524

Refs #1533

Refs #1534
This commit is contained in:
rcourtman 2026-07-07 10:50:49 +01:00
parent 022f170dff
commit e1cddca2d1
13 changed files with 133 additions and 18 deletions

View file

@ -1 +1 @@
6.0.5-rc.1
6.0.5-rc.2

View file

@ -2,9 +2,9 @@ apiVersion: v2
name: pulse
description: Helm chart for deploying the Pulse hub and optional Docker monitoring agent.
type: application
version: 6.0.5-rc.1
appVersion: "6.0.5-rc.1"
icon: https://raw.githubusercontent.com/rcourtman/Pulse/v6.0.5-rc.1/docs/images/pulse-logo.svg
version: 6.0.5-rc.2
appVersion: "6.0.5-rc.2"
icon: https://raw.githubusercontent.com/rcourtman/Pulse/v6.0.5-rc.2/docs/images/pulse-logo.svg
keywords:
- monitoring
- proxmox
@ -32,7 +32,7 @@ annotations:
description: Smoke tests with kind cluster deployment
artifacthub.io/links: |
- name: Documentation
url: https://github.com/rcourtman/Pulse/blob/v6.0.5-rc.1/docs/KUBERNETES.md
url: https://github.com/rcourtman/Pulse/blob/v6.0.5-rc.2/docs/KUBERNETES.md
- name: Support
url: https://github.com/rcourtman/Pulse/discussions
artifacthub.io/maintainers: |

View file

@ -1,6 +1,6 @@
# pulse
![Version: 6.0.5-rc.1](https://img.shields.io/badge/Version-6.0.5--rc.1-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 6.0.5-rc.1](https://img.shields.io/badge/AppVersion-6.0.5--rc.1-informational?style=flat-square)
![Version: 6.0.5-rc.2](https://img.shields.io/badge/Version-6.0.5--rc.2-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 6.0.5-rc.2](https://img.shields.io/badge/AppVersion-6.0.5--rc.2-informational?style=flat-square)
Helm chart for deploying the Pulse hub and optional Docker monitoring agent.

View file

@ -2,7 +2,7 @@ version: '3.8'
services:
pulse:
image: ${PULSE_IMAGE:-rcourtman/pulse:6.0.5-rc.1}
image: ${PULSE_IMAGE:-rcourtman/pulse:6.0.5-rc.2}
container_name: pulse
restart: unless-stopped
logging:

View file

@ -7,6 +7,10 @@ For historical v4 notes that previously lived in this repo, see:
`docs/releases/RELEASE_NOTES_v4.md`
For the current v6 support release candidate packet, see:
- `docs/releases/RELEASE_NOTES_v6.0.5-rc.2.md`
- `docs/releases/V6_CHANGELOG_v6.0.5-rc.2.md`
For historical v6 support release candidate packets, see:
- `docs/releases/RELEASE_NOTES_v6.0.5-rc.1.md`
- `docs/releases/V6_CHANGELOG_v6.0.5-rc.1.md`

View file

@ -4,8 +4,8 @@ This guide covers practical upgrade steps for existing Pulse installs moving to
For the current v6 support release candidate packet, see:
- `docs/releases/RELEASE_NOTES_v6.0.5-rc.1.md`
- `docs/releases/V6_CHANGELOG_v6.0.5-rc.1.md`
- `docs/releases/RELEASE_NOTES_v6.0.5-rc.2.md`
- `docs/releases/V6_CHANGELOG_v6.0.5-rc.2.md`
For the current stable v6 packet and rollout references, see:

View file

@ -7420,7 +7420,21 @@
]
}
],
"work_claims": [],
"work_claims": [
{
"id": "codex-physical-disk-lane-l15",
"agent_id": "codex-physical-disk",
"summary": "Fix physical disk inventory and SMART temperature cluster #1516/#1483/#1471",
"target_id": "v6-product-lane-expansion",
"claimed_at": "2026-07-07T08:33:32Z",
"heartbeat_at": "2026-07-07T08:33:32Z",
"expires_at": "2026-07-07T11:33:32Z",
"work_item": {
"kind": "lane",
"id": "L15"
}
}
],
"open_decisions": [],
"source_of_truth_file": "docs/release-control/v6/internal/SOURCE_OF_TRUTH.md",
"resolved_decisions": [

View file

@ -821,16 +821,19 @@ TLS floor in the dynamic config.
## Current State
The active support prerelease `v6.0.5-rc.1` cut sets the repo-root `VERSION`,
The active support prerelease `v6.0.5-rc.2` 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.0.5-rc.1` release
fallback, and Helm chart release metadata to the same `6.0.5-rc.2` release
version. This support prerelease keeps `rollback_version=v6.0.4`, publishes a
versioned public GitHub prerelease plus versioned Docker and Helm artifacts,
and does not move stable/latest install pointers or stable semver aliases. It
queues the v6.0.4 stable line's customer-support fixes for Gemini Patrol
tool-call readiness, remembered-login submit persistence, and Proxmox
SATA/SAT SMART temperature fallback behind RC validation instead of publishing
another same-day stable patch.
tool-call readiness, remembered-login submit persistence, Proxmox SATA/SAT
SMART temperature fallback, legacy agent update token recovery, threshold-aware
temperature display severity, PBS backup polling memory bounds, physical disk
SMART/Proxmox merge identity, Proxmox token preservation diagnostics, legacy
OIDC SSO discovery with CSP nonce handling, and route-aware Proxmox host URLs
behind RC validation instead of publishing another same-day stable patch.
The initial GA promotion
metadata remains
`promoted_from_tag=v6.0.0-rc.7`, `rollback_version=v5.1.35`,
@ -884,8 +887,8 @@ compose image default, standalone installer fallback constant, and packaged
Helm metadata. A draft release workflow failure caused by stale image or chart
pins is a release-packet blocker until the defaults, tests, and evidence
record are refreshed from the new branch head.
For the active support prerelease `v6.0.5-rc.1` cut, the repo-root compose
default and `scripts/install-docker.sh` fallback must both pin `6.0.5-rc.1`
For the active support prerelease `v6.0.5-rc.2` cut, the repo-root compose
default and `scripts/install-docker.sh` fallback must both pin `6.0.5-rc.2`
until the next governed stable cut moves them forward. The stable promotion
guard remains in force by rejecting leftover `-rc.` defaults when the governed
`VERSION` is a stable release.

View file

@ -0,0 +1,45 @@
# Pulse v6.0.5-rc.2 Release Notes
`v6.0.5-rc.2` is a release candidate for the next Pulse v6 patch line. It
follows stable `v6.0.4` and bundles the earlier support fixes for Patrol Gemini
model readiness, remembered-login submit persistence, and Proxmox SMART
temperature fallback for direct SATA/SAT disks. It supersedes `v6.0.5-rc.1`
with the additional support fixes needed for reporter retesting across SSO,
Proxmox auth, physical disk inventory, temperature display severity, PBS backup
polling, and legacy agent updates.
## Fixes
- Fixed Patrol readiness checks for Gemini models so tool-call capability is
detected from Gemini candidate parts as well as top-level tool-call lists.
- Fixed the login form so enabling "remember me" during submit persists the
remembered username immediately.
- Fixed Proxmox SMART temperature fallback for direct SATA/SAT disks where
smartctl auto-detection returned disk health but no temperature until retried
with an explicit SAT probe.
- Fixed legacy agent update token recovery for v5-to-v6 update paths that could
not find stored connection state even though a running agent still had usable
connection details.
- Fixed temperature display severity so node, workload, Docker, standalone
agent, and drawer temperature surfaces use configured alert thresholds instead
of hardcoded warning colors.
- Bounded PBS backup polling memory use and added coverage for read-state
polling behavior.
- Fixed physical disk SMART/Proxmox merge identity so NVMe and SMART-enriched
disk records keep their canonical identity and temperature metadata.
- Fixed Proxmox token preservation regressions during install/update flows and
added smoke diagnostics for token setup and validation.
- Fixed legacy OIDC SSO discovery and CSP nonce handling so configured SSO
providers are advertised to the login surface after upgrade.
- Preferred route-aware Proxmox host URLs when generating host setup details.
- Refreshed Docker, Helm, installer, and release-helper metadata for the
release candidate.
## Upgrade Notes
Use the normal v6 install or update flow for `v6.0.5-rc.2` only when you are
comfortable testing an RC. The rollback target for this release candidate is
`v6.0.4`.
Paid Pulse Pro, Relay, and eligible legacy customers should continue to use the
private download page and private runtime image for paid runtime features.

View file

@ -0,0 +1,35 @@
# Pulse v6.0.5-rc.2
_This changelog describes the `v6.0.5-rc.2` release candidate compared with
stable `v6.0.4`._
## Fixed
- Patrol readiness checks now detect Gemini tool-call capability from Gemini
candidate parts as well as top-level tool-call lists.
- Remembered-login state now persists the saved username when the checkbox is
enabled during submit.
- Proxmox SMART temperature collection now retries direct SATA/SAT disks with an
explicit SAT probe when smartctl auto-detection returns health but no
temperature.
- Legacy agent update token recovery now handles v5-to-v6 update paths where a
running agent can provide connection details even when stored state is absent.
- Temperature displays now resolve configured alert thresholds across node,
workload, Docker, standalone agent, and drawer surfaces.
- PBS backup polling now keeps a bounded read-state working set during backup
discovery.
- Physical disk SMART and Proxmox records now merge through canonical disk
identity so NVMe, size, SMART, and temperature metadata survive enrichment.
- Proxmox install/update flows now preserve generated token state and expose
smoke diagnostics for setup validation.
- Legacy OIDC SSO discovery now persists and advertises configured providers,
with CSP nonce handling for embedded frontend assets.
- Proxmox host setup now prefers route-aware host URLs.
- Docker, Helm, installer, and release-helper metadata now track the active
release candidate version.
## Release Metadata
- Version: `v6.0.5-rc.2`
- Rollback target: `v6.0.4`
- Promotion path: release candidate from `main`

View file

@ -6,7 +6,7 @@ set -euo pipefail
SCRIPT_DIR="$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)"
DOCKER_IMAGE_REPO="${DOCKER_IMAGE_REPO:-rcourtman/pulse}"
CANONICAL_DEFAULT_PULSE_VERSION="6.0.5-rc.1"
CANONICAL_DEFAULT_PULSE_VERSION="6.0.5-rc.2"
resolve_default_pulse_version() {
if [ -n "${PULSE_IMAGE_VERSION:-}" ]; then

View file

@ -328,6 +328,12 @@ func TestCurrentSupportPrereleasePacketTracksInstallMetadata(t *testing.T) {
"remembered-login submit persistence",
"Proxmox SMART temperature fallback",
"direct SATA/SAT disks",
"legacy agent update token recovery",
"temperature display severity",
"PBS backup polling",
"Proxmox token preservation",
"legacy OIDC SSO discovery",
"route-aware Proxmox host URLs",
"rollback target for this release candidate is `v"+previous+"`",
)
assertFileContainsAll(t, changelogPath,
@ -338,6 +344,13 @@ func TestCurrentSupportPrereleasePacketTracksInstallMetadata(t *testing.T) {
"Remembered-login state now persists",
"Proxmox SMART temperature collection",
"explicit SAT probe",
"Legacy agent update token recovery",
"Temperature displays now resolve configured alert thresholds",
"PBS backup polling now keeps a bounded read-state working set",
"Physical disk SMART and Proxmox records now merge",
"Proxmox install/update flows now preserve generated token state",
"Legacy OIDC SSO discovery now persists",
"Proxmox host setup now prefers route-aware host URLs",
)
assertFileContainsAll(t, repoFile("docs", "RELEASE_NOTES.md"),
"docs/releases/RELEASE_NOTES_v"+version+".md",

View file

@ -229,6 +229,7 @@ func TestInstallDockerProofTracksSupportPrereleaseContract(t *testing.T) {
assertFileContainsAllNormalized(t, repoFile("docs", "release-control", "v6", "internal", "subsystems", "deployment-installability.md"),
"The active support prerelease `v"+version+"` 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 `"+version+"` release version.",
"This support prerelease keeps `rollback_version=v"+previous+"`, publishes a versioned public GitHub prerelease plus versioned Docker and Helm artifacts, and does not move stable/latest install pointers or stable semver aliases.",
"legacy agent update token recovery, threshold-aware temperature display severity, PBS backup polling memory bounds, physical disk SMART/Proxmox merge identity, Proxmox token preservation diagnostics, legacy OIDC SSO discovery with CSP nonce handling, and route-aware Proxmox host URLs behind RC validation",
"For the active support prerelease `v"+version+"` cut, the repo-root compose default and `scripts/install-docker.sh` fallback must both pin `"+version+"` until the next governed stable cut moves them forward.",
)
}