Repository navigation
fix(llc): regenerate the OpenAPI client at protocol v239.70.0 - #3064
Conversation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configuration
You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## v11 #3064 +/- ##
======================================
Coverage ? 78.48%
======================================
Files ? 478
Lines ? 29284
Branches ? 0
======================================
Hits ? 22984
Misses ? 6300
Partials ? 0 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
… no longer has Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Submit a pull request
Linear: FLU-929
Github Issue: #
Note
Backend v239.68.0 (CHA-5968, CHA-3441) must be deployed before this merges. That release makes the server always send
app.defaults, memberuser_idand own-userblocked_user_ids, and this spec marks those fields required. A server that predates it fails to decodegetApp(sogetAppSettings) and anyChannelMemberResponse(e.g.channel.membership). It reached the demo app's cluster on 2026-10-15, and the live runs below pass against it.CLA
Description of the pull request
Regenerates
lib/open_api/atopenapi-v239.70.0with the generator fix from GetStream/chat#18085 (monolithv239.67.0-238-g8d6e1fa600). It is the first protocol release whose spec marks thesortquery params ofGetRepliesandGetPinnedMessagesas JSON.Object-typed GET query params used to go out as plain retrofit
@Querys, so Dio bracket-expanded the payload (payload[filter_conditions][id]=…) ortoString()ed the sort list, and the server answered 400invalid json data. Each of these params is now sent as one JSON-encoded query value. The typed public method onDefaultApistays as it was and forwards to a private retrofit method:payload:queryMembers,queryUsers,search,queryBannedUsers,queryFutureChannelBans,queryMessageFlagssort:getReplies,getPinnedMessagesA
DateTimeinside the value is sent as UTC RFC3339 and aSetas a list. A value that can't be encoded (a hand-written enum, aDuration) returns a failure without sending a request.Spec drift (
v239.44.1→v239.70.0)queryChannelBans, now listed in group 11.AppResponseFields.defaults,ChannelMemberResponse.userIdandOwnUserResponse.blockedUserIds. See the note above.revokeTokensIssuedBeforefromUserResponseand its siblings. No mapper read it.Test fixtures are updated for
defaultsandrevokeTokensIssuedBefore.generate_plan.pynow lists an op under its public name rather than its private_nameretrofit method.Testing
dart analyze --fatal-infosclean;flutter test --exclude-tags livegreen, 1,896 tests.New request-level tests in
test/open_api/api/default_api_json_query_test.dartassert on the outgoing request:payloadandsorteach go out as one JSON query value with no bracket keys;DateTimeis sent in UTC and aSetas a list;Durationreturns a failure without sending a request;Six of the seven fail against the previous client.
Local live runs against the demo app:
getAppSettingssucceeds and a generatedqueryChannelsdecodeschannel.membership.🤖 Generated with Claude Code