semantic-szz-analyzer

Installation
SKILL.md

Semantic SZZ Analyzer

This skill is a delta over → szz-bug-identifier. Run classic SZZ first; this skill filters and re-ranks its candidates using semantic understanding instead of line-level blame.

Classic SZZ's precision problem: git blame is textual. It tells you who last touched a line, not who last changed its meaning. A variable rename, an indent, a refactor that moves a line unchanged — all of these become false-positive bug-introducers.

Semantic filters — applied on top of classic SZZ output

Filter What it checks Effect
AST-diff meaningfulness Did the blamed commit change the line's AST, or only its text? Drops rename/reformat FPs
Def-use chain relevance Does the blamed line define/use a variable that the fix reads/writes? Drops incidental adjacent-line hits
Semantic-preserving refactor Is the blamed commit a known-safe refactor (extract method, inline, rename)? Reroutes blame to the commit before the refactor
Bug-pattern match Does the blamed commit's diff look like it introduces the kind of bug the fix addresses? (null check added → look for the commit that removed a guard or added the deref) Boosts confidence when matched

Re-ranking

When multiple candidates survive filtering, rank by:

Installs
1
GitHub Stars
1
First Seen
Mar 29, 2026
semantic-szz-analyzer — santosomar/general-secure-coding-agent-skills