One candidate corpus
Every arm sees the same scanned files, so a weaker baseline is never manufactured by changing the search space.
The product
FixMap narrows the first step, explains its reasoning, and checks the work that followed. It is a map you can inspect—not a promise that the map is always right.
Measure it locally
fixmap benchmark --repo . --last 50 compares BM25-over-code, ordinary FixMap context, and FixMap with Impact Graph against historical parent snapshots.
Every arm sees the same scanned files, so a weaker baseline is never manufactured by changing the search space.
Each case is evaluated on its parent snapshot. The target change and later Git history cannot leak into its evidence.
All, mentioned, and unmentioned cohorts plus Wilson intervals make misses and small samples visible.
The benchmark reads Git and source text in temporary worktrees without installing dependencies, running hooks, or executing tests.
While the agent edits
fixmap watch --report plan.json --repo . emits only when the working tree changes, then re-runs Verify and recalculates the Impact Graph around the real diff.
A lightweight fingerprint avoids repeating full scans when nothing moved.
Unmapped edits, untouched leading context, and new impact relationships appear as evidence, not verdicts.
Markdown stays readable; JSON Lines gives automation one complete record per update.
Watch reads Git and source text without running repository code, installing dependencies, or calling a model.
TOKEN_TTL_MINUTES is ignored and reset links expire immediately.
1src/auth/reset-password.ts · high, score 51
2src/email/templates/reset.ts · medium, score 23
3src/auth/token-store.ts · medium, score 21
1test/auth/reset-password.test.ts · co-change
2src/http/routes.ts · co-change
3src/config.ts · imports
1low authentication · ranked files touch authentication; review this area before editing, but no diff evidence is available yet
Before the edit
FixMap reads the task and repository together. It ranks primary context, then builds a separate Impact Graph from imports, reverse dependents, routed tests, and repeated Git co-change evidence.
Before the agent reads
Context packages deterministic line ranges from primary and impact files inside an estimated source-token budget. Every snippet keeps its role, reason, confidence, range, and truncation state.
When relationships matter
Graph exports the Impact Graph as Mermaid for review documents or versioned JSON for tools, preserving the direction and reason for every import, dependent, test, and co-change edge.
When the map surprises you
A ranked list explains what it chose. Explain handles the harder question: whether a path ranked lower, fell below the cutoff, was excluded intentionally, or never entered the scan.
When you refine the task
Naming a symbol, an error string, or a path usually changes the ranking. Compare puts two plans side by side and reports what entered, left, moved, or changed confidence — so refining the task is measurable rather than a matter of impression.
After the edit
FixMap checks the saved plan against a git diff. It points out unplanned files, untouched leading context, missing tests, risky areas, and recalculated impact around the files that actually changed.
What makes the map useful
FixMap is deterministic. Every ranking point comes from repository evidence that can be inspected and challenged.
Paths, imports, symbols, workspace boundaries, and related tests establish how code fits together.
Confidence is capped when evidence is thin. Vague tasks can return an empty map instead of a plausible guess.
Scan limits, missing refs, generated files, and remote-fetch behavior appear as diagnostics rather than disappearing.
FixMap reads and ranks. It does not install dependencies, run scripts, execute tests, or upload local source.
The boundary matters
FixMap gives an agent a focused, evidence-backed starting set for more deliberate review. It cannot prove a change is correct, complete, or safe.
That is why every score has reasons, Verify is mostly advisory, and the benchmark page publishes failures alongside hits.
See the evidence