Skip to content
Skip to main content
Novel Systems home
Decision log
D-039August 4, 2026

Only the top tier carries a service credit, and the field is named for that

Decided

Availability credits are an Enterprise term. Starter Operator and Growth Contractor publish targets with no contractual credit. The AvailabilityTier field that carried this was renamed from serviceCredit to remedy.

Alternative: extend credits down the stack, which is what the availability table already appeared to promise.

Why not: a credit is a billing obligation, and there is no measurement pipeline and no billing integration behind one yet (FLAGGED-CLAIMS.md B1, B8). Publishing it on three tiers rather than one triples an obligation that is not yet operable. The FAQ had it right.

The rename is the substantive part of this entry. The field was called serviceCredit and held the string "10% of monthly fee below target" on the entry tier — so the type itself asserted that every tier has a credit, and the only way to express "this tier has none" would have been to put prose denying a credit inside a field named for one. Every surface reading that field inherited the wrong claim, which is how the table and the FAQ ended up disagreeing without anyone editing either to make it so. A type that cannot represent the truth produces copy that does not either.

What would make this wrong: measured availability plus billing automation existing, at which point extending credits downward becomes a pricing decision with something real behind it.