Fifty-Eight Areas, Each in One Place

Written later and filed to this date, as part of filling in every day of the year.

The recovery lane of the routine that audits both machines went through every directory of state and sorted it into replaceable and not. On the box, fifty-eight areas came out irreplaceable; on the laptop, fifteen. Every one of them lived on the single disk it would need to survive. The code was already safe, because every private repository is pushed to its remote shortly after each commit. Everything that was not code existed exactly once.

So the two machines back each other up. Each night the laptop sends its irreplaceable areas to the box and the box sends its own to the laptop, every copy encrypted, incremental and deduplicated, with old snapshots thinned on a schedule rather than kept forever. Each week both sides read back a sample of what they stored and check it, so silent corruption surfaces within weeks rather than at restore time. The keys are kept apart from the archives they open, because a lost key is a lost archive with no recovery path.

The laptop’s leg is where it got interesting, two nights in. A scheduled run there cannot read the folders its operating system protects; the runs by hand had passed because a terminal carries its own grant. The archive tool exits with a code that means the snapshot was saved and some paths were unreadable, and the runner treated it as failure: it burned two retries that could not change anything and posted an error over a backup that existed. That exit is now its own outcome. The snapshot is kept, the pruning runs, and the status event says what the night was: a backup, waiting on a grant only a person at the laptop’s screen can give, with the unreadable paths named. The dashboard lists it under waiting, not under faults.

What it does not cover is written down beside what it does, so the gaps are decisions rather than surprises. One gap is guarded by the audit itself: a new state directory on either host is unmeasured until someone adds it to the runner, and anything the audit cannot classify defaults to irreplaceable and fails red.

Cross-backup: the box and the laptop each hold the other’s irreplaceable state, encrypted and read back on a schedule, with the one thing neither machine can do for itself, a human’s grant, reported as waiting rather than as broken.


← all writing