diff options
| author | Craig Jennings <c@cjennings.net> | 2026-06-14 22:40:57 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-06-14 22:40:57 -0500 |
| commit | 4490074a2ebaa903e5db06f7f388174785a927ec (patch) | |
| tree | d559bc52b0d2b155a1b0d16692b6c904bbe6a88c /todo.org | |
| parent | 8661faa4ce8f62dce05bd5aaf29948194a8c01d3 (diff) | |
| download | archsetup-4490074a2ebaa903e5db06f7f388174785a927ec.tar.gz archsetup-4490074a2ebaa903e5db06f7f388174785a927ec.zip | |
chore(todo): close package-inventory tasks, regrade CI/CD
I marked the two package-inventory tasks DONE. Both are satisfied by scripts/package-inventory, now covered by characterization tests and a make package-diff target. I demoted the CI/CD pipeline task to C, since a full VM install per commit isn't realistic active backlog.
Diffstat (limited to 'todo.org')
| -rw-r--r-- | todo.org | 33 |
1 files changed, 21 insertions, 12 deletions
@@ -14,6 +14,9 @@ Four levels, matching the Emacs config (=org-highest-priority ?A=, =org-lowest-p Rule of thumb: A = dated-and-must; B = the active backlog; C = parking lot; D = untriaged. Fixing the undated A/B tasks means either dating them or demoting to C. * Archsetup Open Work ** TODO [#B] Scrolling layout: frame fit + wrap-around :hyprland: +:PROPERTIES: +:LAST_REVIEWED: 2026-06-13 +:END: Disabled 2026-06-12 (bind and cycle entry points removed; Super+Shift+S reassigned to whole-desktop screenshot). The layout needs real work before it earns its chord back: - What fits in each frame: column/frame sizing so windows land at usable widths instead of arbitrary slices. - Wrap-around: navigating past the last frame should wrap to the first (and vice versa). @@ -399,15 +402,15 @@ Add kernel parameter: ~rtc_cmos.use_acpi_alarm=1~ (will become systemd default) Consider: ~acpi_mask_gpe=0x1A~ for battery drain, suspend-then-hibernate config See Framework community notes on logind.conf and sleep.conf settings -** TODO [#B] Build CI/CD pipeline that runs archsetup on every commit +** TODO [#C] Build CI/CD pipeline that runs archsetup on every commit :PROPERTIES: -:LAST_REVIEWED: 2026-05-21 +:LAST_REVIEWED: 2026-06-13 :END: Core automation infrastructure - enables continuous validation ** TODO [#B] Fix install errors surfaced by the 2026-05-11 VM test run :PROPERTIES: -:LAST_REVIEWED: 2026-05-21 +:LAST_REVIEWED: 2026-06-13 :END: Errors logged during the VM install. Status as of the 2026-05-11 18:36 run (=test-results/20260511-183643/archsetup-output.log=) after the =48c9439= fontconfig/dconf fix: 7 → 6. - refreshing font cache — RESOLVED in =48c9439= (now installs =fontconfig= before calling =fc-cache=). @@ -430,32 +433,38 @@ Root cause was in =retry_install=: =last_exit_code=$?= ran AFTER =if eval ...; t ** TODO [#B] Generate recovery scripts from test failures :PROPERTIES: -:LAST_REVIEWED: 2026-05-21 +:LAST_REVIEWED: 2026-06-13 :END: Auto-create post-install fix scripts for failed packages - makes failures actionable -** TODO [#B] Create package inventory system +** DONE [#B] Create package inventory system +CLOSED: [2026-06-14 Sun] :PROPERTIES: -:LAST_REVIEWED: 2026-05-21 +:LAST_REVIEWED: 2026-06-13 :END: -*** TODO [#A] List all packages archsetup would install (including dependencies) -*** TODO [#A] List all packages currently installed on live system -*** TODO [#A] Generate diff showing what's in archsetup vs what's on system +Satisfied by =scripts/package-inventory= (the same script that closes "Automate the inventory comparison" above). It lists archsetup's declared packages, lists the live system's packages, and prints the diff in both directions. Design note: it compares explicit-vs-explicit (=pacman -Qqe= against declared =pacman_install=/=aur_install=), which is the meaningful comparison — the original "including dependencies" framing was superseded, since transitive deps are pulled automatically and listing full closures would only add noise. +*** 2026-06-14 Sun @ 22:13:48 -0500 Listed archsetup's declared packages — package-inventory extraction (pacman_install/aur_install + for-loop lists) +*** 2026-06-14 Sun @ 22:13:48 -0500 Listed live-system packages — package-inventory via pacman -Qqe / -Qq / -Qqen / -Qqem +*** 2026-06-14 Sun @ 22:13:48 -0500 Generated archsetup-vs-system diff — package-inventory, both directions, AUR/official split ** TODO [#B] Establish monthly review workflow :PROPERTIES: -:LAST_REVIEWED: 2026-05-21 +:LAST_REVIEWED: 2026-06-13 :END: +The diff engine now exists (=scripts/package-inventory= / =make package-diff=), so what remains here is the cadence, not the tooling: a scheduled prompt to run the diff and act on it. Subtasks 1-2 are the recurring human judgment the engine feeds; subtask 3 is the automation to schedule it. *** TODO [#A] For packages in archsetup but not on system: determine if still needed *** TODO [#A] For packages on system but not in archsetup: decide add or remove *** TODO [#A] Schedule monthly package diff review -** TODO [#B] Automate the inventory comparison +** DONE [#B] Automate the inventory comparison :test:solo: +CLOSED: [2026-06-14 Sun] :PROPERTIES: -:LAST_REVIEWED: 2026-05-21 +:LAST_REVIEWED: 2026-06-13 :END: Make package diff a runnable script instead of manual process +Resolved 2026-06-14: the runnable script already existed — =scripts/package-inventory= (built 2026-02-06) extracts archsetup's declared packages and diffs them against the live system (=--summary= / =--archsetup-only= / =--system-only= / full report). This pass added the missing coverage: 7 characterization tests in =tests/package-inventory/= pinning the extraction and both diff directions behind injectable =PKGINV_ARCHSETUP= / =PKGINV_PACMAN= seams, plus a =make package-diff= target for discoverability. Full unit suite green (26 tests, 3 suites). + ** TODO [#B] Complete security education within 3 months :PROPERTIES: :LAST_REVIEWED: 2026-05-21 |
