From cfec6e44d5664ce6d970c505c63d230ac5f4522b Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Thu, 11 Jun 2026 04:38:14 -0500 Subject: chore(todo): velox restow-conflict note on per-host task; file processed handoffs --- ...10-1526-from-.emacs.d-handoff-screenshot-crash.org | 18 ++++++++++++++++++ ...812-from-rulesets-handoff-archsetup-roam-units.org | 15 +++++++++++++++ ...10-1816-from-rulesets-handoff-migrate-memories.org | 19 +++++++++++++++++++ 3 files changed, 52 insertions(+) create mode 100644 assets/outbox/2026-06-10-1526-from-.emacs.d-handoff-screenshot-crash.org create mode 100644 assets/outbox/2026-06-10-1812-from-rulesets-handoff-archsetup-roam-units.org create mode 100644 assets/outbox/2026-06-10-1816-from-rulesets-handoff-migrate-memories.org (limited to 'assets') diff --git a/assets/outbox/2026-06-10-1526-from-.emacs.d-handoff-screenshot-crash.org b/assets/outbox/2026-06-10-1526-from-.emacs.d-handoff-screenshot-crash.org new file mode 100644 index 0000000..d67ca1d --- /dev/null +++ b/assets/outbox/2026-06-10-1526-from-.emacs.d-handoff-screenshot-crash.org @@ -0,0 +1,18 @@ +* screenshot.py --launch likely crashed Hyprland (2026-06-10 15:15) + +While capturing a throwaway Emacs frame for theme-studio bevel work on ratio, the screenshot harness's --launch mode (create a headless output, render the app there, capture, tear down) appears to have crashed Hyprland. + +Timeline, from instance dirs and pid start times: +- 15:14 — screenshot.py --launch 'emacs -Q --eval ...' --layout floating ran and returned a PNG (the Emacs window never appeared in it; the capture shows only waybar on the headless output). +- 15:15:32 — a new Hyprland instance dir appeared (first restart). +- 15:15:40 — a second new instance dir; the surviving Hyprland pid (1171040) started 15:15:39. So the compositor died, and its first respawn died too, within 8 seconds. +- The session's original instance (02:08) socket was gone afterward. All Wayland windows from before 15:15 died with it. + +The machine was otherwise idle (Craig away, only the Claude session active), so the headless-output create/teardown is the prime suspect — possibly interacting with the strix kernel (6.18.25-1-lts-strix) or the floating-layout window move. A second --launch attempt a minute later failed differently (stale HYPRLAND_INSTANCE_SIGNATURE in the session env), so the crash path was only exercised once. + +What this asks of archsetup: +1. Check Hyprland logs / coredumpctl around 2026-06-10 15:15 on ratio for the crash signature. +2. Review the --launch teardown ordering in the screenshot harness (output removal while a client window is mid-map seems like the risky window, given the captured PNG shows the launched app never mapped). +3. Until understood, treat --launch as unsafe on a live session; the other modes (--full, --window, --active) don't touch outputs and stayed fine. + +The .emacs.d session paged Craig at the time and avoided --launch for the rest of the day. Happy to provide the exact command and PNG (/tmp/emacs-bevel-ref.png) if they help. diff --git a/assets/outbox/2026-06-10-1812-from-rulesets-handoff-archsetup-roam-units.org b/assets/outbox/2026-06-10-1812-from-rulesets-handoff-archsetup-roam-units.org new file mode 100644 index 0000000..1255fb6 --- /dev/null +++ b/assets/outbox/2026-06-10-1812-from-rulesets-handoff-archsetup-roam-units.org @@ -0,0 +1,15 @@ +#+TITLE: New systemd user units — roam KB git auto-sync (consider dotfiles adoption) +#+DATE: 2026-06-10 + +* What happened + +The org-roam KB moved from the ~/sync/org Syncthing share to a git repo (git@cjennings.net:roam.git, checkout ~/org/roam) — rulesets agent-knowledge-base spec, decision D8. + +* New units on this machine + +~/.config/systemd/user/roam-sync.{service,timer} — every 15 minutes: commit local roam edits, pull --rebase, push. Canonical copies live in rulesets at scripts/systemd/, and the script is scripts/roam-sync.sh (bats-tested). A monthly roam-hygiene timer is being added in the same change set. + +* Asks + +1. Consider adopting the unit files into the stow dotfiles so they reach other machines automatically. +2. Each other personal machine needs a one-time setup: clone git@cjennings.net:roam.git to ~/org/roam, then copy + enable the units (cp ~/code/rulesets/scripts/systemd/roam-sync.* ~/.config/systemd/user/ && systemctl --user daemon-reload && systemctl --user enable --now roam-sync.timer). Note: Syncthing will have already replaced each machine's ~/sync/org/roam with a symlink pointing at ~/org/roam, so Emacs there is broken on the old path until the clone lands. The work machine deliberately gets no clone. diff --git a/assets/outbox/2026-06-10-1816-from-rulesets-handoff-migrate-memories.org b/assets/outbox/2026-06-10-1816-from-rulesets-handoff-migrate-memories.org new file mode 100644 index 0000000..25ca602 --- /dev/null +++ b/assets/outbox/2026-06-10-1816-from-rulesets-handoff-migrate-memories.org @@ -0,0 +1,19 @@ +#+TITLE: One-time guided memory sweep — promote durable facts to the agent KB +#+DATE: 2026-06-10 + +* What this is + +The shared agent knowledge base is live: Craig's org-roam at ~/org/roam, now a git repo (git@cjennings.net:roam.git). The new global rule ~/.claude/rules/knowledge-base.md carries the full contract: query commands, write schema, the work/personal boundary, and inclusion criteria. + +This handoff asks for the one-time Phase 1.5 sweep in this project (agent KB spec, rulesets). + +* What to do (once, next session) + +1. Read this project's harness memory dir (~/.claude/projects//memory/). +2. Classify each fact against knowledge-base.md's inclusion criteria: KB-worthy (durable, cross-project or cross-machine value) / stays local (project-scoped, or already encoded in a rules file) / stale-delete. +3. Propose the batch to Craig for approval, then write approved facts as one-node-per-fact files under ~/org/roam/agents/ per the rule's schema (pull first, commit + push after). +4. Reply to rulesets' inbox with counts (promoted / kept local / deleted). + +Work-classified projects don't write to the KB — if that's this project, the sweep is a no-op; just reply saying so. + +Worked example: rulesets promoted 3 of its 6 memories (a notify pattern, the pdftools venv, the gpg-agent SSH TTL trap) and kept the rest local as rule-encoded or project-scoped. -- cgit v1.2.3