ade6a2828134a6e39c1d72706a4d0ea4b25c0b95
mesh-catalog #562's step passed on shanks at 10:52:16Z and its end was heard at 10:52:17Z (its own watch was deaf; HeardEnds read it at the nudge of that same step end). The checker was judging it (kept verdicts, composition) when checker_status, reading only the steps state, named it lost: no step runs and the newest one ended. checker_ask_again, called on that at 10:52:27Z, ended the judging (context canceled) and the check ran whole again, passing at 11:00:16Z. No step end was lost; the read tools could not tell judging from lost. The running check now writes, in its state asks (already its own, by verdict key), the step whose end it heard and judges, and since when; its next ask or its end clears it. checker_status names such a candidate under judging, not lost, and checker_ask_again refuses it. A judging older than the step bound counts as lost (the checker that heard it stopped). State on the bus, written on the step-end event; no timer. Quick fix: a grace time after a step's end in lostWhy. Thorough fix (chosen): the checker says on the bus what it judges, so the read side never guesses; a grace would misname any judging longer than it (a composition wait). Test: a row in TestACheckWhoseAskJudgedNothingIsAskedAgainOrRead holds the composition and reads status and ask-again while the step's end is judged; without the fix it names the check lost and the ask again fails it.
mesh-delivery
Novox Mesh — delivery: the parts that build, check and deliver a change by watching and writing keys on the bus (ADR 0429).
Made by the mesh from the gitea module's config value repositories (novox/hq ADR 0428). Main takes no push: a change reaches it by a pull request whose mesh/repo-check (this repository's merge-check.sh) and mesh/merge-gate passed.
Description
Novox Mesh — delivery: the parts that build, check and deliver a change by watching and writing keys on the bus (ADR 0429).
30 MiB
Languages
Go
100%