Gap
LimitlessExchange exposes watchUserPositions(callback) — a WebSocket method that streams real-time authenticated user position updates. The Python SDK base Exchange class exposes watch_user_positions. The TypeScript SDK does not expose this method anywhere.
Core
File: core/src/exchanges/limitless/index.ts line 501
watchUserPositions(callback: (positions: Position[]) => void): void
Subscribes to Limitless's user-position WebSocket feed. Requires authentication (API key). The callback receives updated Position[] arrays as the user's positions change.
TypeScript SDK
Missing — the Limitless subclass in sdks/typescript/pmxt/client.ts (lines 2576–2580) is a thin wrapper with no watchUserPositions method. The base Exchange class also has no watchUserPositions. Searching the entire sdks/typescript/ tree for watchUserPositions returns zero results.
Python SDK
Present — watch_user_positions(callback?) is defined on the base Exchange class in sdks/python/pmxt/client.py at line 2158. It constructs POST /api/{exchange}/watchUserPositions, sends credentials, and converts the response to a list of Position objects.
Evidence
grep -rn "watchUserPositions\|watch_user_positions" sdks/typescript/ returns zero results.
grep -n "watch_user_positions" sdks/python/pmxt/client.py returns line 2158 (method definition).
grep -n "watchUserPositions" core/src/exchanges/limitless/index.ts returns line 501.
The sidecar accepts POST /api/limitless/watchUserPositions via dynamic dispatch since the method exists on the exchange instance.
Impact
TypeScript SDK users building Limitless position dashboards or automated position managers cannot subscribe to real-time position updates. They must poll fetchPositions on a timer or construct raw sidecar calls. Python users have a fully typed watch_user_positions. This is an asymmetric TypeScript-only gap.
Found by automated Core-to-SDK surface coverage audit
Gap
LimitlessExchangeexposeswatchUserPositions(callback)— a WebSocket method that streams real-time authenticated user position updates. The Python SDK baseExchangeclass exposeswatch_user_positions. The TypeScript SDK does not expose this method anywhere.Core
File:
core/src/exchanges/limitless/index.tsline 501Subscribes to Limitless's user-position WebSocket feed. Requires authentication (API key). The callback receives updated
Position[]arrays as the user's positions change.TypeScript SDK
Missing — the
Limitlesssubclass insdks/typescript/pmxt/client.ts(lines 2576–2580) is a thin wrapper with nowatchUserPositionsmethod. The baseExchangeclass also has nowatchUserPositions. Searching the entiresdks/typescript/tree forwatchUserPositionsreturns zero results.Python SDK
Present —
watch_user_positions(callback?)is defined on the baseExchangeclass insdks/python/pmxt/client.pyat line 2158. It constructsPOST /api/{exchange}/watchUserPositions, sends credentials, and converts the response to a list ofPositionobjects.Evidence
grep -rn "watchUserPositions\|watch_user_positions" sdks/typescript/returns zero results.grep -n "watch_user_positions" sdks/python/pmxt/client.pyreturns line 2158 (method definition).grep -n "watchUserPositions" core/src/exchanges/limitless/index.tsreturns line 501.The sidecar accepts
POST /api/limitless/watchUserPositionsvia dynamic dispatch since the method exists on the exchange instance.Impact
TypeScript SDK users building Limitless position dashboards or automated position managers cannot subscribe to real-time position updates. They must poll
fetchPositionson a timer or construct raw sidecar calls. Python users have a fully typedwatch_user_positions. This is an asymmetric TypeScript-only gap.Found by automated Core-to-SDK surface coverage audit