Repository navigation
026: Complete Underlay Oxide adoption by ignoring whole-target output links - #59
Conversation
inflatable-tester
left a comment
There was a problem hiding this comment.
Review of PR #59 (head f8f5ffe) — Complete Underlay Oxide adoption by ignoring whole-target output links.
Scope: single-line .gitignore change target/ -> target. No docs, selector, CI, or Rust changes. Matches brief Implementation (change only the target ignore rule; knowledge clarification was conditional and correctly omitted since no doc truth changed).
Diff verified: git show HEAD confirms exactly one line changed in .gitignore; git status clean; actual root rule reads target (no slash).
Reviewer acceptance proof (fresh isolated fixture in mktemp -d, real git check-ignore, fixture deleted after): old target/ did NOT ignore a whole-target symlink (exit 1) while ignoring nested sub/target; new target ignores the symlink (exit 0), nested sub/target (exit 0), and a plain target dir (exit 0), while unrelated src/keep.rs remains unignored (exit 1). All brief acceptance bullets demonstrated. No permanent test added, per brief.
Inventory spot-check: root effigy.toml oxide selectors (rust:build/check/clippy/test, fmt:rust) unchanged; :cargo fallbacks retained; .github untouched (diff is .gitignore only), consistent with the Class2/CI keep-exceptions.
Validation: effigy health run once through Effigy selector, exit 0 (guardrails pass, release versions synchronized at 0.10.5). No Rust/build/test/coverage runs required per brief (no compile selector moved); no docs check (no docs changed); no format check (.gitignore is not formatted source). The v0.15 [scan.attention_markers] notice is a pre-existing deprecation warning, not a failure.
No live target relocation, symlink creation in the real repo, builds, or CI edits were made. Head left clean.
Verdict: ready_to_merge.
Change
Change the root ignore rule from
target/totargetso Git ignores a whole-target symlink as well as target directories, including nested target directories.Evidence
A fresh temporary Git fixture using real
git check-ignoreconfirmed the old rule misses a whole-target symlink, the new rule ignores both the root target directory and symlink, nested target directory coverage remains, and an unrelated source file stays unignored.Existing Oxide adoption and kept exceptions
The existing root Oxide selectors remain unchanged:
rust:build,rust:check,rust:clippy,rust:test,fmt:rust, andfmt:rust:check; bootstrap still usesoxide fetch, and the managed AGENTS Oxide block is unchanged. The kept Cargo fallback selectors arerust:check:cargo,rust:clippy:cargo, andrust:test:cargo. The six CI Cargo callsites are unchanged and out of scope.