Skip to content

TypeScript SDK ExchangeOptions missing walletAddress — Limitless delegated signing unavailable #970

@realfishsam

Description

@realfishsam

Gap

LimitlessExchange in core reads credentials.walletAddress for delegated signing. The TypeScript SDK's ExchangeOptions interface has no walletAddress field, and getCredentials() never sends it, making delegated signing impossible from the TypeScript SDK.

Current state

Core (core/src/exchanges/limitless/index.ts:103, 110): reads this.credentials?.walletAddress to configure delegated signing.

TypeScript SDK (sdks/typescript/pmxt/client.ts:194–239): ExchangeOptions contains only apiKey, privateKey, pmxtApiKey, baseUrl, autoStartServer, proxyAddress, signatureType — no walletAddress.

TypeScript SDK (sdks/typescript/pmxt/client.ts:359–369): getCredentials() returns { apiKey, privateKey, funderAddress, signatureType } — no walletAddress is forwarded.

// sdks/typescript/pmxt/client.ts:359
protected getCredentials(): ExchangeCredentials | undefined {
    if (!this.apiKey && !this.privateKey) return undefined;
    return {
        apiKey: this.apiKey,
        privateKey: this.privateKey,
        funderAddress: this.proxyAddress,
        signatureType: this.signatureType,
        // walletAddress never included
    };
}

Python SDK: the equivalent gap is tracked in #935.

Expected behaviour

ExchangeOptions should include an optional walletAddress field, and getCredentials() should include it in the returned credentials object so the sidecar receives it for Limitless delegated signing.

Impact

TypeScript SDK users cannot use the Limitless delegated signing flow regardless of what they pass to the Limitless constructor.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions