Skip to content

How does Bifrost measure up against language servers?

Immutable evidence · UsageBench v0.3.1

Frozen evidence · 182 cases

  • Preregistered

    36 cases

    Prospective v1

    v0.2.0

  • Preregistered

    36 cases

    Prospective v2

    v0.3.0

  • Retrospective

    110 cases

    Reviewed legacy core

    v0.3.1 · detailed below

Each slice keeps its own denominator and they are never pooled. The preregistered slices select and review sources before any analyzer runs; the legacy core was selected retrospectively and re-reviewed from source alone.

Ruby LSP

0.26.10
Bifrost
9/9Ruby LSP
2/9
Both exact
2
Bifrost only
7
Reference only
0

Eclipse JDT LS

1.61.0-202607142124
Bifrost
10/10Eclipse JDT LS
4/10
Both exact
4
Bifrost only
6
Reference only
0

TypeScript LS

5.3.0 (TypeScript 5.9.3)
Bifrost
16/16TypeScript LS
12/16
Both exact
12
Bifrost only
4
Reference only
0

clangd

21.0.0
Bifrost
10/10clangd
7/10
Both exact
7
Bifrost only
3
Reference only
0

Roslyn

vscode-csharp 2.140.9
Bifrost
10/10Roslyn
7/10
Both exact
7
Bifrost only
3
Reference only
0

Metals

1.6.8
Bifrost
6/7Metals
5/7
Both exact
4
Bifrost only
2
Reference only
1

Intelephense

1.18.5
Bifrost
7/7Intelephense
6/7
Both exact
6
Bifrost only
1
Reference only
0

Pyright

1.1.411
Bifrost
10/10Pyright
10/10
Both exact
10
Bifrost only
0
Reference only
0

rust-analyzer

2026-07-13
Bifrost
8/10rust-analyzer
10/10
Both exact
8
Bifrost only
0
Reference only
2

gopls

0.23.0
Bifrost
5/5gopls
5/5
Both exact
5
Bifrost only
0
Reference only
0

Strict-contract conformance across 94 shared case comparisons, from release v0.3.1 at revision 8393dafe6b9a. A case counts as exact only with complete token ranges, no unallowed extras, and the one reviewed navigation target. Disagreement is a contract result, not an automatic defect verdict — see the evidence map for every hash and denominator.