claude/lib
Bastien Chanot 09f5b28d99 feat(doc-sync): MINOR-shape oracle + fail-loud commit (strengthen MINOR gate)
(1) lib/doc-shape.sh — deterministic shape oracle re-checks each LLM-classified
MINOR patch before the silent auto-commit; a shape-suspect patch (added heading
/ oversize / new file / non-doc) escalates to the EXISTING SIGNIFICANT gate.
Genuine MINOR still auto-commits (zero friction, BDR-036 preserved). A structural
floor under the LLM call, not a semantic SIGNIFICANT-detector (BDR-040).

(2) lib/doc-commit.sh — guard the commit itself: a rejected git commit (pre-commit
hook / protected branch / signing) now fails loud with exit 5 + empty stdout,
instead of a false "committed" + the previous HEAD's hash + exit 0 that left docs
silently uncommitted (LRN-071, 3rd occurrence of the swallowed-commit pattern
after LRN-066 and LRN-068/BLK-012).

Wired doc-syncer STEP A4 (whole-set escalation: no=revert all, select=keep subset)
+ doc-commit.md (rc-5 consumer row + ACKNOWLEDGMENTS coherence).
TDD RED->GREEN: run-doc-commit.sh 32/32, run-doc-shape.sh 19/19, behavioral C/D.
shellcheck clean. Branch-guard (3) deferred.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C6bUdvHnajCNzgVQefZowj
2026-06-29 17:41:24 +02:00
..
profiles refactor(skill): rename validate → web-validate 2026-06-25 01:29:36 +02:00
project-archetypes refactor(onboard,init-project): migrate file paths to .claude/ 2026-04-23 16:06:14 +02:00
tests feat(doc-sync): MINOR-shape oracle + fail-loud commit (strengthen MINOR gate) 2026-06-29 17:41:24 +02:00
analyze-before-plan.md feat(analyze-before-plan): read-before bookend — scan memory (+code) before planning 2026-06-26 23:46:41 +02:00
animation-lib-check.sh feat(animation): auto-install motion lib + detection across init/onboard/advisor 2026-04-27 15:32:46 +02:00
archetype-detector.md feat(archetypes): add project archetype library + detection algorithm 2026-04-21 22:37:07 +02:00
capitalize-commit.md chore(lib): capitalize-commit include protocol 2026-06-26 12:46:51 +02:00
deploy-commit.sh fix(deploy): final-review fixes — NEXT.sh-absence regen, git-ignored fail-loud (rc5), bootstrap gitignore guard, doc polish 2026-06-27 18:11:14 +02:00
design-gate.md feat(design-gate): §4 anim-lib suggestion — suggest-only, non-blocking, stateless 1-line 2026-06-26 00:11:01 +02:00
design-tool-gate.sh fix(design-gate): resolve claude on a sanitized PATH (real cause of unknown) 2026-06-21 12:12:49 +02:00
detect-plugins.sh chore(caveman): purge plugin + always-on integration 2026-06-19 19:08:40 +02:00
doc-commit.md feat(doc-sync): MINOR-shape oracle + fail-loud commit (strengthen MINOR gate) 2026-06-29 17:41:24 +02:00
doc-commit.sh feat(doc-sync): MINOR-shape oracle + fail-loud commit (strengthen MINOR gate) 2026-06-29 17:41:24 +02:00
doc-shape.sh feat(doc-sync): MINOR-shape oracle + fail-loud commit (strengthen MINOR gate) 2026-06-29 17:41:24 +02:00
gitflow-aiguillage.md feat(gitflow): universal gitflow model — lib + skill + orchestrator wiring 2026-06-29 02:58:13 +02:00
gitflow-migrate.sh feat(gitflow): universal gitflow model — lib + skill + orchestrator wiring 2026-06-29 02:58:13 +02:00
gitflow-test.sh feat(gitflow): universal gitflow model — lib + skill + orchestrator wiring 2026-06-29 02:58:13 +02:00
gitflow.sh feat(gitflow): universal gitflow model — lib + skill + orchestrator wiring 2026-06-29 02:58:13 +02:00
memory-commit.sh feat(lib): emit memory-commit hash on stdout + T6/T7 (stdout contract, idempotence) 2026-06-26 12:45:06 +02:00
profile.sh feat(profile): activate gstack skills on-demand per profile 2026-06-24 14:22:36 +02:00
toggle-external.sh feat(secrets): .env source-of-truth in ~/.claude + repo symlink 2026-06-21 11:44:47 +02:00