You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
CommunicationsResource uses prefix-style method names (get_rfq/get_quote) inconsistent with every other resource #348
The rest of the SDK uses client.<resource>.<verb>(id, ...) — client.orders.get(...), client.markets.get(...), client.events.get(...). CommunicationsResource re-encodes the noun in the method name: get_id, list_rfqs, get_rfq, create_rfq, delete_rfq, get_quote, create_quote, delete_quote, accept_quote, confirm_quote. Two costs: autocomplete spills both get_rfq and get_quote into the namespace, and the precedent makes any future sub-noun (e.g. negotiations) worse.
The RFQ-vs-Quote disambiguation can be done with sub-namespaces (client.communications.rfqs.get(...)) the same way the OpenAPI tag structure already groups them.
kalshi/resources/markets.py:297, events.py:174, orders.py:423 — all use the bare verb get(id, ...).
Suggested fix
Introduce two sub-resources client.communications.rfqs and client.communications.quotes, each exposing list/list_all/get/create/delete (and accept/confirm on quotes), matching the OpenAPI v3.18.0 tag structure. Deprecate the flat names for one release with DeprecationWarning forwarders. Update docs/resources/communications.md to document the new shape. Treat this as breaking under the existing v2 deprecation policy.
Deferred to v3.0.0 per Round-3 audit closure plan.
Reason: this change renames public methods, so it cannot ship in a v2.x minor without adding deprecation aliases + warnings + alias tests for every renamed symbol. Bundling all such renames into v3.0.0 keeps v2.7 a clean polish release and avoids alias drift.
Linked plan: /tmp/kalshi-review-r3/PLAN.md Wave 4. Re-opens (well, stays open) for scheduling when v3.0.0 work begins.
Activity
TexasCoding commentedon May 22, 2026
Deferred to v3.0.0 per Round-3 audit closure plan.
Reason: this change renames public methods, so it cannot ship in a v2.x minor without adding deprecation aliases + warnings + alias tests for every renamed symbol. Bundling all such renames into v3.0.0 keeps v2.7 a clean polish release and avoids alias drift.
Linked plan:
/tmp/kalshi-review-r3/PLAN.mdWave 4. Re-opens (well, stays open) for scheduling when v3.0.0 work begins.release: 2.7.0 — post-v2.6 independent multi-LLM reviewer SDK audit c…
release: 3.0.0 — public-API rename release (#348, #349, #351) (#378)