Skip to content

fix: prioritize explicit root-source converters - #37

Merged
AGiorgetti merged 1 commit into
developfrom
feat/codex-23-root-converter-priority
Oct 9, 2026
Merged

AGiorgetti merged 1 commit into
developfrom
feat/codex-23-root-converter-priority

Conversation

@AGiorgetti

@AGiorgetti AGiorgetti commented Oct 8, 2026 •

Copy link
Copy Markdown
Contributor

Change

Fixes #23.

  • Resolve an explicit omitted-Source converter against the root object before automatic source-member matching in new-object, constructor-bound, and existing-target mappings.
  • Keep unrelated same-name/ambiguous members and patch getters from overriding that selection. Root parameters retain entry-level null guards.
  • Add 18 executable regressions plus Basic/clean-package consumer coverage and synchronized usage, changelog, and control documents.
  • Preserve existing converter diagnostics, explicit source paths, public signatures, and exception behavior.

Verification

  • Test-first: 16 initial cases on unchanged develop produced 11 failures and five controls, zero skips. The Basic sample independently failed with LITEMAPPER1002/CS8795. A nullable-root patch extension then reproduced CS1061 before the root-parameter member-guard correction; the explicit-path control passed.
  • Final local generator suite: 652 passed, zero failed/skipped, including all 18 new cases. Runtime 5/5, integration 1/1, and all three source sample smoke runs pass.
  • Release solution build has zero warnings/errors. Generated Basic source was inspected: BuildDisplayName(source) receives the root once.
  • Available packaging suite: 220 passed, two infrastructure failures, zero skips, including all 12 consumer framework/language combinations, clean package-backed samples, package/API checks, usage validation, and benchmark smoke.
  • Trimming and Native AOT are locally blocked at ILLink ComputeManagedAssemblies task-host creation (MSB4216 / Unix-domain SocketException 13). PowerShell and clang are absent; 49 PowerShell-dependent cases were not run locally. No local trimming/AOT success is claimed. An earlier packaging attempt was interrupted by a tool approval cancellation and is not counted; the completed retry is reported above.
  • Independent read-only review found no scoped correctness blocker. CRLF-aware diff and consumer-skill validation pass.
  • Remote tree 6a7d60b8ed091e0f83913379ecaeb53c10862a79 matches the tested/staged local tree. Exact-head ordinary PR CI passed for 1e274b9: Windows and Linux each passed 929 tests (652 generator, 271 packaging, five runtime, one integration), zero failures/skips; all six Roslyn 4.8.0/4.14.0/5.9.0 OS jobs passed 652 tests each. The full packaging suite covers PowerShell, trimming and Native AOT checks unavailable locally. Source samples, benchmark smoke, and solution-path validation passed. Release pack/artifact-verification/publication jobs were skipped as expected for this ordinary PR.

Retained as draft for human review. No issue comments/claim writes, merge, release, tag push, package publication, or workflow dispatch was performed. Other issues remain outside this fix.

Prepared with OpenAI Codex.

Select omitted-Source Use input before automatic member matching in creation, constructor binding, and updates. Keep root null handling separate from patch member guards.

Fixes #23.

Co-authored-by: Codex <codex@openai.com>
@AGiorgetti
AGiorgetti marked this pull request as ready for review October 9, 2026 08:13
@AGiorgetti
AGiorgetti merged commit 1583ddb into develop Oct 9, 2026
11 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.

[P2] Resolve omitted-Source root converters before automatic member matching

1 participant