Add liquidity tracking, budget, and platform cost history

Restore operator platform costs (Bubble, domains, Stripe) with monthly
history from March 2025 and member payments from November 2025. Track
€1,000 starting budget, cumulative burn, and remaining liquidity in the
economics dashboard. Document LQ requirements in REQUIREMENTS.md.
This commit is contained in:
2026-06-22 01:48:45 +02:00
parent 8f42220d81
commit fe2174f37a
12 changed files with 497 additions and 112 deletions

View File

@@ -7,6 +7,7 @@ from typing import Literal
CostCategory = Literal["fixed", "variable"]
MemberStatus = Literal["active", "churned", "paused"]
PricingModelStatus = Literal["active", "candidate", "retired"]
LiquidityStatus = Literal["burning", "neutral", "generating"]
@dataclass(frozen=True)
@@ -42,6 +43,21 @@ class CostEntry:
allocation: str
@dataclass(frozen=True)
class MonthlyPlatformCost:
period: str
platform_cost: Decimal
active_members: int
gross_revenue: Decimal
@dataclass(frozen=True)
class Budget:
currency: str
initial_budget: Decimal
started: str
@dataclass(frozen=True)
class RevenueEntry:
id: str
@@ -69,9 +85,24 @@ class EconomicsSnapshot:
currency: str
active_members: int
monthly_revenue: Decimal
monthly_cost: Decimal
monthly_platform_cost: Decimal
cost_per_member: Decimal
gross_margin: Decimal
gross_margin_pct: Decimal
pricing_model_count: int
revenue_source: str
revenue_source: str
period_net_liquidity: Decimal
liquidity_status: LiquidityStatus
@dataclass(frozen=True)
class LiquiditySummary:
currency: str
through_period: str
initial_budget: Decimal
cumulative_member_payments: Decimal
cumulative_platform_cost: Decimal
cumulative_net_liquidity: Decimal
remaining_budget: Decimal
liquidity_status: LiquidityStatus
months_tracked: int