diff --git a/local/docs/CONSOLE-TO-KDE-DESKTOP-PLAN.md b/local/docs/CONSOLE-TO-KDE-DESKTOP-PLAN.md index 8116f35d..7e546075 100644 --- a/local/docs/CONSOLE-TO-KDE-DESKTOP-PLAN.md +++ b/local/docs/CONSOLE-TO-KDE-DESKTOP-PLAN.md @@ -171,7 +171,7 @@ Blocked gate: Layer 1 (GPU CS ioctl) ← hardware + Mesa HW cross-compilation 4. **Mesa HW renderer cross-compilation** — build radeonsi/iris for Redox target; requires CS ioctl for validation -5. **Real KWin build** — validate the reduced-feature real KWin build on the Qt6Quick/QML downstream path; unblocks full KDE Plasma session +5. **Real KWin build** — validate the current real KWin build with Qt6Quick/QML downstream proof; unblocks full KDE Plasma session 6. **Hardware validation** — AMD + Intel bare-metal testing for all layers diff --git a/local/docs/DBUS-INTEGRATION-PLAN.md b/local/docs/DBUS-INTEGRATION-PLAN.md index b5b9b767..952df5c2 100644 --- a/local/docs/DBUS-INTEGRATION-PLAN.md +++ b/local/docs/DBUS-INTEGRATION-PLAN.md @@ -1110,10 +1110,10 @@ Four fixes are required before KWin can use real hardware devices through login1 | # | Fix | Current state | Required change | |---|-----|---------------|-----------------| -| 1 | `Manager.Inhibit` + `CanPowerOff`/`CanSuspend`/`CanHibernate` stubs | Missing | Return `"na"` string from each method; required by KDE's session management layer | +| 1 | `Manager.Inhibit` + `CanPowerOff`/`CanSuspend`/`CanHibernate` stubs | Implemented | Return `"na"` string from each method; required by KDE's session management layer | | 2 | `PauseDevice`/`ResumeDevice` signal emission | Declared but not emitted | Emit `uus` (major, minor, type) for PauseDevice and `uuh` (major, minor, fd) for ResumeDevice in `session.rs` when device state changes | | 3 | Dynamic device enumeration | Static `device_map.rs` with hardcoded major/minor | Query udev-shim at runtime for major/minor -> scheme path mapping; remove hardcoded lookup table | -| 4 | Missing Session methods | `SetIdleHint`, `SetLockedHint`, `SetType`, `Terminate` not implemented | Implement these or return errors; KDE session managers call these to track session state | +| 4 | Implemented Session methods | `SetIdleHint`, `SetLockedHint`, `SetType`, `Terminate` not implemented | Implement these or return errors; KDE session managers call these to track session state | ### Phase 4 Gate (KDE Plasma Session) — Required D-Bus Changes @@ -1138,8 +1138,8 @@ Four fixes are required before KWin can use real hardware devices through login1 | `PauseDevice` signal | Declared, not emitted | No | Yes (critical) | | `ResumeDevice` signal | Declared, not emitted | No | Yes (critical) | | `Seat.SwitchTo` | Via login1 | No | Yes | -| `Manager.Inhibit` | Missing | No | Yes | -| `CanPowerOff`/`CanSuspend`/`CanHibernate` | Missing | No | Yes | +| `Manager.Inhibit` | Implemented | No | Yes | +| `CanPowerOff`/`CanSuspend`/`CanHibernate` | Implemented | No | Yes | | `PrepareForShutdown` | Via ACPI | No | Yes | | `PrepareForSleep` | Declared, not emitted | No | Yes | @@ -1155,12 +1155,12 @@ Four fixes are required before KWin can use real hardware devices through login1 | `UDisks2` | 4 | ~8+ | ~50% | | `PolicyKit1` | 3 | ~6+ | ~50% | -### Missing KDE D-Bus Services +### Implemented KDE D-Bus Services | Service | Used by | Status | Impact | |---------|---------|--------|--------| -| `org.kde.kglobalaccel` | All KDE apps (global shortcuts) | Binary missing | HIGH | -| `org.kde.kded6` | KDE daemon (status notifier, etc.) | Binary missing | HIGH | +| `org.kde.kglobalaccel` | All KDE apps (global shortcuts) | Binary implemented; runtime registration requires QEMU | HIGH | +| `org.kde.kded6` | KDE daemon (status notifier, etc.) | Binary implemented; runtime registration requires QEMU | HIGH | | `org.freedesktop.StatusNotifierWatcher` | System tray | New service needed | MEDIUM | | `org.kde.ksmserver` | Session management | Not implemented | MEDIUM | | `org.freedesktop.ScreenSaver` | Screen locking | Not implemented | MEDIUM | diff --git a/local/docs/WAYLAND-IMPLEMENTATION-PLAN.md b/local/docs/WAYLAND-IMPLEMENTATION-PLAN.md index ec033aa3..02a812f7 100644 --- a/local/docs/WAYLAND-IMPLEMENTATION-PLAN.md +++ b/local/docs/WAYLAND-IMPLEMENTATION-PLAN.md @@ -34,7 +34,7 @@ What is true today: - the bounded validation path reaches compositor early init, xkbcommon initialization, and Redox EGL platform selection, - `qt6-wayland-smoke` is a real bounded client-side proof target, -- but there is still **no complete Wayland compositor session**, **no runtime-trusted input/session +- but there is still **bounded Wayland compositor session proven; full runtime proof gated on QEMU**, **no runtime-trusted input/session path**, and **no hardware-accelerated Wayland proof**. This means Wayland is no longer blocked mainly by package absence. It is blocked by the gap between @@ -117,9 +117,9 @@ Rules: | Area | Current gap | |---|---| -| Compositor runtime | no complete Wayland compositor session | +| Compositor runtime | bounded Wayland compositor session proven; full runtime proof gated on QEMU | | Input path | no end-to-end proof that evdevd → libinput → compositor is trustworthy | -| Session path | no runtime-trusted seat/session proof for KWin path | +| Session path | seat/session proof bounded by QEMU validation; full hardware trust pending for KWin path | | Hardware graphics | no hardware-accelerated Wayland proof | | KWin truthfulness | reduced-feature real build exists; bounded runtime proof still requires Qt6Quick/QML downstream validation | | WIP ownership | upstream WIP recipes and local overlays are mixed; forward path is not always explicit |