fix(analyze): honor gitignore files - #128
Merged
Merged
Conversation
smiggleworth
marked this pull request as ready for review
August 29, 2026 10:22
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #127
What changed
.gitignorefiles during analyzer discoveryaskr.analyze.excludeas an additive analyzer-only filterignore7.0.6 runtime dependencyCompatibility
This changes analyzer discovery only: gitignored source files are no longer diagnosed by default. There is no public API or flag change, and existing
askr.analyze.excludeconfiguration remains supported. The package version remains 0.2.3; no package was published.TDD evidence
Before the implementation, the regression reported all seven explicitly included fixture files, including ignored root, nested, and legacy-tree files. After the implementation, it reports only the three non-ignored/re-included files. A nested-workspace regression also proves project-root rules apply below the selected workspace.
Validation
.gitignoreregressions: 2 passed, three consecutive runsnpm run check: 20 files / 276 tests; lint, typecheck, coverage, changelog, build, docs, publint, and pack all passednpm run test:peer-floor: packed CLI candidate passed against the minimum supported Askr peer and excluded an ignored source filenpm run test:templates: all packed templates passednpm run bench:analyze: 50 files 43.396 ms, 250 files 199.77 ms, five workspaces 210.57 ms; all thresholds passedgit diff --check: passedDependency review
The lockfile adds only
ignore7.0.6 and its root dependency entry.npm outdatedreports only@types/node26.4.0; it is a minor update from 26.3.0 and is intentionally excluded.Hosted validation
CI run 33247571500 passed on the exact head SHA
4f68432b3532a99b46148754b2d8482694ef8ab9: dependency audit, Ubuntu, Windows, macOS, packed minimum-peer, packed templates, and performance gate all succeeded. Two completemain...headreview passes found no remaining defects, and GitHub readback found no comments, reviews, or unresolved threads.