diff options
Diffstat (limited to 'inbox/2026-05-16-handoff-from-dotemacs-rulesets-missing-inbox-dir.org')
| -rw-r--r-- | inbox/2026-05-16-handoff-from-dotemacs-rulesets-missing-inbox-dir.org | 75 |
1 files changed, 0 insertions, 75 deletions
diff --git a/inbox/2026-05-16-handoff-from-dotemacs-rulesets-missing-inbox-dir.org b/inbox/2026-05-16-handoff-from-dotemacs-rulesets-missing-inbox-dir.org deleted file mode 100644 index 5f1e0ea..0000000 --- a/inbox/2026-05-16-handoff-from-dotemacs-rulesets-missing-inbox-dir.org +++ /dev/null @@ -1,75 +0,0 @@ -#+TITLE: Handoff: rulesets has no top-level =inbox/= directory -#+FROM: dotemacs (~/.emacs.d) -#+DATE: 2026-05-16 - -* Context - -While trying to deliver a cross-project handoff from the dotemacs session -(~/.emacs.d) to the rulesets project, I discovered that -=~/code/rulesets/= has no top-level =inbox/= directory. - -The =inbox-send.py= script (the canonical mechanism documented in -=claude-rules/cross-project.md=) requires the target project to have -*both* =.ai/= AND =inbox/=: - -#+begin_src python -def is_project(path: Path) -> bool: - """A project has a `.ai/` marker AND a top-level `inbox/` directory.""" - return (path / ".ai").is_dir() and (path / "inbox").is_dir() -#+end_src - -(=.ai/scripts/inbox-send.py:61-62=) - -So =inbox-send.py --list= did not list =rulesets= as an available target, -even though it has =.ai/=. I worked around this by: - -1. =mkdir -p ~/code/rulesets/inbox/= -2. =Write= the handoff file directly to that new directory. - -This handoff file landed at: -=~/code/rulesets/inbox/2026-05-16-handoff-from-dotemacs-rulesets-missing-inbox-dir.org= - -(There's a sibling handoff =2026-05-16-handoff-from-dotemacs-review-code-skill-discovery.org= -also in this inbox from the same session.) - -* What's missing - -- =~/code/rulesets/inbox/= didn't exist before this session. -- The directory is not gitignored (per the project's =.gitignore=). -- No prior commits reference =inbox/= except for the =inbox-send.py= - script itself. - -* Why this matters - -The rulesets project is an active Claude-managed project — it has -=.ai/protocols.org=, =.ai/sessions/=, a startup workflow, and its own -=todo.org=. Without an =inbox/= dir: - -- Cross-project handoffs from other projects can't land via the canonical - =inbox-send= mechanism. -- The rulesets startup workflow has no inbox-processing step that would - pick up cross-project messages on session start. -- I had to bypass =inbox-send.py= and =Write= directly, which skips - filename auto-derivation and source-project provenance handling. - -The =claude-templates/= subdir inside rulesets also has =.ai/= but no -=inbox/=, with the same effect. - -* What to fix - -Two changes, low effort: - -1. *Create =~/code/rulesets/inbox/= and commit it.* Add a =.gitkeep= or - a README so the directory exists in the tree from the start. Once it - exists, =inbox-send.py --list= will discover the project and future - cross-project handoffs will route normally. - -2. *(Optional) Same for =~/code/rulesets/claude-templates/inbox/=.* If - claude-templates is considered its own routable project rather than a - subdir-only artifact, mirror the change there. - -* Filing - -This is project-hygiene signal — track in =todo.org= as a single quick -fix (S effort, single =mkdir= + =.gitkeep= + commit), and the -=inbox-send.py= discovery starts working automatically. |
