i3 places ${contribution:node-display-session:config} near the end of its config. config.d stays, read last, and is now the operator's alone.
rofi, clipmenu, feh, i3status-rust and asus-zephyrus-g14 no longer write files into config.d. They contribute the same lines, sourced from their files/i3/ where they had one. Each now depends on node-display-session.
zephyrus_keys reads its own section of i3's config: from # asus-zephyrus-g14 to the next module line or section header.
The catalogue-wide i3 test composes every contribution as the controller does and runs i3 -C over the result. It also no longer reads the developer's own config.d; the include line appears inside a contribution's comment, which fooled the old replacement.
All six modules' tests pass, and module check passes all 104 manifests.
Rollout (per node: g14, then shanks): build the six modules, then push that node. The host removes the old mesh-written fragments, but gives back the originals it kept of 10-asus.conf and 20-g14.conf on g14. Those must be moved aside straight after the push, or every binding doubles and i3's watcher refuses to reload.
This is ADR 0212 step 2 for the window manager.
- **i3** places `${contribution:node-display-session:config}` near the end of its config. `config.d` stays, read last, and is now the operator's alone.
- **rofi, clipmenu, feh, i3status-rust and asus-zephyrus-g14** no longer write files into `config.d`. They contribute the same lines, sourced from their `files/i3/` where they had one. Each now depends on `node-display-session`.
- **`zephyrus_keys`** reads its own section of i3's config: from `# asus-zephyrus-g14` to the next module line or section header.
- **The catalogue-wide i3 test** composes every contribution as the controller does and runs `i3 -C` over the result. It also no longer reads the developer's own `config.d`; the include line appears inside a contribution's comment, which fooled the old replacement.
All six modules' tests pass, and `module check` passes all 104 manifests.
**Rollout** (per node: g14, then shanks): build the six modules, then push that node. The host removes the old mesh-written fragments, but gives back the originals it kept of `10-asus.conf` and `20-g14.conf` on g14. Those must be moved aside straight after the push, or every binding doubles and i3's watcher refuses to reload.
rofi, clipmenu, feh, i3status-rust and the laptop's model module wrote files into i3's config.d,
naming no dependency on the window manager. They now contribute their lines; i3 places them under a
line naming each module, and config.d is the operator's alone. The catalogue-wide test composes the
contributions as the controller does and checks the whole with i3 -C.
2026-10-06 23:05 (new) → proposed (announced): novox/mesh-catalog#47 merged; its head was not heard by this owner, so it is made from the forge's word
2026-10-06 23:05 proposed → held (merged-unchecked): merged without a passing check — a verdict known with it is taken first: only a person decides that it goes on
The commit's note under refs/notes/mesh-plan keeps every transition: git log --notes=mesh-plan.
<!-- mesh-delivery:view -->
**Delivery** `novox/mesh-catalog@4224ac725270` — **held** since 2026-10-06T23:05:28Z
Held for a person: merged without a passing check: only a person decides that it goes on — `mesh-delivery.release` with why lets it go on.
**Delivery plan** — builds asus-zephyrus-g14, clipmenu, feh, i3, i3status-rust, rofi → g14, shanks; no bus step
- tier 0: asus-zephyrus-g14, clipmenu, feh, i3, i3status-rust, rofi
- g14: receives asus-zephyrus-g14, clipmenu, feh, i3, i3status-rust, rofi
- shanks: receives clipmenu, feh, i3, i3status-rust, rofi
**Transitions**
- 2026-10-06 23:05 (new) → proposed (announced): novox/mesh-catalog#47 merged; its head was not heard by this owner, so it is made from the forge's word
- 2026-10-06 23:05 proposed → held (merged-unchecked): merged without a passing check — a verdict known with it is taken first: only a person decides that it goes on
The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
This is ADR 0212 step 2 for the window manager.
${contribution:node-display-session:config}near the end of its config.config.dstays, read last, and is now the operator's alone.config.d. They contribute the same lines, sourced from theirfiles/i3/where they had one. Each now depends onnode-display-session.zephyrus_keysreads its own section of i3's config: from# asus-zephyrus-g14to the next module line or section header.i3 -Cover the result. It also no longer reads the developer's ownconfig.d; the include line appears inside a contribution's comment, which fooled the old replacement.All six modules' tests pass, and
module checkpasses all 104 manifests.Rollout (per node: g14, then shanks): build the six modules, then push that node. The host removes the old mesh-written fragments, but gives back the originals it kept of
10-asus.confand20-g14.confon g14. Those must be moved aside straight after the push, or every binding doubles and i3's watcher refuses to reload.Delivery
novox/mesh-catalog@4224ac725270— held since 2026-10-06T23:05:28ZHeld for a person: merged without a passing check: only a person decides that it goes on —
mesh-delivery.releasewith why lets it go on.Delivery plan — builds asus-zephyrus-g14, clipmenu, feh, i3, i3status-rust, rofi → g14, shanks; no bus step
Transitions
The commit's note under
refs/notes/mesh-plankeeps every transition:git log --notes=mesh-plan.mesh-tools referenced this pull request2026-10-20 06:36:01 +00:00