Thing/runtimes/incubating/eve-tui/evetui-split-handoff.json
2026-07-09 13:25:20 +01:00

99 lines
5.3 KiB
JSON

{
"schema": "gamecult.eve.runtime_split_handoff.v1",
"splitTarget": "EveTui",
"ownerRepo": "EveTui",
"currentHostRepo": "Eve",
"runtimeId": "tui",
"packageName": "eve-tui",
"sourcePackageRoot": "runtimes/incubating/eve-tui",
"destinationPackageRoot": "packages/eve-tui",
"authorityBoundary": "EveTui owns compact terminal/grid projection, keyboard command input, dense state inspection, terminal capability manifests, capture transcripts, and TUI-specific style/token lowering. Providers such as Aetheria own live state, authored TUI surfaces, command authorization, receipts, and product-specific flows. Eve keeps the GUI/TUI surface contracts, command descriptors, provider advertisements, plugin advertisements, and conformance export contracts.",
"moveSets": [
{
"id": "tui-runtime-body",
"stage": "runtime-body",
"currentPaths": [
"runtimes/incubating/eve-tui/package.json",
"runtimes/incubating/eve-tui/src/eve-tui-shell.mjs",
"runtimes/incubating/eve-tui/test/eve-tui-shell.test.mjs",
"web/fixtures/sai-vn-surface.json"
],
"destinationOwner": "EveTui",
"replacementProof": "EveTui hosts a provider-agnostic TUI lowerer that consumes provider advertisements and Eve surface documents without importing provider internals."
},
{
"id": "tui-world-surface-lowering",
"stage": "world-surface-lowering",
"currentPaths": [
"runtimes/incubating/eve-tui/src/eve-tui-shell.mjs",
"runtimes/incubating/eve-tui/test/eve-tui-shell.test.mjs",
"runtimes/incubating/eve-tui/eve-runtime-capability.json"
],
"destinationOwner": "EveTui",
"replacementProof": "EveTui claims the provider-advertised tui world-surface lowering target with explicit support level, lossiness, and command boundary evidence; transcript capture remains a separate lifecycle proof."
},
{
"id": "tui-command-transport",
"stage": "command",
"currentPaths": [
"runtimes/incubating/eve-tui/src/eve-tui-shell.mjs",
"runtimes/incubating/eve-tui/test/eve-tui-shell.test.mjs"
],
"destinationOwner": "EveTui",
"replacementProof": "TUI actions emit gamecult.eve.command.v1 intents through provider-advertised command boundaries and render provider receipts instead of mutating local state."
},
{
"id": "tui-plugin-projection",
"stage": "plugin-projection",
"currentPaths": [
"runtimes/incubating/eve-tui/src/eve-tui-shell.mjs",
"runtimes/incubating/eve-tui/test/eve-tui-shell.test.mjs",
"runtimes/incubating/eve-tui/eve-runtime-capability.json",
"web/fixtures/sai-vn-surface.json"
],
"destinationOwner": "EveTui",
"replacementProof": "EveTui owns lossy terminal fallback shells for Sai, Norn, and TeX sidecar-advertised components; Sai keeps story state, Norn keeps graph layout/state, and EvePlugins keeps TeX rendering semantics."
},
{
"id": "tui-capture-lifecycle",
"stage": "capture",
"currentPaths": [
"tools/evetui/evetui-capture-contract.mjs",
"tools/evetui/evetui-capture-contract.test.mjs",
"tools/evetui/evetui-capture-artifact.mjs",
"tools/evetui/evetui-capture-artifact.test.mjs",
"scripts/run-evetui-capture-contract-smoke.ps1",
"scripts/run-evetui-capture-smoke.ps1"
],
"destinationOwner": "EveTui",
"replacementProof": "EveTui builds a provider-advertisement-backed terminal capture request and deterministic gamecult.eve.tui_grid.v1 JSON capture artifact now; the split is not complete until EveTui owns that capture path outside Eve incubation."
}
],
"contractInputs": [
"gamecult.eve.surface.v1",
"gamecult.eve.command.v1",
"gamecult.eve.provider_advertisement.v1",
"gamecult.eve.plugin_advertisement.v1",
"gamecult.eve.plugin.v1",
"gamecult.eve.conformance_export.v1"
],
"forbiddenImports": [
"provider internals as TUI runtime authority",
"renderer-local product state as provider truth",
"terminal-only command routes that bypass gamecult.eve.command.v1",
"Sai story state, VN/Ink semantics, or story command interpretation as TUI runtime authority",
"Norn graph layout, graph state, or command semantics as TUI runtime authority",
"TeX parsing, typesetting, baseline metrics, or render-cache semantics as TUI runtime authority",
"lossy text summaries pretending to be provider state"
],
"requiredExternalProofs": [
"EveTui publishes a runtime capability manifest with terminal/grid capabilities.",
"EveTui owns a provider-shell contract skeleton that selects advertised provider surfaces, lowers Eve surface trees, emits gamecult.eve.command.v1 intents, and produces an explicitly lossy terminal grid.",
"EveTui projects Sai, Norn, and TeX sidecar plugin fallback shells without importing plugin semantic internals.",
"EveTui owns the provider-agnostic terminal grid lowerer outside Eve incubation.",
"EveTui consumes at least one non-Aetheria provider advertisement.",
"EveTui consumes Aetheria's agent-facing TUI surface through provider advertisements without importing Aetheria internals.",
"EveTui emits gamecult.eve.command.v1 intents and renders provider receipts.",
"EveTui attaches terminal transcript or cell-grid capture artifacts to conformance output from its owner repo."
]
}