From 0b90251098295bd88a6675511c17bb3564bb8f61 Mon Sep 17 00:00:00 2001 From: jochen Date: Wed, 11 Nov 2026 13:06:37 +0100 Subject: [PATCH] Write the operator's answers of 13:06 on setting aside and on discard-aside's check Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ --- .../01-to-be/47-milestones/G-12-develop-answers-fourth.md | 6 +++--- .../47-milestones/G-14-recovery-module-and-review.md | 8 ++++++-- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/03-DESIGN/01-to-be/47-milestones/G-12-develop-answers-fourth.md b/03-DESIGN/01-to-be/47-milestones/G-12-develop-answers-fourth.md index 42c49686..746b2cc5 100644 --- a/03-DESIGN/01-to-be/47-milestones/G-12-develop-answers-fourth.md +++ b/03-DESIGN/01-to-be/47-milestones/G-12-develop-answers-fourth.md @@ -48,7 +48,7 @@ that round are written into the lines they name, here. Questions that an earlier (the module, the kept data, its form, the fingerprint, `snapshot`, `consumers` with each durable consumer's stream, name and acknowledged sequence, `size` in bytes, `at` and `catch-up`) comes on its event `ended` (§554); `restore-kept` takes `module`, `kept`, `form`, `fingerprint`, `why`, `from-backup` (yes or no) and one of `snapshot` (the restore point's - name), `aside-only` or `discard-aside` (an aside's `id`), and its result (`restored`, `aside`, `missing`, true when the + name), `aside-only` (the operator's hand tool alone, §554) or `discard-aside` (an aside's `id`), and its result (`restored`, `aside`, `missing`, true when the point is not in the recovery module's directory, and `error`) comes on its event `restored`. Both verbs answer only `accepted`, `busy` or `error` (§554). No argument `local-name` or `from` is taken, and a catch-up is never text. @@ -67,8 +67,8 @@ that round are written into the lines they name, here. Questions that an earlier says `failed` with `restore point missing`, and §300 holds the revert. - **The aside, and a restore that fails.** `restore-kept` sets the live kept data aside by taking a stream snapshot of each of its bus objects into `aside///` in the same directory, reads the aside back to check it (`at` the UTC time written - `20261111T121200Z`, with `-2`, `-3` and on added when that name exists), only then removes the live objects (whether that removal needs a person's warrant waits for the operator, ADR 0672 - review K3), + `20261111T121200Z`, with `-2`, `-3` and on added when that name exists), only then removes the live objects, which needs no person's warrant, the data staying in the aside (the operator, + 13:06 CET, §554), restores the point under their names and sets each consumer to its recorded sequence. Each step is written first in the aside's record (`set aside`, `removed`, `restored`): when a step after the removal fails, `restore-kept` restores the aside under the live names and sets the consumers back before it answers `failed`, and at its start diff --git a/03-DESIGN/01-to-be/47-milestones/G-14-recovery-module-and-review.md b/03-DESIGN/01-to-be/47-milestones/G-14-recovery-module-and-review.md index f7fe2038..4d7966ef 100644 --- a/03-DESIGN/01-to-be/47-milestones/G-14-recovery-module-and-review.md +++ b/03-DESIGN/01-to-be/47-milestones/G-14-recovery-module-and-review.md @@ -74,8 +74,12 @@ are written into the lines of G-12 they name.* the want moving that module (`seat:node-engine`, proved by the bus as that node's account): the recovery module, which hears `mesh-wants`' `wanted` as §556 reads a stream, answers `error` naming the node unless that node's want names the module at `fingerprint` (for `snapshot-kept`) or moves it back from `fingerprint` (for `restore-kept`). - `kept-points` takes the default of a read (§391). `aside-only` and `discard-aside` wait for the operator (ADR 0672 - review, K3 and K5). Each act is written in the hand-act log of the seat `mesh-hand-acts` first, with the caller the + `kept-points` takes the default of a read (§391). The operator, 2026-11-11 13:06 CET at lead-47's terminal: setting + aside is a move, not a removal, so deleting the live objects once their aside is whole and checked (§516) needs + no person's warrant, the data staying in the aside until `discard-aside`; `aside-only` is the operator's hand tool + alone, `recovery_aside` (class `act`, callers `operator`); and `discard-aside` is checked by the identity of who + asked it: its caller is `operator`, as the bus proves the calling account, with no warrant asked per discard. The + want check above stays for the node-engine, which this line, not the identity, needs. Each act is written in the hand-act log of the seat `mesh-hand-acts` first, with the caller the bus proved and `why`; an act whose log write fails does nothing and answers `error`, naming the log (as §480). - **The operator's hand tools.** `recovery_take` (take a point of one module and kept data now), `recovery_restore` (restore one point) and `recovery_retry` (ask again the last failed act of a module and kept data), each of class