Skip to content

fix(parity): haskell resolver precision/recall dropped to 0% in 3.9.6 #1039

@carlos-alm

Description

@carlos-alm

Deferred from PR #1038 review.

Problem: The Haskell resolver regressed from 100%/33% precision/recall in 3.9.4 to 0%/0% in 3.9.6 on the resolution benchmark fixtures.

Version 3.9.4: precision=1.0, recall=0.333, truePositives=4 (4 expected of 12)
Version 3.9.6: precision=0.0, recall=0.0,   truePositives=0 (0 expected of 12)

The drop spans both module-function (3 → 0) and same-file (1 → 0) modes — the resolver is now matching nothing for Haskell.

Why deferred: PR #1038 fixes a different regression (#1036, WASM full-build perf via ensureWasmTrees re-parse scope). The Haskell regression sits in the resolution layer (not the AST/WASM path) and needs its own investigation. Currently flagged as 3.9.6:resolution haskell precision/recall in tests/benchmarks/regression-guard.test.ts KNOWN_REGRESSIONS to unblock CI.

Where to look:

  • Diff resolution-side changes between 3.9.4 and 3.9.6 (likely something in import resolution or the Haskell extractor behavior).
  • Re-run tests/benchmarks/resolution/resolution-benchmark.test.ts against the Haskell fixture and inspect what truePositives became falseNegatives.
  • Check whether a fixture path or expected-edge format was changed (4 valid edges fully disappearing is suspicious).

Done when: Haskell precision is restored to 1.0 and recall to ≥ 0.333; the 3.9.6:resolution haskell * entries can be removed from KNOWN_REGRESSIONS.

Metadata

Metadata

Assignees

No one assigned

    Labels

    follow-upDeferred work from PR reviews that needs tracking

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions