You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@magpie.apache.org by po...@apache.org on 2026/09/21 15:58:23 UTC
(magpie) branch main updated: fix(setup): teach the update skill's drift check about the dispatcher hook flavour (#1322)
This is an automated email from the ASF dual-hosted git repository.
potiuk pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/magpie.git
The following commit(s) were added to refs/heads/main by this push:
new 43902b00 fix(setup): teach the update skill's drift check about the dispatcher hook flavour (#1322)
43902b00 is described below
commit 43902b0070215b9cfcc83dd126d3b822f0ab8d36
Author: Jarek Potiuk <ja...@potiuk.com>
AuthorDate: Mon Sep 21 17:58:17 2026 +0200
fix(setup): teach the update skill's drift check about the dispatcher hook flavour (#1322)
Check 3 of `setup-isolated-setup-update` knows only one shape for the
whole-user git hooks: `~/.claude/git-hooks/post-checkout` as a copy of
`git-global-post-checkout.sh`. Step P.3 of the install skill offers
two flavours, and the dispatcher one installs `git-hook-dispatcher.sh`
and symlinks every hook name to it — explicitly superseding the
standalone post-checkout script.
On a dispatcher install the check therefore diffs a symlink against a
script it was never a copy of, and reports drift that is not there.
Name both flavours, say which source each diffs against, and say that
the hook-name symlinks are the installed shape rather than drift.
Generated-by: Claude Opus 5
---
docs/mode-economics.md | 4 ++--
plugins/magpie-setup/skills/isolated-setup-update/SKILL.md | 13 ++++++++++---
2 files changed, 12 insertions(+), 5 deletions(-)
diff --git a/docs/mode-economics.md b/docs/mode-economics.md
index c5528716..fe6c2bc3 100644
--- a/docs/mode-economics.md
+++ b/docs/mode-economics.md
@@ -92,7 +92,7 @@ special-token spellings counted as ordinary text.
Coverage: **75 of 75 local `skills/*/SKILL.md` files**.
External `source.md` redirects and harness symlinks are excluded.
-Measurement manifest SHA-256: `1ae8680e2a68bddd8a2d9ce0a761b055cebac5ea74312ba2a05196b6f3ba3cd9`.
+Measurement manifest SHA-256: `d4084d97d203d0df2895a57eea81b74334fcb357c4ca6db7a8b2918ab579a026`.
| Skill file | Measured tokens | Source SHA-256 (first 16 characters) |
|---|---:|---|
@@ -161,7 +161,7 @@ Measurement manifest SHA-256: `1ae8680e2a68bddd8a2d9ce0a761b055cebac5ea74312ba2a
| [setup](../skills/setup/SKILL.md) | 8,724 | `82788542bb240309` |
| [setup-isolated-setup-doctor](../skills/setup-isolated-setup-doctor/SKILL.md) | 7,950 | `3fa5d728fa080ed0` |
| [setup-isolated-setup-install](../skills/setup-isolated-setup-install/SKILL.md) | 11,278 | `418ea9794077c6e9` |
-| [setup-isolated-setup-update](../skills/setup-isolated-setup-update/SKILL.md) | 5,111 | `96096e6ac10407d3` |
+| [setup-isolated-setup-update](../skills/setup-isolated-setup-update/SKILL.md) | 5,214 | `97dabfc08b915b4a` |
| [setup-isolated-setup-verify](../skills/setup-isolated-setup-verify/SKILL.md) | 8,502 | `6f0a2594801bdf27` |
| [setup-override-upstream](../skills/setup-override-upstream/SKILL.md) | 4,012 | `fb583feb56b7f77c` |
| [setup-privacy-llm](../skills/setup-privacy-llm/SKILL.md) | 2,145 | `0e27b542a1656846` |
diff --git a/plugins/magpie-setup/skills/isolated-setup-update/SKILL.md b/plugins/magpie-setup/skills/isolated-setup-update/SKILL.md
index efed1abe..ac68f560 100644
--- a/plugins/magpie-setup/skills/isolated-setup-update/SKILL.md
+++ b/plugins/magpie-setup/skills/isolated-setup-update/SKILL.md
@@ -209,9 +209,16 @@ Walk each:
*only when whole-user scope is in effect, detected via
`git config --global --get core.hooksPath` resolving to
`~/.claude/git-hooks`* —
- `~/.claude/git-hooks/post-checkout` for the universal
- post-checkout hook), `diff` the user copy against the
- framework's source-of-truth in `tools/agent-isolation/`.
+ the contents of `~/.claude/git-hooks/`, whose shape depends on
+ the flavour Step P.3 installed: the **simple** flavour puts a
+ copy of `git-global-post-checkout.sh` at `post-checkout`, while
+ the **dispatcher** flavour installs `git-hook-dispatcher.sh`
+ there and symlinks every hook name to it, superseding the
+ standalone post-checkout script — diff whichever script is
+ present against its own source, and read the hook-name symlinks
+ as the installed shape rather than as drift), `diff` the user
+ copy against the framework's source-of-truth in
+ `tools/agent-isolation/`.
Report any drift as a unified diff; do not re-`cp`. The
re-install path for each is
[`setup-isolated-setup-install`](../isolated-setup-install/SKILL.md)