Commit graph

11273 commits

Author SHA1 Message Date
pulse-triage[bot]
5bc6f919bb fix(metrics): stop closing writeCh on shutdown
The ingestion worker closed writeCh when it observed stopCh. A concurrent WriteWithTier that passed its stopping check, or a WriteBatchSync/WriteBatchBounded caller (which never checks stopping), could then send on the closed channel and panic the process during shutdown. Reproduced deterministically: enqueueWrite after Close panics with send on closed channel, and 8 concurrent monitoring writers racing Close panic in boundedEnqueueAndWait (store.go:1034).

Never close writeCh. Drain already-queued requests non-blockingly, then process them. Late writes land in the buffered channel and are discarded with the store rather than crashing it. Record the invariant in the performance-and-scalability contract and pin it in the accepted store proof file.

Change-source: pulse-maintainer
2026-09-19 15:16:35 +01:00
pulse-triage[bot]
54f0619e57 fix(monitoring): honour removal block on forked re-enroll
A removed host agent could re-enroll under a derived base-hex identity because identity resolution forked the machine before the removal block was consulted. The block is keyed on the base machine identity, so the forked ID bypassed it and the machine was silently re-admitted (#2113). ApplyHostReport now consults the base-identity removal block when the presenting token had no prior binding, so a fresh install token clears the block and heals to the base identity while an established distinct forked host (#1753) is left alone.

Record the behaviour in the monitoring and agent-lifecycle contracts and add the focused regression to the accepted monitor.go proof file. Change-source: pulse-maintainer

Change-source: pulse-maintainer
2026-09-19 15:16:18 +01:00
pulse-triage[bot]
40fff0636d fix(docker): treat all local RepoDigests as the current image
Docker update check compared a single RepoDigest against the registry tag digest, so a current image that carries two RepoDigests (postgres:16.15-alpine3.24) reported update-available. Compare the whole local RepoDigest set in CheckImageUpdate and in the typed update preflight; the primary digest is still reported for display.

Record the behaviour in the monitoring and agent-lifecycle contracts and add focused regression tests in the accepted docker proof files. Proof: go test ./internal/dockeragent/ passes including TestRegistryChecker_MultipleLocalRepoDigestsSuppressFalseUpdate and TestAgent_getImageRepoDigests_MultipleDigestsForOneImage.

Change-source: pulse-maintainer
2026-09-19 15:16:03 +01:00
pulse-triage[bot]
df44238797 fix(monitoring): drop replayed unified metric samples
Read-side registry rebuilds re-run the unified metric sync as often as every two seconds, so one poll observation was re-written many times between polls. The metrics store upserts on (resource, metric, tier, timestamp), so each replay UPDATEs the same row and commits a fresh transaction for no new data, churning the SQLite WAL and driving the disk-write amplification reported in #1966.

Track the last sample handed to the store per series and skip exact timestamp+value repeats before the batch is enqueued. A corrected value at the same observation time is still written, so the guard cannot mask a real change. Record the behaviour in the monitoring and agent-lifecycle contracts and move the focused regression into the accepted monitor.go proof file.

Change-source: pulse-maintainer
2026-09-19 15:15:31 +01:00
pulse-triage[bot]
1778f7d16c test(release): assert hosted bundle and backend lanes
release_preflight_test still asserted the retired PVE runner labels after 051ce81a72 moved every release channel to GitHub-hosted runners. Assert runs-on: ubuntu-24.04 and the absence of self-hosted/pulse-pve so the test matches the governing workflow contract.

Change-source: pulse-maintainer
2026-09-19 13:50:50 +01:00
rcourtman
4fa1df096e
Merge pull request #2116 from rcourtman/fix/csrf-preflight-store
Some checks failed
Canonical Governance / governance (push) Has been cancelled
Canonical Private Governance / private-governance (push) Has been cancelled
Build and Test / Secret Scan (push) Has been cancelled
Build and Test / Detect changed areas (push) Has been cancelled
Core E2E Tests / Validate E2E tier selection (push) Has been cancelled
Core E2E Tests / Offline Organization provisioning (push) Has been cancelled
Core E2E Tests / Agent registration lifecycle (push) Has been cancelled
Build and Test / Frontend (push) Has been cancelled
Build and Test / Backend tests (api) (push) Has been cancelled
Build and Test / Backend tests (rest-0) (push) Has been cancelled
Build and Test / Backend tests (rest-1) (push) Has been cancelled
Build and Test / Script smoke tests & backend build (push) Has been cancelled
Core E2E Tests / Playwright Core E2E (shard 1/8) (push) Has been cancelled
Build and Test / Benchmarks (push) Has been cancelled
Core E2E Tests / Playwright Core E2E (shard 2/8) (push) Has been cancelled
Core E2E Tests / Playwright Core E2E (shard 3/8) (push) Has been cancelled
Core E2E Tests / Playwright Core E2E (shard 4/8) (push) Has been cancelled
Core E2E Tests / Playwright Core E2E (shard 5/8) (push) Has been cancelled
Core E2E Tests / Playwright Core E2E (shard 6/8) (push) Has been cancelled
Core E2E Tests / Playwright Core E2E (shard 7/8) (push) Has been cancelled
Core E2E Tests / Playwright Core E2E (shard 8/8) (push) Has been cancelled
Core E2E Tests / E2E verdict (push) Has been cancelled
Fix CSRF test initialization for release preflight
2026-09-17 13:06:16 +01:00
rcourtman
39c46011cc test(api): isolate CSRF middleware fixtures
Initialize the persistent CSRF store for middleware tests that construct session-cookie requests, and restore the package test store afterward. This keeps exact release preflight runs from panicking before they can report qualification results.
2026-09-17 12:35:20 +01:00
rcourtman
4ad59c4406
Merge pull request #2114 from rcourtman/chore/portal-vitest-security
Some checks are pending
Build and Test / Backend tests (rest-1) (push) Blocked by required conditions
Build and Test / Secret Scan (push) Waiting to run
Build and Test / Detect changed areas (push) Waiting to run
Build and Test / Frontend (push) Blocked by required conditions
Build and Test / Backend tests (api) (push) Blocked by required conditions
Build and Test / Backend tests (rest-0) (push) Blocked by required conditions
Build and Test / Script smoke tests & backend build (push) Blocked by required conditions
Build and Test / Benchmarks (push) Blocked by required conditions
Canonical Governance / governance (push) Waiting to run
Canonical Private Governance / private-governance (push) Waiting to run
Core E2E Tests / Playwright Core E2E (shard 2/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 3/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 4/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 5/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 6/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 7/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 8/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 1/8) (push) Blocked by required conditions
Core E2E Tests / Validate E2E tier selection (push) Waiting to run
Core E2E Tests / Offline Organization provisioning (push) Waiting to run
Core E2E Tests / Agent registration lifecycle (push) Waiting to run
Core E2E Tests / E2E verdict (push) Blocked by required conditions
chore(portal): patch Vitest security dependency
2026-09-17 01:26:25 +01:00
rcourtman
019852f1f3 chore(portal): patch Vitest security dependency
Update the Pulse Account portal Vitest dependency to 4.1.11, clearing Dependabot security alerts 154 and 155 for Vitest and @vitest/mocker.

Contract-Neutral: Dev-only Vitest security dependency update; no product contract or runtime behavior changed.
2026-09-17 00:32:56 +01:00
rcourtman
95ad983199
Merge pull request #2103 from rcourtman/dependabot/npm_and_yarn/tests/integration/typescript-7.0.2
build(deps-dev): bump typescript from 5.9.3 to 7.0.2 in /tests/integration
2026-09-17 00:32:16 +01:00
rcourtman
a7cc23d37b
Merge pull request #2102 from rcourtman/dependabot/npm_and_yarn/tests/integration/types/node-26.5.1
build(deps-dev): bump @types/node from 20.19.24 to 26.5.1 in /tests/integration
2026-09-17 00:31:54 +01:00
rcourtman
23fd90e0ce
Merge pull request #2105 from rcourtman/dependabot/docker/dot-devcontainer/docker-e75168a720
build(deps): bump golang in /.devcontainer
2026-09-17 00:25:08 +01:00
rcourtman
76a8b06a29
Merge pull request #2108 from rcourtman/fix/token-inventory-reload
Some checks failed
Build and Test / Secret Scan (push) Has been cancelled
Build and Test / Detect changed areas (push) Has been cancelled
Canonical Governance / governance (push) Has been cancelled
Canonical Private Governance / private-governance (push) Has been cancelled
Public docs / check (push) Has been cancelled
Core E2E Tests / Validate E2E tier selection (push) Has been cancelled
Core E2E Tests / Offline Organization provisioning (push) Has been cancelled
Core E2E Tests / Agent registration lifecycle (push) Has been cancelled
Build and Test / Frontend (push) Has been cancelled
Build and Test / Backend tests (api) (push) Has been cancelled
Build and Test / Backend tests (rest-0) (push) Has been cancelled
Build and Test / Backend tests (rest-1) (push) Has been cancelled
Build and Test / Script smoke tests & backend build (push) Has been cancelled
Build and Test / Benchmarks (push) Has been cancelled
Core E2E Tests / Playwright Core E2E (shard 1/8) (push) Has been cancelled
Core E2E Tests / Playwright Core E2E (shard 2/8) (push) Has been cancelled
Core E2E Tests / Playwright Core E2E (shard 3/8) (push) Has been cancelled
Core E2E Tests / Playwright Core E2E (shard 4/8) (push) Has been cancelled
Core E2E Tests / Playwright Core E2E (shard 5/8) (push) Has been cancelled
Core E2E Tests / Playwright Core E2E (shard 6/8) (push) Has been cancelled
Core E2E Tests / Playwright Core E2E (shard 7/8) (push) Has been cancelled
Core E2E Tests / Playwright Core E2E (shard 8/8) (push) Has been cancelled
Core E2E Tests / E2E verdict (push) Has been cancelled
Keep agent credentials consistent across monitor reloads
2026-09-15 10:16:55 +01:00
rcourtman
8fad031d95 Keep agent credentials consistent across monitor reloads
Reloading configuration replaced the monitor's config pointer while API and
authentication handlers retained the original object. Tokens created afterwards
could authenticate successfully while Agent Doctor reported an unlisted token.

Refresh the canonical runtime configuration in place before constructing the
replacement manager. Cover repeated reloads, live token creation and revocation.
2026-09-15 09:37:01 +01:00
dependabot[bot]
634bedbd64
build(deps): bump golang in /.devcontainer
Bumps golang in `/.devcontainer` from `9d2f36f` to `3c3e25a`.


Updates `golang` from `9d2f36f` to `3c3e25a`

---
updated-dependencies:
- dependency-name: golang
  dependency-version: 1.26.8
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: docker
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-09-15 03:35:13 +00:00
dependabot[bot]
3e8a85ae79
build(deps-dev): bump typescript in /tests/integration
Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.9.3 to 7.0.2.
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.9.3...v7.0.2)

---
updated-dependencies:
- dependency-name: typescript
  dependency-version: 7.0.2
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-09-15 03:30:38 +00:00
dependabot[bot]
35ae26bf35
build(deps-dev): bump @types/node in /tests/integration
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.19.24 to 26.5.1.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-version: 26.5.1
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-09-15 03:30:32 +00:00
pulse-triage[bot]
80bb10b09e
Merge pull request #2091 from rcourtman/maintainer/b9a6228c06e6411abfa9ee6b150ed863
Preserve settings during security setup and bind stable promotion to observed source
2026-09-15 02:20:27 +00:00
pulse-triage[bot]
6a611905be Scope the dedicated proof to quick security setup
Use an exact runtime-file policy before the general API fallback, so setup preservation evidence cannot substitute for unrelated API changes. Assert both setup routing and unchanged organization/RBAC verification requirements. Retain the original failed broader-registry test evidence.

Change-source: pulse-maintainer
2026-09-15 02:28:17 +01:00
pulse-triage[bot]
6b3780c8a6 Keep API proof registrations in canonical order
Sort the dedicated regression path into the existing exact-file list as required by the registry audit. Accepted proofs and enforcement remain identical.

Change-source: pulse-maintainer
2026-09-15 02:27:13 +01:00
pulse-triage[bot]
5f33ea3a3c Register the dedicated security setup contract regression
The per-commit API guard needs the actual dedicated preservation test declared in its verification registry. Restore that tested artifact and add its exact path to the existing backend API proof list. Retain all existing requirements and reviewed commit identities; no history rewrite, contract-neutral override, or unrelated proof substitution is used.

Change-source: pulse-maintainer
2026-09-15 02:22:04 +01:00
pulse-triage[bot]
b5cf4d5cc7 Use the governed follow-up reference shape
Represent the retained L1 maintenance residual with the required kind and id fields so the status audit resolves its owned follow-up.

Change-source: pulse-maintainer
2026-09-15 02:16:52 +01:00
pulse-triage[bot]
8e85d69638 Retain the unresolved maintenance release follow-through
Link the L1 residual to an explicit owned follow-up when claiming the independent settings repair. Source admission, failed checks, installed recovery and exact-candidate observation remain unfinished rather than disappearing with the claim change.

Change-source: pulse-maintainer
2026-09-15 02:16:33 +01:00
pulse-triage[bot]
d7e9e61bc5 Bind setup preference regression to API contract verification
Place the authenticated settings-preservation regression in the established API contract proof surface so the owning contract guard consumes its actual assertions, without waiving verification or changing runtime behavior.

Change-source: pulse-maintainer
2026-09-15 02:13:42 +01:00
pulse-triage[bot]
f0f7e51d15 Preserve system preferences when rotating local authentication
Quick security setup previously replaced system.json with defaults even for authenticated force reconfiguration. Initialize only absent settings under the persistence save mutex, preserving existing bytes and read failures. Cover credential rotation, custom and malformed settings, missing settings, and read errors without changing authorization or token scopes.

Change-source: pulse-maintainer
2026-09-15 02:11:52 +01:00
pulse-triage[bot]
f04c230afb Bind maintenance stable releases to their soaked source
Apply existing candidate content-drift validation to every future stable promotion, including v6.4 patches. Preserve patch and minor soak durations and the explicit hotfix reason path. Extend regression cases to maintenance releases and give historical unit fixtures explicit source paths rather than reading the live checkout.

Change-source: pulse-maintainer
2026-09-15 00:36:23 +01:00
rcourtman
e7f36efceb
Merge pull request #2089 from rcourtman/fix/pr-validation-refresh
Some checks are pending
Build and Test / Secret Scan (push) Waiting to run
Build and Test / Detect changed areas (push) Waiting to run
Build and Test / Frontend (push) Blocked by required conditions
Build and Test / Backend tests (api) (push) Blocked by required conditions
Build and Test / Backend tests (rest-0) (push) Blocked by required conditions
Build and Test / Backend tests (rest-1) (push) Blocked by required conditions
Build and Test / Script smoke tests & backend build (push) Blocked by required conditions
Build and Test / Benchmarks (push) Blocked by required conditions
Canonical Governance / governance (push) Waiting to run
Canonical Private Governance / private-governance (push) Waiting to run
Public docs / check (push) Waiting to run
Core E2E Tests / Validate E2E tier selection (push) Waiting to run
Core E2E Tests / Offline Organization provisioning (push) Waiting to run
Core E2E Tests / Playwright Core E2E (shard 1/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 2/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 3/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 4/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 5/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 6/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 7/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 8/8) (push) Blocked by required conditions
Core E2E Tests / Agent registration lifecycle (push) Waiting to run
Core E2E Tests / E2E verdict (push) Blocked by required conditions
Cancel superseded pull request validation
2026-09-14 23:44:50 +01:00
pulse-triage[bot]
c90ecfbe68
Merge pull request #2087 from rcourtman/maintainer/ba2b16974cb14cabadf8c24af4fe4178
Preserve warning-level alert notification preferences
2026-09-14 22:30:53 +00:00
rcourtman
092e988239 Cancel superseded pull request validation
Replacement PR checks were queued behind obsolete runs even after the
previous revision failed. Cancel prior validation only for pull_request
events, preserving completed verdicts for branch pushes and manual runs.

Contract-Neutral: Only PR concurrency changes. Semantic YAML comparison confirms all jobs and triggers, including frontend dependency security checks, are unchanged. No security verification change is warranted. The scheduling contract is updated.
2026-09-14 23:07:22 +01:00
pulse-triage[bot]
10d466e1a3 style(alerts): format warning preference repair
Resolve the PR2087 frontend formatting gate without changing severity behavior or rewriting the reviewed source. Re-run the production-component browser matrix and refresh its content hashes; whole-tree formatting and local TypeScript checking pass.

Change-source: pulse-maintainer
2026-09-14 22:46:12 +01:00
pulse-triage[bot]
e8bbda6f71 fix(alerts): preserve warning-level notification preferences
Retain warning severity through email API save/reload and webhook editing instead of coercing it to all. Add adapter round-trip and webhook edit/save regressions for issue #2069 with alerts, API and notifications contracts. Browser verification covers production components at desktop and narrow widths using synthetic settings; backend filtering is unchanged.

Change-source: pulse-maintainer
2026-09-14 22:36:28 +01:00
pulse-triage[bot]
ce1e99ba4e
Merge pull request #2082 from rcourtman/maintainer/01b9d5b9163d46c9be355e56c542fc50
Some checks are pending
Build and Test / Secret Scan (push) Waiting to run
Build and Test / Detect changed areas (push) Waiting to run
Build and Test / Frontend (push) Blocked by required conditions
Build and Test / Backend tests (api) (push) Blocked by required conditions
Build and Test / Backend tests (rest-0) (push) Blocked by required conditions
Build and Test / Backend tests (rest-1) (push) Blocked by required conditions
Build and Test / Script smoke tests & backend build (push) Blocked by required conditions
Build and Test / Benchmarks (push) Blocked by required conditions
Canonical Governance / governance (push) Waiting to run
Canonical Private Governance / private-governance (push) Waiting to run
Public docs / check (push) Waiting to run
Core E2E Tests / Validate E2E tier selection (push) Waiting to run
Core E2E Tests / Offline Organization provisioning (push) Waiting to run
Core E2E Tests / Playwright Core E2E (shard 1/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 2/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 3/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 4/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 5/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 6/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 7/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 8/8) (push) Blocked by required conditions
Core E2E Tests / Agent registration lifecycle (push) Waiting to run
Core E2E Tests / E2E verdict (push) Blocked by required conditions
fix: preserve disk identity and tolerate TrueNAS alert argument shapes
2026-09-14 09:30:30 +00:00
pulse-triage[bot]
7e21b005fa test(governance): synchronize lifecycle lookup proof fixture
Canonical Governance for PR2082 failed because the host-agent lifecycle lookup expectation omitted the registered physical-disk round-trip regression. Include that exact proof file while preserving strict list equality and the existing runtime implementation and registry.

Change-source: pulse-maintainer
2026-09-14 08:54:07 +01:00
pulse-triage[bot]
455089a81d test(governance): align physical disk proof expectations
Keep the canonical completion guard unit fixtures synchronized with the registered physical-disk runtime proof so governance validates the actual contract inventory.\n\nChange-source: pulse-maintainer

Change-source: pulse-maintainer
2026-09-13 18:56:25 +01:00
pulse-triage[bot]
646bba571b fix(truenas): accept non-object REST alert arguments
Preserve snapshot refresh and formatted alerts when legacy args are scalar, array or null. Restrict SMART metadata to typed object fields and cover repeated snapshot collection plus error boundaries for #2077.

Change-source: pulse-maintainer
2026-09-13 18:42:50 +01:00
pulse-triage[bot]
c9e71eac86 test(monitoring): register physical disk round-trip runtime proof
Register the focused skipped-poll regression under monitoring runtime verification as well as the shared lifecycle and read-state edges.

Change-source: pulse-maintainer
2026-09-13 18:26:15 +01:00
pulse-triage[bot]
01742e2279 fix(monitoring): preserve physical disk source identity on refresh
Skipped disk polls must write the Proxmox source key back into inventory rather than hashing the canonical resource ID again. Add repeated-cycle runtime and JSON projection coverage for serial-less disks, distinct node/controller scopes and removal.

Change-source: pulse-maintainer
2026-09-13 18:25:42 +01:00
pulse-triage[bot]
a081769c05
Merge pull request #2074 from rcourtman/maintainer/20260913T142652Z
Some checks are pending
Build and Test / Secret Scan (push) Waiting to run
Build and Test / Detect changed areas (push) Waiting to run
Build and Test / Frontend (push) Blocked by required conditions
Build and Test / Backend tests (api) (push) Blocked by required conditions
Build and Test / Backend tests (rest-0) (push) Blocked by required conditions
Build and Test / Backend tests (rest-1) (push) Blocked by required conditions
Build and Test / Script smoke tests & backend build (push) Blocked by required conditions
Build and Test / Benchmarks (push) Blocked by required conditions
Canonical Governance / governance (push) Waiting to run
Canonical Private Governance / private-governance (push) Waiting to run
Public docs / check (push) Waiting to run
Keep qualified releases safe through skipped checks and cancellation
2026-09-13 15:06:07 +00:00
pulse-triage[bot]
ae38b93c0c fix(release): stop public writer chain on workflow cancellation
Preserve successful qualification and optional skipped ancestors while rejecting workflow cancellation independently of completed needs. Cover tag, Docker, Helm, readiness, convergence dispatch and activation; retain evidence and cleanup joins.

Change-source: pulse-maintainer
2026-09-13 14:21:55 +01:00
pulse-triage[bot]
f9569426f5 fix(release): publish qualified tags after optional skipped checks
Use an explicit status guard while requiring successful preparation and qualification. Model the beta skipped-ancestor path and adverse direct prerequisites; retain immutable identity and all release gates.

Change-source: pulse-maintainer
2026-09-13 13:03:02 +01:00
pulse-triage[bot]
1c289e746a
Merge pull request #2072 from rcourtman/maintainer/20260913T095259Z
Some checks are pending
Build and Test / Secret Scan (push) Waiting to run
Build and Test / Detect changed areas (push) Waiting to run
Build and Test / Frontend (push) Blocked by required conditions
Build and Test / Backend tests (api) (push) Blocked by required conditions
Build and Test / Backend tests (rest-0) (push) Blocked by required conditions
Build and Test / Backend tests (rest-1) (push) Blocked by required conditions
Build and Test / Script smoke tests & backend build (push) Blocked by required conditions
Build and Test / Benchmarks (push) Blocked by required conditions
Canonical Governance / governance (push) Waiting to run
Canonical Private Governance / private-governance (push) Waiting to run
Public docs / check (push) Waiting to run
Core E2E Tests / Validate E2E tier selection (push) Waiting to run
Core E2E Tests / Offline Organization provisioning (push) Waiting to run
Core E2E Tests / Playwright Core E2E (shard 1/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 2/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 3/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 4/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 5/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 6/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 7/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 8/8) (push) Blocked by required conditions
Core E2E Tests / Agent registration lifecycle (push) Waiting to run
Core E2E Tests / E2E verdict (push) Blocked by required conditions
Recognise canonical vSphere 8.0.3 without breaking connection checks
2026-09-13 10:36:08 +00:00
pulse-triage[bot]
244af2bafe test(vmware): align API probe expectations
Include the canonical 8.0.3.0 release in the API handler fixtures and expected negotiation sequence. This repairs the exact hosted API-suite failure on the reviewed VMware candidate without changing runtime behavior.

Change-source: pulse-maintainer
2026-09-13 10:59:02 +01:00
pulse-triage[bot]
6f301ee8fb fix(vmware): probe canonical vSphere 8.0.3 JSON release
Probe 8.0.3.0 before the legacy spelling and older API schemas. Issue #2070 demonstrates method routing on the canonical version while Pulse reports 8.0.2.0. Retain legacy fallback and hard authentication/permission failures.

Add canonical negotiation, legacy/older fallback and auth/permission regression controls; update the runtime contract. Five reduced-function race probes fail before and pass after. Full package validation is unavailable with the installed offline dependency cache. This repairs negotiation, not the unresolved metrics/events/folder enrichment report.

Change-source: pulse-maintainer
2026-09-13 09:25:10 +01:00
pulse-triage[bot]
343f15eec5
Merge pull request #2065 from rcourtman/fix/proxmox-node-guest-navigation
Some checks are pending
Build and Test / Secret Scan (push) Waiting to run
Build and Test / Detect changed areas (push) Waiting to run
Build and Test / Frontend (push) Blocked by required conditions
Build and Test / Backend tests (api) (push) Blocked by required conditions
Build and Test / Backend tests (rest-0) (push) Blocked by required conditions
Build and Test / Backend tests (rest-1) (push) Blocked by required conditions
Build and Test / Script smoke tests & backend build (push) Blocked by required conditions
Build and Test / Benchmarks (push) Blocked by required conditions
Canonical Governance / governance (push) Waiting to run
Canonical Private Governance / private-governance (push) Waiting to run
Public docs / check (push) Waiting to run
Core E2E Tests / Validate E2E tier selection (push) Waiting to run
Core E2E Tests / Offline Organization provisioning (push) Waiting to run
Core E2E Tests / Playwright Core E2E (shard 1/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 2/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 3/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 4/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 5/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 6/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 7/8) (push) Blocked by required conditions
Core E2E Tests / Playwright Core E2E (shard 8/8) (push) Blocked by required conditions
Core E2E Tests / Agent registration lifecycle (push) Waiting to run
Core E2E Tests / E2E verdict (push) Blocked by required conditions
Show a node's guests from the Proxmox overview row
2026-09-12 22:55:38 +01:00
rcourtman
709eeb2f77 Align node filter source contracts with inventory options
Keep the shared-owner and memoization assertions while allowing the
platform-scoped inventory argument used to preserve nodes without guests.
2026-09-12 18:36:35 +01:00
rcourtman
c7c503994b
Merge pull request #2063 from rcourtman/fix/disposable-release-qualification
Some checks failed
Build and Test / Secret Scan (push) Waiting to run
Build and Test / Detect changed areas (push) Waiting to run
Build and Test / Frontend (push) Blocked by required conditions
Build and Test / Backend tests (api) (push) Blocked by required conditions
Build and Test / Backend tests (rest-0) (push) Blocked by required conditions
Build and Test / Backend tests (rest-1) (push) Blocked by required conditions
Build and Test / Script smoke tests & backend build (push) Blocked by required conditions
Build and Test / Benchmarks (push) Blocked by required conditions
Canonical Governance / governance (push) Waiting to run
Canonical Private Governance / private-governance (push) Waiting to run
Public docs / check (push) Waiting to run
Unified Agent Native Verification / Linux ARM64 (push) Has been cancelled
Unified Agent Native Verification / Linux x64 (push) Has been cancelled
Unified Agent Native Verification / Windows x64 (push) Has been cancelled
Unified Agent Native Verification / macOS ARM64 (push) Has been cancelled
Unified Agent Native Verification / macOS Intel (push) Has been cancelled
Unified Agent Native Verification / FreeBSD cross-build contract (push) Has been cancelled
Isolate release preparation and qualification on hosted VMs
2026-09-12 18:33:17 +01:00
rcourtman
982465e63c Show a node's guests from the Proxmox overview row
Selecting a node filters its guests and reveals an off-screen guest
heading without moving results that are already visible. Repeating the selection
clears only the node filter. Keep node details on the
chevron and preserve other guest filters when changing or clearing nodes.

Build node filter options from inventory as well as guests so empty nodes
retain their names and selection after reload. Do not present unrelated
inventory failures as the cause of an empty filtered result.

Refs lane L8. Update the owning interaction and identity contracts.
2026-09-12 17:24:46 +01:00
rcourtman
9e87fae07b Align backend partition proof with hosted release isolation
The native installer suite still required the retired persistent runner
label. Require the fresh hosted runner while preserving the canonical
partition command, capacity checks, watchdogs and cache constraints.
2026-09-12 16:00:04 +01:00
rcourtman
051ce81a72 Isolate release preparation and qualification on hosted VMs
Persistent prerelease runners can retain state from earlier source execution
and influence later admission, build output or qualification. Use the
existing hosted stable-release path for every channel while preserving
exact-source checks, resource planning, watchdogs and release gates.
2026-09-12 15:44:11 +01:00
pulse-triage[bot]
5a4163ff83
Merge pull request #2060 from rcourtman/maintainer/20260911T224651Z
Some checks are pending
Build and Test / Secret Scan (push) Waiting to run
Build and Test / Detect changed areas (push) Waiting to run
Build and Test / Frontend (push) Blocked by required conditions
Build and Test / Backend tests (api) (push) Blocked by required conditions
Build and Test / Backend tests (rest-0) (push) Blocked by required conditions
Build and Test / Backend tests (rest-1) (push) Blocked by required conditions
Build and Test / Script smoke tests & backend build (push) Blocked by required conditions
Build and Test / Benchmarks (push) Blocked by required conditions
Canonical Governance / governance (push) Waiting to run
Canonical Private Governance / private-governance (push) Waiting to run
Public docs / check (push) Waiting to run
Unified Agent Native Verification / Linux ARM64 (push) Waiting to run
Unified Agent Native Verification / Linux x64 (push) Waiting to run
Unified Agent Native Verification / Windows x64 (push) Waiting to run
Unified Agent Native Verification / macOS ARM64 (push) Waiting to run
Unified Agent Native Verification / macOS Intel (push) Waiting to run
Unified Agent Native Verification / FreeBSD cross-build contract (push) Waiting to run
Retain the reviewed release-version reuse guard
2026-09-11 23:28:08 +00:00