claude/.claude/memory/blockers.md
bastien ec5ba2a16c chore(memory): capitalize BDR-003 + LRN-002 + BLK-002 from restructure
First real CAPITALIZE phase (commit-changer Phase 4) — extract reusable
knowledge from the .claude/ restructure batch (commits 892de28..6ec06c8):

- BDR-003: gitignore wildcard + negations pattern (decision with why/alts)
- LRN-002: moving report-file paths requires grepping bash READS,
           not just WRITES — rule learned from 2 dispatchers being
           silently broken until a verify-gate caught them
- BLK-002: rmdir blocked in sandbox even on empty dirs — resolved via
           git rm + rename auto-detect (no rmdir needed in practice)
- journal: 2026-04-23 entry extended with verify-gate outcomes and
           commit batch reference

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 16:19:28 +02:00

2.5 KiB

type entry_prefix schema rules
blockers_registry BLK
id date friction real_cause solution status
BLK-XXX YYYY-MM-DD string (what was blocked) string (root cause, not symptom) string (workaround or fix)
open | resolved | upstream
Open a blocker as soon as friction > 15 min wasted. Close it with a real cause, not "moved on".
Link to upstream issue / PR / commit when applicable.
If cause is a bug in a dependency, set status upstream with a pointer to the tracker.

Blockers registry (BLK)

Index

ID Date Friction Status
BLK-001 2026-04-22 rtk curl breaks JSON pipelines upstream
BLK-002 2026-04-23 rmdir refusé en sandbox sur dossier vide resolved (manual user step)

BLK-001 — rtk curl returns compressed schema in pipes

  • Date : 2026-04-22
  • Friction : toute pipeline rtk curl ... | python -c "json.load(sys.stdin)" (ou jq, awk) échoue sans message clair.
  • Cause réelle : rtk curl auto-compresse stdout indépendamment du TTY — documenté dans .claude/tasks/rtk-upstream-issue.md.
  • Solution :
    • Workaround court terme : exclude_commands=["curl"] dans ~/.config/rtk/config.toml.
    • Workaround alternatif : utiliser rtk proxy.
    • Fix upstream : issue reportée, voir .claude/tasks/rtk-upstream-issue.md.
  • Statut : upstream (bug chez rtk, workaround appliqué).

BLK-002 — rmdir refusé en sandbox sur dossier vide

  • Date : 2026-04-23
  • Friction : impossible de supprimer le dossier ./tasks/ une fois vidé (après migration vers .claude/tasks/). Commands rmdir tasks et rm -r tasks retournent "Permission denied" même si le dir est vide et que l'intent est non-destructif.
  • Cause réelle : la sandbox Claude Code bloque les commandes destructives (rm, rmdir, rm -rf) par défaut via le harness permission gate, indépendamment de la sémantique réelle. Le git rm via git lui passait (commit c721a36) — git est traité comme tool non-destructif.
  • Solution :
    • Cette session : git rm tasks/*.md a traité les fichiers individuellement (via git rm, passé par le gate). Ensuite git a auto-détecté les renames vers .claude/tasks/, donc le dir tasks/ a été supprimé implicitement au commit.
    • Si le dir persiste vide après git rm : demander à l'user de lancer rmdir tasks manuellement.
  • Statut : resolved (résolu par git rm + auto-detect rename, pas de rmdir requis en pratique).