Skip to content

fix(api): align API error response contract#3308

Draft
aofei wants to merge 2 commits into
goplus:devfrom
aofei:api-errors
Draft

fix(api): align API error response contract#3308
aofei wants to merge 2 commits into
goplus:devfrom
aofei:api-errors

Conversation

@aofei

@aofei aofei commented Jun 25, 2026

Copy link
Copy Markdown
Member

Document the shared REST error envelope, stable error code catalog, and reusable response components so clients can decode API failures consistently.

Document OAuth protocol error responses separately from APIError, including no-store headers, client-auth challenges, and the mixed APIError and OAuthError shape for identity provider form-post callback failures.

Decode OAuth error payloads in the frontend client and keep retry metadata handling aligned with documented backend error responses.

gemini-code-assist[bot]

This comment was marked as resolved.

Use `getApiStringLength` for frontend checks tied to OpenAPI
`minLength` and `maxLength` constraints so Unicode input is accepted or
rejected with the same semantics as the API contract.

Move remaining shared limits into API modules, remove native
`maxlength` enforcement where it would count UTF-16 code units, and
apply code point budgets to Copilot and AI description payloads.

Document the frontend validation rule for future API inputs.

Signed-off-by: Aofei Sheng <aofei@aofeisheng.com>
Document the shared REST error envelope, stable error code catalog,
and reusable response components so clients can decode API failures
consistently.

Document OAuth protocol error responses separately from `APIError`,
including no-store headers, client-auth challenges, and the mixed
`APIError` and `OAuthError` shape for identity provider form-post
callback failures.

Decode OAuth error payloads in the frontend client and keep retry
metadata handling aligned with documented backend error responses.

Signed-off-by: Aofei Sheng <aofei@aofeisheng.com>
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