Skip to content

v0.8.0

Latest

Choose a tag to compare

@sylvesterdamgaard sylvesterdamgaard released this 17 Jul 09:31

Major competitive-parity release — the pricing, usage, subscription-lifecycle and analytics breadth the mature commercial products have.

  • Pricing models: graduated / volume / package / stairstep tiers (PricingModel + PriceTier + a remainder-safe TierCalculator), alongside flat / per-unit.
  • Billable-metric aggregations: Count / Sum / Max / UniqueCount / Latest / WeightedSum via EventLog::aggregate() (in-memory + database), composed usage→quantity→tiered-price.
  • Subscription depth: free trials, a first-class state machine (Trialing / Active / PastDue / Paused / NonRenewing / Canceled, deny-by-default transitions), ramp deals, and minimum commitments + true-up.
  • Reporting depth: MRR movement waterfall (new/expansion/contraction/churn/reactivation, identity-checked), NRR/GRR, cohort retention matrix, and ARR waterfall — exact minor-unit math.

Additive/backward-compatible (new enum cases, trailing-optional VO params, an additive migration). 372 tests. Consumers on ^0.7 should widen to allow ^0.8.