You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
httplink only matches REST URL paths between services
ApproachL
New pipeline pass that parses .proto services, finds generated XxxClient::method() calls, and links them to server-side impls via proto naming conventions (prost/tonic codegen is predictable)
In-workspace cross-crate calls: v0.8.0 added a Rust hybrid-LSP extraction path (current is v0.8.1), which materially improves call resolution across crates inside one indexed workspace. If your boundary cases were within a Cargo workspace, a retest on v0.8.1 would be very useful — please share what (if anything) still stops at the crate boundary.
gRPC client→server linking (parsing .proto services and linking generated XxxClient::method() calls to server-side impls via tonic/prost naming conventions): not shipped yet — keeping this issue open to track it. The existing cross-service linker only matches REST URL paths today, as you diagnosed.
A v0.8.1 result on part 1 would help sharpen exactly how much of this remains a proto-linker feature vs. already covered. Thanks!
This issue now has a first-class, durable reproduction in the cumulative bug-reproduction suite landing in #667 — a test that pins the exact failing behaviour, so it's tracked and guarded against silent regression. Where #667 also lands the root-cause fix, that's called out in the PR; otherwise the reproduction makes the eventual fix straightforward and verifiable.
The reproduction goes live once #667 merges. (Posted from the release branch's QA pass.)
Correcting our own bookkeeping here: this issue was labelled awaiting-reporter, which arms an automated stale/close cycle. That was wrong, and I have removed it — you do not owe us anything on this one.
Where it actually stands: the reproduction promised in the last update did land. #667 merged on 2026-06-28 (36d83280) and the case now lives in-tree as tests/repro/repro_issue56.c, pinning cross-crate CALLS resolution against a real two-crate Cargo workspace fixture rather than the single-file LSP layer that the earlier rustlsp_extra_cargo_wires_workspace_member test covered.
So the bug is confirmed, reproduced, guarded against silent regression — and still unfixed. The root cause documented in that test is that the tree-sitter-only Rust extractor has no Cargo metadata at extraction time, so a crate_a::helper() call site in crate_b has no registry entry to resolve against and no CALLS edge is minted.
The next step is ours, not yours. Apologies for a label that suggested otherwise — and for the fact that it would have auto-closed this as not planned in three days. The stale workflow has been changed so it can no longer close issues at all; it now only flags them for a human to review.
Thanks for the original report, and for your patience with it.
Partial progress landed on main in 56dc82ec (PR #1850, "fix: preserve Cargo context in parallel Rust resolution").
Deliberately leaving this open. That PR references this issue rather than claiming to close it, and the distinction is real: it fixes one mechanism by which cross-crate edges were lost — Cargo context not surviving parallel Rust resolution — but "call graphs stop at crate boundaries" is a broader symptom that may have other contributing causes.
If you are in a position to re-test against main, it would be genuinely useful to know whether your case improves, stays the same, or improves partially. That distinguishes "this was the cause" from "this was a cause" better than anything I can determine from the code alone.
Activity
fix(security): close open scanner alerts
fix(security): close open scanner alerts
fix(security): close open scanner alerts
fix(security): close open scanner alerts
fix(pkgmap+routes): resolve workspace imports + extract SvelteKit routes
DeusData commentedon Jun 12, 2026
Late update on this one — two separate parts:
In-workspace cross-crate calls: v0.8.0 added a Rust hybrid-LSP extraction path (current is v0.8.1), which materially improves call resolution across crates inside one indexed workspace. If your boundary cases were within a Cargo workspace, a retest on v0.8.1 would be very useful — please share what (if anything) still stops at the crate boundary.
gRPC client→server linking (parsing
.protoservices and linking generatedXxxClient::method()calls to server-side impls via tonic/prost naming conventions): not shipped yet — keeping this issue open to track it. The existing cross-service linker only matches REST URL paths today, as you diagnosed.A v0.8.1 result on part 1 would help sharpen exactly how much of this remains a proto-linker feature vs. already covered. Thanks!
test(repro): cross-file + trace reproductions for #408, #56, #480
test(repro): #548 lighter harness, strengthen #56, + 3 NEW bugs
fix: bulk parallel — Rust cross-crate, Python builtins, #607 reinstal…
DeusData commentedon Jun 28, 2026
This issue now has a first-class, durable reproduction in the cumulative bug-reproduction suite landing in #667 — a test that pins the exact failing behaviour, so it's tracked and guarded against silent regression. Where #667 also lands the root-cause fix, that's called out in the PR; otherwise the reproduction makes the eventual fix straightforward and verifiable.
The reproduction goes live once #667 merges. (Posted from the release branch's QA pass.)
fix: 17 reproduce-first issue + new-bug fixes (per-case verified)
DeusData commentedon Jul 26, 2026
Correcting our own bookkeeping here: this issue was labelled
awaiting-reporter, which arms an automated stale/close cycle. That was wrong, and I have removed it — you do not owe us anything on this one.Where it actually stands: the reproduction promised in the last update did land. #667 merged on 2026-06-28 (
36d83280) and the case now lives in-tree astests/repro/repro_issue56.c, pinning cross-crateCALLSresolution against a real two-crate Cargo workspace fixture rather than the single-file LSP layer that the earlierrustlsp_extra_cargo_wires_workspace_membertest covered.So the bug is confirmed, reproduced, guarded against silent regression — and still unfixed. The root cause documented in that test is that the tree-sitter-only Rust extractor has no Cargo metadata at extraction time, so a
crate_a::helper()call site incrate_bhas no registry entry to resolve against and noCALLSedge is minted.The next step is ours, not yours. Apologies for a label that suggested otherwise — and for the fact that it would have auto-closed this as
not plannedin three days. The stale workflow has been changed so it can no longer close issues at all; it now only flags them for a human to review.Thanks for the original report, and for your patience with it.
fix(stale): mark awaiting-reporter issues stale, never auto-close
DeusData commentedon Aug 29, 2026
Partial progress landed on main in
56dc82ec(PR #1850, "fix: preserve Cargo context in parallel Rust resolution").Deliberately leaving this open. That PR references this issue rather than claiming to close it, and the distinction is real: it fixes one mechanism by which cross-crate edges were lost — Cargo context not surviving parallel Rust resolution — but "call graphs stop at crate boundaries" is a broader symptom that may have other contributing causes.
If you are in a position to re-test against main, it would be genuinely useful to know whether your case improves, stays the same, or improves partially. That distinguishes "this was the cause" from "this was a cause" better than anything I can determine from the code alone.
test(rust): rebase cargo-route mutants and port the workspace route t…
feat(rust): admit cross-crate workspace CALLS behind the fail-closed …