Skip to content

fix(npc): match transitive assembly references by identity - #290

Merged
ifBars merged 1 commit into
fix/npc-bounded-type-scanfrom
diffuin/289-2d87c4ca
Aug 26, 2026
Merged

fix(npc): match transitive assembly references by identity#290
ifBars merged 1 commit into
fix/npc-bounded-type-scanfrom
diffuin/289-2d87c4ca

Conversation

@diffuin

@diffuin diffuin Bot commented Aug 26, 2026

Copy link
Copy Markdown

Requested by @ifBars in #289.

Diffuin response

Confidence: High

Addressed both review comments by requiring exact assembly identity before transitive traversal and adding a regression test for same-name, different-version assemblies. No proprietary game assets or code were accessed or changed.

Recommended next steps

  1. Retained simple-name indexing, then applied identity filtering at the dependency edge to keep the change narrow.
  2. Applied the identity rule to direct candidate and direct-reference checks for consistent bounded discovery.
Evidence and validation

Evidence inspected

  • S1API/Internal/Utils/ReflectionUtils.cs now filters simple-name lookup results by AssemblyName.FullName before recursion.
  • ReflectionUtilsTests creates unrelated and related dynamic assemblies with the same simple name but distinct versions; the candidate must not follow the unrelated reference through the related assembly.

Validation performed

  • Reviewed the changed implementation and regression test statically.
  • Ran git diff --check successfully.

Runtime validation remaining

  • Focused and full MonoMelon and Il2CppMelon tests could not run because this checkout has no dotnet executable.
  • Human validation remains necessary for NPC warmup and network-spawned wrapper discovery in the affected IL2CPP MelonLoader setup.
Diffuin run details
  • Provider: codex
  • Model: gpt-5.6-terra
  • Reasoning: high (Luna advisor: complexity (high); baseline source-backed technical request)
  • Elapsed: 177s
  • Codex thread: 01a03c35-0caf-7272-9054-418724c92313

AI notice: Generated with AI assistance and not guaranteed accurate. Verify findings and plans against the current source and runtime.


Diffuin job: 2d87c4ca-9a45-4f2e-b049-aa26df017134
Commit: f8ab166b5c14d60ad1cc4c6ae43954d3aed06b6d

@ifBars
ifBars merged commit 62d11ed into fix/npc-bounded-type-scan Aug 26, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant