Add static OpenAPI spec and Stainless SDK config

Introduce SDK generation scaffolding: commit a static openapi.json
extracted from the Utoipa annotations via a golden-file test, add
Stainless workspace/config for TypeScript and Python SDKs, and clean
up operation IDs for ergonomic generated method names.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Ragnor Comerford 2026-04-17 14:26:31 +02:00
parent 9ad9d1f71f
commit 228032a4ac
No known key found for this signature in database
6 changed files with 1887 additions and 0 deletions

60
.stainless/stainless.yml Normal file
View file

@ -0,0 +1,60 @@
edition: "2026-02-23"
organization:
name: omnigraph
docs: https://github.com/ModernRelay/omnigraph
github_org: ModernRelay
targets:
typescript:
package_name: omnigraph
production_repo: ModernRelay/omnigraph-typescript
publish:
npm: true
python:
package_name: omnigraph
production_repo: ModernRelay/omnigraph-python
publish:
pypi: true
client_settings:
opts:
api_key:
type: string
auth:
security_scheme: bearer_token
base_url:
type: string
resources:
$client:
methods:
read: post /read
change: post /change
export: post /export
ingest: post /ingest
schema:
methods:
apply: post /schema/apply
branches:
methods:
list: get /branches
create: post /branches
delete: delete /branches/{branch}
merge: post /branches/merge
runs:
methods:
list: get /runs
retrieve: get /runs/{run_id}
publish: post /runs/{run_id}/publish
abort: post /runs/{run_id}/abort
commits:
methods:
list: get /commits
retrieve: get /commits/{commit_id}
snapshots:
methods:
retrieve: get /snapshot
settings:
license: MIT

13
.stainless/workspace.json Normal file
View file

@ -0,0 +1,13 @@
{
"project": "omnigraph",
"openapi_spec": "../openapi.json",
"stainless_config": "./stainless.yml",
"targets": {
"typescript": {
"output_path": "../sdks/omnigraph-typescript"
},
"python": {
"output_path": "../sdks/omnigraph-python"
}
}
}