-
Notifications
You must be signed in to change notification settings - Fork 296
Closed
Labels
cookieIssue Monster Loves Cookies!Issue Monster Loves Cookies!
Description
CI Failure Investigation - Run #38196
Summary
Several pkg/workflow golden tests and the Go linter failed because the recent MCP gateway configuration change removed the payloadSizeThreshold field but the golden fixtures and helper declarations were not kept in sync.
Failure Details
- Run: 22521669850
- Commit: 3d5916a6b280c9fd7f11c8edd37b6e11a793432c
- Trigger: push
Root Cause Analysis
- Golden test shards and the
test-wasm-goldentarget still expect MCP gateway configs to includepayloadSizeThreshold, but the compiler output now omits that field, so the comparison between generated JSON and the recorded fixtures fails. golangci-lintnow sees two helpers with no callers because recent refactors removed the code paths that used them, resulting in anunusedlinter failure forassertEnvVarsInStepsandvalidationHelpersLog.
Failed Jobs and Errors
build-wasm–make test-wasm-goldenfails becauseTestWasmGolden_AllEnginesdetects that the generated JSON is missing the"payloadSizeThreshold": 524288line that the golden files still expect.test–TestWasmGolden_CompileFixtures/{basic-copilot,smoke-copilot}fail for the same reason, with the failure report showing thatpayloadSizeThresholdwas dropped from the MCP gatewayenv.entriesblock.lint-go–golangci-lintexits withunusederrors atpkg/workflow/safe_outputs_env_helpers_test.go:12:6(unusedassertEnvVarsInSteps) andpkg/workflow/validation_helpers.go:33:5(unusedvalidationHelpersLog).
Investigation Findings
- The failure report for the golden fixtures highlights this diff:
@@ -339,4 +339,3 @@@ Keep the MCP gateway payload block in sync
"apiKey": "\$\{MCP_GATEWAY_API_KEY}",
- "payloadDir": "\$\{MCP_GATEWAY_PAYLOAD_DIR}",
- "payloadSizeThreshold": 524288
+ "payloadDir": "\$\{MCP_GATEWAY_PAYLOAD_DIR}"
}
golangci-lintraised theunusederrors shown in the log because the helpers no longer exercise assert or logging paths that reference them.
Recommended Actions
- Regenerate the golden fixtures used by
TestWasmGolden_AllEnginesandTestWasmGolden_CompileFixturesso that they match the compiler’s new output (the payload gateway block should only includepayloadDir). - Clean up or reintroduce the logic that references
assertEnvVarsInStepsandvalidationHelpersLogso that the helpers are either used or removed, allowinggolangci-lintto finish. - After updating the fixtures and helper usage, rerun
make test-wasm-golden,go test ./pkg/workflow -run TestWasmGolden, andgolangci-lintlocally before pushing.
Prevention Strategies
- When removing or renaming configuration fields, immediately regenerate any golden outputs that encode those fields so the tests serve as an early warning for out-of-sync fixtures.
- Whenever helper functions become unused due to refactors, either delete them in the same change or update their call sites and rerun the linter to guard against
unusedfailures.
AI Team Self-Improvement
Before landing MCP gateway payload changes, rerun the golden fixture suites and golangci-lint locally and update the expectations they encode so the CI jobs stay green.
Historical Context
- Issue #17678 documented the MCP gateway v0.1.5 update that introduced several breaking config validation changes, including adjustments to the payload configuration. The current failure is the first time the golden fixtures and linter have been caught out by the removal of
payloadSizeThreshold.
🩺 Diagnosis provided by CI Failure Doctor
To install this agentic workflow, run
gh aw add githubnext/agentics/workflows/ci-doctor.md@ea350161ad5dcc9624cf510f134c6a9e39a6f94d
- expires on Mar 1, 2026, 1:39 PM UTC
Reactions are currently unavailable
Metadata
Metadata
Labels
cookieIssue Monster Loves Cookies!Issue Monster Loves Cookies!