diff --git a/docs/shared-expenses-design.md b/docs/shared-expenses-design.md index 9dd9ad9..d4af7eb 100644 --- a/docs/shared-expenses-design.md +++ b/docs/shared-expenses-design.md @@ -13,7 +13,15 @@ recorded under [What was rejected](#what-was-rejected). ## The one rule **Spend and owed are different questions asked of the same table, and the line -between them is `transaction_splits.settled`.** +between them is the cutover date, refined by `transaction_splits.settled`.** + +`ACTIVE_OBLIGATION` is `ts.settled = false AND t.transaction_date >= +'2026-01-09'`. Nothing before the cutover can be owed, because carryover +transaction 2348 already carries the entire pre-cutover balance as one figure — +so a split on an older transaction describes only *how an expense was shared*. +That is what makes splitting history safe, and it is why the flag is a +refinement rather than the guard: any delete-and-recreate write path resets a +boolean, and one did. | | Counts settled splits? | Why | |---|---|---|