conformance: fix /api/runner call in the new federation CI script - #272
Merged
Conversation
run-federation-plan.py sent {} as the JSON body for POST
/api/runner?test=...&plan=..., which the conformance suite rejects
outright (HTTP 400) — the suite's own client sends no body at all for
that call, only query params. Found by actually running the script
against a live local suite (something PR #271's own CI checks never
exercised, since the daily/on-demand conformance workflow doesn't run
on a PR). Also records a second, previously undiscovered discovery
WARNING every module hits (this AS doesn't advertise RS256 for request
object signing either, same root cause as the already-known FAILURE).
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017N2kkxv9BR4Qmj8De3Ucs6
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Summary
Follow-up to #271 (already merged). That PR's CI checks (lint/test/SonarCloud/codecov) never actually exercise
run-federation-plan.py— the real conformance workflow only runs on a daily schedule or manualworkflow_dispatch, not on a PR. Running the new script against the still-live local suite/containers from #271's own manual verification surfaced a real bug that would have broken tomorrow's scheduled run.run-federation-plan.pysent{}as the JSON body forPOST /api/runner?test=...&plan=...— the suite rejects that outright (HTTP 400, empty body). The suite's own client (Connect.create_test_from_plan_with_variantin the suite's ownscripts/conformance.py) sends that call with query params only, no body at all./api/planstill needs its config as a real JSON body, sopost_jsonnow takespayload=Noneto mean "send no body," defaulting to the old behavior when a payload is given.WARNINGevery module hits (CheckDiscEndpointRequestObjectSigningAlgValuesSupportedIncludesRS256— this AS doesn't advertise RS256 for request-object signing, same root cause as the already-known/expectedFAILURE) inexpected-warnings-federation.json.Test plan
run-federation-plan.pydirectly against the live local suite (same containers conformance: add OpenID Federation leg to CI conformance workflow #271 was manually verified against): 5/5 modules passed, exit 0 — confirmed both expected-warnings entries correctly match and nothing else is unexpected.run_federation_plan(bash) performs, end to end, against the live containers — correct.run_federation_plan's owndocker compose up --buildstep end to end — hits this machine's known, pre-existing Docker Hub pull hang (unrelated to this change; same issue documented from earlier manual verification work). Expected to work fine in GitHub Actions, which already successfully builds these same Dockerfiles for the other 20 legs.python3 -m py_compile/ JSON validity on both changed files🤖 Generated with Claude Code