import csv
from decimal import Decimal
from pathlib import Path

rows = {
    row["metric"]: row
    for row in csv.DictReader(
        Path(__file__).with_name("aggregate-CAC-COVERAGE-20260823.csv").open()
    )
}

spend = Decimal(rows["signed_spend"]["value"])
covered = Decimal(rows["covered_cohort"]["value"])
cohort = Decimal(rows["new_paying_cohort"]["value"])

assert spend / covered == Decimal(rows["covered_cac"]["value"])
assert (spend / cohort).quantize(Decimal("0.01")) == Decimal(
    rows["blended_cac"]["value"]
)
assert rows["payback_months"]["status"] == "held"
assert not rows["payback_months"]["value"]

print("PASS: displayed CAC arithmetic verified; payback remains held.")
