Persist request slippage cap state
Some checks failed
deploy / deploy (push) Failing after 34s

Proof: node --test test/intent-requests.test.mjs verifies uncapped request preflights persist null slippage cap state.

Assumptions: request preflight payloads should expose both amount and slippage cap state so operator-visible records match DB strategy config.

Still fake: request settlement truth still depends on inventory-delta attribution instead of venue-native terminal fill events.
This commit is contained in:
philipp 2026-05-18 14:19:43 +02:00
parent 3cfd48e016
commit 8def832c5e
2 changed files with 4 additions and 0 deletions

View file

@ -203,6 +203,9 @@ export function createIntentRequestController({
request_max_notional: requestPair.requestMaxNotional == null request_max_notional: requestPair.requestMaxNotional == null
? null ? null
: String(requestPair.requestMaxNotional), : String(requestPair.requestMaxNotional),
request_max_slippage_bps: requestPair.requestMaxSlippageBps == null
? null
: Number(requestPair.requestMaxSlippageBps),
price_route_id: requestPair.priceRoute?.routeId || null, price_route_id: requestPair.priceRoute?.routeId || null,
source_asset_id: sourceAsset.assetId, source_asset_id: sourceAsset.assetId,
source_symbol: sourceAsset.symbol, source_symbol: sourceAsset.symbol,

View file

@ -253,6 +253,7 @@ test('DB null request limits allow operator-chosen amount and slippage', async (
assert.equal(preflight.state, 'draft'); assert.equal(preflight.state, 'draft');
assert.equal(preflight.reason_code, 'quote_available'); assert.equal(preflight.reason_code, 'quote_available');
assert.equal(preflight.request_max_notional, null); assert.equal(preflight.request_max_notional, null);
assert.equal(preflight.request_max_slippage_bps, null);
assert.equal(preflight.slippage_bps, 250); assert.equal(preflight.slippage_bps, 250);
assert.equal(preflight.live_submit_capable, true); assert.equal(preflight.live_submit_capable, true);
assert.equal(relay.quoteCalls, 1); assert.equal(relay.quoteCalls, 1);