Skip to content

fix: align Classic models with the current public contract - #58

Merged
John Xing (johnxing-amigo) merged 4 commits into
mainfrom
fix/current-public-contracts
Sep 8, 2026
Merged

John Xing (johnxing-amigo) merged 4 commits into
mainfrom
fix/current-public-contracts

Conversation

@johnxing-amigo

@johnxing-amigo John Xing (johnxing-amigo) commented Sep 8, 2026 •

Copy link
Copy Markdown
Contributor

Current Classic responses and metric-creation payloads no longer match the SDK's tracked models. Refresh the committed schema from https://api.amigo.ai/v1/openapi.json and regenerate the models so agent-version responses do not require a removed ID, metric creation accepts the initial-version payload, and current model identifiers deserialize.

The previous branding postprocessor fails after those fields disappear from the public schema. Retain the already-public optional branding attributes only on the organization response model, without relaxing similarly named fields elsewhere. Configure code generation to use enum members for defaults so the generated query model passes type checking.

The schema refresh also reflects retired tool routes and other removed response fields. This updates the supported contract; it does not implement new backend capabilities. Package publication and upgrade version selection remain separate from this source fix.

Validation: model generation, Ruff lint and formatting, mypy, 200 unit tests passed (8 skipped, 40 integration cases deselected), 88.46% coverage, wheel and source-package build. Added regressions for agent-version response parsing, metric creation, and current model IDs. Provisioned integration behavior was not tested locally.

CI result: Python 3.11/3.12 test jobs pass; Python 3.13 completes tests/type checks but fails the Codecov uploader's GPG-key/signature download verification. The separate integration job fails DNS resolution during API-key exchange. A rerun reproduced both external failures. Signature verification and integration failures remain visible; no bypass or weakened check was introduced. CodeQL passes. Required owner review and these CI blockers remain outstanding.

Release status (September 8, 2026 UTC): Merged and published as Classic Python 2.0.0. The pinned Codecov 7.0.0 action fixes the old signing-key download, and release tests pass on Python 3.11–3.13. PyPI wheel and sdist publication and clean installed model parsing pass. The separate informational integration job still fails DNS resolution for its configured test host.

@johnxing-amigo
John Xing (johnxing-amigo) merged commit 8d2d11a into main Sep 8, 2026
7 of 8 checks passed
@johnxing-amigo
John Xing (johnxing-amigo) deleted the fix/current-public-contracts branch September 8, 2026 01:18
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