From 1b01b952d5808ab0911ee3475391b6e228fe023d Mon Sep 17 00:00:00 2001 From: Bastien Chanot Date: Sat, 27 Jun 2026 02:50:30 +0200 Subject: [PATCH] feat(agents): wire doc-commit into feat/bugfix/hotfix DOC SYNC steps MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Scope expansion surfaced by the Task 6 sweep (not in the original frozen plan). The 3 inline flows each ran doc-syncer at their DOC SYNC step but committed nothing — their CAPITALIZE step commits only memory (capitalize-commit's surgical scope) — so patched docs were left dirty in the working tree (milder than the orchestrator PR-strand, same class). Decider: the memory chantier (BDR-034) wired capitalize-commit into ALL flows; wiring docs only into the 2 orchestrators left an asymmetry that reads as a bug. Each DOC SYNC step now references lib/doc-commit.md (1-line include + paragraph, mirror of the capitalize-commit reference at the CAPITALIZE step). No FINISH in an inline flow → no ordering concern; it commits the docs on the current branch and no-ops when nothing was patched (the common trivial case). Set = the 3 flows that doc-sync: commit-change has no DOC SYNC step (not wired); hotfix IS wired (its DOC SYNC is unconditional — only its CAPITALIZE is skip-by-default). We replicate a built+tested mechanism mechanically; NEW work (BLK-010/011) stays deferred. Co-Authored-By: Claude Opus 4.8 (1M context) Claude-Session: https://claude.ai/code/session_01Ho5EQCFTSvYamuRtVZpp2d --- agents/bugfixer.md | 6 ++++++ agents/feater.md | 6 ++++++ agents/hotfixer.md | 6 ++++++ 3 files changed, 18 insertions(+) diff --git a/agents/bugfixer.md b/agents/bugfixer.md index 30c1d2f..6e1b822 100644 --- a/agents/bugfixer.md +++ b/agents/bugfixer.md @@ -173,6 +173,12 @@ Load `$HOME/.claude/agents/doc-syncer.md`. Execute in automatic mode: `auto-mode scope: ` +**Then commit the docs** — follow `$HOME/.claude/lib/doc-commit.md`: it surgically commits +ONLY the files doc-syncer patched (its `PATCHED_FILES` output), never `git add -A`, never +`.claude/`/`CLAUDE.md` (rc 4 = a loud BDR-022 anomaly, not a silent skip), and no-ops when +nothing was patched — the common case for a trivial change. No FINISH in an inline flow, so +it just commits the docs on the current branch (no ordering concern). + ## STEP 7 — CAPITALIZE (memory registries) A bugfix with an understood root cause is almost always worth one entry: diff --git a/agents/feater.md b/agents/feater.md index d84c69c..75e1050 100644 --- a/agents/feater.md +++ b/agents/feater.md @@ -141,6 +141,12 @@ Load `$HOME/.claude/agents/doc-syncer.md`. Execute in automatic mode: `auto-mode scope: ` +**Then commit the docs** — follow `$HOME/.claude/lib/doc-commit.md`: it surgically commits +ONLY the files doc-syncer patched (its `PATCHED_FILES` output), never `git add -A`, never +`.claude/`/`CLAUDE.md` (rc 4 = a loud BDR-022 anomaly, not a silent skip), and no-ops when +nothing was patched — the common case for a trivial change. No FINISH in an inline flow, so +it just commits the docs on the current branch (no ordering concern). + ## STEP 6 — CAPITALIZE (memory registries) A small feature may or may not involve a design choice. Scan the work for: diff --git a/agents/hotfixer.md b/agents/hotfixer.md index 46025a9..e9f6c64 100644 --- a/agents/hotfixer.md +++ b/agents/hotfixer.md @@ -118,6 +118,12 @@ Load `$HOME/.claude/agents/doc-syncer.md`. Execute in automatic mode: `auto-mode scope: ` +**Then commit the docs** — follow `$HOME/.claude/lib/doc-commit.md`: it surgically commits +ONLY the files doc-syncer patched (its `PATCHED_FILES` output), never `git add -A`, never +`.claude/`/`CLAUDE.md` (rc 4 = a loud BDR-022 anomaly, not a silent skip), and no-ops when +nothing was patched — the common case for a trivial hotfix. No FINISH in an inline flow, so +it just commits the docs on the current branch (no ordering concern). + ## STEP 5 — CAPITALIZE (memory registries, lightweight) Hotfixes are often trivial (typo, config, import) — skip by default. But if the fix revealed something non-obvious: