docs(shared): the cutover date is the gate, the flag refines it
ci / lint-test (push) Successful in 44s

This commit is contained in:
2026-07-28 13:54:46 +10:00
parent 788219b9fd
commit db6b7f8375
+9 -1
View File
@@ -13,7 +13,15 @@ recorded under [What was rejected](#what-was-rejected).
## The one rule ## The one rule
**Spend and owed are different questions asked of the same table, and the line **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 | | | Counts settled splits? | Why |
|---|---|---| |---|---|---|