flux-pr-1351
graphql-go-tools (Go) · W2 · GPT-5.3 Codex
Tests passed. 1/1 commands passed. Strength: strong.
go test -C v2 ./... -count=1 -timeout=300sPartial score: 1/1
Trajectory
codex · partial order onlyprovider-native trajectory captured; validation and decision steps are appended with coarse ordering only
Quality
Equivalence Reasoning
behavioral
The patch does add grouped storage (`SubgraphErrorsBySubgraph`) and deterministic joining, but it misses core intended behavior in at least one important path: `loader.newResponseInfo` call sites still pass the combined `SubgraphErrors()` (not per-subgraph error), so per-subgraph attribution in response hook info is not implemented like the task intent. It also changes `Context.clone` to clear subgraph errors instead of preserving/copying them, which is a behavioral regression versus the intended restructuring.
Code Review
The patch moves toward grouped/deterministic subgraph error tracking, but it likely does not fully satisfy the intended behavior because downstream hook paths still use the global aggregated error and cloning now drops accumulated subgraph errors.
Calls to `newResponseInfo` now pass `l.ctx.SubgraphErrors()` (the globally joined error), so hook consumers do not get per-subgraph attribution for the current datasource response.
The clone function explicitly resets `subgraphErrors` and `subgraphErrorsBySubgraph` to nil, which can lose already-collected error state when a context is cloned via `WithContext`.