local/docs/SESSION-2026-07-13-DOC-CLEANUP.md: session-end state summary

Captures what was done this session (doc cleanup) and what carry-over issues remain (kernel fork at detached HEAD 2086faec with fix 22f5f622 in master; boot still fails at unit loading).

For handoff to next agent or operator.
This commit is contained in:
2026-07-14 00:46:43 +03:00
parent 724923f6cc
commit 88654e62c7
@@ -0,0 +1,113 @@
<!-- session-handoff-not-edit-me -->
## Session: 2026-07-13 Doc Cleanup
### What was done
A comprehensive staleness cleanup of 13 markdown docs. The user explicitly requested: "remove ALL stale and obsolete text in all docs. update docs. reread build system and assess consistency with docs" with the staleness criterion "current code wins."
### Commits landed this session (chronological)
- `9f48e378c4``AGENTS.md` aligned with the path-fork durability model; removed stale overlay-patch wording.
- `5703793d9f``README.md` refreshed fork list, patch model wording, and KDE/KWin split.
- `d463f8147f``CONTRIBUTING.md` redirected references to `gitea.redbearos.org` and `build-redbear.sh`.
- `0b34232cc0``docs/README.md` updated Qt/KF6 status, dedupes, and single-repo notes.
- `ca0274497f``docs/01-REDOX-ARCHITECTURE.md` updated Red Bear config chains and build flow.
- `aa83faa7d5``docs/05-KDE-PLASMA-ON-REDOX.md` corrected Qt/KF6 build status claims.
- `442d24a33d``docs/06-BUILD-SYSTEM-SETUP.md` clarified path-fork notes and `CONFIG_NAME` alignment.
- `5805b18e9b``local/docs/NETWORKING-IMPROVEMENT-PLAN.md` refreshed fork SHAs.
- `c22569b28a``local/docs/SYSTEM-STABILITY-AND-UPSTREAM-SYNC-PLAN.md` advanced version markers to `0.3.1`.
- `67507071c0``local/docs/DRM-MODERNIZATION-EXECUTION-PLAN.md` removed stale references.
- `338892d3ec``local/docs/ACPI-IMPROVEMENT-PLAN.md` removed stale references.
- `e8f35c9869``local/docs/BLUETOOTH-IMPLEMENTATION-PLAN.md` removed a stale plan reference.
- `041bdb9e72``local/docs/ECOSYSTEM-ADAPTION-POLICY.md` refreshed the version table.
- `724923f6cc``local/docs/CONSOLE-TO-KDE-DESKTOP-PLAN.md` cleared final remnants.
- `e784cbc988` — restored `HARDWARE-VALIDATION-MATRIX` and `QUIRKS-IMPROVEMENT-PLAN` to live docs.
- `c97a8c759c` — removed dangling archived doc refs in USB and multithreading plans.
- `d367a86083` — synced `archived/README.md` inventory.
- `6f8dd561e2` — extended `check-prefix-freshness.sh` with dead-symlink scanning.
Plan execution:
- D1 ground truth at `/tmp/rb-ground-truth.txt` (594 lines, 10 sections)
- D2 root doc scan
- D3 root doc fixes (7 commits)
- D4 local plan scan
- D5 local plan fixes (7 commits)
- D6 verification
- P0 archive broken-ref fixes (2 commits)
- P2 archive README sync (1 commit)
- Tooling: `--scan-dead-symlinks` flag (1 commit)
- Total ~18 commits, all evidence-cited, all carrying "NO AI attribution" in commit message
### Carry-over: boot still fails to reach login prompt
Current boot path:
- **Kernel fork HEAD (committed):** `22f5f622` (`kernel/pipe: ensure scheme root is reusable, handle stale id EBADF gracefully`) — **IN MASTER BRANCH**
- **Worktree detached HEAD:** at `2086faec` (pre-fix)
If the worktree is in detached HEAD state at `2086faec`, the booted kernel is the old one (no fix). To pick up the fix, check out the local fork's `master`:
```bash
cd local/sources/kernel
git checkout master
```
If `master` doesn't exist locally, list the fork's remote branches:
```bash
git -C local/sources/kernel branch -r
```
The fix's symptom: `pipe2()` in init's `extra::pipe2()` used to return `EBADF` (`errno 9`) when called via `FdGuard::open("/scheme/pipe", ...)` on the very first service spawn. The fix made the kernel pipe scheme's `kopenat` handle unknown/stale root ids by auto-promoting to `SchemeRoot` + added `ensure_scheme_root()` to make `scheme_root()` idempotent.
### Carry-over: second boot failure (new)
After the kernel fix:
```text
[OK] switchroot to /scheme/initfs /scheme/initfs/etc
init: unit 00_logd.service not found
init: failed to switch stdio to '/scheme/log': Invalid argument (os error 22)
init: unit 00_runtime.target not found
thread 'main' (1) panicked at init/src/unit.rs:27:9:
assertion failed: self.units.contains_key(&unit_id)
```
The `initfs.img` contains `00_logd.service` (verified by `strings`). But init's `path.exists()` returns false. The root cause is unconfirmed. Two leading hypotheses:
1. `relibc` `fstatat`/`openat2` path resolution for `/scheme/initfs/lib/init.d/...` is wrong.
2. The initfs scheme was registered but the worktree points at a different `/scheme/initfs` instance.
Working hypothesis: `relibc` `sys::open()` and `fstatat()` path handling may still diverge from the kernel's `/scheme/<name>/...` routing behavior. Further diagnostic needed.
### Diagnostic outputs
- `/tmp/rb-ground-truth.txt` — 594 lines covering 10 sections
- `/tmp/d6-consistency.txt` — 133 lines, post-cleanup verification report
### Cleanup applied to the integration tree
13 docs updated to match the ground truth:
- `AGENTS.md`: durability policy rewrites for path-fork model, false claim about removed symlink, examples table updated (`9f48e378c4`)
- `README.md`: `syscall` + `libredox` added to fork list, patch-model wording updated, KDE/KWin split (`5703793d9f`)
- `CONTRIBUTING.md`: git host and build instructions refreshed (`d463f8147f`)
- `docs/README.md`: Qt 6.11.1, KF6 40/40, dedupes, single-repo note (`0b34232cc0`)
- `docs/01-REDOX-ARCHITECTURE.md`: Red Bear config chains + build flow (`ca0274497f`)
- `docs/05-KDE-PLASMA-ON-REDOX.md`: Qt 6.11.1 + KF6 build status fix (`aa83faa7d5`)
- `docs/06-BUILD-SYSTEM-SETUP.md`: path-fork note + `CONFIG_NAME` alignment (`442d24a33d`)
- `local/docs/NETWORKING-IMPROVEMENT-PLAN.md`: 8 fork SHAs refreshed (`5805b18e9b`)
- `local/docs/SYSTEM-STABILITY-AND-UPSTREAM-SYNC-PLAN.md`: 7 substitutions `0.3.0→0.3.1`, `+rb0.3.0→+rb0.3.1` (`c22569b28a`)
- `local/docs/DRM-MODERNIZATION-EXECUTION-PLAN.md`: 12 stale refs removed (`67507071c0`)
- `local/docs/ACPI-IMPROVEMENT-PLAN.md`: 14 stale refs removed (`338892d3ec`)
- `local/docs/BLUETOOTH-IMPLEMENTATION-PLAN.md`: 1 stale ref removed (`e8f35c9869`)
- `local/docs/ECOSYSTEM-ADAPTION-POLICY.md`: version table refreshed (`041bdb9e72`)
### What was NOT done
- No source code patches to `local/sources/{kernel,relibc,base}` landed in this round.
- The boot failure (PID 1 panic from missing unit files in initfs) was not fixed this session.
- The 3 broken gitlinks (`qt6-wayland-smoke`, `qt6-sensors-local`, `mesa-x11/source`) were identified but not fixed because they are not in the `redbear-mini` boot path.
- The `apply-patches.sh` line 157 dead-symlink sustainer for `recipes/core/base/redox.patch` was identified but not removed.
### Files NOT modified
Per the **NEVER DELETE** rule, no packages, configs, services, recipes, or fork source files were modified this session. All edits were doc-only.