Skip to content

Order.status: uses British spelling 'cancelled' instead of CCXT 'canceled' #152

@realfishsam

Description

@realfishsam

Inconsistency

PMXT uses 'cancelled' (British spelling, double-L) for the cancelled order status, while CCXT uses 'canceled' (American spelling, single-L).

Current (PMXT)

core/src/types.ts:

interface Order {
  status: 'pending' | 'open' | 'filled' | 'cancelled' | 'rejected';
  //                                        ^^^^^^^^^^ British spelling
}

sdks/python/pmxt/models.py (line 385):

status: str  # "pending", "open", "filled", "cancelled", "rejected"

Expected (CCXT convention)

/tmp/ccxt/ts/src/base/types.ts (line 128):

interface Order {
  status: 'open' | 'closed' | 'canceled' | Str;
  //                           ^^^^^^^^^ American spelling
}

CCXT uses 'canceled' (one L). Additionally, CCXT's status values are 'open', 'closed', 'canceled' — PMXT adds 'pending', 'filled', and 'rejected' which are not in the CCXT standard set. 'filled' maps to CCXT's 'closed'.

Impact

String comparisons order.status === 'canceled' written for CCXT will always be false on PMXT orders (which return 'cancelled'). This is a silent bug in any CCXT-compatible order-state machine.

Found by automated PMXT ↔ CCXT API consistency audit

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