Skip to content

fix: pass response to Http::execute() in GraphQL resolver#11878

Open
abnegate wants to merge 1 commit into1.9.xfrom
fix-graphql-execute
Open

fix: pass response to Http::execute() in GraphQL resolver#11878
abnegate wants to merge 1 commit into1.9.xfrom
fix-graphql-execute

Conversation

@abnegate
Copy link
Copy Markdown
Member

Http::execute() now requires a Response parameter as of utopia-php/http 0.34.20. The GraphQL resolver was only passing route and request, causing all GraphQL queries to fail with "Internal server error".

What does this PR do?

(Provide a description of what this PR does and why it's needed.)

Test Plan

(Write your test plan here. If you changed any code, please provide us with clear instructions on how you verified your changes work. Screenshots may also be helpful.)

Related PRs and Issues

  • (Related PR or issue)

Checklist

  • Have you read the Contributing Guidelines on issues?
  • If the PR includes a change to an API's metadata (desc, label, params, etc.), does it also include updated API specs and example docs?

Http::execute() now requires a Response parameter as of utopia-php/http
0.34.20. The GraphQL resolver was only passing route and request,
causing all GraphQL queries to fail with "Internal server error".

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps bot commented Apr 13, 2026

Greptile Summary

This PR fixes a one-line regression in the GraphQL resolver where $utopia->execute() was missing the $response argument required by utopia-php/http 0.34.20+, causing every GraphQL query to fail with an internal server error. The $response variable was already in scope as a parameter of Resolvers::resolve(), so the fix is simply threaded through to the call site.

Confidence Score: 5/5

Safe to merge — targeted one-line fix with no side effects.

$response is already a parameter in Resolvers::resolve() and is used directly after the execute() call (via $response->getPayload()), so passing it into execute() is the correct and complete fix. No other call sites are affected.

No files require special attention.

Important Files Changed

Filename Overview
src/Appwrite/GraphQL/Resolvers.php Adds missing $response argument to Http::execute() call in the GraphQL resolver, fixing a regression that caused all GraphQL queries to fail.

Reviews (1): Last reviewed commit: "fix: pass response to Http::execute() in..." | Re-trigger Greptile

@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 13, 2026

🔄 PHP-Retry Summary

Flaky tests detected across commits:

Commit 545e32a - 7 flaky tests
Test Retries Total Time Details
UsageTest::testFunctionsStats 1 10.21s Logs
UsageTest::testPrepareSitesStats 1 7ms Logs
UsageTest::testEmbeddingsTextUsageDoesNotBreakProjectUsage 1 5ms Logs
DatabasesStringTypesTest::testCreateTable 1 272.76s Logs
TablesDBCustomClientTest::testManyToManyRelationship 1 1.02s Logs
TablesDBCustomServerTest::testNotBetween 1 240.62s Logs
TablesDBTransactionsCustomClientTest::testBulkUpsertOperations 1 240.40s Logs

@github-actions
Copy link
Copy Markdown

✨ Benchmark results

  • Requests per second: 1,892
  • Requests with 200 status code: 340,544
  • P99 latency: 0.096621325

⚡ Benchmark Comparison

Metric This PR Latest version
RPS 1,892 1,320
200 340,544 237,636
P99 0.096621325 0.156127246

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant