<feed xmlns='http://www.w3.org/2005/Atom'>
<title>archsetup/todo.org, branch claude/hungry-franklin-09fffc</title>
<subtitle>Builds a full dev workstation from a bare Arch Linux install.
</subtitle>
<id>https://git.cjennings.net/archsetup/atom?h=claude%2Fhungry-franklin-09fffc</id>
<link rel='self' href='https://git.cjennings.net/archsetup/atom?h=claude%2Fhungry-franklin-09fffc'/>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/'/>
<updated>2026-10-07T13:18:36+00:00</updated>
<entry>
<title>chore(tasks): file the brightness-drum bug, archive the internal-mic task</title>
<updated>2026-10-07T13:18:36+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-10-07T13:18:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/commit/?id=a6a66ebcff40ea95bbda5aa8f890850ca87e822b'/>
<id>urn:sha1:a6a66ebcff40ea95bbda5aa8f890850ca87e822b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>chore(tasks): close the Framework 13 AMD internal-mic installer task</title>
<updated>2026-10-06T20:04:14+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-10-06T20:04:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/commit/?id=7c9faef02d519d5657020b66ab3853f4bf44b94e'/>
<id>urn:sha1:7c9faef02d519d5657020b66ab3853f4bf44b94e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>chore(tasks): file the velox mic workaround, archive the Fn-keys task</title>
<updated>2026-10-06T13:29:15+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-10-06T13:29:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/commit/?id=385b0021d0ad028c1bc63fcc8e81de0eb55db4ab'/>
<id>urn:sha1:385b0021d0ad028c1bc63fcc8e81de0eb55db4ab</id>
<content type='text'>
Home found velox's internal mic dead on the AMD ACP digital-mic path and applied a WirePlumber drop-in by hand. The new task has the installer carry it, gated on the hardware, with the note to re-check after each kernel update. The closed Fn-keys task moves to the archive.
</content>
</entry>
<entry>
<title>chore(security): record the history rewrite and remap its SHAs</title>
<updated>2026-10-06T12:24:37+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-10-06T12:24:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/commit/?id=4a2f811c73f7bceb1e10a565e46fb1b8536fed28'/>
<id>urn:sha1:4a2f811c73f7bceb1e10a565e46fb1b8536fed28</id>
<content type='text'>
The Signal pager number is rewritten out of every commit. 59 of 951 changed SHA, every descendant of the 08-17 post-rebuild-check commit, and tag v0.5 is untouched. The filter-repo map lands under assets/ so old citations can be translated. The cgit audit task carries the dated record and the release task notes that a full pre-release secrets scan is still owed. Sixteen citations of renamed SHAs across the task list, the task archive and the topgrade spec now point at the new ones.
</content>
</entry>
<entry>
<title>chore(tasks): record the passed real-cycle check for the resume hook</title>
<updated>2026-10-06T07:41:47+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-10-06T07:41:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/commit/?id=40a8190729683342948c28e3ea1d13d1c6d4eb7e'/>
<id>urn:sha1:40a8190729683342948c28e3ea1d13d1c6d4eb7e</id>
<content type='text'>
One RTC-woken suspend-then-hibernate cycle on AC showed btusb torn down and reloaded two seconds after resume, with bluetooth unblocked and powered afterwards. The dated entry under the sleep task carries the timestamps and what the cycle did not prove. The manual check is retired, and the entry-freeze test now re-checks bluetooth after each of its hibernate cycles, since that is the wake the hook exists for.
</content>
</entry>
<entry>
<title>chore(tasks): log the dead bluetooth resume hook and its live check</title>
<updated>2026-10-06T04:35:29+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-10-06T04:34:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/commit/?id=f2d8a1a29e9fce01e972483f919a5b048a348a09'/>
<id>urn:sha1:f2d8a1a29e9fce01e972483f919a5b048a348a09</id>
<content type='text'>
A dated entry under the sleep task records why the hook never fired and where it now lives. A Manual testing child gives the twenty-second suspend-then-hibernate cycle that proves it runs from the new directory.
</content>
</entry>
<entry>
<title>docs(spec): review the guarded-upgrade spec and decompose its build</title>
<updated>2026-10-06T04:11:01+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-10-06T04:11:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/commit/?id=32008ac10409e1a6f8ddb8820c6e8ac30e575db4'/>
<id>urn:sha1:32008ac10409e1a6f8ddb8820c6e8ac30e575db4</id>
<content type='text'>
I ran three review rounds against the live code in archsetup and the dotfiles. They found 129 issues, and the blocking count fell from 13 to 4 to 0. Each one is dispositioned in the spec. The exact contract now lives only in Implementation phases, because the copies in Design, Decisions and Testing had drifted. The spec moves from DRAFT through READY to DOING, with nine non-blocking residuals left for the first build task.

The parent task now carries 22 build tasks in commit-group order, ending with the IMPLEMENTED flip. The manual tests are under Manual testing and validation, and a stale-kernel age metric is filed as [#D].
</content>
</entry>
<entry>
<title>chore(tasks): file the headless calendar-sync fix</title>
<updated>2026-10-05T10:08:06+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-10-05T10:08:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/commit/?id=ec5a021194c4ab3b9d9fd2b260b183ad0bdf347f'/>
<id>urn:sha1:ec5a021194c4ab3b9d9fd2b260b183ad0bdf347f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>chore(tasks): archive the closed waybar net module and emacs pull tasks</title>
<updated>2026-10-02T03:59:51+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-10-02T03:59:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/commit/?id=1d8a3db587e2ded68dbc5d54722932a8926d788f'/>
<id>urn:sha1:1d8a3db587e2ded68dbc5d54722932a8926d788f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>chore(tasks): clear passed dates and grade the new bugs</title>
<updated>2026-09-25T17:05:32+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-09-25T17:05:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/archsetup/commit/?id=676970817ef7fdc0425205d4f3c319bdc534b51b'/>
<id>urn:sha1:676970817ef7fdc0425205d4f3c319bdc534b51b</id>
<content type='text'>
The board drifted over four interrupted sessions. Nine tasks carried dates that had already passed, so the agenda showed them as overdue rather than as work with a week attached.

I re-dated or demoted all nine. I closed the pre-vacation list whose departure has passed and recorded where each of its seven items went, then ran a seven-task review batch alongside it.

I filed nine new tasks. Four are bugs, and each carries its severity times frequency arithmetic in the body so the letter can be argued with by fixing an input rather than overridden:

- velox's USB hub tearing down and rebuilding under the Jabra, near-daily, which takes the call audio with it
- the xhci controller refusing D3hot thousands of times per boot, every boot
- the installer never setting Storage=persistent, so a fresh machine keeps no journal across a reboot
- four closed tasks still pinned to the agenda by a planning line they kept

That last one is the shape worth naming. Closing a task stamps CLOSED: and leaves any SCHEDULED: it already had. My agenda doesn't skip scheduled-if-done, so a finished task renders as overdue forever. The rule strips the planning line from a dated sub-task entry and says nothing about a top-level one, which is how five of these accumulated. One was in this diff and is fixed here. The other four predate it and have their own task.

I also re-graded the telega coredump tell down to [#D]. That moves an input rather than overruling the earlier raise. The raise was correct while the assertion fired across five days. The tell has been quiet on both machines for three weeks, so the frequency row moved and the letter followed it. If it reappears, both move back.

I ticked git-lfs, imv and libreoffice-fresh in the undeclared-packages checklist. The installer now declares all three, so a later walk should skip them.
</content>
</entry>
</feed>
