You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Restatement guard: mark the ledger on git pull/checkout of the model #504
Follow-up from #269 / PR #498 (restatement guard).
The last-writer ledger (.claude/loop/script-owners/written.tsv) is machine-local and only sees exec.sh writes. A git pull or git checkout that brings newer .mpr work in after a local exec leaves the ledger saying "S wrote last", so a replay of S over that newer work stays quiet (reproduced in review: a ledger holding only 05, model carrying 09's work, replay 05 → rc 0, no output).
Proposal: a post-merge / post-checkout hook installed by install-project-hooks.sh that appends a RESTORE row to the ledger whenever mprcontents/ (or the .mpr) changed. so_last_writer already ignores rows before the last RESTORE, so the next replay falls back to DESCRIBE (capped at 5 per exec).
Also from the same review, optional: have restore-mpr.sh take the exec lock so a manual restore during an exec cannot lose its RESTORE row in the compaction window.
Activity
Restatement guard: warn when a script would revert a newer owner's wr…
fix(restatement-guard, hooks): mark the last-writer ledger on a model…
fix(hooks): core.hooksPath advice covers post-merge and post-checkout…
Bug sweep 2026-10-26: gates, runners, doctor, lint receipt, git hooks…
MendixMau commentedon Oct 26, 2026
Fixed in #578 (squash a088b4e): post-merge and post-checkout hooks write a
RESTORE git-<hook>row when a pull or checkout touched the model. They:With
core.hooksPathset, the installer prints the snippet to add.restore-mpr.shtaking the exec lock waits on draft #379.Generated by Claude Code