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.