2.5 KiB
| id | ticket | title | status | created | completed | ref_decisions | tags | ||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| PLN-0100 | real-render-worker-establishment | Migrate Local Render Publication to RenderSubmissionSink | open | 2026-06-06 |
|
|
Objective
Move local render publication call sites from HardwareBridge::publish_render_submission to RenderSubmissionSink.
Background
The sink must become the publication boundary before a real worker can replace the local path. Runtime, firmware, and Hub currently publish through the monolithic bridge.
Scope
Included
- Runtime local render surface uses
RenderSubmissionSink. - Firmware splash/crash publication uses the sink.
- Hub Shell UI publication uses the sink or a temporary adapter.
Excluded
- Do not remove
HardwareBridge. - Do not migrate non-render domains.
- Do not change command buffering semantics yet.
Execution Steps
Step 1 - Adapt runtime tick publication
What: Replace HardwareRenderSurface dependency on HardwareBridge::publish_render_submission.
How: Route submission through RenderSubmissionSink.
File(s): crates/console/prometeu-system/src/services/vm_runtime/tick.rs.
Step 2 - Adapt firmware and Hub publication
What: Stop direct calls to hw.publish_render_submission.
How: Use the sink through explicit platform/render facade access or temporary adapter.
File(s): crates/console/prometeu-firmware/src/firmware_step_splash_screen.rs, crates/console/prometeu-firmware/src/firmware_step_crash_screen.rs, crates/console/prometeu-system/src/programs/prometeu_hub/prometeu_hub.rs.
Step 3 - Update tests
What: Adjust tests that call HardwareBridge::publish_render_submission.
How: Use RenderSubmissionSink where render publication is the target.
File(s): crates/console/prometeu-system/src/services/vm_runtime/tests.rs, driver tests.
Test Requirements
Unit Tests
- Existing render manager tests pass.
Integration Tests
cargo test -p prometeu-system -p prometeu-firmware -p prometeu-drivers.
Manual Verification
rg "publish_render_submission" crates/consoleshows only legacy implementation or intentionally unmigrated scaffold.
Acceptance Criteria
- Runtime publication uses
RenderSubmissionSink. - Firmware/Hub publication no longer depend directly on the monolithic bridge.
- Tests pass.
Dependencies
PLN-0099.
Risks
- Firmware code may need a small context shape change. Keep compatibility adapters temporary and explicit.