Skip to content

perf(source-clean): execute full-tree fingerprint checks in compiled matcher - #397

Merged
masarray merged 2 commits into
mainfrom
perf/source-clean-compiled-identifier-matcher
Sep 25, 2026
Merged

masarray merged 2 commits into
mainfrom
perf/source-clean-compiled-identifier-matcher

Conversation

@masarray

Copy link
Copy Markdown
Owner

The full-tree source-clean step still took roughly 14 minutes on Windows CI even after fingerprint caching, because every substring executes PowerShell function/pipeline operations.

Move only the identifier matching loop into a small in-memory compiled .NET helper within the existing PowerShell script; preserve one-way SHA-256 hashes, candidate lengths (7/8/12/22), embedded token matching, adjacent 1–4-token joining, tracked-path/content scanning, and fail-closed behavior. No allowlist or whole-file exemptions. Add negative cases for multi-token and mixed-case identifiers to the existing end-to-end fixture suite.

No application C#, engine, SCL, Discovery, reporting, release, or baseline evidence changes. Acceptance is source-clean fixture PASS, full Windows test/package PASS and verified source-clean step duration from CI logs.

@masarray
masarray merged commit f125877 into main Sep 25, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant