Commit graph

2368 commits

Author SHA1 Message Date
rcourtman
f2d5892aa5 Skip onboarding overflow bonus on uncapped plans
The free-tier onboarding overflow adds +1 to MaxMonitoredSystems for 14
days after initial setup. Once rc.2 made self-hosted core monitoring
uncapped (MaxMonitoredSystems = 0 on Free), the bonus math silently
converted "unlimited" into a hard cap of 1 — the UI then surfaced
"Over plan by N. N monitored, 1 included." on healthy installs.

Guard the addition on limit > 0 at all three call sites (ledger path,
commercial entitlement payload, runtime capabilities payload) so the
bonus only extends plans that actually have a cap.

Refs #1429
2026-04-17 12:16:03 +01:00
rcourtman
f2746960d6 Relax mounted storage-root hardening semantics 2026-04-16 21:37:11 +01:00
rcourtman
9855973e5b Fix non-root storage hardening for Helm startup 2026-04-16 21:26:02 +01:00
rcourtman
5f0c895e81 Rebuild Pulse Account no-cap upgrade bundle
Refs #1409
2026-04-16 10:34:10 +01:00
rcourtman
1bc08f3bc1 Canonicalize self-hosted purchase handoff intent
Refs #1409
2026-04-16 10:17:37 +01:00
rcourtman
5914a4127d Make self-hosted core monitoring uncapped
Refs #1409
2026-04-16 01:21:57 +01:00
rcourtman
7e5971a3ee Allow local mergerfs mounts in disk metrics
Stop treating every fuse.* filesystem as a remote mount in the shared disk filter so local user-space filesystems such as mergerfs remain visible to host disk stats and alerts while explicit remote fuse types like sshfs still stay filtered.

Refs #1419
2026-04-15 20:11:25 +01:00
rcourtman
5e83877503 Flush OpenAI SSE buffers on EOF
Share OpenAI ChatStream finalization across DONE and clean EOF so buffered final chunks still produce tool calls and done events for OpenAI-compatible providers.\n\nFixes #1411
2026-04-15 17:37:51 +01:00
rcourtman
183fd41dd0 Resolve guest custom-rule alert paths
Fix snapshot, backup, powered-off, and config-reevaluation guest threshold resolution by routing them through shared guest alert context instead of override-only fallback paths.\n\nFixes #1418
2026-04-15 17:25:07 +01:00
rcourtman
523a64565b Keep shared Proxmox storage coherent
Refs #1416
2026-04-15 16:55:13 +01:00
rcourtman
0fa1cf5fc1 Normalize legacy Unraid raw statuses
Refs #1400
2026-04-15 16:46:20 +01:00
rcourtman
31315fb594 Normalize Proxmox special ZFS groups
Refs #1413
2026-04-15 16:40:43 +01:00
rcourtman
c68d4b8ed3 Prioritize Unraid parity-loss summaries 2026-04-15 16:33:04 +01:00
rcourtman
d573d3a85f Preserve standalone host continuity across restart
Refs #1402
2026-04-15 16:23:42 +01:00
rcourtman
3e09fd4493 Bound discovery AI response size 2026-04-15 14:51:50 +01:00
rcourtman
bd8b2efd1b Add monitored-system admission extension hook 2026-04-15 14:04:21 +01:00
rcourtman
3596acfeb2 Trim stale SAML rebinding coverage 2026-04-15 13:57:40 +01:00
rcourtman
27367da17f Isolate internal/api tests from system data dir 2026-04-15 13:40:24 +01:00
rcourtman
8d703f2371 Explain monitored-system over-plan legitimacy 2026-04-15 13:38:57 +01:00
rcourtman
a33983175b Port v5 SAML public URL rebinding 2026-04-15 13:17:01 +01:00
rcourtman
6c1364ef54 Clarify monitored-system admission freeze posture 2026-04-15 13:15:10 +01:00
rcourtman
d03056f656 Port v5 NAS vendor identity and RAID normalization 2026-04-15 12:54:15 +01:00
rcourtman
84943907af Port v5 Ceph and Podman runtime compatibility 2026-04-15 12:32:05 +01:00
rcourtman
b73dab2b64 Port v5 alert lifecycle and linked agent overrides 2026-04-15 12:18:57 +01:00
rcourtman
169c0b113a Clarify Pulse Account monitored-system copy 2026-04-15 10:47:58 +01:00
rcourtman
429f12decd Recover unavailable Pulse Account handoffs 2026-04-15 10:09:00 +01:00
rcourtman
f3c4d4d83d Grandfather active v5 Pro customers as uncapped 2026-04-15 00:35:24 +01:00
rcourtman
b84e4067e8 Uncap grandfathered lifetime entitlements 2026-04-14 23:34:37 +01:00
rcourtman
7cac04e2ff Track v6 install version through licensing runtime 2026-04-14 11:44:59 +01:00
rcourtman
58e67c7b19 Canonicalize usage-data telemetry reporting 2026-04-14 11:05:10 +01:00
rcourtman
0cd2304d8f Prefer Unraid disk topology over aggregate counts 2026-04-13 12:12:56 +01:00
rcourtman
2d8385c1d8 Fix same-host websocket proxy origin checks 2026-04-13 12:04:29 +01:00
rcourtman
bf30a094bb Own ConfigWatcher API token persistence 2026-04-12 11:19:34 +01:00
rcourtman
d20b144a51 Fix TrueNAS poll interval RC proof 2026-04-12 10:14:39 +01:00
rcourtman
8afd6e4ea1 Tighten monitoring RC test budgets 2026-04-12 09:41:29 +01:00
rcourtman
51b494b137 Stabilize RC backend test contracts 2026-04-12 09:02:56 +01:00
rcourtman
269f6ac8a5 Stabilize publish-path mock fixture proofs 2026-04-12 00:55:44 +01:00
rcourtman
f6f41eaab6 Constrain mock sampler test seed windows 2026-04-11 23:51:04 +01:00
rcourtman
b38d0ac37e Stabilize RC release backend race proofs 2026-04-11 23:18:44 +01:00
rcourtman
05fa111ca1 Stabilize backend race tests for v6 RC publish 2026-04-11 22:46:34 +01:00
rcourtman
5a3affbfd9 Rebaseline API chart CI SLOs 2026-04-11 19:43:18 +01:00
rcourtman
b33cc3ac60 Hide admin operations from public demo 2026-04-11 17:20:58 +01:00
rcourtman
1e28a03b57 Stabilize rc1 mock mode and metrics history 2026-04-11 16:47:37 +01:00
rcourtman
1caa34536b Use mock unified state for demo infrastructure charts 2026-04-11 15:35:05 +01:00
rcourtman
7b8cec535c Fix updates mock deployment test 2026-04-11 15:06:44 +01:00
rcourtman
347a013e79 Stabilize RC release proof contracts 2026-04-11 14:51:10 +01:00
rcourtman
3c1f0ba0d9 Make demo mock cadence configurable 2026-04-11 13:50:38 +01:00
rcourtman
b64782c083 Align mock state resources with canonical contract 2026-04-11 13:40:01 +01:00
rcourtman
e8b0d638d9 Merge linked Kubernetes nodes into agent resources 2026-04-11 12:59:04 +01:00
rcourtman
a4bbea9ed9 Stabilize demo infrastructure mock posture 2026-04-11 11:02:50 +01:00