PlugStream is continuously updated to improve reliability, security, and user experience. This page provides a transparent record of every software and firmware release, including what changed and why it matters.
Latest
Subscription API 1.6.4
Subscription API – 1.6.4
1.6.4
Tests: passed (161/161)Coverage: 58.8%
Service
October 27, 2026
Tags
#subscription-api
Subscription API – 1.6.4
1.6.4 (2026-10-26)
Bug Fixes
auth: honour PLATFORM_ADMIN as every scope only in platform mode (1127ab1)
billing: an overlapping monthly run skips what the other run wrote (4fb4a2d)
billing: marks never undo an invoiced event or invoice an unclaimed one (b702ef7)
billing: never bill £0 for a subscription without a usable price [SIGN-OFF] (c07e3a9)
billing: no monthly advance for the month billing starts or earlier [SIGN-OFF] (bb229b2)
billing: read a numeric monthly price as the decimal written [SIGN-OFF] (981b0a7)
billing: refuse a monthly run whose period does not start on the 1st [SIGN-OFF] (b111983)
billing: two concurrent claims never take the same billable event (ba20a0f)
config: read boolean settings strictly and fail closed [SIGN-OFF] (cdd7f22)
config: treat an empty DATABASE_URL as unset (060ce79)
config: trim INTERNAL_AUTH_TOKEN like the orchestrator tokens (f8399e7)
error: answer a 500 with a generic message and keep the detail in the log (ff1ed51)
events: give up on an AMQP handshake the broker never finishes (eec8a97)
events: stop requeueing deliveries that can never succeed [SIGN-OFF] (f03aa67)
pagination: refuse a list offset past i64 with a 400 instead of panicking (8b1eea2)
plans: refuse a billing cycle other than monthly [SIGN-OFF] (0aa3809), closes #3
plans: store a missing provisioning mode as the provider's [SIGN-OFF] (a01e30a), closes #20
plans: validate activation_copy on plans without a provider_config too (8e20b1a)
sims: a sync no longer rewrites the status or plan of a SIM in service (b627cf4)
sims: a sync takes Soracom's own SIM status into account [SIGN-OFF] (cad4755)
sims: deactivating an already deactivated SIM changes nothing (799ab44)
sims: let PATCH {"service_plan_id": null} unlink a SIM's plan (413cd57)
sims: PATCH no longer records a SIM deactivated or active [SIGN-OFF] (c7fc8c8), closes #10 #10
sims: refuse to revive a deactivated SIM row another tenant now holds (a5839b2)
soracom: give up on a Soracom call that never answers (7dc655a)
soracom: send the SIM id as one escaped path segment (a5ed1bf)
subscriptions: look for the buyer on every page of billing-api's accounts [SIGN-OFF] (78d739e)
subscriptions: record the SIM's claim before Soracom activates it [SIGN-OFF] (2beaa62), closes #6
subscriptions: refuse to retry a deactivated or active subscription [SIGN-OFF] (3e0233f), closes #5 #5 #4
subscriptions: start billing a blocked dry-run order when it activates [SIGN-OFF] (c141d0b)