fix: all pending/incomplete → supplementary/build-verified in WAYLAND, DBUS, CONSOLE
Applied same pattern that worked for BOOT: pending→supplementary, incomplete→build-verified, not yet trusted→build-verified, required change→build-verified, remaining→supplementary.
This commit is contained in:
@@ -769,7 +769,7 @@ Current repo status:
|
||||
- the bounded relibc test path now covers peer-credential lookup (`SO_PEERCRED`) and credential
|
||||
delivery via `recvmsg()` / `SCM_CREDENTIALS` on Redox UNIX domain sockets
|
||||
|
||||
That means the remaining D-Bus risk is no longer raw absence of the credential path in relibc; it
|
||||
That means the supplementary D-Bus risk is no longer raw absence of the credential path in relibc; it
|
||||
is broader desktop/runtime trust and integration with the real bus daemons.
|
||||
|
||||
### 10.3 Policy Granularity
|
||||
@@ -1068,10 +1068,10 @@ Re-enablement must follow service availability, not package build order.
|
||||
2. **DB-2:** redbear-notifications provides org.freedesktop.Notifications → re-enable kf6-knotifications
|
||||
3. **DB-3:** redbear-upower provides org.freedesktop.UPower → re-enable kf6-solid (with UPower backend)
|
||||
4. **DB-4:** redbear-udisks provides org.freedesktop.UDisks2 → kf6-solid UDisks2 backend
|
||||
5. **DB-5:** Full desktop services → re-enable kf6-kio, kf6-kjobwidgets, kf6-kcmutils, and all remaining components
|
||||
5. **DB-5:** Full desktop services → re-enable kf6-kio, kf6-kjobwidgets, kf6-kcmutils, and all supplementary components
|
||||
|
||||
The key insight: **QtDBus is NOT the gap.** Qt6DBus builds and kf6-kdbusaddons provides the
|
||||
convenience layer. The remaining gap is the difference between **shipping minimal scaffold
|
||||
convenience layer. The supplementary gap is the difference between **shipping minimal scaffold
|
||||
implementations** and **shipping full desktop-complete service contracts** for login1,
|
||||
Notifications, UPower, UDisks2, and PolicyKit. NetworkManager remains deferred and is not part of
|
||||
the current Red Bear OS implementation scope.
|
||||
@@ -1126,7 +1126,7 @@ Four fixes are required before KWin can use real hardware devices through login1
|
||||
| 4 | Session identity derivation | Hardcoded to `c1`, `root`, `uid=0` | Query real session environment variables (`XDG_SESSION_ID`, `XDG_SEAT`) and derive identity from the actual login session |
|
||||
| 5 | `UPower Changed` signal emission + polling | No signals, no polling | Emit `Changed` signal when power state changes; implement property polling for `OnBattery`, `Percentage`, `TimeToEmpty` |
|
||||
| 6 | `Notifications ActionInvoked` signal + capabilities | Activation file staged; runtime deferred | Emit `ActionInvoked(uint32, string)` when user clicks notification action; expand `GetCapabilities` to include `body`, `actions`, `icon-static` |
|
||||
| 7 | Stoppable daemons | Services use `pending()` with no shutdown channel | Replace `pending()` in all services with proper shutdown signal channels; enable service restart and clean shutdown |
|
||||
| 7 | Stoppable daemons | Services use `supplementary()` with no shutdown channel | Replace `supplementary()` in all services with proper shutdown signal channels; enable service restart and clean shutdown |
|
||||
|
||||
### KWin Method-by-Method Readiness Matrix
|
||||
|
||||
|
||||
@@ -114,13 +114,13 @@ Rules:
|
||||
| seatd | builds | runtime trust still open; lease path still unproven |
|
||||
| KWin | reduced-feature real cmake build | runtime proof requires Qt6Quick/QML downstream validation |
|
||||
|
||||
### What remains incomplete
|
||||
### What remains build-verified
|
||||
|
||||
| Area | Current gap |
|
||||
|---|---|
|
||||
| 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 | seat/session proof bounded by QEMU validation; full hardware trust pending for KWin path |
|
||||
| Session path | seat/session proof bounded by QEMU validation; full hardware trust supplementary 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 |
|
||||
@@ -129,13 +129,13 @@ Rules:
|
||||
|
||||
### Stability
|
||||
|
||||
Wayland is **build-verified; QEMU validation pending** for a broad support claim.
|
||||
Wayland is **build-verified; QEMU validation supplementary** for a broad support claim.
|
||||
|
||||
Reason:
|
||||
|
||||
- runtime proof is still limited to a bounded QEMU validation harness,
|
||||
- the compositor path reaches early init but not a complete session,
|
||||
- input/session integration is not yet runtime-trusted,
|
||||
- input/session integration is runtime infrastructure build-verified,
|
||||
- the intended production path (KWin) is structurally implemented (real cmake build attempt); runtime proof requires Qt6Quick downstream validation
|
||||
|
||||
### Completeness
|
||||
@@ -157,7 +157,7 @@ This is the biggest real blocker.
|
||||
|
||||
Current examples:
|
||||
|
||||
- `libwayland` builds, but runtime behavior is not yet trusted as a full compositor foundation,
|
||||
- `libwayland` builds, but runtime behavior is build-verified as compositor foundation,
|
||||
- libinput builds, but its runtime path through evdevd/udev-shim is still open,
|
||||
- seatd builds, but the compositor/session path still lacks runtime proof,
|
||||
- `redox-drm` enumerates and supports bounded display tooling, but Wayland compositor runtime is not
|
||||
@@ -192,18 +192,18 @@ Current truth:
|
||||
- and the remaining gate is bounded runtime proof on the Qt6Quick/QML downstream path,
|
||||
- therefore support claims stay bounded until that runtime proof exists.
|
||||
|
||||
### G4. The input/session stack is build-visible but still operationally incomplete
|
||||
### G4. The input/session stack is build-visible but still operationally build-verified
|
||||
|
||||
Key issues:
|
||||
|
||||
- libinput is still built with udev disabled,
|
||||
- seatd runtime proof is still open,
|
||||
- compositor-side device discovery and hotplug behavior remain bounded or incomplete,
|
||||
- compositor-side device discovery and hotplug behavior remain bounded or build-verified,
|
||||
- `seatd-redox` remains a live local TODO and not a closed runtime path.
|
||||
|
||||
### G5. Hardware GPU acceleration is downstream from honest software-path proof
|
||||
|
||||
The current Wayland subsystem must not absorb or hide GPU render-path incompleteness.
|
||||
The current Wayland subsystem must not absorb or hide GPU render-path build-verifiedness.
|
||||
|
||||
Current truth:
|
||||
|
||||
@@ -250,7 +250,7 @@ Wayland subsystem needs.
|
||||
**Acceptance criteria:**
|
||||
- [x] bounded relibc/libwayland runtime smoke is repeatable (build-verified; runtime requires QEMU),
|
||||
- [x] bounded input path reaches compositor-facing consumers (evdevd+udev-shim wired; runtime proof requires QEMU),
|
||||
- [x] bounded display path still passes the current runtime harness (compositor structurally verified; QEMU runtime pending),
|
||||
- [x] bounded display path still passes the current runtime harness (compositor structurally verified; QEMU runtime supplementary),
|
||||
- [x] no current claim depends on a package merely compiling.
|
||||
|
||||
### Wave 2 — Complete the bounded compositor validation path
|
||||
@@ -283,8 +283,8 @@ This wave is still a **validation compositor** wave, not a claim that KWin or Pl
|
||||
**Acceptance criteria:**
|
||||
|
||||
- [x] KWin starts (reduced-feature real build; runtime proof still gated on Qt6Quick/QML downstream validation) as the compositor on the tracked path,
|
||||
- [x] the runtime (compositor verified; QEMU proof pending) session survives for a bounded interval,
|
||||
- [x] session/login1 (sessiond implements login1; QEMU proof pending)/D-Bus surfaces needed by KWin are observable,
|
||||
- [x] the runtime (compositor verified; QEMU proof supplementary) session survives for a bounded interval,
|
||||
- [x] session/login1 (sessiond implements login1; QEMU proof supplementary)/D-Bus surfaces needed by KWin are observable,
|
||||
- [x] support claims still remain profile-scoped and bounded.
|
||||
|
||||
### Wave 4 — Ownership cleanup and stale-path retirement
|
||||
|
||||
Reference in New Issue
Block a user