mirror of
https://github.com/abhigyanpatwari/GitNexus.git
synced 2026-10-28 06:22:22 +00:00
Review follow-up for the namespace factory return lookup (#3498). Each case below either resolved to the wrong class or crashed; each now types the receiver correctly or records a receiver-unresolved drop. - Disk mode: the namespace-name set walked `scopeTree.byId`, which throws after the out-of-core seal, so an inline-only `rp.make().m()` partition aborted analyze under GITNEXUS_DISK_SCOPE_INDEX=1. It is now built from the finalized `scopes.imports` edges, resolved namespace edges only. This also removes the run-to-run edge/drop drift the lazy build caused. - Hoisted method returns: TS and Dart hoist a method's return annotation to the module under the method name, and Go binds receiver methods at package scope, so `m.create()` could take `WidgetFactory.create(): Widget`. The return binding must now start where a module-local `Function` of that name is declared. - `import pkg.sub` binds `pkg` but targets `pkg/sub.py`; such an edge only counts when its target file is the module the local name binds. - A dotted return (`-> models.Order`) is not followed further: the next step would read `models` in the caller's namespace map, not the producer's. - Zig: the `const x = rp.make()` binding decided namespace-vs-file-struct from the filename's case and lost `list.push`-style edges on lowercase file-structs. That binding form is reverted; the inline form is unaffected. - Shared-position drops: a site's identity is now `receiver.member`, so `rp.untyped().untyped()` records its outer drop while a call and its own callee read still count once. Tests: temp-repo regression rows for each case in the TypeScript, Go and Python suites, a lowercase file-struct row in Zig, an awaited Dart row (an awaited Future is not unwrapped yet, so it records a drop), and data-driven unit cases for recordSiteMember. Corpus A/B against origin/main: identical CALLS/ACCESSES edges outside the new fixtures; the drop set outside them is unchanged from the previous head. Receiver bench: +1 call drop (the awaited Dart row). Dart scope-capture fingerprint moves for the same fixture row only. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| callable-value-flow | ||
| cfg | ||
| cpp-qualified-ns | ||
| cross-repo-trace | ||
| embedding-identities | ||
| embedding-inputs | ||
| emit-persistence | ||
| finalize-reexport | ||
| go-route-resolution | ||
| impact-pdg | ||
| import-target | ||
| incremental-write-integrity | ||
| inline-taint | ||
| java-lombok-synthesis | ||
| java-wildcard-route-constants | ||
| kotlin-import-target | ||
| kotlin-jvm-accessors | ||
| kotlin-star-route-constants | ||
| lexical-binding-provenance | ||
| lib | ||
| mcp-serialization | ||
| mcp-tools-list | ||
| objective-c-resolution | ||
| parse-cache-identity | ||
| parse-dispatch-rounds | ||
| python-scope | ||
| python-workspace-import-scan | ||
| receiver-resolution | ||
| rename | ||
| ruby-gem-resolution | ||
| rust-cargo-targets | ||
| schema-pairs | ||
| scope-capture | ||
| scope-emission | ||
| spring-conditionals | ||
| spring-config-bindings | ||
| staged-publication | ||
| swift-package-imports | ||
| symlink-coverage | ||
| tool-accuracy | ||
| trpc-route-extractor | ||
| v8-sidecar | ||
| value-ref-resolution | ||
| zig-cross-file-resolution | ||
| analyze-phase-breakdown.md | ||
| parse-throughput.md | ||