Skip to content

Fix #8756 parse enum values in federation reference resolver#9277

Merged
michaelstaib merged 3 commits intomainfrom
mst/issue-8756
Mar 2, 2026
Merged

Fix #8756 parse enum values in federation reference resolver#9277
michaelstaib merged 3 commits intomainfrom
mst/issue-8756

Conversation

@michaelstaib
Copy link
Member

@michaelstaib michaelstaib commented Feb 27, 2026

Fixes #8756

Summary

  • add a focused regression test that reproduces enum argument binding from _entities representations where the enum arrives as a string value
  • update federation ArgumentParser to resolve string values against EnumType before scalar coercion
  • keep existing scalar coercion behavior unchanged

Reproduction Code

var representations = new List<Representation>
{
    new(
        nameof(Issue8756Entity),
        new ObjectValueNode(
            new ObjectFieldNode("id", "1"),
            new ObjectFieldNode("enumValue", "B")))
};

var result = await EntitiesResolver.ResolveAsync(schema, representations, context);
var entity = Assert.IsType<Issue8756Entity>(result[0]);
Assert.Equal(Issue8756Enum.B, entity.EnumValue);

@github-actions
Copy link
Contributor

Fusion Gateway Performance Results

Progress: 0/6 benchmarks completed — this report updates as each job finishes.

Simple Composite Query

Req/s Err%
Constant 2 (50 VUs) pending pending
Ramping 2 (0-500-0 VUs) pending pending
Response Times
Min Med Avg P90 P95 Max
Constant 2 pending pending pending pending pending pending
Ramping 2 pending pending pending pending pending pending

Deep Recursion Query

Req/s Err%
Constant 2 (50 VUs) pending pending
Ramping 2 (0-500-0 VUs) pending pending
Response Times
Min Med Avg P90 P95 Max
Constant 2 pending pending pending pending pending pending
Ramping 2 pending pending pending pending pending pending

Variable Batching Throughput

Req/s Err%
Constant 2 (50 VUs) pending pending
Ramping 2 (0-500-0 VUs) pending pending
Response Times
Min Med Avg P90 P95 Max
Constant 2 pending pending pending pending pending pending
Ramping 2 pending pending pending pending pending pending

Runner 2 = benchmarking-2

Run 22506886204 • Commit 3c0391a • Fri, 27 Feb 2026 22:50:25 GMT

@michaelstaib michaelstaib added the 🎬 ready Ready to merge label Mar 2, 2026
@michaelstaib michaelstaib merged commit 3c933e1 into main Mar 2, 2026
4 checks passed
@michaelstaib michaelstaib deleted the mst/issue-8756 branch March 2, 2026 14:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Enum not parsed in reference resolver

1 participant