aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-07-20 00:02:21 -0500
committerCraig Jennings <c@cjennings.net>2026-07-20 00:02:21 -0500
commit727a900a814adf5b9bf86c77d12fb48023d718ea (patch)
tree7870589eb472faaf4f910cb28dd77e49020a9fb8
parentf76bf40a6c0fa3bb8f81992f91d41feebc931d0b (diff)
downloadrulesets-727a900a814adf5b9bf86c77d12fb48023d718ea.tar.gz
rulesets-727a900a814adf5b9bf86c77d12fb48023d718ea.zip
chore(sentry): inbox zero — process 2 handoffs (1 already-done, 1 parked)
Home's colloquialisms + "the list" before-close-queue handoff was already wired canonically before it arrived (protocols.org Colloquialisms section + wrap-it-up Before-Close Queue drain step); replied to confirm, filed. The .emacs.d working/ tracked-from-creation ruling is a shared-asset + convention change carrying a temp/-placement design decision, so it parks rather than applying unattended: staged proposal under working/, filed a [#B] VERIFY, replied to .emacs.d with the two findings (canonical never ignored working/; temp/ needs a both-modes ignore call).
-rw-r--r--inbox/PROCESSED-2026-07-19-2141-from-.emacs.d-version-working-directories.org5
-rw-r--r--inbox/PROCESSED-2026-07-19-2350-from-home-craig-approved-the-colloquialisms-the.org5
-rw-r--r--todo.org9
-rw-r--r--working/sentry-2026-07-19-working-files-ruling/proposed.org80
4 files changed, 99 insertions, 0 deletions
diff --git a/inbox/PROCESSED-2026-07-19-2141-from-.emacs.d-version-working-directories.org b/inbox/PROCESSED-2026-07-19-2141-from-.emacs.d-version-working-directories.org
new file mode 100644
index 0000000..6ce239f
--- /dev/null
+++ b/inbox/PROCESSED-2026-07-19-2141-from-.emacs.d-version-working-directories.org
@@ -0,0 +1,5 @@
+#+TITLE: Craig's ruling from the .emacs.d project: working/ contains
+#+SOURCE: from .emacs.d
+#+DATE: 2026-07-19 21:41:10 -0500
+
+Craig's ruling from the .emacs.d project: working/ contains the project work currently being developed, so it must be version-controlled and saved from creation rather than excluded until graduation. Ephemeral or disposable artifacts belong in a project temp/ directory (gitignored) or system /tmp, not working/. Please update the canonical working-files convention and any template/install .gitignore behavior so working/ is tracked across projects. Clarify that graduation reorganizes durable working artifacts into permanent homes; it does not mark the point when they first become durable. In .emacs.d we are removing /working/ from .gitignore, adding /temp/, and checking in the complete current working set.
diff --git a/inbox/PROCESSED-2026-07-19-2350-from-home-craig-approved-the-colloquialisms-the.org b/inbox/PROCESSED-2026-07-19-2350-from-home-craig-approved-the-colloquialisms-the.org
new file mode 100644
index 0000000..ef5c753
--- /dev/null
+++ b/inbox/PROCESSED-2026-07-19-2350-from-home-craig-approved-the-colloquialisms-the.org
@@ -0,0 +1,5 @@
+#+TITLE: Craig approved the colloquialisms + 'the list' before-close-
+#+SOURCE: from home
+#+DATE: 2026-07-19 23:50:02 -0500
+
+Craig approved the colloquialisms + 'the list' before-close-queue convention — go ahead and wire the rulesets side (the protocols.org colloquialisms reference and the wrap-it-up.org queue-drain step). Home already adopted its own version locally (the 'the list' / 'tell <project>' section is committed in home's notes.org), so this is just the canonical rulesets wiring plus the short design pass on where the reference and queue live and the exact wrap-it-up insertion point.
diff --git a/todo.org b/todo.org
index 858724a..d768d62 100644
--- a/todo.org
+++ b/todo.org
@@ -75,6 +75,15 @@ What we're verifying: the morning teardown reviews and merges cleanly, nothing r
- Confirm main was never pushed to during the night and the approval queue was walked.
Expected: the night's work is reviewable as one branch, merges by choice, and main stayed clean throughout.
+** VERIFY [#B] working/ tracked-from-creation + gitignored temp/ :feature:
+Craig's ruling relayed from .emacs.d (2026-07-19): working/ is version-controlled from creation (not excluded until graduation); ephemeral artifacts go in a gitignored temp/ or /tmp; graduation reorganizes durable artifacts into permanent homes rather than marking when they become durable. Parked by sentry (shared-asset + convention change with a design decision), not applied unattended.
+
+Prepared proposal + findings: [[file:working/sentry-2026-07-19-working-files-ruling/proposed.org][working/sentry-2026-07-19-working-files-ruling/proposed.org]].
+
+Two findings that shape the work: (1) the canonical install/sweep machinery already never gitignores working/ — the tooling set is only =.ai/ .claude/ CLAUDE.md AGENTS.md=, so "track working/ across projects" is already the default; .emacs.d's =/working/= ignore was a local deviation. (2) temp/ is a new pattern needing a design call — it must be gitignored in BOTH track and gitignore modes (ephemeral regardless of tooling-track choice), so it's orthogonal to the personal-tooling set. That call is Craig's; recommendation is in the proposal.
+
+Files to touch on approval: =claude-rules/working-files.md= (convention text), =scripts/install-ai.sh= + =scripts/sweep-gitignore-tooling.sh= (temp/ ignore in both modes), =.ai/protocols.org= Working-Files Convention section (one-line mirror). Not :solo: — carries the temp/-placement design decision.
+
** TODO [#C] Polyglot projects — supported, or refused? :spec:
SCHEDULED: <2026-07-20 Mon>
Do we support more than one language bundle per project? The honest answer today
diff --git a/working/sentry-2026-07-19-working-files-ruling/proposed.org b/working/sentry-2026-07-19-working-files-ruling/proposed.org
new file mode 100644
index 0000000..2bbf863
--- /dev/null
+++ b/working/sentry-2026-07-19-working-files-ruling/proposed.org
@@ -0,0 +1,80 @@
+#+TITLE: Parked proposal — working/ is tracked-from-creation; add gitignored temp/
+#+SOURCE: .emacs.d ruling relayed 2026-07-19 21:41, parked by sentry fire 2026-07-19
+#+STATUS: PARKED — awaiting Craig's morning approval
+
+* The ruling (verbatim from .emacs.d handoff)
+
+Craig's ruling from the .emacs.d project: working/ contains the project work
+currently being developed, so it must be version-controlled and saved from
+creation rather than excluded until graduation. Ephemeral or disposable
+artifacts belong in a project temp/ directory (gitignored) or system /tmp, not
+working/. Please update the canonical working-files convention and any
+template/install .gitignore behavior so working/ is tracked across projects.
+Clarify that graduation reorganizes durable working artifacts into permanent
+homes; it does not mark the point when they first become durable. In .emacs.d
+we are removing /working/ from .gitignore, adding /temp/, and checking in the
+complete current working set.
+
+* What sentry found (so the morning review starts informed)
+
+1. *The canonical install/sweep machinery never gitignores working/.* The
+ gitignore-mode tooling set in =scripts/install-ai.sh= and =scripts/sweep-gitignore-tooling.sh=
+ is exactly =('.ai/' '.claude/' 'CLAUDE.md' 'AGENTS.md')= — working/ is not in
+ it. So "make working/ tracked across projects" is *already the canonical
+ default*. .emacs.d's =/working/= .gitignore line was a local deviation, not
+ inherited from the template. Nothing to change on the install side to *track*
+ working/.
+
+2. *temp/ is referenced nowhere* — not in the install scripts, not in
+ working-files.md. Adding a gitignored temp/ is a genuinely new pattern, and
+ it carries a design decision: temp/ holds ephemeral artifacts regardless of
+ whether a project tracks or gitignores its .ai/ tooling, so temp/ must be
+ ignored in *both* modes. It is therefore orthogonal to the personal-tooling
+ set (which only exists in gitignore mode) — not a trivial "add 'temp/' to
+ IGNORE_SET." This is the load-bearing call for Craig.
+
+* Proposed changes (the exact edits that fire on approval)
+
+** 1. claude-rules/working-files.md — convention text
+
+Add a short subsection (after "The Rule") stating: working/ is
+version-controlled from creation. The subdirectory and its artifacts enter git
+the moment they're created — working/ is the tracked home of in-progress work,
+not a staging area excluded until it graduates. Filing on completion
+*reorganizes* durable artifacts into their permanent homes (assets/ etc.); it
+does not mark the point at which they first become durable — they were durable,
+and tracked, from creation.
+
+Add a paragraph to "When the Rule Doesn't Apply" (or a new "temp/ for
+ephemeral artifacts" subsection): genuinely disposable, single-use, or
+regenerable artifacts belong in a project-root temp/ directory (gitignored) or
+system /tmp — never in working/. working/ is for work that will graduate;
+temp/ is for work that will be thrown away.
+
+** 2. scripts/install-ai.sh + scripts/sweep-gitignore-tooling.sh — temp/ ignore
+
+DESIGN DECISION (Craig's call, do not implement unattended): where does the
+temp/ ignore get emitted? temp/ should be gitignored in BOTH track and
+gitignore modes, so it can't ride the gitignore-mode-only tooling block. Two
+candidate shapes:
+
+ (a) A separate always-emitted ".gitignore" line (# Ephemeral working
+ artifacts \n temp/) written in both modes by install-ai.sh, with a
+ companion pattern in sweep-gitignore-tooling.sh's backfill.
+ (b) A dedicated ephemeral-ignore helper distinct from the tooling sweep,
+ since temp/ is a universal project convention, not personal tooling.
+
+Recommend (a) for minimal surface: one extra always-written block, and add
+'temp/' as its own backfill in the sweep with a mode-independent guard.
+
+** 3. protocols.org Working-Files Convention section (lines ~186-196)
+
+Mirror the tracked-from-creation clarification in one sentence so the
+protocols summary agrees with the canonical rule.
+
+* Cross-project note
+
+Once the canonical lands, sweep-gitignore-tooling.sh (or a one-off) should add
+temp/ ignores across existing projects, and any project that manually added
+/working/ to .gitignore (like .emacs.d did) should drop it. That backfill is
+itself a reviewed step, not automatic.