Skip to content

feat: refresh Predictions contracts and harden transports - #75

Merged
Reddimus merged 5 commits into
mainfrom
fix/full-sdk-audit-20261025
Oct 25, 2026
Merged

Reddimus merged 5 commits into
mainfrom
fix/full-sdk-audit-20261025

Conversation

@Reddimus

@Reddimus Reddimus commented Oct 25, 2026 •

Copy link
Copy Markdown
Owner

Refresh Predictions OpenAPI 3.34.0 and AsyncAPI 2.0.0: 128 REST operations and 14 data channels, including ten explicitly documented prelaunch RFQ-batch operations. Preserve optional server timestamps and add successful request/response contracts for the new batch and FCM writes.

Harden full-input JSON validation, independent balance pacing, retry arithmetic, bounded HTTP/WebSocket bodies, signing inputs, and URL handling. Contain WebSocket internal failures without allocating during cleanup; preserve positive reconnect waits. Add portable Windows HTTP loopback tests and concise setup documentation, scoped tools, and review configuration. Prepare v0.7.0.

Validation: 334 native tests; 324 ASan/UBSan tests; 75 generator tests; 334 tests against system Glaze 8.3.0; format, explicit-type, code-generation, Markdown and clang-tidy checks; installed/FetchContent consumers and API docs. The sustained allocation-failure regression aborts with the old cleanup and passes with the fix, including client reuse. All required CI checks pass at 7c6f314, including Windows, Linux, macOS, ASan/UBSan, TSan and consumer builds; CodeQL passes. Independent code and final documentation reviews approved; the final external source review found no new issues.

Live public market data, Ed25519/RSA authenticated portfolio reads, and a WebSocket orderbook snapshot passed. No production writes were made. Demo order/cancel was not run because no demo credential was identified; prelaunch endpoints are validated offline against the published contract.

@greptile-apps

greptile-apps Bot commented Oct 25, 2026 •

Copy link
Copy Markdown

RetriggerView in GreptileConfidence Score: 5/5 Tier: apex

[High impact] The PR appears safe to merge; the previous findings are addressed and no new blocking issue was found.

Summary

Refreshes Predictions contracts for v0.7.0 and hardens HTTP and WebSocket behavior.

  • The client covers the refreshed Predictions REST API, including RFQ batches.
  • WebSocket clients can follow batch activity and read server-send timestamps.
  • HTTP calls now use bounded responses and steadier request pacing.
  • WebSocket sessions now contain callback failures and cap incoming messages.
  • Release and repository settings now match the 0.7.0 client update.

Diagram

%%{init: {'theme': 'neutral'}}%%
flowchart TD
  A["WebSocket work"] -->|"Connection drops"| B["Keep subscriptions and reconnect"]
  A -->|"Internal exception"| C["Stop the failed session"]
  C --> D["Clear subscriptions without copying"]
  D --> E["Report that the connection stopped"]
  E --> F["Worker destroys the connection context"]
Loading

Reviews (3) · Last reviewed commit: "fix: stop WebSocket sessions safely unde..." · Reviewed by Greptile

Comment thread src/http/retry.cpp Outdated
Comment thread src/http/retry.cpp
Comment thread src/http/client.cpp Outdated
Comment thread tests/test_operation_routes.cpp
Comment thread src/ws/websocket.cpp Outdated
Comment thread src/ws/reconnect.hpp Outdated
@Reddimus
Reddimus merged commit c99df8d into main Oct 25, 2026
14 checks passed
@Reddimus
Reddimus deleted the fix/full-sdk-audit-20261025 branch October 25, 2026 23:01
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