gabriel / muse public
fix BREAKING drift feat/fix-drift-ignored-extant #1 / 1
gabriel · 70 days ago · Apr 7, 2026 · Diff

fix(drift): ignored-and-extant files no longer appear as deleted in status/diff

plugin.drift() now filters delete ops for files that are in .museignore and still present on disk before returning the DriftReport. This is the muse status / muse diff fix — the parallel to the earlier fix in diff_workdir_vs_snapshot (which covered checkout and stash).

Root cause: plugin.snapshot() correctly excludes .museignore files from the working tree manifest. When that manifest is diffed against HEAD (which may include previously-committed build artifacts), those files generate delete ops — causing status to show them as deleted even though they are on disk and unchanged.

The filter is applied after self.diff() and only touches file-level delete ops (address has no '::'). The invariant is preserved: a file in .museignore that is genuinely absent from disk still appears as deleted.

sha256:428c872f501cd3600a03979fe96e58998a3a5a58a16b1e155c48749659f6e0e5 sha
sha256:66beccc67720102702350796002067666da1c5af308105bfaed9605d40e14531 snapshot
← Older Oldest on feat/fix-drift-ignored-extant
All commits
Newer → Latest on feat/fix-drift-ignored-extant

0 comments

No comments yet. Be the first to start the discussion.

To add a comment, use the Muse CLI: muse hub commit comment sha256:428c872f501cd3600a03979fe96e58998a3a5a58a16b1e155c48749659f6e0e5 --body "your comment"