Repository navigation
Changes
61d47df release: 0.17.0 (2026-10-28)
b6f10e2 Merge branch 'feat/txflow-trading' into feat/risex-trading
ab92f9c docs(txflow): MCP and JSON-contract notes follow trading being on
93c123b test(txflow): typecheck — a failed cancel's ref may be null
2941a8f feat(txflow): switch TxFlow trading on (manual trading only)
93d8bc7 fix(txflow): price-band refusals name the band and the largest slippage bound that fits
ceddeb1 fix(txflow): TP/SL pair client id on the SL leg only; an unset leg is the one with trigger ""
2796a49 feat(txflow): position TP/SL as one positionTpsl pair; list and cancel tpslOrders legs
96218bb fix(txflow): standalone triggers send tpsl ""; cancel bodies sign {grouping, a, o}
6c6ad39 fix(txflow): re-read the lagging order history after a cancel (up to 90 s)
7a0085c Revert "fix(txflow): prove a 0-fill cancel by open orders + userFills, not the order history"
53cfcbf fix(txflow): prove a 0-fill cancel by open orders + userFills, not the order history
06eac33 fix(txflow): drop the accountAccessStatus pre-check from agent approve / verify
5f3f460 docs(txflow): testnet checklist covers historicalTriggerOrders timestamp / createTime
ca7a56a fix(txflow): refuse trade multi up front naming the leg; page open orders until an empty page
52154ef docs(txflow): trading implemented, switched off pending testnet verification
4445e18 feat(txflow): ship trading switched off behind TXFLOW_TRADING_ENABLED
f7fc084 fix(txflow): surface OWS key-delete failures instead of swallowing them
e8c81e4 fix(txflow): client-id match window, proven cancels, paging, m on every order
8599d50 fix(txflow): 5xx is unknown even with an err body; require the confirm echo
a57fee7 docs(txflow): trading, agent keys, whitelist and refusals
b86919d feat(txflow): CLI and MCP wiring for TxFlow trading
66c9425 feat(txflow): agent approve, import, verify and revoke
8e8c1ca feat(txflow): account reads and trading in the TxFlow adapter
c1012c2 feat(txflow): signing and the /exchange write transport
3751fd5 test(conformance): a request missing from the fixture fails the replay
926c864 test(conformance): record the Lighter RH stream the cross arb-rates cell opens
fe3c121 test(conformance): record TxFlow's official API in the cross and parity fixtures
4e9fb02 docs(risex): TP/SL stays unsupported — it needs an account-signed OperatorHub allowance; changelog for the testnet fixes
bff5338 fix(risex): market fills report the average price; a partial IOC is venue-final
946d9f8 fix(trade): tpsl refusal no longer points to trade stop on venues without stops
c29c8be fix(risex): market orders go out as LIMIT IOC at the protection price; report the venue-final IOC outcome
1c4432a fix(risex): cancel-all re-reads the lagging open list and proves each order cancelled by id
63b1c98 fix(risex): permission 1 is the all-bits mask — disable only 0, 3, 4; prove by masks
550c627 fix(risex): restrict a new signer by its raw permission bitmap, permission 0 last
5ade5c5 fix(signer): serialize bigint typed-data values for OWS as decimal strings
cda8afb fix(risex): re-pin the testnet router implementation after the 2026-10-27 upgrade
0075192 feat(risex): switch RISEx trading on (manual trading only)
90e6b83 test(conformance): re-record venue fixtures on one day
c9cd75c fix(txflow): read TxFlow's official API (Beta) instead of the web-app API
npm: npm install -g perp-cli@v0.17.0
MCP: npx -y -p perp-cli perp-mcp
What's Changed
- fix(txflow): official API (Beta); conformance fails on a request missing from a fixture by @Hiksang in #59
- feat(txflow): TxFlow trading, switched on (manual trading only) by @Hiksang in #60
- feat(risex): RISEx trading on (manual only) + testnet fixes by @Hiksang in #61
- release: 0.17.0 (2026-10-28) by @Hiksang in #62
Full Changelog: v0.16.0...v0.17.0