mirror of
https://github.com/vicliu624/trail-mate.git
synced 2026-07-20 18:41:10 +00:00
* refactor: render chat rows from presentation state * Fix Meshtastic channel sync and add MeshCore CN preset * Add granular chat notification settings * Add SD settings backup and restore * Prepare 0.1.26-alpha release --------- Co-authored-by: vicliu624 <vicliu@outlook.com>
61 lines
2.4 KiB
Markdown
61 lines
2.4 KiB
Markdown
# Phase 6 Composition Conformance Matrix
|
|
|
|
## Purpose
|
|
|
|
This matrix records the Phase 6 product composition and app shell boundary
|
|
status.
|
|
|
|
A target or boundary is Phase 6-ready when:
|
|
|
|
- object graph ownership is explicit
|
|
- presentation models are assembled outside `ui_presentation`
|
|
- app services are not created by renderers
|
|
- legacy composition surfaces are documented
|
|
- checker coverage prevents new drift
|
|
|
|
Phase 6-ready does not mean all global state or legacy startup code has been
|
|
removed.
|
|
|
|
## Matrix
|
|
|
|
| Area | Composition contract | Root or bridge | Presentation binding | Legacy registered | Checker coverage | Status |
|
|
| --- | --- | --- | --- | --- | --- | --- |
|
|
| Product composition spec | yes | n/a | n/a | n/a | yes | ready |
|
|
| `product_composition` contracts | yes | n/a | `PresentationBundle` | n/a | yes | ready |
|
|
| Linux simulator | yes | `LinuxSimCompositionRoot` | full `PresentationWorkspace` with fakes | no | yes | ready |
|
|
| uConsole GTK/Linux | yes | `UConsoleCompositionRoot` pilot | Chat/Map presentation binding | GTK app state still legacy | yes | ready-with-legacy |
|
|
| ESP LVGL | bridge documented | ESP LVGL composition bridge audit | future bridge/root | `AppContext` and app facade runtime | yes | ready-with-legacy |
|
|
| AppContext / app facade | bridge documented | `LegacyAppContextBridge` audit | future explicit bundle binding | yes | yes | ready-with-legacy |
|
|
| LVGL Chat page runtime | partial | legacy page bridge | Chat/Team presentation models | yes | baseline | ready-with-legacy |
|
|
| LVGL GPS/map page runtime | partial | legacy page bridge | Map presentation model | yes | baseline | ready-with-legacy |
|
|
| uConsole tile/cache/contour | no pure root yet | legacy app model | Map workspace status only | yes | baseline | ready-with-legacy |
|
|
|
|
## Status Definitions
|
|
|
|
### ready
|
|
|
|
The composition boundary is explicit and has no major unresolved legacy
|
|
ownership in the Phase 6 scope.
|
|
|
|
### ready-with-legacy
|
|
|
|
The boundary is explicit, but older construction or global lookup remains
|
|
documented and guarded by baseline/checker coverage.
|
|
|
|
### blocked
|
|
|
|
The boundary is missing or unsafe for Phase 6 exit.
|
|
|
|
## Phase 6 Exit Interpretation
|
|
|
|
Phase 6 exits successfully if all areas are either:
|
|
|
|
- ready
|
|
- ready-with-legacy
|
|
|
|
No area may remain blocked.
|
|
|
|
The key Phase 6 result is not the removal of all legacy object construction.
|
|
The result is that target/app shell composition ownership is now named,
|
|
bounded, and automatically checked.
|