Skip to content

fix(csharp): emit generic_arg references for field types - #2994

Closed
akshitj11 wants to merge 1 commit into
Graphify-Labs:v8from
akshitj11:fix/csharp-field-generic-args
Closed

fix(csharp): emit generic_arg references for field types#2994
akshitj11 wants to merge 1 commit into
Graphify-Labs:v8from
akshitj11:fix/csharp-field-generic-args

fix(csharp): emit generic_arg references for field types (#2911)

6e0f2ce
Select commit
Loading
Failed to load commit list.
Graphify Labs / Graphify succeeded Aug 24, 2026 in 0s

Graphify — looks good

Looks safe to merge — no coupling regressions and no blocking issues, checked against the code graph (not a self-assessment).

Details

Graphify reviewed this change.

Looks safe to merge — no coupling regressions and no blocking issues, checked against the code graph (not a self-assessment).


Graphify review — findings

Adds generic type-argument references for C# field declarations by routing field types through _csharp_receiver_type_name and _csharp_collect_type_refs, so Box<IAlpha> now emits both a field reference to Box and a generic_arg reference to IAlpha. Continues to skip type parameters and self-references. Covers the new behavior with test_csharp_field_generic_type_arguments_emit_references and test_csharp_field_type_parameter_emits_no_reference.

No blocking issues surfaced. 3 lower-confidence candidates did not survive cross-model review.

Analysis details — impact, health, verification

Impact & health

Graphify review

Impact — 905 functions depend on the 698 functions this change touches.

Health — this change adds coupling hotspots:

  • new: _extract_generic() — 18 callers, 24 callees
  • new: extract_xaml() — 19 callers, 17 callees
  • new: extract_objc() — 27 callers, 9 callees
  • new: extract_js() — 80 callers, 3 callees
  • new: extract_julia() — 16 callers, 7 callees
  • new: extract_vue() — 10 callers, 6 callees
  • new: walk() — 1 callers, 56 callees
  • new: extract_groovy() — 14 callers, 3 callees
  • …and 7 more — each is listed as a finding

Verification — 905 functions in the blast radius were not formally verified this run (proofs are advisory here).

Gate & verification

graphify gate

PASS — objectively clean (no health regressions, tests not run — proofs not run this pass (advisory)). Grounded, not self-assessed.

Advisory (not blocking):

  • verification_scope: 863 function(s) in the blast radius were not formally verified this run