All checks were successful
Check / eval (push) Successful in 4m2s
Investigated #147 and the filing was wrong in the same direction as the 321ccf7
claim: it asserted something missing that is present. The repo DOES have the
session wiring — HM's wayland.windowManager.hyprland.systemd.enable defaults on
and is line 1 of the generated hyprland.conf — and it fired correctly. Rewritten
so nobody "fixes" it by adding what is already there.
What actually happened, per systemd at 17:25:54: hyprland-session.target
stopped, StopWhenUnneeded correctly tried to take graphical-session.target with
it, and systemd REFUSED the stop — xdg-desktop-portal-gtk had a 'start' job
queued from its own post-crash restart loop, making the stop a destructive
transaction. graphical-session stayed up from the morning; hyprland-session
returned 8ms later to find it active; nothing WantedBy it was re-pulled.
None of which a Nomarchy install can reach: it needs the user manager to survive
logout, i.e. Linger=yes — and that came from an empty marker dated 2026-01-24,
PRE-DATING Bernardo's migration to Nomarchy (custom flake at the time). Nothing
here sets linger; git log -S says it was never shipped, ever. Removed via
loginctl disable-linger (no restart needed, 0 failed units after); nothing wanted
it, as nomarchy-updates.timer is Persistent=yes and catches up on login.
The item is rewritten to the class that IS real: /var/lib is machine state, a
migration reconciles the flake and leaves the rest, so Nomarchy ran six months on
its own primary V3 box with a setting it never chose and could not see. That hits
the in-flake-state promise and V3's trustworthiness at once. Pitch is now a
doctor check for drift of this class + a MIGRATION.md note — explicitly NOT
hardening the session wiring against a race a clean install cannot reach.
Also corrects #146, which claimed an ordering dependency on #147 ("fail-loops
like cliphist"). Void — cliphist's fail-loop was the same stray state. #146 has
no dependency and can be taken first; its 19-in-11-days rate was measured with
linger on and should be re-measured before a guard is built.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Agent instructions + loop state
Everything an AI agent needs to work on Nomarchy, vendor-neutral and git-tracked. Protocol: LOOP.md. Entry point for every harness: repo-root AGENTS.md.
Instructions (how to work)
| File | Who writes | Role |
|---|---|---|
| LOOP.md | Human | One-iteration protocol (orient → pick → work → verify → commit → record) + the V0–V3 ladder |
| VERIFICATION.md | Human (agents propose) | Enforcement: preflight, honesty rules, visual protocol, hardware-blocked checks, reporting |
| DELEGATION.md | Human (agents propose) | Capability tiers, scout/runner roles, token economy, parallel fan-out |
| GOALS.md | Human (agents propose) | Pillars, quality bars, non-goals |
| CONVENTIONS.md | Human (agents propose) | How to write code/menu/state while shipping |
| THEME-DESIGN.md | Human (agents propose) | Theme/visual design instructions |
State (what's happening)
| File | Who writes | Role |
|---|---|---|
| BACKLOG.md | Both | Prioritized queue — only executable work list |
| JOURNAL.md | Agents | Append-only iteration log (read last 3–5 entries; older → JOURNAL-ARCHIVE.md) |
| MEMORY.md | Agents | Curated durable gotchas |
| HARDWARE-QUEUE.md | Agents append, human checks | On-hardware V3 tests only Bernardo can run |
Product / design docs (not a queue)
| File | Role |
|---|---|
| ../docs/VISION.md | v1.0 product themes — agents slice into BACKLOG PROPOSED |
| ../docs/ROADMAP.md | Design history + shipped log |
| ../docs/README.md | Full docs map |
Harness adapters (vendor-specific, thin)
Shared content never lives in an adapter — adapters only register/route into the files above, in whatever format their harness requires.
| Path | Harness | Role |
|---|---|---|
| ../AGENTS.md | any | Entry point (CLAUDE.md is a symlink to it) |
| ../.claude/settings.json | Claude Code | Tool permissions |
| ../.claude/agents/ | Claude Code | nomarchy-scout / nomarchy-runner role defs (contracts in DELEGATION.md) |
Do not put backlog items, vision text, or policy under an adapter directory — it is not shared with other agent runners.
Rules of thumb
- Execute from BACKLOG only (NOW → NEXT; never PROPOSED without human triage).
- Orient with GOALS + CONVENTIONS + MEMORY + last journal + BACKLOG; when the task is product-shaped, also read the relevant VISION §.
- Record lasting design in ROADMAP ✓ when something ships that future humans should know; delete the BACKLOG line.
- v1 branch is human-only — never advance from an agent session.