Skip to content

step 36: the legacy Transport trait is deleted; the boot seal reads transport rows from door facts - #960

Merged
MattJackson merged 4 commits into
predevfrom
lane-kdel-k3-transport-face
Oct 15, 2026
Merged

MattJackson merged 4 commits into
predevfrom
lane-kdel-k3-transport-face

Conversation

@MattJackson

Copy link
Copy Markdown
Collaborator

KERNEL-DELETE lane, item 3 (TODO l.670, 770; qa/kind-isolation.toml faces; ARCHITECT R-C 2026-10-14). Stacked on #932 (row 84 S1, the HOT transport load path). Stays DRAFT per rule 19.

What changes:

  • busbar_contract::Transport and TransportConfigView are deleted.
  • RootWire and host_wire are deleted from root/doors.rs.
  • The seal registers each transport row from its door's facts and the HostWire the host serves it over, with composed_over: None. A door that names a layer is refused at its build by HostWire::new.
  • The generated linked tables refuse a transport row that is off the transport-door axis.
  • The busbar × Transport [[face]] row is struck. S1 strikes the loader row. No FACE_GRANTS entry is added.
  • kind-isolation matches the transport face by its label. With no face rows left, its face-ratchet and dead-face proofs plant a row of their own.
  • construction no-default-bodies strikes Transport.

Behaviour is unchanged: the registry holds the same keys, kinds and ABI, every door is opened as before, and each wire is held for the process.

Sequencing (rule 20) — this waits on:

… transport rows from door facts (step 36)

A transport reaches the connector only as its memory-ABI framer door. The kernel's serve and egress
paths no longer call `busbar_contract::Transport`: the only reader left was the boot seal, which
built every row as a trait object (`RootWire` over the connector's `HostWire`) to ask it `key()` and
`composed_over()`, and `main` drops the sealed registry. So:

- contract: `Transport` and `TransportConfigView` are deleted from `transport/mod.rs` and the crate
  root; `tests/object_safety.rs` keeps the transport's declarations (`Plugin`, `TransportMeta`).
- root: `doors.rs` loses `RootWire` and `host_wire`; `build`/`served` answer the `HostWire` the host
  serves the door over. `LinkedTransport.build` takes the settings only (no transport names another,
  ARCHITECT Q128 U7). The seal (`registry::compose`) records `composed_over: None` for every row (a
  door naming a layer is refused at its build by `HostWire::new`) and registers every row under its
  own key. The generated linked tables (`linked_gen.rs`, build.rs's test table) refuse a transport
  row off the `transport-door` axis.
- tests: `transport_composed_over_consistency` holds every linked wire to its key and to the shipped
  fold's empty layer; the generator test plants door rows and refuses a door-less transport row.
- gates: kind-isolation's transport face is matched by its label (the contract defines no trait);
  the busbar × Transport `[[face]]` row is struck (no FACE_GRANTS entry), and with the ledger empty
  the face-ratchet and dead-face proofs plant a row of their own. construction's no-default-bodies
  strikes `Transport` in the same commit as the trait.

Behaviour: identical. The registry holds the same keys, kinds and ABI; the boot opens every door it
opened before and keeps its wire for the process.
…eless strike) into lane-kdel-k3-transport-face
…R_ID are deleted (step 36)

Listener::new's one caller was the loader's transport_adapter.rs, deleted above with the HOT
transport lane; ListenerHandle existed only to sit behind a Listener. The type, the trait, the
node-local identity static and their three re-exports go, with the two contract tests that
exercised only them. qa/contract-stateless.toml strikes the wire.rs NEXT_LISTENER_ID row.
Base automatically changed from lane-abi-hot-transport to predev October 15, 2026 13:54
@MattJackson
MattJackson merged commit 024f259 into predev Oct 15, 2026
1 check was pending
@MattJackson
MattJackson deleted the lane-kdel-k3-transport-face branch October 15, 2026 13: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