OXYGENHUB

oxy prompt says dirty when status says clean (after merge; after a file in an ignored directory) issue #75 closed: completed andymccall opened this · 1 comment

andymccall

From ~/oxygen_feedback.md (metalgear, 2026-10-03): oxy prompt shows * while oxy status says clean: (1) after oxy merge until checkout --discard; (2) after a file is written into an ignored directory (src/generated/, bin/), staying dirty after it is deleted. Looks like the fast path compares directory mtimes without the ignore rules, and merge leaves the stat cache stale. The two must agree; status --json's clean is right. A build that writes into an ignored directory marks itself dirty.

andymccall

Cause found: after a commit or merge the prompt's quick check took a subrepo's directory for a racy file (metalgear has subrepos), so * stayed until a full status. Fixed in c2d40aa3 (subrepos compared by pin). Checked with the new build: clean straight after commit and after merge; files written into and deleted from ignored dirs (bin/, gen/, src/generated/) leave the prompt clean; a commit inside a subrepo does show *. Push held while the VS Code import runs on Earth.

closed by change 80677b7a3513 ·