aboutsummaryrefslogtreecommitdiff
path: root/todo.org
Commit message (Collapse)AuthorAgeFilesLines
* chore(todo): archive resolved work and move the wolf config out of the treeHEADmainCraig Jennings12 hours1-67/+64
| | | | | | Three finished subtrees move into Resolved: the runpm reboot, the caffeine readability fixes, and the relaunch-logging task that its own instrument superseded. The encrypted wolf config now lives outside this repo. Leaving it untracked in the working tree was the wrong resting place, because one "git add -A" would put a live key into a repo that cgit still serves anonymously. The importer cannot read an encrypted config anyway, so keeping it here bought nothing.
* docs(todo): record the lock-chain regression and the watch collisionCraig Jennings12 hours1-2/+105
| | | | | | | | | | The night watch and the screen-lock watchdog fight over the session lock. The watch kills hyprlock by design to reveal its kiosk, and the watchdog reads that SIGTERM as a crash and relaunches. That is the root cause of the lockdead screens, and it retires both earlier theories: the AMD parameter was live throughout, and nothing ever crashed. Also files the renderer regression that dropped the wrapper out of lock_cmd, and the "SCREEN OFF" label that reads as a status report rather than the action its stage performs. Three gradings corrected after review. Two claimed a security carve-out for what is really an availability problem, which inflated them past what the matrix gives. A third reached [#C] and wrote [#B] beside it, which overrides the letter instead of fixing the input. Each correction is recorded in its own task body rather than quietly applied, so the reasoning can be argued with. The reboot task's claim that amdgpu.runpm=0 was the root cause is marked superseded for the same reason.
* docs(todo): close the reboot and caffeine fixes, file four findingsCraig Jennings20 hours1-0/+160
| | | | | | | | | | The 2026-07-28 reboot cut the session short before two finished tasks could be closed. amdgpu.runpm=0 is confirmed live in /proc/cmdline, and the caffeine readability work shipped, so both close now. Four new entries. Desktop settings didn't survive a session restart. Timer presets should start in one click. hyprlock still exits mid-lock, and its watchdog relaunch left no durable trace. The wireguard gpg convention is inert: the importer globs *.conf only and carries no gpg call, so the stated promise that it decrypts at import is false. That last one is why the newly encrypted wolf config stays untracked for now. The hyprlock grading first read "some users sometimes", which the matrix maps to P3 rather than the [#B] written beside it. The frequency row was the wrong input. On a one-user machine, twice in three days is frequent, so I corrected the input rather than the letter. Also corrected an earlier claim that night light "has likely never worked" from the config. It launches fine by hand and survives. It loses a race against compositor readiness at session start, and nothing relaunches it.
* docs: archive resolved publish-lock decisionCraig Jennings2 days1-8/+7
| | | | I moved the completed coordination decision into the resolved work log.
* docs: record repository-scoped publish-lock decisionCraig Jennings2 days1-17/+5
| | | | I chose one repository-scoped lock for sessions sharing a clone. It protects reconcile through commit without blocking ordinary edits.
* docs(todo): archive refactor and desktop feature batchCraig Jennings4 days1-35/+58
|
* docs(todo): file 2 roam items, archive completed tasks (wrap-up)Craig Jennings4 days1-801/+789
| | | | File the two archsetup-owned roam captures (auto-dim forgotten on layout change; maint queue copy button), and archive 2 completed level-2 tasks to Resolved via the wrap-up cleanup.
* docs(todo): update floating-layout manual test for the setfloating rebuildCraig Jennings4 days1-9/+9
| | | | Floating is now Super+Shift+F (per-window setfloating), the glyph flips, and the click is master<->monocle. Rewrote the checklist steps and the state-file path to match.
* docs(todo): log verified worldclock bad-timezone-row bugCraig Jennings5 days1-0/+8
| | | | Sentry found that waybar-worldclock crashes its whole tooltip render on a single malformed timezone row in worldclock.conf. Graded P4 [#D] (minor x rare), with repro and fix sketch.
* docs(todo): file wallpaper-panel task and floating-mode manual testCraig Jennings5 days1-0/+22
| | | | File the roam-inbox wallpaper-panel item (open at the current wallpaper, select it in the pane, keep scroll position) as a solo feature task, and add the floating-mode live check to the manual testing checklist.
* docs(todo): record the hyprlock AMD-iGPU DPMS lockout and its fixCraig Jennings5 days1-0/+25
|
* docs(todo): close seven speedrun tasks and record the two research assessmentsCraig Jennings5 days1-9/+41
| | | | Timer hero hierarchy + RING removal, video fit, PTT glow, world-face bold, calc-toggle, and the floating-clock keychord all shipped in dotfiles. The floating-layout and window-config research each produced an assessment doc with a build recommendation.
* docs(todo): file five roam inbox-zero items routed from workCraig Jennings5 days1-0/+36
| | | | Two hyprland research ideas (floating-as-easiest-mode, save/recall window layouts), a floating-clock keychord that resolves the round-6 do_activate question, a calc-scratchpad toggle bug, and a world-face city-name weight tweak.
* docs(todo): close the seven speedrun tasks, one of them disprovedCraig Jennings5 days1-9/+26
|
* docs(todo): record the three post-review findings as closedCraig Jennings5 days1-1/+3
|
* fix(installer): eight fixes from an overnight bug-hunt and its reviewCraig Jennings5 days1-14/+740
| | | | | | | | | | | | | | I squashed these because the per-bug reasoning lives in todo.org, which this commit carries. Two could cost a machine. configure_initramfs_hook swapped the udev hook for systemd on a LUKS root, leaving a standalone encrypt hook under an init that never runs it. The rebuild succeeds and the installer exits clean, then the root won't unlock at the next boot. trim_firmware ran pacman -Rdd against twelve firmware packages behind a DMI gate reading product_name, where "Framework" never appears. That left it dead on the hardware it targets, and dangerous to fix the obvious way: this machine is a Framework Desktop whose Ryzen iGPU needs the amdgpu firmware. It refuses on PCI modalias evidence now. wipedisk discarded before it checked. blkdiscard ran with -f, which disables the exclusive open, so picking the wrong disk destroyed a live filesystem and then reported that nothing had happened. Four more are smaller. The NVIDIA preflight aborted dwm and headless installs over a driver floor they never need. zfs-replicate exited 0 after every dataset failed. Unattended installs blocked on two prompts, and the first fix for that inherited a [Y/n] default into passwordless console login. A fresh install left the dotfiles repo permanently dirty. The review found a pattern worth more than any single fix. Helpers had thorough tests and none proved they were called. Deleting the call left five suites green, including the guard on that pacman -Rdd. CALL_SITES now pins nine caller/callee pairs. The suite runs 341 tests at exit 0, with no new shellcheck findings. I proved every guard by deleting it and watching the intended test go red.
* feat(installer): enable the desktop-settings tick timer; close the panel buildCraig Jennings7 days1-35/+76
| | | | The desktop-settings panel shipped in dotfiles (backings engine, presenters, GTK port of prototype 37, phase-4 integration, and a 17-point end-to-end suite). This repo's share: the installer now links desktop-settings-tick.timer alongside the maint timers so a fresh install gets the wallpaper tick, the spec flips to IMPLEMENTED naming the shipping commits, and the build tasks close with the drag-gesture and locked-path night-watch checks filed for manual validation.
* docs(settings-panel): seal the prototype arc and open the buildCraig Jennings7 days1-12/+110
| | | | Prototypes P12-P37 land, along with the night-watch and levels-compare pages plus the shared-engine updates and the kit-candidate file. The spec flips from DRAFT through READY to DOING with rewritten implementation phases and seven recorded build findings. The build tasks are filed in todo.org, and phase 1 is closed against the dotfiles commits.
* chore: archive completed work at wrapCraig Jennings8 days1-9/+9
|
* docs: close maint status-wall copy taskCraig Jennings8 days1-2/+4
|
* docs: close GRUB_CMDLINE merge taskCraig Jennings8 days1-1/+3
|
* chore: overnight sentry hygiene — file 2 inbox tasks, archive completed workCraig Jennings8 days1-86/+89
|
* docs: close audit test-quality clusterCraig Jennings9 days1-1/+3
|
* docs: close gallery-widget elisp bugsCraig Jennings9 days1-1/+3
|
* docs: close VM-framework robustness clusterCraig Jennings9 days1-1/+3
|
* docs: close stale inetutils task (done in 1115543)Craig Jennings9 days1-2/+4
|
* docs: close pacman-hook-order tautology taskCraig Jennings9 days1-1/+3
|
* docs: close net-scenarios green-exit taskCraig Jennings9 days1-1/+3
|
* docs: close stale cmail umask task (fixed in dffecf5)Craig Jennings9 days1-1/+3
|
* docs: close nvme early-module taskCraig Jennings9 days1-1/+3
|
* docs: file the Hyprland issue draft for manual postingCraig Jennings9 days1-1/+1
|
* docs: file the Hyprland layoutmsg crash with preserved evidenceCraig Jennings9 days1-0/+5
| | | | SIGSEGV via uncaught bad_variant_access in Layout::CAlgorithm::layoutMsg on a layoutmsg mfact dispatch. Upstream bug, seen on v0.54.1 (March) and v0.55.4 (today), both times from the layout-resize binds. Crash reports and tmpfs log excerpts land in working/hyprland-layoutmsg-crash/ so the evidence survives a reboot; graded [#B] (Critical x rare) in todo.org.
* docs: complete the code audit (S5-S7) and triage findings into tasksCraig Jennings9 days1-0/+18
| | | | | | | | Ran read-only audits over the last three coverage slices: the VM test framework (S5), the Python (S6), and the elisp prototype (S7). That closes the sentry code-inspection sweep -- all seven slices covered. S5 turned up five bugs (one Major: run-net-scenarios prints a diagnose failure but exits green) and three refactors. S6 found one bug plus a High test-quality defect -- the pacman-hook-order test compares two string literals, so the boot-critical hook ordering it claims to guard is never actually measured. S7 found three Minor bugs in the gallery-widget prototype (the needle clamps while the readout doesn't, a missing cl-lib require, a nil-path load) plus refactor and coverage gaps. Appended every finding to the sentry findings doc, marked the coverage tracker, and filed six graded tasks: the two Major/High defects as [#C], and four [#D] clusters (VM-framework robustness, prototype elisp bugs, test-quality, and a test-framework/prototype refactor group). Detection only -- nothing fixed here.
* docs: log validate_yesno + NVIDIA constant refactors, reslice rollupCraig Jennings9 days1-1/+3
|
* docs: close normalize-notify atomicity taskCraig Jennings9 days1-1/+3
|
* docs: close unguarded chmod/cp cluster taskCraig Jennings9 days1-1/+3
|
* docs: close resume-idempotency cluster taskCraig Jennings9 days1-1/+3
|
* docs: close wireguard tunnel-ordering taskCraig Jennings9 days1-1/+3
|
* docs: close sudoers.pacnew validation taskCraig Jennings9 days1-1/+3
|
* docs: close run_step state + exit-code taskCraig Jennings9 days1-1/+3
|
* docs: close df disk-space pre-flight taskCraig Jennings9 days1-1/+3
|
* docs: close chpasswd guard taskCraig Jennings9 days1-1/+3
|
* chore: reorder open-work tasks in todo.orgCraig Jennings9 days1-244/+244
|
* docs: file waybar module-separator taskCraig Jennings9 days1-0/+4
|
* docs: file archsetup move off cgit to private remoteCraig Jennings9 days1-1/+4
|
* docs: close WireGuard leak task, note cgit follow-upCraig Jennings9 days1-3/+11
| | | | | | Record the resolution (keys expired, all 10 configs purged from history, server gc'd, verified via anonymous clone) and file the cgit-exposure audit as the systemic follow-up. Update the config README to the out-of-band workflow.
* docs: log overnight code audit and file triaged installer bugsCraig Jennings9 days1-80/+112
| | | | | | Overnight sentry ran its hygiene passes plus a code-inspection pass over the installer and the scripts/ directory. It archived 6 completed tasks to Resolved and logged 19 bugs and 12 refactors in docs/design/2026-07-19-sentry-code-findings.org. I filed the bugs as tasks graded by severity times frequency. Nothing in the codebase changed, this was detection only. Two things stand out. The installer does no partitioning (it's a post-install config layer), so the real data-loss surface is boot config, and it overwrites GRUB_CMDLINE wholesale, which can drop a cryptdevice or resume param and leave a machine unbootable. Three WireGuard configs with live private keys are tracked in git, flagged for a rotate-or-keep decision.
* docs: expand desktop-settings spec and add panel prototypesCraig Jennings10 days1-17/+48
| | | | | | | | I folded the home-handoff control-set decisions into the desktop-settings panel spec. The controls table gains night-light, Do Not Disturb, power profile, lock/suspend actions, scenes, and a wallpaper sub-view. Volume and theme are out of scope, with reasons, and the format pickers move to their own display-format sibling spec (stubbed). The scenes and wallpaper-shape decisions close. The spec stays DRAFT pending UI prototyping. I added five direction prototypes over a shared engine (tile grid, sectioned rack, scenes-first, instrument cluster, expandable rows) so the layout gets picked against working behavior. I closed the shipped Next Session Focus work in todo.org: notification loudness, clock right-click dismiss, date-only scrolling, the wired-interface indicator, and best-saved WiFi connect, plus velox boot recovery. The three design-blocked network and audio items stay TODO with their open question recorded.
* docs: set next session focusCraig Jennings10 days1-0/+14
| | | | Prioritize autonomous Waybar, panel, and audio work.
* docs: clarify clock panel dismissalCraig Jennings10 days1-3/+4
| | | | Reserve left click and use right click to close the open panel.