Skip to content

Remove singular x-appwrite method metadata - #13250

Merged
ChiragAgg5k merged 3 commits into
mainfrom
feat/remove-x-appwrite-method
Aug 17, 2026
Merged

Remove singular x-appwrite method metadata#13250
ChiragAgg5k merged 3 commits into
mainfrom
feat/remove-x-appwrite-method

Conversation

@ChiragAgg5k

@ChiragAgg5k ChiragAgg5k commented Aug 17, 2026

Copy link
Copy Markdown
Member

What does this PR do?

Stops emitting singular x-appwrite.method from OpenAPI operations. SDK method names now come from the service-qualified operationId; plural x-appwrite.methods aliases remain unchanged.

before: operationId: accountCreate, x-appwrite.method: create
after:  operationId: accountCreate

Uses appwrite/sdk-generator 4.0.2, released by appwrite/sdk-generator#1804.

Test Plan

  • vendor/bin/phpunit tests/unit/SDK/Specification/FormatTest.php — 20 tests, 103 assertions
  • composer update appwrite/sdk-generator --with-dependencies --minimal-changes — updated the lock file to 4.0.2
  • composer lint src/Appwrite/SDK/Specification/Format/OpenAPI3.php tests/unit/SDK/Specification/FormatTest.php
  • composer refactor:check
  • Generated current 1.9.x client, server, and console specs; canonical diffs contained only removal of 149, 554, and 610 singular fields respectively
  • Generated every SDK target through php app/cli.php sdks --platform=* --sdk=* --version=1.9.x --git=no --mode=examples using appwrite/sdk-generator 4.0.2

Related PRs and Issues

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?

@github-actions

github-actions Bot commented Aug 17, 2026

Copy link
Copy Markdown

✨ Benchmark results

Comparing main (before) → feat/remove-x-appwrite-method (after).

Metric Before After Change
🚀 Requests/sec 189.47 189.46 0%
⏱️ Latency P50 75.97 ms 75.85 ms -0.2%
⏱️ Latency P95 258.56 ms 257.74 ms -0.3%
Per-scenario breakdown & investigation details

Metrics below reflect the current branch (after). Δ P95 compares against the base.

Scenario P50 (ms) P95 (ms) Requests RPS Δ P95 (ms)
API total 75.85 257.74 11,970 189.46 -0.83
Account 140.49 378.39 630 10.42 +24.38
TablesDB 73.01 231.99 6,510 104.5 -12.13
Storage 68.2 235.92 3,150 52.76 +0.42
Functions 115.7 330.68 1,680 28.77 +29.15

Top API waits (after)

API request Max wait (ms)
account.prefs.update 921.86
tokens.files.list 864.94
functions.create 801.36
functions.variables.get 797.17
tokens.get 760.74

@ChiragAgg5k
ChiragAgg5k marked this pull request as ready for review August 17, 2026 05:05
@greptile-apps

greptile-apps Bot commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR removes the deprecated singular x-appwrite.method metadata so SDK method names come from service-qualified OpenAPI operationId values, while preserving plural aliases.

  • Removes singular method metadata and its multi-method suffix handling from the OpenAPI 3 formatter.
  • Updates the formatter test expectations for multi-method routes.
  • Bumps appwrite/sdk-generator from 4.0.1 to 4.0.2 for the corresponding generator behavior.

Confidence Score: 5/5

The PR appears safe to merge, with the formatter and coordinated generator dependency consistently adopting operation IDs as the SDK method-name source.

No concrete blocking or independently actionable non-blocking issue remains in the changed formatter, test, or dependency lock entry.

Important Files Changed

Filename Overview
src/Appwrite/SDK/Specification/Format/OpenAPI3.php Removes singular method metadata while retaining operation IDs and plural method aliases; no concrete defect was identified.
tests/unit/SDK/Specification/FormatTest.php Removes assertions for the intentionally deleted singular metadata while preserving multi-method operation coverage.
composer.lock Updates sdk-generator to the coordinated 4.0.2 release required by the metadata contract change.

Reviews (1): Last reviewed commit: "build: update SDK generator to 4.0.2" | Re-trigger Greptile

@ChiragAgg5k
ChiragAgg5k merged commit 905c83e into main Aug 17, 2026
44 checks passed
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.

2 participants