Compute blast radius and likely tests for given seed symbols or seed file paths.
Recursively walks reverse reachability (transitive callers) up to max_depth in SQLite.
Resolve callee signatures directly in a single joined query, avoiding N+1 queries
and preserving ambiguous methods across types. Prioritizes functions/methods over enum variants.
Load up to limit_per_file symbols per file for scoped files, directly aggregated in SQLite.
Files deeper than depth are filtered out in SQLite to keep memory strictly bounded.
Sanitizes a free-form user query into (and_query, or_query) formatted for SQLite FTS5.
Each alphanumeric/underscore token is quoted and given a prefix wildcard: "token"*.
Identifiers are split at case boundaries too (parseHTTPResponse -> parse HTTP Response),
so a camelCase query finds a snake_case symbol. Each split identifier keeps its unsplit form
as an alternative inside its own required term, so a camelCase symbol, which FTS5 indexes as
one token, still matches. A query of two or three words also tries their concatenation.
English stop words are dropped unless the whole query is stop words, and tokens under three
characters get no prefix wildcard.
Search symbols with optional path scoping filter. Locals and parameters are left out unless
the caller passes kind = "variable" or names one explicitly as a qualified name such as
open_conn::conn. With kind = "variable" they match by name only, because they are not in
the full-text index.