Commit c9b23ac
Paul C
v22.8.0: four-tier pricing — Homelab / Pro / Enterprise on Stripe
* compat::PlatformManifest gains `tier` field. New helpers
`license_manifest`, `resolve_tier`, `effective_cap`, `has_feature`.
* `/api/platform/status` returns tier, current_nodes, over_cap.
Drops email field — operators no longer leak it via this endpoint.
* `/api/nodes` (add_node) enforces a SOFT host cap: over-cap joins
succeed with a warning attached to the response. Never blocks usage.
Legacy enterprise licences (per-installation max_nodes) are zeroed
by effective_cap so they're not retroactively capped.
* Plugin gates now require has_feature(\"plugins\") instead of any
valid licence — so Homelab can't unlock Pro features.
* Heartbeat client: TLS verification re-enabled
(danger_accept_invalid_certs removed).
* Dashboard header badge shows tier (Homelab / Pro / Enterprise) +
current/max host count, paints amber when over cap, links to the
Stripe billing portal.1 parent c45da17 commit c9b23ac
4 files changed
Lines changed: 176 additions & 33 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2260 | 2260 | | |
2261 | 2261 | | |
2262 | 2262 | | |
| 2263 | + | |
| 2264 | + | |
| 2265 | + | |
| 2266 | + | |
| 2267 | + | |
| 2268 | + | |
| 2269 | + | |
| 2270 | + | |
| 2271 | + | |
| 2272 | + | |
| 2273 | + | |
| 2274 | + | |
| 2275 | + | |
| 2276 | + | |
| 2277 | + | |
| 2278 | + | |
| 2279 | + | |
| 2280 | + | |
| 2281 | + | |
| 2282 | + | |
| 2283 | + | |
| 2284 | + | |
| 2285 | + | |
| 2286 | + | |
| 2287 | + | |
| 2288 | + | |
| 2289 | + | |
| 2290 | + | |
| 2291 | + | |
| 2292 | + | |
| 2293 | + | |
| 2294 | + | |
| 2295 | + | |
2263 | 2296 | | |
2264 | 2297 | | |
2265 | 2298 | | |
| |||
2416 | 2449 | | |
2417 | 2450 | | |
2418 | 2451 | | |
2419 | | - | |
| 2452 | + | |
2420 | 2453 | | |
2421 | 2454 | | |
2422 | 2455 | | |
2423 | 2456 | | |
2424 | 2457 | | |
2425 | | - | |
| 2458 | + | |
| 2459 | + | |
| 2460 | + | |
| 2461 | + | |
| 2462 | + | |
| 2463 | + | |
| 2464 | + | |
2426 | 2465 | | |
2427 | 2466 | | |
2428 | 2467 | | |
| |||
20898 | 20937 | | |
20899 | 20938 | | |
20900 | 20939 | | |
20901 | | - | |
| 20940 | + | |
20902 | 20941 | | |
20903 | 20942 | | |
20904 | | - | |
| 20943 | + | |
20905 | 20944 | | |
20906 | | - | |
| 20945 | + | |
20907 | 20946 | | |
20908 | 20947 | | |
20909 | 20948 | | |
| |||
20961 | 21000 | | |
20962 | 21001 | | |
20963 | 21002 | | |
20964 | | - | |
| 21003 | + | |
20965 | 21004 | | |
20966 | 21005 | | |
20967 | | - | |
| 21006 | + | |
20968 | 21007 | | |
20969 | | - | |
| 21008 | + | |
20970 | 21009 | | |
20971 | 21010 | | |
20972 | 21011 | | |
| |||
21002 | 21041 | | |
21003 | 21042 | | |
21004 | 21043 | | |
21005 | | - | |
| 21044 | + | |
21006 | 21045 | | |
21007 | 21046 | | |
21008 | | - | |
21009 | | - | |
| 21047 | + | |
| 21048 | + | |
21010 | 21049 | | |
21011 | 21050 | | |
21012 | 21051 | | |
| |||
21129 | 21168 | | |
21130 | 21169 | | |
21131 | 21170 | | |
21132 | | - | |
| 21171 | + | |
| 21172 | + | |
21133 | 21173 | | |
21134 | 21174 | | |
21135 | | - | |
| 21175 | + | |
| 21176 | + | |
| 21177 | + | |
| 21178 | + | |
| 21179 | + | |
| 21180 | + | |
| 21181 | + | |
| 21182 | + | |
| 21183 | + | |
| 21184 | + | |
| 21185 | + | |
21136 | 21186 | | |
21137 | 21187 | | |
21138 | 21188 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
58 | 58 | | |
59 | 59 | | |
60 | 60 | | |
| 61 | + | |
| 62 | + | |
61 | 63 | | |
62 | 64 | | |
63 | 65 | | |
| |||
111 | 113 | | |
112 | 114 | | |
113 | 115 | | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
114 | 119 | | |
115 | | - | |
116 | | - | |
117 | | - | |
118 | | - | |
119 | | - | |
120 | | - | |
121 | | - | |
122 | | - | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
123 | 132 | | |
124 | 133 | | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
125 | 137 | | |
126 | 138 | | |
127 | 139 | | |
128 | 140 | | |
129 | 141 | | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
130 | 184 | | |
131 | 185 | | |
132 | 186 | | |
| |||
207 | 261 | | |
208 | 262 | | |
209 | 263 | | |
210 | | - | |
| 264 | + | |
| 265 | + | |
| 266 | + | |
211 | 267 | | |
212 | 268 | | |
213 | 269 | | |
214 | 270 | | |
215 | | - | |
216 | 271 | | |
217 | 272 | | |
218 | 273 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
28818 | 28818 | | |
28819 | 28819 | | |
28820 | 28820 | | |
28821 | | - | |
| 28821 | + | |
28822 | 28822 | | |
28823 | 28823 | | |
28824 | 28824 | | |
28825 | 28825 | | |
28826 | 28826 | | |
28827 | | - | |
28828 | | - | |
28829 | | - | |
| 28827 | + | |
| 28828 | + | |
| 28829 | + | |
| 28830 | + | |
| 28831 | + | |
| 28832 | + | |
| 28833 | + | |
| 28834 | + | |
| 28835 | + | |
| 28836 | + | |
| 28837 | + | |
| 28838 | + | |
| 28839 | + | |
| 28840 | + | |
| 28841 | + | |
| 28842 | + | |
| 28843 | + | |
| 28844 | + | |
| 28845 | + | |
| 28846 | + | |
| 28847 | + | |
| 28848 | + | |
| 28849 | + | |
| 28850 | + | |
| 28851 | + | |
| 28852 | + | |
| 28853 | + | |
| 28854 | + | |
| 28855 | + | |
| 28856 | + | |
| 28857 | + | |
| 28858 | + | |
| 28859 | + | |
| 28860 | + | |
| 28861 | + | |
| 28862 | + | |
| 28863 | + | |
28830 | 28864 | | |
28831 | | - | |
28832 | | - | |
28833 | | - | |
28834 | | - | |
28835 | | - | |
| 28865 | + | |
| 28866 | + | |
| 28867 | + | |
| 28868 | + | |
| 28869 | + | |
| 28870 | + | |
| 28871 | + | |
| 28872 | + | |
| 28873 | + | |
28836 | 28874 | | |
28837 | 28875 | | |
28838 | 28876 | | |
| |||
0 commit comments