You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
bug: rules_engine.index_skip_files directory globs (**/phaser/**) skip entire project, and skip stays sticky without --rebuild #453
Two related problems with the new rules_engine.index_skip_files config field (added in v0.11.1 via #447):
Directory-style globs over-match and skip the entire project. A pattern like **/phaser/** causes cora index to skip all 152 files (not just the phaser directory), indexing 0 symbols.
The skip appears "sticky": after removing the .cora.yaml (so no skip list is active), a plain incremental cora index still reports all files as skipped. Only cora index --rebuild recovers.
To reproduce
Project: hompimpah, 152 files.
(1) Glob over-match
cat > .cora.yaml <<'YAML'rules_engine: index_skip_files: - "**/phaser/**"YAML
cora index
# → ✅ Indexed 0 symbols from 0 files (152 skipped, 0 errors)# Expected: skip only files under any phaser/ directory, index the rest.
Also reproduced with "**/templates/quiz-adventure/**" and "**/engine/**" — every directory-glob pattern skipped the whole project. File-specific patterns (ularTanggaScene.ts) were not tested for correctness because of problem (2).
(2) Sticky skip after config removal
rm .cora.yaml # no skip list active anymore
cora index # incremental# → ✅ Indexed 0 symbols from 0 files (152 skipped, 0 errors) ← still skipped!
cora index --rebuild # only this recovers# → ✅ Indexed 582 symbols from 152 files (0 skipped, 0 errors)
Confirmed: no CORA_* env vars set, no .cora.yaml lingering, global ~/.codecora/config.{json,toml} unchanged.
Expected
Directory globs (**/phaser/**) should match only files within a phaser/ directory, not every file in the project.
Incremental cora index should re-evaluate the current config on each run; removing the skip list should restore full indexing without needing --rebuild.
Likely cause
Glob matcher may treat a leading/trailing **/ as match-any-path, or the pattern is matched against the full path in a way that ** greedily consumes everything.
The incremental index path likely caches the skip decision (or the file manifest) in the DB and does not invalidate it when the config changes.
Environment
cora 0.11.1 (release that introduced index_skip_files)
Activity
fix(code-intel): FTS5 search, dead-code false positives, index skip f…