ADR 0255: the bar takes blocks as data from the module that knows the hardware #205

Merged
mesh-admin merged 2 commits from feat/the-bar-takes-blocks into main 2026-10-08 12:44:41 +00:00
Contributor

The operator's decision of 2026-10-08 ("option 1 is exactly how it should work … use a generic boundary layer"), and the two rulings of the same day: generic hardware comes from the module holding the generic seat, conditioned on the machine's facts, never from a vendor's module; and a power-draw block that says what it measured.

  • ADR 0255 extends ADR 0208 §4 (and widens ADR 0212): a seat may receive a kind as data in its own shape, rendered by the holder's template; placeholders narrow by placing fields, every combination placed once; if-capability composes a contribution only where the machine reports the capability; an offered kind makes no dependency. node-bar receives block. The power module contributes battery and power draw; the node-engine reports battery and power-meter; the energy counter stays root's. Rejected: option 2 (if_command blocks in the shared bar), a text contribution in the bar's grammar, a provision.
  • To-be 42: an Added 2026-10-08 paragraph and the decision in decisions:.
  • ADR 0208: a dated pointer note under §4.

The code is the delivery group feat/the-bar-takes-blocks in mesh-host, mesh-controller and mesh-catalog. records.py, index.py, cycle.py and words.py pass. Do not merge without the operator's approval.

The operator's decision of 2026-10-08 ("option 1 is exactly how it should work … use a generic boundary layer"), and the two rulings of the same day: generic hardware comes from the module holding the generic seat, conditioned on the machine's facts, never from a vendor's module; and a power-draw block that says what it measured. - **ADR 0255** extends ADR 0208 §4 (and widens ADR 0212): a seat may receive a kind as data in its own shape, rendered by the holder's template; placeholders narrow by placing fields, every combination placed once; `if-capability` composes a contribution only where the machine reports the capability; an offered kind makes no dependency. `node-bar` receives `block`. The power module contributes battery and power draw; the node-engine reports `battery` and `power-meter`; the energy counter stays root's. Rejected: option 2 (`if_command` blocks in the shared bar), a text contribution in the bar's grammar, a provision. - **To-be 42**: an *Added 2026-10-08* paragraph and the decision in `decisions:`. - **ADR 0208**: a dated pointer note under §4. The code is the delivery group `feat/the-bar-takes-blocks` in mesh-host, mesh-controller and mesh-catalog. records.py, index.py, cycle.py and words.py pass. Do not merge without the operator's approval.
mesh-admin added 1 commit 2026-10-08 11:45:55 +00:00
ADR 0255: the bar takes blocks as data from the module that knows the hardware
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
mesh/delivery-group group feat/the-bar-takes-blocks rejected: a member's own check failed
mesh/delivery superseded: a newer head of the same pull request
5852b66988
The operator chose a generic boundary for the bar: a block is said in terms no bar
owns and rendered by the seat's holder, placed only where the machine reports the
hardware, and generic hardware comes from the generic seat's module, not a vendor's.
To-be 42 records it; ADR 0208 points to it.
Author
Contributor

Delivery novox/hq@e4299b5521a7 — delivered since 2026-10-08T12:45:10Z

Delivery plan — builds nothing: the change touches no module of the mesh's graph

Group feat/the-bar-takes-blocks, in order: novox/hq@e4299b5521 → novox/mesh-host@52f44c5636 → novox/mesh-controller@1ea814413b → novox/mesh-catalog@8bd17abd4e

Transitions

  • 2026-10-08 12:36 (new) → proposed (announced): novox/hq#205's head announced
  • 2026-10-08 12:38 proposed → checked (checked): the verdict names this commit
  • 2026-10-08 12:38 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
  • 2026-10-08 12:45 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
  • 2026-10-08 12:45 published → delivered (done): nothing for a walk to move

The commit's note under refs/notes/mesh-plan keeps every transition: git log --notes=mesh-plan.

<!-- mesh-delivery:view --> **Delivery** `novox/hq@e4299b5521a7` — **delivered** since 2026-10-08T12:45:10Z **Delivery plan** — builds nothing: the change touches no module of the mesh's graph **Group** `feat/the-bar-takes-blocks`, in order: novox/hq@e4299b5521a7 → novox/mesh-host@52f44c56360b → novox/mesh-controller@1ea814413b37 → novox/mesh-catalog@8bd17abd4ebe - novox/mesh-controller@1ea814413b37 before novox/mesh-catalog@8bd17abd4ebe: declared - novox/mesh-host@52f44c56360b before novox/mesh-controller@1ea814413b37: declared, over built by **Transitions** - 2026-10-08 12:36 (new) → proposed (announced): novox/hq#205's head announced - 2026-10-08 12:38 proposed → checked (checked): the verdict names this commit - 2026-10-08 12:38 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail - 2026-10-08 12:45 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move - 2026-10-08 12:45 published → delivered (done): nothing for a walk to move The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
jschoubben added 1 commit 2026-10-08 12:35:59 +00:00
ADR 0255: say what review changed — if-capability on offered kinds only, unrenderable pieces left out and named, and why the sampler runs everywhere
mesh/merge-gate pass: the change touches no module of the mesh's graph
mesh/repo-check pass: its merge-check.sh passed
mesh/delivery delivered
mesh/delivery-group group feat/the-bar-takes-blocks merged: every member is merged
e4299b5521
mesh-admin merged commit ef8b76461e into main 2026-10-08 12:44:41 +00:00
mesh-admin deleted branch feat/the-bar-takes-blocks 2026-10-08 12:44:41 +00:00
Sign in to join this conversation.
No Reviewers
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/hq#205