~11 min · append-only, immutability, audit, observations
Level 0Open Gate
0 XP0/36 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete
"You can add a new note. You can even delete one, on the record. But you can never quietly change what you thought last month."
A snapshot with a memory
A pure snapshot only knows the present, which would make Keep amnesiac. So three append-only memory tables give the snapshot spine a time axis without turning it into a ledger:
portfolio_value_history — one value row per writable owner per day.
fx_rate_history — every saved USD/KRW observation, by market date.
observations — Dad's dated thesis, market, and decision notes.
All three share one rule that is the heart of this lesson: they are append and audited-delete only. You add rows. You may delete a row (with an audit record of the deletion). You cannot edit an existing row in place. There is deliberately no update.
Why 'no edit' is the whole point
The observations table is the clearest case. It holds what Dad thought at the time — a thesis about a holding, a read on the market, the reasoning behind a decision, each stamped with its date. If you could edit those, then a bad call could be quietly rewritten into a good one after the fact, and the record of your own past thinking would become fiction. Append-only makes that impossible. An old view is never rewritten by a new one. If your thinking changed, you append the new thought; the old one stays, dated, honest. Your past self is preserved even when — especially when — your past self was wrong.
History you can edit is not history — it's a draft. The value of a dated record is precisely that it can't be revised to flatter the present. Append-only isn't a storage optimization; it's an integrity guarantee. The moment in-place edits are allowed, every past entry becomes only as trustworthy as your discipline not to touch it.
Delete is allowed — but it leaves a mark
Append-only doesn't mean nothing can ever be removed. You can delete an observation — maybe it was entered by mistake. But the deletion itself is audited: a record is written that this row existed and was removed. So even removal is honest. What's forbidden is the silent change — editing a value so that, afterward, there's no trace it was ever different. Add freely, delete on the record, never mutate in the dark.
This is the same instinct as Pippa's own memory. cwkPippa's conversation logs are append-only ground truth — you don't rewrite what was said, you record what happens next. Keep applies the identical discipline to financial observations: the log is the truth, and truth accumulates rather than getting overwritten. A family's financial reasoning deserves the same honesty as its conversations.
Code
Append and audited-delete; no UPDATE path exists·sql
-- Observations accumulate. Each carries its own date.
INSERT INTO observations (owner, kind, note, observed_on)
VALUES ('owner_a', 'thesis', 'reasoning as of this date', '2026-07-24');
-- Changed your mind later? APPEND a new one. The old stays, dated.
INSERT INTO observations (owner, kind, note, observed_on)
VALUES ('owner_a', 'thesis', 'revised reasoning', '2026-09-01');
-- Removal is allowed, but it is AUDITED, never silent.
INSERT INTO mutation_audit (table_name, action, before_json, at)
VALUES ('observations', 'delete', :row_snapshot, :now);
DELETE FROM observations WHERE id = :id;
-- There is deliberately NO UPDATE observations SET note = ...
-- An old view is never rewritten by a new one.
Take any 'notes' or 'status' field in a system you know that currently supports edit-in-place. Redesign it as append-only: adding a new entry supersedes the old one, edits become new dated rows, and deletion writes an audit record first. Then name one thing this makes newly possible (e.g. 'see how my reasoning changed over time') and one cost you now carry (e.g. 'the table only grows').
Hint
The revealing question: in the edit-in-place version, could someone change a past record so that no one could tell it used to say something else? If yes, that field can't be trusted as history. Append-only trades storage growth for the guarantee that the past stays the past.
Progress
Progress is local-only — sign in to sync across devices.