From 456a1eae45c1b306a4546aa5ccd13c798e9e3d17 Mon Sep 17 00:00:00 2001 From: jochen Date: Thu, 12 Nov 2026 05:58:10 +0100 Subject: [PATCH] Answer A-207: the runner's recoveries state; widens from revision and grants-for Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h --- 03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md b/03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md index 2d773c7e..84b47517 100644 --- a/03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md +++ b/03-DESIGN/01-to-be/47-milestones/G-22-lead-answers-2.md @@ -109,3 +109,9 @@ the principle that settles it, cited as "design 47 G A-n". `ask-again`, its tool `runner_release`; the bound's expiry writes the finding `pipeline-waits` (scope `module`, id `..`); the wait's `on` gains the value `runner version`; its `clock-from` is the `build.ended` of the awaited fingerprint, heard as A-181 says. +- **A-207** (§86, §81, §415, §71, §275, §335, §441; principles 1, 2 and 7) The runner keeps a state `recoveries` + (commit to why) written when it hears the mesh-delivery seat's `recovery-merged`, read at a pipeline's start and + resume; a recovery heard after its pipeline started asks nothing again. `widens` is computed from two reads: the + catalog seat's `revision` of the candidate against the branch's newest (the serving parts' entries and fingerprints, + found by holder from the seat list; the acting rules `step`, `on` and `bound` and the credentials the entries + declare), and the grants part's `grants-for` (the permissions); no other verb.