Skip to content

fix: require sdk-python 1.5.0 for tolerant response DTOs - #66

Merged
caballeto merged 1 commit into
mainfrom
fix/sdk-1.5-response-tolerance
Aug 14, 2026
Merged

fix: require sdk-python 1.5.0 for tolerant response DTOs#66
caballeto merged 1 commit into
mainfrom
fix/sdk-1.5-response-tolerance

Conversation

@caballeto

Copy link
Copy Markdown
Member

Summary

  • Bump devhelm>=1.5.0 and refresh uv.lock. Published MCP 1.4.0 was locked to sdk-python 1.4.0 (extra='forbid'), so status-page create/list/get crashed on additive API fields (openIncident, component serviceSubscriptionId / override fields, subscriber channel / destination).
  • sdk-python 1.5.0 already ignores unknown keys on *Dto / *Response. This is the unblock for hosted mcp.devhelm.io and uvx devhelm-mcp-server.
  • Pins the invariant in tests/test_sdk_response_tolerance.py. Nested non-Dto shapes (StatusPageBranding) land in sdk-python 1.6.0 (sibling PR).

Linear: https://linear.app/devhelm/issue/END-489664

Test plan

  • uv run pytest tests/ (190 passed)
  • Installed StatusPageDto / StatusPageComponentDto / StatusPageSubscriberDto report extra='ignore'
  • Merge, then cut MCP 1.5.0 and redeploy mcp.devhelm.io (registry.digitalocean.com/devhelm/mcp-server:production)
  • After sdk-python 1.6.0 is on PyPI, uv lock --upgrade-package devhelm to pick up nested-shape tolerance

Do not merge until you are ready to release — or merge now and release in the same sitting. This PR is safe against published 1.5.0 today.

Made with Cursor

MCP 1.4.0 was locked to sdk-python 1.4.0 (extra='forbid'). Additive API
fields on status-page create/list then failed as extra_forbidden. 1.5.0
already ignores extras on *Dto; this picks that up.

Co-authored-by: Cursor <cursoragent@cursor.com>
@caballeto
caballeto merged commit 3d5822a into main Aug 14, 2026
4 checks passed
@caballeto
caballeto deleted the fix/sdk-1.5-response-tolerance branch August 14, 2026 08:48
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