Fix consumer subscription pricing exploit with perceived-value-based elasticity
Balance Check / balance-simulation (push) Successful in 51s
Balance Check / multi-run-balance (push) Successful in 13m19s
CI / build-and-push (push) Successful in 45s

Players could set astronomical prices and still retain subscribers because
price elasticity floored at 10% for any price above $100, satisfaction
ignored pricing entirely, and churn had no price component.

Introduces perceived value per tier (model quality × reputation), replaces
the broken linear formula with sigmoid decay, adds price-aware satisfaction
blending, and applies per-tier price-based churn multipliers.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-26 21:51:03 -04:00
parent 5aa9436368
commit 63e56dc229
4 changed files with 120 additions and 14 deletions
@@ -188,6 +188,7 @@ export function processMarketV2(
state.market.consumerTiers,
playerConsumerCustomers,
modelQuality,
state.reputation.score,
seasonal.multipliers.consumer,
state.infrastructure.networkLatencyPenalty,
sm.tierMetrics['consumer-paid'],