Calculation catalog › Social Security
Survivor scenario row survivor shortfall years
Number of years after the year of the first death, with the survivor alive, whose required-spending shortfall exceeds the ledger's funding tolerance ($0.005).
Field: Survivor shortfall years Unit: count Basis: no dollar basis Computed by: UI-native Status: Complete chain
Appears in: survivor-page (Survivor spending cell "required spending covered" or "N shortfall yrs")
Calculation records
-
Survivor shortfall years Formula record, justified by derivation
Purpose: Count the years after the first death in which the survivor's required spending is not covered.
Statement: projection/survivorTransition.ts#survivorShortfallYearCount counts, in a death timing's base run, the years after the death year in which someone is alive and YearResult.requiredShortfall exceeds ANNUAL_FUNDING_TOLERANCE_PLAN_DOLLARS (0.005, projection/moneyTolerance.ts). The degenerate-timing test (#isDegenerateTiming) reads required spending on both sides of the death. Units: years. Rounding: none; a count.
Formula:
count = |{ y : y > death year, someone alive in y, requiredShortfall(y) > 0.005 }|-
requiredShortfall(y): The ledger's required-spending shortfall in year y of the base run (unit: nominal USD) (domain: nonnegative)
Timing: the base run's years after the death year
Rounding: none
Limits:
- The base run only, at the plan's own SSA-44 setting; the lever run is not counted
- Required spending only: under a guardrail policy discretionary spending can be cut with no required shortfall, so "required spending covered" says no more than that
Provenance: derived by
claude, implemented byclaude.Independent review:
codexGates (6 of 6 pass): fixture registers a test: pass; pins resolve: pass; families exist: pass; worksheet exists: pass; mutation receipt exists: pass; provenance independent: pass
Worksheet: survivor-shortfall-year-count.md Mutation receipt: survivor-shortfall-year-count.mutation.md
Evidence tests: survivorTransition.shortfall.evidence.test.ts
Implemented in: survivorTransition.ts
Is the number of: survivor-scenario-row-survivor-shortfall-years
-
Transformations
- projection/survivorTransition.ts#survivorTransitionAnalysis: count the base run's years after the death year in which someone is alive and YearResult.requiredShortfall > ANNUAL_FUNDING_TOLERANCE_PLAN_DOLLARS (0.005).
The evidence links on this page (each record's worksheet, mutation receipt, evidence tests
and implementation, and the source links) are pinned to engine commit
2624dbdba9fd, committed 2026-10-11.
The live calculation index and
output-family census links point at the repository's main
branch, so you can check this snapshot against them.