mrhid6andClaude Opus 5 3fc726da9e feat(license): two deployments times three tiers, and two new limits
Plans are keyed on (deployment, tier) rather than tier alone, which is what
ends Free being cloud-only by construction - there is a self-hosted Free
plan now, so the one-per-account rule has to be enforced per deployment
instead of falling out of the plan table.

tier self_hosted becomes a legacy value no new licence carries.
NormaliseTier maps it to self-hosted Professional, which is what it always
granted, so blobs we cannot re-sign keep working.

Limits.FillUnset exists because a licence signed before a field existed
decodes it as 0, and 0 would read as no monitors and an audit log trimmed
to nothing.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-26 23:41:43 +01:00
2026-07-24 09:51:30 +01:00
2026-07-26 15:41:52 +01:00
2026-07-24 13:13:47 +01:00
2026-07-26 14:46:38 +01:00
2026-07-26 14:46:38 +01:00
S
Description
No description provided
9 MiB
agent/v1.2.13
Latest
2026-08-06 15:20:34 +00:00
Languages
Go 48.5%
TypeScript 47.1%
CSS 2.3%
Go Template 1.3%
Dockerfile 0.5%
Other 0.3%