Ghosts of bugs past
Описание и применение
Инструмент «Ghosts of bugs past» сканирует историю git, чтобы найти фиксы багов, которые не удержались, и использует локальную модель Gemma 3 для классификации, выдавая список «погребальных» записей.
Задача
Identify bug fixes that did not persist and were later re‑fixed.
Результат
Out of 14 flagged commits across click and requests, 1 was a clear ghost, 6 might be, and 7 were false positives. Git receipts were found for only 2 cases, confirming the real ghost and a fix that caused a new bug.
Рабочий процесс
- Run git to find commits that mention "fix" and use git blame to see if the lines rewritten came from an earlier fix.
- For each suspect pair, feed both commit messages and diffs to a local Gemma 3 model via Ollama and ask it to choose between "same bug came back", "the fix caused a new bug", or "different problem".
- Apply plain checks: the model must quote both commit messages verbatim and cannot invent numbers; if it fails, retry once then discard the answer.
- Require a git receipt: the later commit must reference the earlier one (by ID, issue number, or words like "regression").
- Collect all verdicts and generate a graveyard page listing each suspect with dates, epitaph, and Gemma’s reason.
- Optionally hand‑check the results and publish a HAND_CHECK.md file.
Доказательства
For every commit that says it fixes something, git blame checks whose lines it rewrote. If those lines came from an earlier fix, that fix may not have held.
A local Gemma 3 model, running on my own PC through Ollama, reads both commit messages and both diffs and picks one: "same bug came back", "the fix caused a new bug", or "different problem".
Gemma has to quote both commit messages word for word. If it can't, it gets one retry, then its answer is thrown out.
Only 2 of the 14 had a git receipt: the real ghost, and a fix that caused a different bug.
- Дата записи: 2026-11-01T02:59:05.516Z