generated from coulomb/repo-seed
Implement canonical pricing core and close WP-0003
This commit is contained in:
@@ -4,9 +4,20 @@ from dataclasses import dataclass
|
||||
from decimal import Decimal
|
||||
from typing import Literal
|
||||
|
||||
from ._repo_root import ensure_repo_root_on_syspath
|
||||
|
||||
ensure_repo_root_on_syspath()
|
||||
|
||||
from adaptive_pricing_core.pricing_models import ( # noqa: E402
|
||||
ChargeComponent,
|
||||
Commitment,
|
||||
PricingModel,
|
||||
PricingModelStatus,
|
||||
TunableParameter,
|
||||
)
|
||||
|
||||
ExpenseClass = Literal["infrastructure", "payment_processing"]
|
||||
MemberStatus = Literal["active", "churned", "paused"]
|
||||
PricingModelStatus = Literal["active", "candidate", "retired"]
|
||||
LiquidityStatus = Literal["burning", "neutral", "generating"]
|
||||
|
||||
|
||||
@@ -20,18 +31,6 @@ class Product:
|
||||
active_pricing_model_id: str
|
||||
|
||||
|
||||
@dataclass(frozen=True)
|
||||
class PricingModel:
|
||||
id: str
|
||||
name: str
|
||||
model_type: str
|
||||
lifecycle_phase: str
|
||||
currency: str
|
||||
access_fee_amount: Decimal
|
||||
access_fee_cadence: str
|
||||
status: PricingModelStatus
|
||||
|
||||
|
||||
@dataclass(frozen=True)
|
||||
class ExpenseRecord:
|
||||
id: str
|
||||
@@ -118,4 +117,4 @@ class LiquiditySummary:
|
||||
cumulative_net_liquidity: Decimal
|
||||
remaining_budget: Decimal
|
||||
liquidity_status: LiquidityStatus
|
||||
months_tracked: int
|
||||
months_tracked: int
|
||||
|
||||
Reference in New Issue
Block a user