Files
openapi/platform
zeekayandHanzo Dev 89e781199b spec: give the 35 /v1/platform operations the responses OAS requires
`responses` is a REQUIRED field on an operation in OAS 3.x. 35 of the 41
operations under /v1/platform carried none, and openapi-generator does not
degrade on that — it aborts the whole document:

    -attribute paths.'/v1/platform/sites'(post).responses is missing
    ... 34 more
    at CodegenConfigurator.toContext(CodegenConfigurator.java:717)

So this was not a platform-tag problem. hanzo.yaml produced NO client in ANY
language: typescript, python, go, java, kotlin, ruby and rust all died on the
same parse. The committed SDKs still build only because they predate the merge
that brought these routes in.

They get a 2XX with no `content`. That is the honest shape rather than a
placeholder: cloud's openapi.yaml — the golden projection this file is authored
from — does not model these bodies either (it has the same 35 gaps), and the
platform schema set is 7 entries with no siteView, deploymentView or fleet row
to point at. Inventing one would write a contract into every SDK that the server
never promised. The routes are callable and typed as returning no modelled body;
when cloud annotates the response types, regenerating from it fills them in.

merge.py re-run: 1132 paths, 1519 operations, 778 schemas, 0 missing responses.
The hanzo.yaml diff is exactly these 105 lines — no incidental churn.

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-30 22:50:28 -07:00
..