mirror of
https://github.com/abhigyanpatwari/GitNexus.git
synced 2026-10-26 06:02:22 +00:00
* fix(csharp): bind nullable field types for receiver resolution (#3498) A C# field written `User? repo;` got no type binding. Its type is a `nullable_type` node, and the field_declaration rules only matched identifier, generic_name and qualified_name types. Parameters, properties, method returns and foreach variables already have a nullable_type rule, so fields were the odd one out: the class scope had no binding for `repo`, and `this.repo.Save()` was dropped as receiver-unresolved. Add the missing field rule. interpretCsharpTypeBinding already strips the `?`, so the field binds `User`, as the property spelling does. Shape arm: csharp `decoratedFieldType` moves VISIBLE-GAP -> RESOLVES, with the edge on `User.Save`. No corpus fixture declares a nullable field, so the count arm and every other cell are unchanged, and the corpus edge (2838) and drop (192) sets match main exactly. Scope-capture fingerprints are unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * fix(csharp): preserve nullable field ownership * fix(csharp): refuse unowned nullable types * test(csharp): guard nullable-member fixture cleanup (#3664) Address nexus-check review on resolvers/csharp.test.ts:1471: skip the temp-root removal when mkdtempSync never ran, so a setup failure is not masked by a secondary rmSync(undefined) TypeError. Matches the guard in csharp-nullable-field-review.test.ts. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * docs(bench): scope nullable wrapper claim to what the code does (#3664) The ownership-controls note said the nullable-field marker preserves custom generic wrappers. Its only control, Custom.List<User>?, passes through the qualified-type refusal instead. State that unqualified wrappers keep the wrapper type (no native control yet) and that qualified spellings, custom wrappers included, stay unbound. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * chore: preserve C# integration notes * fix(csharp): preserve generic argument qualifiers Ignore comments when checking outer nullable-field qualification. Refs #3664 --------- Co-authored-by: Gergo Magyar <gergomagyar0@gmail.com> 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 | ||