← Recipes

Question

Do these occurrences describe one entity, re-exports of it, independent namesakes, platform variants, or duplicated implementations?

Recipe

loct query where-symbol SessionModel
loct twins --limit 12
loct crowd session

Start with the definition addresses and their kinds. A re-export exposes another entity; it does not define an additional implementation. A shared method name does not establish shared responsibility.

Expected answer shape

Separate actual definitions from aliases and re-export facades. For each definition, retain the language, module, receiver or enclosing type when available. Read twin classifications as detector claims that need evidence, especially across crates and platforms.

A useful answer might be: one model is defined in a domain module and re-exported by an API facade, while another model with the same name belongs to an unrelated package. Consolidating them would erase a real boundary.

Decision

Choose which definition owns the intended change. Decide whether to preserve separate namesakes, keep an intentional mirror, or investigate consolidation of genuine copies.

Check the interpretation

loct find SessionModel --literal --group-by-file --limit 40
loct body SessionModel --max-lines 80 --json

When several definitions are returned, match each body to its reported source path. Inspect the signature, receiver, body and delegation target. If the installed body command cannot select one of several definitions, keep that ambiguity explicit and use the returned locations to continue verification.

Counterexample

Two methods with equal signatures can delegate to different layers. Unix and Windows implementations can intentionally share names. Matching enum variants across languages may be a wire-contract mirror rather than redundant code. Name or signature equality alone cannot justify merging them.

Evidence

The September round successfully distinguished definitions from re-exports in several Rust and Python projects, while reporting receiver, alias and platform-classification gaps. October trials again distinguished an implementation from its public re-export. These examples motivate the verification sequence; they do not certify every twin classification.