diff --git a/03-DESIGN/01-to-be/11-a-board.md b/03-DESIGN/01-to-be/11-a-board.md index 44f60b3..2ea5d7b 100644 --- a/03-DESIGN/01-to-be/11-a-board.md +++ b/03-DESIGN/01-to-be/11-a-board.md @@ -21,6 +21,7 @@ the other four are about the mesh itself. | | what it shows | where it stands here | |---|---|---| | **the mesh** | every node, what each runs, what each takes from another, module versions | **everything behind it exists** — it is a reader, not a second source | +| **what is wrong** | machines not doing what they were told, machines not answering | **the page nobody had thought to ask for**, and the one a person opens first | | **builds** | a build, its stages, its log | **everything behind it exists** — every result is kept, failures included | | **sessions** | model sessions, their usage, and switching between accounts | [ADR 0024](../../02-DECISIONS/0024-model-access-is-a-provision.md) | | **channels** | nodes messaging each other | the agent layer | @@ -53,3 +54,21 @@ where everything else asking gets it too. is a second implementation of a decision. - **Not a dashboard of graphs.** What a person needs from a mesh is *which machine is not doing what it was told*, and that is a list, not a chart. + +## The three questions, in order + +Written down because the order is the design. A person opens this when something is wrong, and a +page that led with the third would bury the first: + +1. **Is anything broken?** A machine whose last declaration was refused or partly failed. It has + consequences now. +2. **Is anything not answering?** A machine not heard from. It may be new, switched off or + unreachable — **which is not the same as tried and could not**, and collapsing the two sends + somebody to debug a machine that was never sent anything. +3. **Is anything out of date?** A module behind its source, and the machines running the old one. + A plan for later rather than a problem now. + +**Refused and failed stay distinct all the way to the page.** Refused means the machine is exactly +as it was and what is wrong is in what was sent; failed means it is in a state nobody declared and +what is wrong is on the machine. They are fixed in different places, so a page that said "error" +for both would send half its readers to the wrong one.