3.3 — Cash Predictability & Liquidity early-warning
Classical KPIs (unchanged).
m := net_cash_inflow # daily (keep existing runway views as-is)
# Collapse parity everywhere
phi((m,a)) = m
Lanes (defaults).
# Schedule adherence (from AR aging)
q_on_time := receipts_on_or_before_due / receipts_total
a_sched := 2*q_on_time - 1
# Residual vs cash forecast
r := actual_cash - expected_cash
a_cash := tanh( k*( 1 - |r|/s ) ) # s > 0, k > 0
# Cash churn (ZEOZO-Core on daily cash-inflow series x_t)
med := median(x)
rad := median(|x - med|); rad := max(rad, eps)
y_t := (x_t - med) / rad
E_t := (1 - lam)*E_{t-1} + lam*(y_t^2)
Z_t := log(1 + E_t)
A_t := (1 - mu)*A_{t-1} + mu*Z_t
# Lane choice:
a_zeozo := tanh( c*( 1 - Z_t / Z_ref ) )
# or
a_gap := tanh( k_gap*( A_t - Z_t ) )
Calm-gated alignment (SYASYS-Core, optional executive “green-light”).
clip(u, lo, hi) := min(max(u, lo), hi)
Q_t := rho*Q_{t-1} + (1 - rho)*clip( A_t - Z_t , 0 , 1 )
SyZ_t := ( 1 / ( 1 + Z_t + kappa*Delta_t ) ) * ( 1 - exp( - muR*Q_t ) )
a_syasys := 2*SyZ_t - 1
Composite cash lane (optional).
a_cashstar := tanh( 0.5*atanh(a_sched) + 0.5*atanh(a_cash) )
# or replace a_cash with a_gap or a_syasys per governance preference
Clamp (always) and parity.
a := clamp(a, -1+eps_a, +1-eps_a) # eps_a = 1e-6
phi((m,a)) = m
Decision recipe.
If a_sched or a_cash/a_gap downgrades for 2–3 days, trigger senior review of near-term runway assumptions even if m remains positive.
Module acceptance.
Show a case where a lane downgrade (a_sched, a_gap, or a_syasys) preceded a short-term cash surprise; keep stamped CSVs for replay.
3.4 — Cohort Durability (subscription, repeat purchase)
Classical KPIs (unchanged).
m := retention_rate_90d
# or
m := LTV / CAC
Lanes (defaults).
# Retention within policy window
q_ret := retained_within_90d / cohort_size
a_ret := 2*q_ret - 1
# Hazard drift vs reference
h_t := current_day_hazard
a_haz := tanh( 1 - |h_t - h_ref| / b ) # b > 0
# Refund/credit pressure scoped to cohort (reuse §3.2)
# a_adj as defined for revenue quality, applied per cohort
# Cohort churn (ZEOZO-Core, optional)
# run ZEOZO on cohort-level cadence; often prefer a_gap
a_gap := tanh( k_gap*( A_t - Z_t ) )
Composite cohort lane (optional).
alpha in [0,1]
a_cohort := tanh( alpha*atanh(a_ret) + (1 - alpha)*atanh(a_haz) )
Clamp (always) and parity.
a := clamp(a, -1+eps_a, +1-eps_a)
phi((m,a)) = m
Decision recipe.
If a_cohort drops while m holds, prioritize onboarding fixes or pricing experiments; spotlight segments with the fastest lane decay.
Module acceptance.
Show that a_ret or a_haz band downgrades foreshadowed retention erosion later in the quarter (same classical m at time of early signal).
3.5 — Due-Diligence & Data-Room “Stability Debt” index
Purpose. One-look index for buyers/investors to see sturdiness beneath shiny decks.
Inputs (choose 4–7 lanes across modules).
Examples: a_agree, a_adj, a_revq, a_policy, a_tail, a_cash/a_gap, a_syasys.
Index (bounded, interpretable).
# Portfolio-style rapidity average
a_sdi := tanh( ( SUM_i atanh(a_i) ) / max(n, 1) ) # n = count of included lanes
Interpretation.
High a_sdi = broad stability across levers; low a_sdi = concentrated stability debt.
Disclosure.
Publish a_sdi with the list of constituent lanes and weights; keep classical m figures unchanged.
Navigation
Previous: SSM-Audit – Deeper Finance Modules (3.1–3.2)
Next: SSM-Audit – Deeper Finance Modules (3.6–3.7)
Directory of Pages
SSM-Audit – Table of Contents
Frequently asked questions
SSM-Audit Q & A