Changelog
2026-08 — Legacy licensing authority cutover (Wave 74.15)
Generic single/bulk License create is shut down, offline request ProductId is no longer authority, and Local Relay validation/refresh requires V2 snapshot state. Integrators must move to Subscription-backed issue and synchronize a current signed Gateway bundle. See the Wave 74.15 migration guide.
2026-08 — Durable Local Relay LAN retries (Wave 74.14.11)
Local Relay activation, lease refresh, and device registration now retain an atomic SQLite idempotency receipt. Exact retries survive Host restart; changed requests conflict and unavailable protected results fail closed. See Local Relay.
2026-08 — Durable Edge Gateway bundle sync (Wave 74.13.7)
Relay API now exposes authenticated, cursor-checked and restart-idempotent
Edge Bundle v2 pull/ack endpoints. See
Gateway bundle synchronization.
Public documentation and integrator-facing contract changelog. Per-package SDK release notes live in each public SDK repository (SDKs).
What belongs here
| Include | Exclude |
|---|---|
| Breaking or notable public OpenAPI / error / docs IA changes | Private platform Host / ops runbook edits |
| Links to Migration guides when cutover steps are required | Live secrets, webhook signing material, internal broker topology |
| EN+RU docs parity notes for the same product wave | Vendor-private Console-only experiments |
Entries
2026-08 — Edge Gateway public-key registration protocol (Wave 74.13.3.2)
Relay API adds the additive
POST /api/v1/edge-gateways/{gatewayInstanceId}/signing-keys bootstrap route.
An Edge Gateway sends one exact Tenant/Gateway enrollment token and a
public-only ES256 JWK over outbound HTTPS. Cloud stores no private key material;
responses are non-cacheable and exact replay is rejected. See
Gateway public-key registration.
2026-08 — Live WWW PlatformPlan pricing (Wave 74.11.3.2)
The EN/RU WWW pricing page now renders the anonymous PlatformPlan catalog instead of hard-coded tier prices. It localizes currency, interval and all six platform-capacity limits, with explicit loading, empty, failure and retry states. Invalid or unavailable evidence never falls back to stale partial pricing.
2026-08 — Anonymous PlatformPlan pricing catalog (Wave 74.11.3.1)
Management now exposes GET /api/v1/public/platform-plans without
authentication. It returns only valid Active plus Public PlatformPlans and
omits provider and rights authority. Successful responses are deterministically
ordered, carry a strong ETag and use bounded public caching; invalid stored
public-plan evidence fails closed without a partial response.
2026-08 — Explicit PlatformPlan visibility (Wave 74.11.2.1)
Management PlatformPlan contracts now expose Internal or Public
visibility. New and migrated plans fail closed to Internal; only the
canonical free migration row becomes Public, while dogfood remains
internal. Platform Admin readers can see the value and authorized managers can
change it explicitly. Active status alone does not publish a plan.
2026-08 — Durable License key rotation API and audit (Wave 74.9.4.4.2)
Management adds the customer-scoped key-rotation route with
customers.read plus licenses.manage, strict expected-primary input, and a
required Idempotency-Key. BC-LIC commits one atomic rotation receipt and
BC-AUD appends safe evidence by operation ID before HTTP success. First success
can reveal v2 plaintext once; exact recovery replay completes missing audit and
returns null plaintext without another rotation. The global v1 route now uses
the same atomic service: explicit header+body mode is retryable, while
headerless compatibility remains deprecated, warning-headered, and
non-retryable. All rotation handler responses are non-cacheable.
2026-08 — Customer License terminal actions (Wave 74.9.4.3.5)
Management adds customer-scoped revoke and archive routes with
customers.read plus licenses.manage, a strict status precondition, and no
body-supplied identity or Idempotency-Key. License state, audit evidence, and
the integration outbox commit atomically before success. Existing global
single/bulk revoke envelopes remain compatible; revokedByActorId is now
deprecated and ignored in favor of the authenticated actor. Global replay
continues to return 409, while bulk replay remains alreadyApplied.
2026-08 — Customer License discovery and issue API (Wave 74.9.4.2.3)
Management adds customer-scoped candidate discovery and durable Subscription
issue routes with customers.read plus licenses.manage. Discovery removes
lifetime-occupied Subscriptions before final paging and fails closed on owner
contradictions. Issue accepts only Subscription/correlation plus a required
Idempotency-Key; owner identity is re-read, first success reveals plaintext
once, and exact replay returns the same receipt with null plaintext. The
existing global Subscription issue route remains compatible.
2026-08 — Customer License table Management API (Wave 74.9.3.5)
Management adds the read-only
GET /api/v1/customers/organizations/{organizationId}/licenses/table endpoint
with customers.read, bounded paging, and fixed ordering. It composes exact
BC-LIC rows with typed Product, tariff/renewal, device, and usage display
results. Owner infrastructure or result-set integrity failures return a typed
503 without partial data. Usage is explicitly unavailable, and key plaintext,
hashes, and provider references are absent. The additive contract requires no
client migration.
2026-08 — Customer aggregate Management API (Wave 74.9.1.4)
Management now exposes GET and PUT at
/api/v1/customers/organizations/{organizationId}/aggregate with
customers.read and customers.manage. GET composes the authoritative BC-CUS
profile, BC-LIC License membership/masks, and same-Tenant BC-CAT Product display
names. PUT is revision-checked and returns only the committed profile. Missing
Product/key metadata stays explicit; plaintext/hash/provider references are
never returned. The additive contract requires no client migration.
2026-07 — Runtime snapshot validation identity (Wave 74.7.4)
Cloud Runtime validate now allows only from a current verified License runtime snapshot. A supplied lease must carry matching Tenant, License, Product, Customer, and policy snapshot version/hash identity; missing or mismatched identity fails closed. Durable Management revoke produces deny and propagates best-effort cache hints/invalidation, while PostgreSQL remains authoritative. Previously issued v1 leases remain parseable, but leases without the canonical identity claims no longer pass Cloud Runtime validation.
2026-07 — Subscription-backed License issue API (Wave 74.6.5.4)
Management/Partner now exposes
POST /api/v1/licenses/subscription-issues with licenses.manage and required
Idempotency-Key. Tenant and actor come only from authenticated context.
First commit returns 201 and the human key once; exact replay returns 200
with the same references/mask and plaintextKey: null. The additive contract,
stable error codes and Partner examples require no migration.
2026-07 — License new-write identity guard (Wave 74.4.4)
Management/Partner License create accepts the additive commercial identity
fields and explicit Subscription / IndividualGrant modes. Subscription
writes reject missing Product, Customer, CustomerSubscription, OfferVersion, or
technical policy identity. Individual grants require actor-backed audit.
Differing assignedCustomerId and customerOrganizationId values are rejected.
The legacy create shape remains temporarily server-gated.
2026-07 — Additive License commercial identity reads (Wave 74.4.3)
Management/Partner OpenAPI License list and detail responses now include
customerOrganizationId, productId, customerSubscriptionId,
offerVersionId, issueMode, migrationState, and notes.
assignedCustomerId remains available; both customer names carry the same
stored value. This is additive and requires no client migration.
2026-07 — Docs IA fill (Wave 56)
Public coverage stubs for Licensing, Portals, Runtime configuration, and Operations narratives replaced with thin product pages. SoT remains private docs/public/{en,ru}; mirror sync is operator-gated.
Earlier filled surfaces (non-exhaustive): License Keys, Entitlements, Offline/Floating/Relay, Verify trust (JWKS), Production checklist.
Add dated subsections above this line as new public contract changes ship.