Skip to content

Commit 55cffdd

Browse files
author
liumingyao.marvin
committed
Merge remote-tracking branch 'upstream/main' into agent-tasks/1125
2 parents 89124cb + 8ad4331 commit 55cffdd

1 file changed

Lines changed: 14 additions & 8 deletions

File tree

common/src/types/freebuff-session.ts

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,14 @@ export interface FreebuffSessionEntitlementBreakdown {
4545
* Sessions included by the account's PAID subscription tier
4646
* (`common/constants/freebuff-subscriptions.ts`).
4747
*
48-
* When present it is the whole of `limit`, not an addition to it: a
49-
* subscribable model is metered by the subscription instead of by the free
50-
* pool that would otherwise cover it, so `base`/`referral`/`streak` are all
51-
* zero on that row. A subscriber whose row read "4 subscription + 5 premium"
52-
* would reasonably expect nine sessions, and the shared premium pool is
53-
* exactly what the subscription replaces.
48+
* An ADDITION to `base`, not a replacement for it — since 2026-08-26, when
49+
* the plan started topping the free pools up rather than replacing them.
50+
* Free sessions burn first and the plan covers what is left, so a row reading
51+
* "5 base + 4 subscription" means nine sessions today and `limit` is nine.
52+
*
53+
* (It was the whole of `limit` under the older replace-semantics, with
54+
* `base` zeroed. A client that sums the breakdown gets the right total under
55+
* both, which is why the change needed no client release.)
5456
*
5557
* Omitted for everyone without a live subscription, so an older client that
5658
* never reads it still sums to the right `limit`.
@@ -120,8 +122,12 @@ export interface FreebuffSubscriptionUsage {
120122
* free pool is spent the free figures are simply not on the wire, and a
121123
* client trying to add "free + plan" from it double-counts the plan row.
122124
*
123-
* Both zero for accounts with no free pool at all (god/admin, who are
124-
* quota-exempt), and absent entirely from servers older than this field.
125+
* Reported for quota-exempt accounts (god/admin) too: their free pool is not
126+
* ENFORCED, but the entitlement is still the honest free half of the combined
127+
* figure. Absent entirely from servers older than this field.
128+
*
129+
* The same numbers back the combined `rateLimitsByModel` rows, from one
130+
* memoized read, so the panel and every picker header cannot disagree.
125131
*/
126132
freeDayUsed?: number
127133
freeDayLimit?: number

0 commit comments

Comments
 (0)