Pulse/internal/hostagent
courtmanr@gmail.com ac43506e6e Fix Proxmox registration for host-token installs
The Settings > Infrastructure installer mints generic host install
tokens, but install.sh auto-detects Proxmox and the agent presents type
pve/pbs at /api/auto-register. The bootstrap grant required an exact
install_type match, so every generic install on a Proxmox node was
denied source creation and the denial was a single buried journal warn.

Four-part fix (#1644):
- server: extend the one-shot bootstrap grant to host-issued install
  tokens presenting a canonical Proxmox type. Typed tokens stay pinned,
  the grant keeps its settings-write mint requirement, first-hostname
  binding, serialized completion, and single consumption across types.
- agent: a canRegister=false denial now logs at error level, returns a
  setup error, and records the operator-facing reason in a
  proxmox-<type>-registration-blocked state marker.
- installer: report the Proxmox registration outcome in install output
  by reading the registered/blocked markers, and poll the server lookup
  for a bounded retry window before warning that registration was not
  confirmed (readyz flips before the first report cycle).
- setup script: the auto-register transport now captures the HTTP
  status alongside the body (no -f), making the invalid-setup-token
  branch reachable via 401/403 instead of a dead server-string grep,
  and operator guidance names Settings -> Infrastructure instead of the
  retired Nodes page (also updated in docs/PBS.md and the pinned
  assertions in contract, setup-script, and repoctl docs tests).

Regression proof: internal/api/issue1644_host_install_token_proxmox_test.go
plus new install.sh proofs for the retry window and blocked-marker
surfacing, and the updated hostagent blocked-registration test.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-28 11:21:14 +01:00
..
agent.go Run assigned availability checks from the host agent 2026-07-27 11:13:04 +01:00
agent_bench_test.go feat: Pulse v6 release 2026-03-18 16:06:30 +00:00
agent_buffering_test.go Isolate agent buffering qualification 2026-07-20 04:35:52 +01:00
agent_collection_test.go Harden unified agent runtime and installer 2026-04-23 23:04:18 +01:00
agent_flushbuffer_test.go fix(monitoring): make Unraid task state freshness-safe 2026-07-23 22:17:25 +01:00
agent_metrics_test.go Fix Unraid SMART probing and disk authority 2026-07-24 09:38:39 +01:00
agent_new_test.go fix(monitoring): make Unraid task state freshness-safe 2026-07-23 22:17:25 +01:00
agent_sensors_test.go Add typed NVIDIA GPU stats 2026-06-30 09:43:33 +01:00
agent_state_test.go feat: Pulse v6 release 2026-03-18 16:06:30 +00:00
agent_test.go Clarify Pulse Agent host profile support 2026-05-07 22:28:24 +01:00
availability.go Run assigned availability checks from the host agent 2026-07-27 11:13:04 +01:00
availability_test.go Run assigned availability checks from the host agent 2026-07-27 11:13:04 +01:00
buffer_persist_test.go Partition host agent tests by platform 2026-07-09 23:40:34 +01:00
ceph.go fix(ceph): parse Quincy+/Squid status schema for MON and MGR counts 2026-07-26 19:31:15 +01:00
ceph_test.go feat: Pulse v6 release 2026-03-18 16:06:30 +00:00
cluster_sensors.go feat: Pulse v6 release 2026-03-18 16:06:30 +00:00
cluster_sensors_test.go feat: Pulse v6 release 2026-03-18 16:06:30 +00:00
collector_observability_test.go Fix Proxmox physical disk inventory continuity 2026-07-23 22:05:09 +01:00
command_client_test.go Allow local Pulse HTTP agent URLs 2026-07-03 00:24:40 +01:00
commands.go fix(agent): surface the real cause when reviewed actions go unavailable 2026-07-17 23:39:57 +01:00
commands_backoff_test.go feat: Pulse v6 release 2026-03-18 16:06:30 +00:00
commands_connect_test.go Harden unified agent runtime and installer 2026-04-23 23:04:18 +01:00
commands_coverage_test.go Stabilize hostagent backend release tests 2026-06-03 21:41:09 +01:00
commands_deploy.go Close remaining CodeQL allocation and cookie gaps 2026-07-09 20:10:08 +01:00
commands_deploy_test.go Harden remaining CodeQL security boundaries 2026-07-09 19:46:40 +01:00
commands_execute_test.go Tighten unified agent hardening proof 2026-04-23 23:37:25 +01:00
commands_host_update_test.go Fix durable APT drift receipts 2026-07-12 21:53:52 +01:00
commands_registration_test.go Require explicit websocket origin continuity 2026-04-22 04:46:13 +01:00
commands_storage_cleanup_test.go Fix durable APT drift receipts 2026-07-12 21:53:52 +01:00
commands_test.go Harden agent command and deploy trust boundaries 2026-04-21 23:50:34 +01:00
docker_lifecycle.go Add durable Docker restart lifecycle proof 2026-07-12 12:11:16 +01:00
docker_lifecycle_test.go Fix Docker container update recreation lifecycle 2026-07-23 21:39:35 +01:00
docker_update.go Restore one-click Docker container updates through the typed action plane 2026-07-14 12:19:04 +01:00
enroll.go Integrate trust-gate reliability fixes 2026-07-20 16:03:29 +01:00
enroll_test.go Integrate trust-gate reliability fixes 2026-07-20 16:03:29 +01:00
hostagent_coverage_test.go Partition host agent tests by platform 2026-07-09 23:40:34 +01:00
issue1516_physical_disk_regression_test.go Fix Unraid SMART probing and disk authority 2026-07-24 09:38:39 +01:00
issue1595_sas_collection_test.go Rebuild SMART scan fixtures from real --scan output 2026-07-24 23:07:17 +01:00
issue1612_unraid_smart_test.go Fix Unraid SMART probing and disk authority 2026-07-24 09:38:39 +01:00
issue1626_ceph_squid_status_test.go fix(ceph): parse Quincy+/Squid status schema for MON and MGR counts 2026-07-26 19:31:15 +01:00
mdadm.go Fix mdadm RAID fallback discovery 2026-05-05 09:29:34 +01:00
mdadm_test.go Partition host agent tests by platform 2026-07-09 23:40:34 +01:00
mock_collector_test.go Fix Unraid SMART probing and disk authority 2026-07-24 09:38:39 +01:00
network_helpers_test.go test: Add comprehensive test coverage across packages 2026-01-19 19:26:18 +00:00
nvidia_smi.go Fail closed on unknown remediation lock state for autonomous dispatches 2026-07-10 00:14:01 +01:00
observer_delivery_test.go Add report-only Unified Agent observer destinations 2026-07-19 15:30:34 +01:00
operation_receipt_failure_test.go Add durable agent operation receipts 2026-07-12 04:16:22 +01:00
operation_receipt_websocket_integration_test.go Add durable Docker restart lifecycle proof 2026-07-12 12:11:16 +01:00
os_identity.go Fix PVE version detection on agent hosts 2026-05-08 15:30:08 +01:00
package_manager_lease.go Add Colima autonomy release proof 2026-07-12 19:47:56 +01:00
package_manager_lease_test.go Add Colima autonomy release proof 2026-07-12 19:47:56 +01:00
package_updates.go Add Colima autonomy release proof 2026-07-12 19:47:56 +01:00
package_updates_test.go Add Colima autonomy release proof 2026-07-12 19:47:56 +01:00
proxmox_setup.go Fix Proxmox registration for host-token installs 2026-07-28 11:21:14 +01:00
proxmox_setup_classify_branchcov0723am_test.go Cover control plane status helpers, patrol assertions and setup classifiers 2026-07-23 06:34:03 +01:00
proxmox_setup_network_coverage_test.go Fix Proxmox agent registration authorization flow 2026-07-23 23:44:05 +01:00
proxmox_setup_test.go Fix Proxmox registration for host-token installs 2026-07-28 11:21:14 +01:00
send_report_test.go Surface agent auth failures and staleness instead of a silent 401 loop 2026-07-08 08:35:46 +01:00
setup_classifiers_branchcov0722am_test.go Cover the Unraid merge, setup classifier and retry helpers left untested 2026-07-22 08:06:56 +01:00
smartctl.go Classify SATA disks behind a SAS HBA as SATA 2026-07-24 23:01:02 +01:00
smartctl_coverage_test.go Fix Unraid SMART probing and disk authority 2026-07-24 09:38:39 +01:00
smartctl_discovery_test.go Rebuild SMART scan fixtures from real --scan output 2026-07-24 23:07:17 +01:00
smartctl_size_test.go Partition host agent tests by platform 2026-07-09 23:40:34 +01:00
smartctl_standby_guard_test.go Prepare v6.1.0-rc.4 release 2026-07-19 15:52:42 +01:00
smartctl_targets_branchcov0721am_test.go Add branch-coverage tests for unifiedresources helpers, smartctl targets, intent-policy manager 2026-07-21 06:14:26 +01:00
smartctl_test.go Fix Proxmox physical disk inventory continuity 2026-07-23 22:05:09 +01:00
smartctl_test_helpers_test.go Partition host agent tests by platform 2026-07-09 23:40:34 +01:00
storage_cleanup.go Add Colima autonomy release proof 2026-07-12 19:47:56 +01:00
storage_cleanup_test.go Add Colima autonomy release proof 2026-07-12 19:47:56 +01:00
sysinfo.go Fix Unraid SMART probing and disk authority 2026-07-24 09:38:39 +01:00
sysinfo_test.go Fix Unraid SMART probing and disk authority 2026-07-24 09:38:39 +01:00
unraid.go Fix Unraid SMART probing and disk authority 2026-07-24 09:38:39 +01:00
unraid_merge_branchcov0722am_test.go Cover the Unraid merge, setup classifier and retry helpers left untested 2026-07-22 08:06:56 +01:00
unraid_test.go fix(monitoring): make Unraid task state freshness-safe 2026-07-23 22:17:25 +01:00
version.go feat: Pulse v6 release 2026-03-18 16:06:30 +00:00
zfs.go Teach the host agent ZFS matcher nvme-eui and namespace-suffixed references 2026-07-18 11:54:09 +01:00
zfs_test.go Teach the host agent ZFS matcher nvme-eui and namespace-suffixed references 2026-07-18 11:54:09 +01:00