All checks were successful
Check / eval (push) Successful in 3m30s
The "blank + hypridle deadlock = the brick" cause published this morning is retracted everywhere it was asserted: ROADMAP, hyprland.nix's comment, #146, HARDWARE-QUEUE and two commit messages (a2151f4,321ccf7). It rested on two pieces of evidence and both were artifacts of how I measured: - "19 disconnects in 11 days": 18 of 19 are hypridle's noisy goodbye while systemd DELIBERATELY stops it — each bracketed by `Stopped hypridle` / `Started hypridle`, healthy replacement seconds later. - "Jul 14: CRITICAL at 13:08:17, then eleven hours of silence": an artifact of grepping ONE PID. systemd logged `Stopped hypridle` 13:08:17 and `Started hypridle` 13:09:00; PID 1678 ran fine all evening, invisible to the filter. Decisive: at the incident (before the 12:51:34 mitigation commit) hypridle had NO disconnect at all and had been healthy since Jul 14 13:09. It should have fired on-resume normally. The deadlock theory never had a case. The FIX stands on its own evidence and is untouched: the options really were off, hypridle's on-resume really was the only caller of `dpms on`, and input now wakes the screen with hypridle deliberately stopped (4s docked / 6s clamshell). Removing a proven single point of failure never needed a story about why the daemon might fail — which is exactly why it survived the story being wrong. #127 is RESTORED to NOW (deleted this morning as "shipped"; only the fix shipped). Its cause is open and the lead is the dead Ctrl+Alt+F3 — neither DPMS-off nor a dead hypridle can break VT switching, so something was wedged below the compositor holding DRM master. Every theory so far has been about the wake path, i.e. a symptom of the screen already being black. #146 → [watch], near-dead: one genuine zombie ever (verified by ps/ss, not grep); upstream #171 is real but its impact path closed when #147's stray linger went. Re-measure properly before building anything; close unbuilt if zero. Also closes the #127 hardware-queue entry: Bernardo ran the real 10-min idle — 19:27:58 dpms off (genuine timeout, shipped config, and it BLANKED = the revert working) -> mouse -> 19:32:14 `done enabled=1 first=DP-2`, clamshell, the incident geometry, one healthy hypridle throughout. All 4 steps pass. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Docs map
Where human and agent documentation lives. Do not invent a third tree for the same facts.
| Path | Audience | Role |
|---|---|---|
| ../README.md | Everyone | What Nomarchy is, install, options tables |
| REQUIREMENTS.md | Users + agents | Minimum system requirements (GPU/OpenGL, RAM, disk, UEFI) |
| VISION.md | Maintainers + agents | Product north star toward v1.0 and beyond — themes, not a task queue |
| ROADMAP.md | Maintainers + agents | Design/decision records + shipped log (historical ✓) |
| HARDWARE.md | Users + agents | Firmware, profiles, drivers, unsupported machines |
| TESTING.md | Maintainers + agents | Verification ladder, honesty rule, ISO/VM recipes |
| RECOVERY.md | Users | Broken theme/desktop/boot → undo |
| OVERRIDES.md | Users | Downstream Nix overrides |
| MIGRATION.md | Users | Existing NixOS → Nomarchy without reinstall |
| OMARCHY.md | Users | Coming from Omarchy — bindings/theme/install/config map |
Related (not under docs/)
| Path | Role |
|---|---|
| ../AGENTS.md | Agent entry point, any vendor/harness (CLAUDE.md symlinks to it) |
| ../agent/README.md | Agent instructions + executable loop state: BACKLOG, LOOP, VERIFICATION, … |
| ../.claude/ | Claude Code adapter only: permissions + subagent defs |
How work flows
VISION (what we want the product to feel like)
│
▼ human triages slices into…
BACKLOG (what's next, ordered — agents execute only this)
│
▼ lasting design notes after ship →
ROADMAP ✓ entries
Agents do not implement directly from VISION or ROADMAP. They take
the top actionable item in agent/BACKLOG.md (see agent/LOOP.md).
They may append PROPOSED pitches that reference VISION § … or
ROADMAP § ….