diff options
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. @@ -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. |
