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
[scan].exclude and [lint].exclude are separate, are not regexes, and dead patterns are not reported #9
lint ignores [scan].exclude, and exclude patterns are literal prefixes or substrings, not regexes. A pattern that matches no files is silently accepted.
Steps to reproduce
In a project with openshell-annotate.toml:
[scan]
exclude = ["packages/cli/"]
Run openshell-annotate lint .: findings from packages/cli still appear (context7: 26 warnings until the same list was added under [lint]).
Use exclude = ["^packages/(admin-mcp|cli)/"]: it silently matches nothing (the README says patterns anchor at the repo root, otherwise they are a substring, so this is a literal string).
Expected
One shared exclude list: lint inherits [scan].exclude (with [lint].exclude adding to it).
A warning when an exclude pattern matches zero files.
Documentation that patterns are not regexes (and the exact matching rule).
Actual
Separate lists, no warning, regex-looking patterns silently match nothing.
Found while testing five real projects (see the local candidate report). Numbered #3 in that report.
Activity