Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
173 commits
Select commit Hold shift + click to select a range
4f21079
fix: preserve hub candidates and bounded weighted trails
forhappy Sep 26, 2026
8a13928
fix: ground code graph comparisons in fresh source evidence
forhappy Sep 26, 2026
c30cf4a
fix: retain structural hubs from extensionless sources
forhappy Sep 26, 2026
c9478b1
docs: record final native audit verification
forhappy Sep 26, 2026
4befc05
fix: preserve bounded weighted paths and enforce search work limits
forhappy Sep 26, 2026
fe1a1fb
test: preregister source-first fd query and call witnesses
forhappy Sep 26, 2026
ea527d1
test: audit source-first fd relationships and preserve failures
forhappy Sep 26, 2026
b62534c
fix: preserve Rust receiver shadowing and binding lifetimes
forhappy Sep 26, 2026
86958df
test: preregister natural-language tasks across five languages
forhappy Sep 26, 2026
1032fde
fix: preserve query subjects in agent answers
forhappy Sep 26, 2026
152efdd
bench: preregister multilingual MCP graph questions
forhappy Sep 26, 2026
47767e8
fix: restore MCP communities and reject ambiguous neighbors
forhappy Sep 26, 2026
7b2430e
fix: filter MCP relations before grouping neighbors
forhappy Sep 26, 2026
7c554c2
bench: define identity-based hub navigation diagnostic
forhappy Sep 26, 2026
e3652ae
bench: preserve virtual environment in hub follow-ups
forhappy Sep 26, 2026
6c84f44
fix: preserve MCP hub identity for direct navigation
forhappy Sep 26, 2026
11d731e
bench: add multilingual MCP path and failure diagnostics
forhappy Sep 26, 2026
9e21b0d
bench: add separate label-input MCP path comparison
forhappy Sep 26, 2026
fb42bb5
fix: preserve bounded MCP path identities and source anchors
forhappy Sep 27, 2026
b57f436
bench: audit hub source roles and connectivity explanations
forhappy Sep 27, 2026
30a5570
feat: explain hub connectivity by relation and direction
forhappy Sep 27, 2026
7c70fbe
bench: register held-out five-language confirmation panel
forhappy Sep 27, 2026
7c859f2
bench: audit frozen confirmation panel and preserve oracle corrections
forhappy Sep 27, 2026
85caa54
fix: make ambiguous query answers explicit and actionable
forhappy Sep 27, 2026
a5f4fe8
fix: resolve Go control receivers without leaking shadowed types
forhappy Sep 27, 2026
3ec3732
bench: register panel A MCP community and hub comparison
forhappy Sep 27, 2026
a29f298
fix: prevent filesystem hierarchy from inventing programmatic route p…
forhappy Sep 27, 2026
0c805b6
test: reject unsupported route containment in production qualification
forhappy Sep 27, 2026
c20db15
fix: derive file-route parents from framework semantics
forhappy Sep 27, 2026
bb1451a
docs: record passing route-parent fixture qualification
forhappy Sep 27, 2026
22814e5
fix: resolve Java constructor method receivers from syntax evidence
forhappy Sep 27, 2026
d71c389
docs: record passing Java fixture qualification
forhappy Sep 27, 2026
9b63873
fix: resolve proven export bindings without discarding ambiguity
forhappy Sep 27, 2026
bc4374a
eval: register source-reviewed directed path development questions
forhappy Sep 27, 2026
eaba102
eval: record directed call-path parity and unresolved failures
forhappy Sep 27, 2026
fc066af
docs: record passing export query fixture qualification
forhappy Sep 27, 2026
44ef68e
fix: correct query continuation evaluation and limit help
forhappy Sep 27, 2026
1605019
fix: preserve Java varargs and overload invocation phases
forhappy Sep 27, 2026
232608e
test: freeze source-backed responsibility explanation questions
forhappy Sep 27, 2026
964a625
test: record responsibility query gaps and final qualification
forhappy Sep 27, 2026
62f60b2
test: freeze bounded source follow-up protocol
forhappy Sep 27, 2026
0b3eddd
test: record symmetric source follow-up evidence coverage
forhappy Sep 27, 2026
090140f
fix: preserve literal identifier anchors in natural discovery
forhappy Sep 27, 2026
6711e3a
fix: preserve ambiguity across exact declaration ranking evidence
forhappy Sep 27, 2026
b8b1cfd
test: record literal identifier query diagnostics and verification
forhappy Sep 27, 2026
234753e
test: freeze source-defined community task pairs across five languages
forhappy Sep 27, 2026
bef1d76
test: audit source-defined community task cohesion and boundaries
forhappy Sep 27, 2026
7a6d6c9
test: freeze community-to-neighbor navigation protocol
forhappy Sep 27, 2026
a1b631d
test: audit public community-to-neighbor navigation failures
forhappy Sep 27, 2026
8f5eb5e
fix: prefer exact symbols for MCP neighbor navigation
forhappy Sep 27, 2026
500a456
test: align MCP text assertion with shared compact renderer
forhappy Sep 27, 2026
6bc29e9
test: stabilize missing and extra neighbor audit ordering
forhappy Sep 27, 2026
2054373
test: record exact-first neighbor navigation gains and remaining gaps
forhappy Sep 27, 2026
f660408
test: freeze source-anchored public navigation workflow
forhappy Sep 27, 2026
c3d4cc2
test: audit source-assisted public navigation across five languages
forhappy Sep 27, 2026
6c70df5
audit: freeze indexed receiver development evaluation
forhappy Sep 27, 2026
18bb37e
fix: resolve Rust indexed receivers from source types
forhappy Sep 27, 2026
a07ab99
audit: verify Rust indexed receiver recovery
forhappy Sep 27, 2026
bde19bb
audit: freeze neighbor identity development protocol
forhappy Sep 27, 2026
d51698d
feat: retain exact neighbor identities and relationship evidence
forhappy Sep 27, 2026
8eb1bf0
audit: compare explicit neighbor identities and source-assisted follo…
forhappy Sep 27, 2026
98759ae
audit: freeze directed identity and depth-bound comparison
forhappy Sep 27, 2026
2cc0250
audit: register native label control for directed identity comparison
forhappy Sep 27, 2026
1ec835b
fix(query): preserve incomplete depth-bound trail results
forhappy Sep 27, 2026
47ad5eb
audit: compare directed identity workflows and depth diagnostics
forhappy Sep 27, 2026
4e6ccb2
audit: register native responsibility explanation comparison
forhappy Sep 27, 2026
3a58309
fix(explain): report source verification only for checked digests
forhappy Sep 27, 2026
bf7bca6
audit: compare native responsibility explanations and provenance
forhappy Sep 27, 2026
bac936f
audit: register member-source evidence and symmetric source control
forhappy Sep 27, 2026
6d4df99
feat(explain): retrieve bounded recorded member implementations
forhappy Sep 27, 2026
5131598
audit: compare member evidence with symmetric source windows
forhappy Sep 27, 2026
2ef40e9
audit: register exact source-constrained symbol lookup
forhappy Sep 27, 2026
9cc6ba9
feat(query): add exact symbol search with explicit source filters
forhappy Sep 27, 2026
7aef6a0
audit: compare constrained symbol lookup and source evidence
forhappy Sep 27, 2026
1c6f2a4
Register shared-state access evidence audit across five languages
forhappy Sep 27, 2026
9cdeab6
Audit shared-state evidence gaps across five real repositories
forhappy Sep 27, 2026
4a1be26
Register Rust state-access correction and fixed-protocol replay
forhappy Sep 27, 2026
56d7d55
Register paired public retrieval control for Rust state contacts
forhappy Sep 27, 2026
390406c
Emit qualified Rust field-access evidence with exact occurrences
forhappy Sep 27, 2026
b4b8300
Record verified Rust state-access recovery and paired MCP evidence
forhappy Sep 27, 2026
d1b701b
audit: register Java field scope compiler challenge
forhappy Sep 27, 2026
7164461
audit: verify Java field scope against compiler and paired graphs
forhappy Sep 27, 2026
5c10c9d
audit: register Java field-access correction and unchanged comparisons
forhappy Sep 27, 2026
09ca58e
Emit Java field-access evidence with bounded lexical receiver scopes
forhappy Sep 27, 2026
5548a86
audit: register Java known-ID field navigation control
forhappy Sep 27, 2026
f2cacfe
Preserve Java field receiver type precedence and ambiguity
forhappy Sep 27, 2026
d278c1e
Audit Java field contacts with compiler and paired repository evidence
forhappy Sep 27, 2026
2499e92
Register compiler source-binding audit across jsoup production fields
forhappy Sep 27, 2026
7b9d46f
Audit Java field bindings against the full jsoup base-source census
forhappy Sep 27, 2026
35cb4ae
audit: register paired explanation source budget sweep
forhappy Sep 27, 2026
e445c5c
audit: measure paired explanation source budget sensitivity
forhappy Sep 27, 2026
1c80747
audit: register bounded explanation member focus experiment
forhappy Sep 27, 2026
293582c
feat(query): prioritize focused member names in explanation source
forhappy Sep 27, 2026
9f17e0c
audit: qualify member focus on five repository questions
forhappy Sep 27, 2026
67e5550
audit: register paired member focus retrieval policy
forhappy Sep 27, 2026
6c9876e
audit: freeze common member focus ranking and interval policy
forhappy Sep 27, 2026
ce8b739
audit: retain paired focus regressions and source-window causes
forhappy Sep 27, 2026
0f3df06
audit: register source-grounded longer call paths
forhappy Sep 27, 2026
3eaefed
audit: separate native label paths from ID interoperability
forhappy Sep 27, 2026
c39e549
audit: retain longer-path misses and native-label tie
forhappy Sep 27, 2026
4e22e1d
audit: register calls-only trail correction and replay
forhappy Sep 27, 2026
89916af
feat(query): add bounded calls-only directed trails
forhappy Sep 27, 2026
f9e2044
audit: qualify calls-only trails and retain feasibility limits
forhappy Sep 27, 2026
553d236
audit: register shared public-neighbor call-path workflow
forhappy Sep 27, 2026
221e0b3
audit: add bounded public-neighbor path harness
forhappy Sep 27, 2026
0b4caef
audit: qualify shared public-neighbor paths and identity gaps
forhappy Sep 27, 2026
630b3cd
audit: register externally rated Blob cohorts and preserve disagreement
forhappy Sep 27, 2026
48ae229
audit: pin rated class identities and recover exact Eclipse revision
forhappy Sep 27, 2026
61d3925
audit: review all externally rated primary class spans
forhappy Sep 27, 2026
cc95b38
audit: score externally rated class retrieval without resolving ambig…
forhappy Sep 27, 2026
b009909
docs: describe externally rated Blob cohort and portable source metadata
forhappy Sep 27, 2026
749ed28
audit: record Blob hub retrieval and preserve extraction limit failures
forhappy Sep 27, 2026
88c3f94
audit: register SQL prefix-scan diagnosis on pinned CloudStack files
forhappy Sep 27, 2026
db8c305
audit: register larger-artifact Blob follow-up without replacing orig…
forhappy Sep 27, 2026
1a1f6a6
perf(sql): reject non-delimiter bytes before scanning statement prefixes
forhappy Sep 27, 2026
bbc6a41
audit: disclose development build profile before SQL measurements
forhappy Sep 27, 2026
79dbc88
audit: preserve all matched SQL outcomes and equality limits
forhappy Sep 27, 2026
3fc5c42
docs: refresh audit scorecard from current comparative evidence
forhappy Sep 27, 2026
2059b6e
audit: register release comparison for observed SQL regex compilation
forhappy Sep 27, 2026
3ded8bd
audit: correct unfiltered neighbor checks and report Blob follow-up
forhappy Sep 27, 2026
9df5dcf
perf(sql): reuse fixed read and write access regexes
forhappy Sep 27, 2026
ba754aa
audit: register complete-source SQL cache follow-up
forhappy Sep 27, 2026
8c8712d
audit: report matched release SQL cache observations
forhappy Sep 27, 2026
40ccdf9
audit: register release-server Blob follow-up
forhappy Sep 27, 2026
8d726d1
audit: register repeated complete-source cache comparison
forhappy Sep 27, 2026
fede61c
audit: report release recovery and remaining Blob ranking misses
forhappy Sep 27, 2026
f86969d
docs(audit): retain repeated whole-source timing results
forhappy Sep 27, 2026
46a42c4
docs(audit): register full enum-reference census follow-up
forhappy Sep 27, 2026
6c5e973
docs(audit): register four-language enum-change controls
forhappy Sep 27, 2026
a8b4a49
fix(java): preserve enum reference and constant-body ownership evidence
forhappy Sep 27, 2026
1fc6225
docs(audit): publish enum census and four-language controls
forhappy Sep 27, 2026
c5a94ae
docs(audit): register dotted Java owner census and controls
forhappy Sep 27, 2026
be2fb54
fix(java): resolve dotted nominal owners without selecting ambiguous …
forhappy Sep 27, 2026
b54c20e
docs(audit): publish dotted-owner census and preservation controls
forhappy Sep 27, 2026
3a7fd9f
docs(audit): register graph cache coherence and query-cost controls
forhappy Sep 27, 2026
f48ccad
fix(graph): bind query caches to one content snapshot
forhappy Sep 27, 2026
ffe50a2
test(core): pin inference level in semantic preservation fixtures
forhappy Sep 27, 2026
3ae08aa
docs(audit): register full-corpus class-span probe
forhappy Sep 27, 2026
6b3f692
docs(audit): publish negative class-span cohort result
forhappy Sep 27, 2026
1987790
docs(audit): register full-class relation evidence inventory
forhappy Sep 27, 2026
b97ded5
docs(audit): review full-class relation evidence
forhappy Sep 27, 2026
990d028
docs(audit): register CloudStack access-relation check
forhappy Sep 27, 2026
46d5c98
docs(audit): classify CloudStack access relations
forhappy Sep 27, 2026
ebf393e
docs(audit): register rated-class member source oracle
forhappy Sep 27, 2026
c989292
docs(audit): verify rated Java class members against JDK
forhappy Sep 27, 2026
29208f0
docs(audit): register explicit Java field-source check
forhappy Sep 27, 2026
6086f7f
docs(audit): verify explicit Java field sites
forhappy Sep 27, 2026
a523de1
docs(audit): register compiler-bound Java field audit
forhappy Sep 27, 2026
b4a499d
docs(audit): verify compiler-bound Java own-field references
forhappy Sep 27, 2026
68f7142
Recover source-proven Rust builder calls across result vectors
forhappy Sep 28, 2026
ab93cd3
Register source-first Rust Go Python query confirmation
forhappy Sep 28, 2026
0c106a6
docs(audit): review source-first three-language call paths
forhappy Sep 28, 2026
7e15d0b
docs(audit): record qualified FastAPI navigation controls
forhappy Sep 28, 2026
2a058e1
fix(query): resolve verified owner-qualified symbols
forhappy Sep 28, 2026
4d5ca44
bench(audit): register three-language source-first hub panel
forhappy Sep 28, 2026
dc704ca
bench(audit): review source-first hub retrieval across three languages
forhappy Sep 28, 2026
3ebdf97
bench(audit): register paired Java class-degree diagnostic
forhappy Sep 28, 2026
5245089
bench(audit): rule out class-only degree on rated Java cohort
forhappy Sep 28, 2026
3996067
bench(audit): register paired Java member declaration review
forhappy Sep 28, 2026
dd02841
bench(audit): compare rated Java source members across graphs
forhappy Sep 28, 2026
ee21fae
feat(graph): expose stored hub member evidence
forhappy Sep 28, 2026
d70d204
bench(audit): register Litestream Go field census
forhappy Sep 28, 2026
58490b6
bench(audit): add bounded Go struct field oracle
forhappy Sep 28, 2026
dd10b66
bench(audit): register full Litestream Go field census
forhappy Sep 28, 2026
44e58d5
feat(graph): publish named Go struct fields with source-backed census
forhappy Sep 28, 2026
72bb01b
bench(audit): register Litestream self-field access census
forhappy Sep 28, 2026
5132180
bench(audit): add Go receiver-field source oracle
forhappy Sep 28, 2026
5553c8c
feat(go): resolve source-backed struct field contacts
forhappy Sep 28, 2026
d82d94b
bench(audit): register typed Go parameter field census
forhappy Sep 28, 2026
c1b0d78
bench(audit): verify typed Go parameter field contacts
forhappy Sep 28, 2026
bfe9068
Record complete graph gate and make snapshot test portable
forhappy Sep 28, 2026
a269c1c
Register held-out three-language graph query panel
forhappy Sep 28, 2026
3b7db6a
Improve TypeScript graph build and qualified query lookup
forhappy Sep 28, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
14 changes: 14 additions & 0 deletions .github/workflows/compass-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,20 @@ jobs:
# agent-view contracts rot silently.
cargo test -p compass-cli --tests --locked

- name: Hub and bounded path regressions
run: |
cargo test -p compass-graph --test analyze_coverage --locked
cargo test -p compass-query --test bounded_path_oracle --test code_traversal --test coverage_paths --locked

- name: Rust state-access evidence contracts
run: cargo test -p compass-languages -p compass-resolve --test rust_field_access --locked

- name: Java state-access evidence contracts
run: cargo test -p compass-languages -p compass-resolve --test java_field_access --locked

- name: Comparison scorer regressions (no competitor installation)
run: python3 -m unittest discover -s benchmarks/agent_query/tests

- name: Qualify natural-language query relevance
env:
CARGO_TARGET_DIR: ${{ github.workspace }}/target
Expand Down
183 changes: 183 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,189 @@

## Unreleased

- Resolve source-proven Go field selectors to exact named struct fields and
publish occurrence-anchored references. Rebuild graphs to see the new edges;
disposable AST cache semantics advance to 13.

- Publish explicit named Go struct fields as source-anchored field declarations
owned by their struct. Rebuild existing graphs to see the new nodes and hub
member counts; disposable AST cache semantics advance to 12.

- Show stored direct-member and own-field reference counts for typed class and
struct hubs in MCP `god_nodes`, with ambiguous owners excluded and undirected
graphs left unavailable. Keep hub ranks unchanged; the counts are graph
evidence, not a god-object diagnosis.

- Resolve a unique owner-qualified method such as `APIRoute.get_route_handler`
in typed callers, callees, impact and trail questions and the legacy
`explain`/`path` commands when the stored name includes a module prefix or
`::` separator. Preserve ambiguity, typed candidate bounds and exact-ID
precedence. Typed queries reject a nonexistent owner when the method name
exists under other owners.

- Recover exact Rust calls through source-proven `Result<Vec<_>>` collection,
`Ok` match bindings, vector loops, and `iter().map` closure receivers. Keep
custom or ambiguous collection types unresolved and rebuild disposable AST
caches so older facts do not hide the new edges.

- Bind disposable graph caches to bounded content digests and keep MCP graph
views coherent within a request. Detect equal-size replacements even when
modification times are preserved. Rebuild older graph caches automatically.

- Resolve dotted Java nominal receiver names against canonical nested type
declarations for field and enum references. Preserve duplicate-owner and
package/type ambiguity, exact occurrence evidence and bounded lookup work.

- Emit Java enum-constant references with exact occurrence evidence, selector-based
switch labels and registered constant-body ownership. Preserve field/value/type
shadowing and unresolved receivers; invalidate older disposable AST caches.

- Cache fixed SQL read/write access patterns so statements reuse compiled
regular expressions.

- Avoid repeated SQL statement-prefix scans for bytes that cannot begin a
dollar-quoted delimiter, preserving statement-sensitive identifier handling.

- Add `node --calls-only`, MCP `get_node` `calls_only`, and explicit `ask`
call-path/call-chain syntax. Restrict traversal and direction/depth diagnostics
to call edges while retaining structural defaults and bounded-work semantics.

- Add opt-in `explain --source-members --member-focus TEXT` to prioritize
normalized member-name matches within the existing shared source budget.
Preserve source order for ties, retain unmatched candidates and report the
lexical matches without claiming behavioral relevance.

- Emit Java field-access references from bounded lexical scope and receiver
evidence, preserving shadowing, field identity and parallel source occurrences.
Invalidate prior AST caches; retain unsupported targets without name fallback.

- Emit Rust field-access evidence for source-proven nominal receivers, preserving
exact occurrences and unknown or shadowed receiver outcomes. Publish qualified
field contacts as references without inventing read/write effects. Rebuild
graphs to refresh older AST caches.

- Add `search --exact` and MCP `search_symbols` exact mode with optional
source file, declaration line and node-kind filters. Return all bounded exact
matches without lexical fallback; preserve ambiguity and incomplete lookup.

- Add opt-in `explain --source-members` to retrieve callable implementations
through recorded containment, including nested types. Share one source-byte
budget, retain individual verification status, and report unavailable or
omitted members explicitly.

- Label explanation excerpts without a stored source digest as unverified.
Preserve bounded source access and reject malformed or mismatching digests
instead of claiming that an anchor alone verifies current source.

- Report incomplete directed trail searches when the depth frontier remains
unexplored, instead of inferring a direction mismatch from a shorter
undirected route. Preserve successful bounded paths and closed negatives;
retain incomplete status in exploration even when no path is returned.

- Add exact destination identities and full relationship records to MCP neighbor
results, preserving source anchors, provenance, direction and parallel calls.
Bound adjacency work and response size; report exhaustion explicitly.

- Resolve Rust method receivers reached through source-proven scalar indexes
into standard vectors, arrays, and slices, retaining field declaration scope
and each call occurrence. Preserve intermediate modules in qualified Rust
type paths instead of selecting a same-named outer type. Custom containers, ranges, unknown index types,
and shadowed collection names remain unresolved. Rebuild graphs to refresh
older AST caches.

- Prefer exact IDs and symbol names for MCP neighbor navigation before broader
prefix/substring matches, while preserving genuine declaration ambiguity and
fuzzy fallback when no exact candidate exists.

- Preserve literal compound identifiers in natural discovery questions ahead
of generic behavior matches, while retaining declaration collisions and
uncertainty from bounded name lookups.

- Preserve Java varargs signatures, parameter array types, and explicit array
argument dimensions. Resolve supported overloads in strict, loose, then
variable-arity order, retaining ambiguity when evidence cannot select a
unique target. Rebuild graphs to refresh older AST caches.

- Correct natural discovery help to report the 10,000 examined-relationship
default independently of the 128 returned-edge default. Runtime limits are
unchanged.

- Resolve coincident export-binding and declaration name matches through exact
export evidence, improving symbol-based paths and relationship queries while
preserving genuine ambiguity and exact-ID selection. Traversal caches retain
the weakest relationship confidence and deferred state.

- Resolve Java method receivers constructed directly at the call site,
including qualified types and bounded parentheses, while retaining overload
and occurrence evidence. Stop turning arbitrary receiver expressions into
invented external type names. Enclosing-instance construction no longer
selects an unrelated imported class. Rebuild older AST caches.

- Resolve file-route parents from framework nesting conventions instead of
choosing a nearby module. Preserve layout, flat-route, index, pathless, and
non-nesting distinctions; retain ambiguous parents without inventing edges.
Pages Router, Astro, and HTTP endpoints no longer acquire automatic layout
parents from directory order. Rebuild graphs under framework semantics 8.

- Restrict filesystem route hierarchy to recognized file-route conventions.
Independent programmatic routers no longer acquire containment edges merely
from shared receiver names and source directories, which could inflate hubs
and create unsupported navigation paths.

- Resolve Go receivers introduced by `if` and switch initializers using their
source-proven factory results. Respect nearer locals, range bindings, and
closure parameters instead of borrowing an outer receiver type; do not
substitute a same-named package factory for a callback or attribute a returned
callback invocation to its factory's receiver type. Rebuild older AST caches.

- Make ambiguous typed query headlines request exact node IDs without naming
a fallback subject or claiming no path. Include IDs for all retained
ambiguity candidates in text output.

- Explain MCP hub candidates with node kind and bounded relation/direction
counts, preserving parallel records and distinguishing incident records from
ranking degree. Report omitted relation categories explicitly.

- Require unique exact endpoints for MCP paths and return ambiguity candidates
instead of choosing by score. Explore within the requested hop bound using
shared work limits, prefer structural relations among equal-hop paths, and
include exact node/edge identities in structured responses.

- Include exact node IDs and source locations in MCP hub results, with a
versioned structured projection for follow-up navigation. Describe hubs as
topology candidates rather than established design defects.

- Preserve community IDs alongside labels in traversal caches, restoring MCP
community membership and statistics on typed graphs. Older disposable
traversal caches rebuild automatically.
- Return candidate paths and IDs for ambiguous MCP neighbor lookups instead
of silently selecting one declaration.
- Apply MCP neighbor relationship filters before grouping repeated neighbors,
preserving matching calls when another relation shares the same endpoints.

- Preserve parsed `ask` operands in agent and text answers so headlines,
answer evidence, path endpoints, and follow-up actions describe the requested
symbols.
- Match agent-answer subjects using the query engine's existing case and
function-label normalization, including names such as `convertSchema()`.

- Prevent Rust local receiver bindings from inheriting shadowed outer parameter
types in lets, loops, closures, match arms/guards, and conditional lets.
Preserve initializer and else-branch scope, and rebuild older AST caches.

- Fix weighted `path --max-depth` searches losing a feasible shorter prefix.
Search work exhaustion now fails explicitly instead of appearing disconnected.

- Fix bounded weighted node trails: retain shorter prefixes when a cheaper
route exhausts the hop limit, and never admit a previously rejected node
without charging the traversal budget.

- Respect explicit graph node kinds in topology analysis: method-shaped labels
and extensionless source files retain their structural candidates, and
explicitly typed files stay out of hub lists.

- Make god-node ranking stable for equal-degree nodes, retain project
declarations whose names overlap library names, and omit isolated nodes.
- Move theme selection into Graph settings, grouped with appearance controls.
Separate layout and selection settings, collapse keyboard shortcuts, and keep
theme settings available in every community overview design.
Expand Down
Loading
Loading