Skip to content

release/v2.20.0 - #91

Merged
jurby merged 1 commit into
mainfrom
release/v2.20.0
Jul 19, 2026
Merged

release/v2.20.0#91
jurby merged 1 commit into
mainfrom
release/v2.20.0

Conversation

@jurby

@jurby jurby commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

v2.20.0

Lefthook extends: becomes the default registration path — EDPA wires it itself — plus the hook self-heal deadlock that stopped /plugin update from delivering hook fixes at all.

Fixed

  • Engine self-heal never fired on the repos that needed it (D-78). update_engine.sh gated its post-update --refresh-hooks call on the EDPA-MANAGED-HOOK sentinel — the exact thing a pre-sentinel hook lacks. Deadlock: no sentinel → self-heal skipped → never re-stamped → still no sentinel. Hook fixes shipped via /plugin update silently never arrived.
  • Pre-sentinel git hooks classified as foreign forever (D-78). Ownership now falls back to a comment-stripped body comparison; a match is adopted and re-stamped (lossless), an altered command stays foreign and untouched.
  • Lefthook fragment/snippet consistency guard matched prose in comments.

Changed

  • extends: is the default, and EDPA writes it (S-255). --with-hooks and the SessionStart update add extends: .edpa/engine/lefthook-edpa.yml to the lefthook config directly, migrating repos still on a hand-pasted block. That entry is the only thing EDPA ever changes there — nothing removed, reordered or reformatted; a stale pasted block is left in place (the fragment wins the name collision with identical run: lines). .toml/.json configs cannot be line-edited safely, so those keep the printed snippet and the loud UNGUARDED partial-paste warning.

Verified end-to-end against real lefthook 1.7.22 and 2.1.10.

🤖 Generated with Claude Code

https://claude.ai/code/session_01Ei925tQjBZS9gcaURGcnya

Version stamps, CHANGELOG entry, and the doc/web sweep for the lefthook
extends: policy change (CZ + EN pages, RUNBOOK, playbook, quick-start,
README, plugin README, setup SKILL, hook script headers).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Ei925tQjBZS9gcaURGcnya
@jurby
jurby merged commit 057364b into main Jul 19, 2026
5 checks passed
@jurby
jurby deleted the release/v2.20.0 branch July 19, 2026 23:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant