Skip to content

[v0.4] The tracked tree holds nothing the repository walkers skip (CACHEDIR.TAG, target, .lexlean, .lake) (follow-up to #156) #170

Closed

Description

@humuhumu33

Follow-up to #156 (review comment of 2026-10-17, #156 (comment)). support::holds_cache_tag (crates/conformance/src/support.rs:33-35) skips any directory holding a file named CACHEDIR.TAG. The name-based skips (target, .git, .lexlean, .lake, expected) skip by directory name. Both serve build output beside the sources, but a committed CACHEDIR.TAG, a committed .lexlean directory outside examples/, tests/ and compiler/ (not ignored there), or a force-added target/ takes a directory out of RT-01, RT-04's generated-module check, VR-19, assert_library_has_no_handwritten_lean, the authoring gates and the oracle tree digest. Nothing checks the tracked tree for that. No such path is tracked today.

Definition of done:

  • A conformance case, or an extension of an existing RP row with its statement amended, reads the tracked tree (git ls-files, or the release manifest's file list) and fails when any tracked path is named CACHEDIR.TAG, or has a component the walkers skip by name, outside the paths that are legitimately committed under such names (list them, for example expected/ oracles).
  • Planted defects recorded in VERIFICATION.md: a tracked examples//CACHEDIR.TAG, and a tracked .lexlean directory outside the ignored roots, each failing the case.
  • The CHANGELOG line "every repository walker" is corrected, or the remaining name-only walkers (xtask/src/audit.rs:10, crates/conformance/src/lib.rs:197, cases/oracle.rs:2403) gain the same skip.
  • R3 row if a new capability is claimed, just vv green, no weaker gate.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions