Summary
.gitignore line 168 has an unanchored rule:
An unanchored directory pattern matches a directory of that name at every level, so it matches src/models/ as well as the intended root-level models/ artifact directory. Any module added under src/models/ is silently ignored by git and never committed.
This is the same class of bug as the data/ rule fixed in #1 (PR anchors it to /data/). The older src/models/ files (regime_detector.py, scoring_engine.py, etc.) predate the rule and remained tracked, which masks the problem.
Impact
- New modules placed under
src/models/ will not be picked up by git add and will appear "missing" to anyone who clones the repo.
- This is the mechanism that would re-hide
src/models/integrated_selector.py (see separate issue) if it were created.
Reproduction
$ git check-ignore -v src/models/integrated_selector.py
.gitignore:168:models/ src/models/integrated_selector.py
Fix
Anchor the rule to the repository root:
This still ignores the root-level models/ artifact directory but no longer matches src/models/. The same review should be applied to the other unanchored project-specific rules (logs/, checkpoints/) for the same reason.
Summary
.gitignoreline 168 has an unanchored rule:An unanchored directory pattern matches a directory of that name at every level, so it matches
src/models/as well as the intended root-levelmodels/artifact directory. Any module added undersrc/models/is silently ignored by git and never committed.This is the same class of bug as the
data/rule fixed in #1 (PR anchors it to/data/). The oldersrc/models/files (regime_detector.py,scoring_engine.py, etc.) predate the rule and remained tracked, which masks the problem.Impact
src/models/will not be picked up bygit addand will appear "missing" to anyone who clones the repo.src/models/integrated_selector.py(see separate issue) if it were created.Reproduction
Fix
Anchor the rule to the repository root:
This still ignores the root-level
models/artifact directory but no longer matchessrc/models/. The same review should be applied to the other unanchored project-specific rules (logs/,checkpoints/) for the same reason.