docs(agent): Bernardo's calls — #136 settled, #130 decided, #143 waits, #120 deferred
All checks were successful
Check / eval (push) Successful in 3m49s

#136 CLOSED: he confirms the incident was clamshell (laptop closed), so the
gate already matched the evidence and only the words overclaimed. Swept:
idle.nix's comment + its journal line (`dpms-off skipped: docked` →
`clamshell (internal $m present but off)`), the ROADMAP entry, and #127's
own text. Docked-with-lid-open still blanks and is now explicitly untested
rather than implicitly covered.

#127 gains the exact protocol he asked for — two tests, separated by risk:
A) the mitigation holds (safe, unattended, journal line to grep); B) the
decisive one, whether DPMS-off was ever the trigger, run by hand because the
shipped mitigation would otherwise skip it. B self-recovers after 45s
(dpms on + hyprctl reload — #142's hammer re-lights eDP) because this box
has no sshd. All three outcomes are written down with what each implies,
including "input wakes it" → revert the mitigation and #135 never exists.

#130 decided: fix the contrast, we hold ourselves higher than GNOME —
matching upstream is no defence at 2.7:1, under even the large-text floor.
Recorded with the two candidate shapes and a preference for darkening our
label over the user's accent, plus the note that check-theme-contrast.py
covers palette pairings only, so it needs its own assertion or it rots
exactly like #98.

#143 decided: wait for rofi#2317, do not carry a patch — a patched rofi
means every machine compiles rofi from source, on every lock bump, to fix a
highlight. Now a watch, not work.

#120 deferred to PROPOSED intact: the measurements stand, and the no-binary-
cache gotcha probably makes cachix the real first step anyway.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-16 14:24:47 +01:00
parent 4a0b76cc97
commit d31bdf05cd
4 changed files with 199 additions and 116 deletions

View File

@@ -49,20 +49,36 @@ Everything else below stays open; order is convenience, not a gate.
restores **only** the radios that were on before. If Wi-Fi was already
off, it must stay off after disengage. Glyph must **not** appear when
airplane is off.
- [ ] **#127 docked idle — mitigation check (AMD dev box)** —
**Context:** original brick = docked idle → black, no input wake, undock
no eDP, Caps Lock alive; Ctrl+Alt+F3 gave no usable TTY. **Shipped
mitigation:** skip DPMS-off while docked (internal present-but-disabled);
lock at 5m still. Full DPMS-when-docked deferred (BACKLOG LATER).
- [ ] **#127 clamshell idle — TEST A, the mitigation holds (AMD dev box)** —
**Context:** original brick = clamshell-docked idle → black, no input
wake, undock no eDP, Caps Lock alive; Ctrl+Alt+F3 gave no usable TTY.
**Shipped mitigation:** skip DPMS-off while clamshell (internal
present-but-disabled); lock at 5m still.
**After `nomarchy-home` + relogin:**
1. Dock (eDP disabled in `hyprctl monitors all -j` / not in `monitors`).
2. Idle past 10+ min (or wait for hypridle).
3. **Pass mitigation:** external still shows hyprlock (not black power-save);
1. Dock, **lid closed** (eDP in `hyprctl monitors all -j`, absent from
`hyprctl monitors`).
2. Leave it entirely alone past 10+ min.
3. **Pass:** external still shows hyprlock (not black power-save);
`journalctl --user -t nomarchy-idle --since '-20 min'` has
`dpms-off skipped: docked`.
4. Undocked control: eDP only → at 10 min screen *does* blank; input wakes.
`dpms-off skipped: clamshell`.
4. Undocked control: eDP only → at 10 min it *does* blank; input wakes.
Optional: `nomarchy-display-dump` / SUPER+SHIFT+D for other display faults.
Related: docking round 8; LATER “DPMS when docked”.
- [ ] **#127 TEST B — was DPMS-off the trigger at all? (AMD dev box)** —
**This one outranks #135**: the mitigation is a cure for an *inferred*
cause, and if the inference is wrong we are paying for it forever while
the brick stays live. Bounded and self-recovering (there is no sshd on
that box). Full protocol + how to read each outcome: **BACKLOG #127 §
"The two tests, exactly"**. In short — docked, lid closed:
```sh
( sleep 45; hyprctl dispatch dpms on; hyprctl reload ) &
hyprctl dispatch dpms off
```
then (1) try to wake it with input in the first ~40s, (2) let the 45s
recovery run, (3) open the lid if still dark. **Input wakes it** → the
mitigation is pointless, revert it and #135 never exists. **Dark until
recovery** → mitigation confirmed, #135 is the opt-in. **Dark after
recovery** → the brick, now reproducible on demand, which is the best
outcome available.
- [ ] **#96 battery-limit row on threshold-less firmware (Acer M5-481T)** —
on the Acer (live or installed session with the commit carrying this
entry): open System (`SUPER+CTRL+I`). **Pass:** a "Battery limit" row