fix(hermes): repair ariadne/409 #3
Loading…
x
Reference in New Issue
Block a user
No description provided.
Delete Branch "hermes-repair/409"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Hermes repair proposal for incident ariadne/409
Incident: ariadne/409
File:
ariadne/utils/errors.pyAnalysis: Jenkins build 409 failed only because test_safe_error_detail_http_status_json expected the JSON errorMessage value, but safe_error_detail returned only "http 400". The current payload lookup accepts error and message but omits errorMessage; the adjacent JSON-string and text cases passed. This is a localized source regression in ariadne/utils/errors.py.
Rationale: Include the errorMessage JSON convention while preserving the existing precedence of error and message. This one-line change makes the failing HTTP 400 JSON payload produce the expected safe detail without broadening error handling or adding dependencies.
Proposed by Hermes; validated and pushed by Ariadne; requires human review — no automatic merge.
Closing — the defect this repairs was deliberately seeded, and has been reverted directly.
This pull request is correct and it is the proof that autonomous source repair works on a real service repository: Hermes chose
ariadne/utils/errors.py, a file that appears nowhere in the build console, reached only by reading the failing test and following its imports. No candidate path was pinned.It is being closed rather than merged for two reasons, both worth recording.
First, the patch is correct for the failing test but is not a faithful restoration. The original was
errorMessage or error or message; this proposeserror or message or errorMessage. For a payload carrying both keys the precedence differs. That is a good patch, not an identical one — a useful illustration that a passing test does not prove behavioural equivalence, and exactly why nothing here merges without review.Second, Ariadne's duplicate guard refuses a new proposal while a
hermes-repair/*pull request is open, so leaving this open would block future triage on this repository.The seeded defect has been reverted so master matches its original behaviour exactly.
Pull request closed