Expand description
BC.4: the crate-owned install(boot) entry point.
Terminal’s only host-side boot wiring was its mode registration; this
moves it into one Phase-B line (lattice_terminal::install(&mut boot))
against the generic [SubsystemBoot] surface, matching the claude-code
shape (BC.3b).
Two terminal touch-points intentionally stay host-side, and are not mode-ownership violations:
- The
TerminalStoreHandleservice is a host-published primitive — the host’sBufferRegistryexposed underdyn TerminalStore(theimpl TerminalStore for BufferRegistrylives inlattice-host). It’s the same category asbuffer_store/diagnostics: the host owns the data, the terminal mode consumes it viaservices.get. TheSubsystemBootsurface can’t carry a terminal-specific type, so it stays host-registered until/unless terminal implsTerminalStoreoverBufferStoreHandle. - The
Editor-coupled invocation runner (Editor::run_terminal_invocation) is the shared invocation-runner mechanism (Help / Oil / FileTree / Terminal all bindEditor::run_*_invocation); migrating it is a cross-cutting cleanup, not a terminal slice.
Functions§
- install
- Wire the terminal subsystem into the editor at boot.