Skip to content

feat: add dexAbstraction to the abstraction enum surfaces - #79

Merged
joeblau merged 1 commit into
mainfrom
feat/dex-abstraction-enum
Jul 27, 2026
Merged

feat: add dexAbstraction to the abstraction enum surfaces#79
joeblau merged 1 commit into
mainfrom
feat/dex-abstraction-enum

Conversation

@joeblau

@joeblau joeblau commented Jul 27, 2026

Copy link
Copy Markdown

Adds dexAbstraction (documented in the abstraction enum: unifiedAccount | portfolioMargin | disabled | default | dexAbstraction) to the three surfaces that lacked it:

Surface Change Runtime impact
UserAbstractionResponse (info) union += dexAbstraction type-only (responses not runtime-validated)
webData3.abstraction (subscription) union += dexAbstraction type-only
userSetAbstraction picklist (exchange) picklist += dexAbstraction runtime-validated — verified accepted by the live exchange deserializer (it reaches account-state checks where a garbage value gets a 422 structural rejection)

Multi-sig: dexAbstraction has no single-letter wire form, so toMultiSigPayloadAction passes the full name through unchanged (pinned by a new offline test).

Live schema-coverage tests ignore the new branches with comments (no testnet account exists in dexAbstraction mode, and flipping the shared live account would leak state into other tests); offline batteries pin the new value on all three surfaces.

- UserAbstractionResponse (info) and webData3.abstraction (subscription)
  gain the value per the documented enum (type-only, responses are not
  runtime-validated)
- userSetAbstraction (exchange) picklist accepts dexAbstraction: verified
  against the live exchange deserializer (passes structural validation
  where a garbage value 422s). It has no single-letter wire form, so the
  multi-sig payload mapping passes the full name through unchanged.
- Tests: live coverage ignores for the unproducible branches (no testnet
  account in that mode; flipping the shared account would leak), an
  offline multi-sig passthrough case, and a webData3 delivery pinning.
@joeblau
joeblau merged commit 884b196 into main Jul 27, 2026
3 of 4 checks passed
@joeblau
joeblau deleted the feat/dex-abstraction-enum branch July 27, 2026 19:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant