Skip to content

Root legs from each plane's own table: roster iterator, no-table RED, N/A agreement - #1003

Closed
MattJackson wants to merge 1 commit into
predevfrom
lane-law0-root-legs
Closed

MattJackson wants to merge 1 commit into
predevfrom
lane-law0-root-legs

Conversation

@MattJackson

Copy link
Copy Markdown
Collaborator

Implements the root side of the ARCHITECT ruling for the Law 0 root lane (option A). A root leg of qa/capability-equality.json drives a REAL linked plane through the composition root from that plane's own declared scenario, so the root's tests name no plane (BUSBAR-1.6.0.md K3/S10).

What changes

Manifest table. [package.metadata.busbar.root-leg] in the root manifest maps a linked plane-door row to the crate declaring testkit::ROOT_LEG. The table is a JSON table behind that crate's test-support feature. The table header lands with its first row.

build.rs. It writes $OUT_DIR/root_legs.rs: every enabled linked plane door, with its door and its table, or with none.

root/tests/root_legs.rs contains:

  • The table reader. Unknown fields are refused.
  • pair. RED: a linked plane door with no table fails its root leg, and the failure names the door.
  • not_applicable_agrees. RED: each N/A entry must match a ledger cell on the table's column that marks that root leg N/A for the same reason.
  • The served cell: compose_planes + door_routes + the data router. It sends the table's request as a keyed caller, holds the answer to the table, and checks the request is on the governance book.

Fixture plane. The in-tree fixture plane (plane_driver_test_plane, dropped in) runs its served cell from its own table (fixtures/root_leg_test_plane.json).

Not in this PR

The roster-wide cell, "every linked plane door runs its root leg", lands with the first plane's table. Today no linked plane declares a table, so that cell would be red on the real roster.

Why it is a draft

Draft pending the coordinator's ruling on its overlap with #787's [package.metadata.busbar.door-cells] (plane-written tests/root/mod.rs compiled into the root's test binary). That PR applies the ARCHITECT ruling on #464 to the same root legs.

…ble RED, the N/A agreement

ARCHITECT ruling (Law 0 root lane, option A; BUSBAR-1.6.0.md K3/S10): a root leg of
qa/capability-equality.json drives a REAL linked plane through the composition root from the
plane's own declared scenario, so the root's tests name no plane.

- `[package.metadata.busbar.root-leg]` (the root manifest; header lands with its first row) maps a
  linked plane-door row to the crate declaring `testkit::ROOT_LEG`, a JSON table behind its
  `test-support` feature; build.rs writes `$OUT_DIR/root_legs.rs`, every enabled linked plane door
  with its door and its table or none.
- root/tests/root_legs.rs: the table's reader (unknown fields refused), `pair` (a linked plane door
  with no table fails its root leg, naming it: RED), `not_applicable_agrees` (an N/A entry must be a
  ledger cell on the table's column marked N/A on its root leg for the same reason: RED), and the
  served cell (compose_planes + door_routes + the data router, the table's request as a keyed
  caller, its answer held to the table, the request on the governance book).
- The in-tree fixture plane (plane_driver_test_plane, dropped in) runs its served cell from its own
  table (fixtures/root_leg_test_plane.json).
@MattJackson

Copy link
Copy Markdown
Collaborator Author

Superseded by #1006 (door-cells is the one root-leg mechanism, coordinator ruling (b)); its REDs moved there.

@MattJackson
MattJackson deleted the lane-law0-root-legs branch October 14, 2026 06:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant