Commit graph

76 commits

Author SHA1 Message Date
rcourtman
86244d8c13 Track runtime build in license activation 2026-05-06 23:45:37 +01:00
rcourtman
b84fc2301a Surface paid runtime mismatch in licensing 2026-05-06 17:18:35 +01:00
rcourtman
81b31e4d3b Remove monitored-system volume caps
Retire runtime/API/UI monitored-system volume enforcement now that infrastructure monitoring is no longer capped.

Keep only legacy metadata scrubbing and purchase-start compatibility for old max_monitored_systems references.

Rename the remaining preview surface to monitored-system impact and make previews explanatory rather than save-blocking.

Update subsystem contracts and RA7 evidence for the caps-retired invariant.
2026-05-05 12:59:59 +01:00
rcourtman
632f0af7f3 Keep uncapped continuity from writing raw caps 2026-05-05 09:33:44 +01:00
rcourtman
82c54cc39b Make self-hosted SSO Community-tier
Treat OIDC, SAML, and multi-provider SSO as included Community capabilities while retaining advanced_sso as a compatibility key. Remove SAML-specific paywalls and paid-upgrade copy from runtime, settings UI, entitlement snapshots, docs, journey proof, and subsystem contracts.

Refs #1449
2026-05-03 12:48:01 +01:00
rcourtman
1267a817c7 Gate cloud provisioning to hosted checkouts 2026-05-01 14:13:08 +01:00
rcourtman
c7164c2906 Clarify Relay mobile handoff paid copy 2026-04-30 13:18:04 +01:00
rcourtman
99129d0c09 Retire product upgrade metrics runtime
Remove local upgrade-metrics API registration, settings payload wiring, startup store migration, and backend conversion recorder hooks from the normal product runtime.

Delete the retired conversion/funnel and metering packages from compiled licensing code, and extend diagnostics boundary audits and governance contracts so maintainer commercial analytics cannot return through Settings or diagnostics.
2026-04-30 12:24:22 +01:00
rcourtman
48c8d26198 Add paid feature claim proof bundle 2026-04-29 14:18:43 +01:00
rcourtman
f060f261cd Present Relay as annual-first support tier 2026-04-29 12:49:20 +01:00
rcourtman
0dd3cd804e Hide MSP-only features from self-hosted Pro plans 2026-04-29 01:02:10 +01:00
rcourtman
5f0078b0d0 Keep synthetic modes out of entitlement payloads 2026-04-29 00:33:53 +01:00
rcourtman
08fef313eb Rename hosted capacity marker copy 2026-04-29 00:07:18 +01:00
rcourtman
c0ef2d44f3 Keep compatibility-only features out of upgrade URLs 2026-04-28 23:22:20 +01:00
rcourtman
937696508c Guard self-hosted feature metadata drift 2026-04-28 23:16:12 +01:00
rcourtman
a67845ada0 Retire self-hosted volume caps 2026-04-28 20:36:37 +01:00
rcourtman
c197f6a7a5 Move license test signers to testsupport 2026-04-28 19:12:21 +01:00
rcourtman
b29f398b9d Fix release-mode licensing test expectations 2026-04-28 18:58:35 +01:00
rcourtman
1d189d3343 Clarify hosted entitlement signing compatibility 2026-04-28 18:47:19 +01:00
rcourtman
2b1d82d965 Retire self-hosted trial posture prompts 2026-04-28 17:39:09 +01:00
rcourtman
7cc980ad1d Retire self-hosted trial signup control plane 2026-04-28 17:02:04 +01:00
rcourtman
ded190dcab Retire hosted AI quickstart runtime 2026-04-28 16:11:27 +01:00
rcourtman
b1e179479d Retire self-hosted AI quickstart surfaces 2026-04-28 15:49:18 +01:00
rcourtman
fab0e77800 Refine self-hosted Pro value copy 2026-04-28 09:56:03 +01:00
rcourtman
e0c4533fb4 Remove self-hosted monitoring upsell copy 2026-04-28 09:33:26 +01:00
rcourtman
430f0d3fa2 Clarify Pro Plus continuity feature contract 2026-04-26 21:08:15 +01:00
rcourtman
d36f465b7c Preserve uncapped self-hosted commercial continuity 2026-04-26 14:32:00 +01:00
rcourtman
b4692ef7f0 Encode canonical self-hosted feature metadata 2026-04-23 15:30:42 +01:00
rcourtman
a5687cd22e Formalize v6 paid-surface classification 2026-04-23 14:53:41 +01:00
rcourtman
74c2660f8d Expose infrastructure onboarding diagnostics 2026-04-22 15:37:56 +01:00
rcourtman
767a0dd5ba Instrument infrastructure onboarding funnel and harden onboarding proof 2026-04-22 15:04:33 +01:00
rcourtman
8a42bb432e Harden commercial callback and transport URL policy 2026-04-22 10:57:21 +01:00
rcourtman
de99fcb1f0 Restrict purchase return HTTP callbacks to loopback 2026-04-22 09:49:36 +01:00
rcourtman
a44cde6b92 Gate licensing test helpers out of release builds 2026-04-22 06:18:40 +01:00
rcourtman
f7c1d9b629 Require accepted org invitations and stable runtime capabilities 2026-04-22 03:06:22 +01:00
rcourtman
70acd663bd Strengthen export and license persistence encryption 2026-04-22 01:03:10 +01:00
rcourtman
360d08104e Compile out release env guardrail bypasses 2026-04-22 00:05:57 +01:00
rcourtman
d8d94c48e1 Expose local commercial funnel diagnostics 2026-04-20 22:27:34 +01:00
rcourtman
c20766b7b8 Instrument self-hosted billing conversion stages 2026-04-20 21:46:59 +01:00
rcourtman
61430703b2 Reframe self-hosted paid value around operator outcomes 2026-04-20 17:30:52 +01:00
rcourtman
c4a4d175ce Fix v6 dry run backend contract regressions 2026-04-20 14:57:49 +01:00
rcourtman
9e60f2aec6 Scrub stale community billing caps
Refs #1429
2026-04-19 12:17:20 +01:00
rcourtman
943389827f Scrub stale monitored-system caps on self-hosted uncapped tiers
v5-migrated installations can persist a legacy max_monitored_systems value
(e.g. Community=1) in the license claims. After 5914a4127 made all
self-hosted tiers uncapped, EffectiveLimits() only scrubbed Lifetime and
v5-grandfathered Pro, so migrated Community / Pro / Relay installs kept
emitting the old cap and the "Over plan" banner still rendered on rc.2.

Extend the scrub to every self-hosted tier whose TierMonitoredSystemLimits
entry is 0, and stop monitoredSystemContinuityStatusLocked() from falling
back to the grant's plan limit when the license says uncapped. 0 is now
a first-class "unlimited" signal, not a missing-data sentinel.

The grandfather-floor continuity is still captured for audit, but no
longer enforces on self-hosted tiers. Cloud and MSP limit resolution is
untouched.

Refs #1429
2026-04-17 13:52:02 +01:00
rcourtman
9855973e5b Fix non-root storage hardening for Helm startup 2026-04-16 21:26:02 +01:00
rcourtman
5914a4127d Make self-hosted core monitoring uncapped
Refs #1409
2026-04-16 01:21:57 +01:00
rcourtman
6d65571105 Preserve grandfathered recurring billing baselines 2026-04-15 14:32:46 +01:00
rcourtman
8d703f2371 Explain monitored-system over-plan legitimacy 2026-04-15 13:38:57 +01:00
rcourtman
6c1364ef54 Clarify monitored-system admission freeze posture 2026-04-15 13:15:10 +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