dexbot 1.5.0 → 1.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +44 -0
- package/analysis/ama_fitting/package.json +1 -1
- package/analysis/trend_detection/package.json +1 -1
- package/claw/package.json +1 -1
- package/claw/runtimes/openclaw-plugin/openclaw.plugin.json +1 -1
- package/claw/runtimes/openclaw-plugin/package.json +1 -1
- package/claw/tests/test_claw_mcp_transport.ts +2 -2
- package/dist/dexbot.js +5 -5
- package/dist/dexbot.js.map +1 -1
- package/dist/modules/account_orders.d.ts +7 -1
- package/dist/modules/account_orders.d.ts.map +1 -1
- package/dist/modules/account_orders.js +34 -1
- package/dist/modules/account_orders.js.map +1 -1
- package/dist/modules/constants.d.ts +2 -0
- package/dist/modules/constants.d.ts.map +1 -1
- package/dist/modules/constants.js +12 -0
- package/dist/modules/constants.js.map +1 -1
- package/dist/modules/dexbot_class.d.ts +1 -0
- package/dist/modules/dexbot_class.d.ts.map +1 -1
- package/dist/modules/dexbot_cow_runtime.d.ts +19 -1
- package/dist/modules/dexbot_cow_runtime.d.ts.map +1 -1
- package/dist/modules/dexbot_cow_runtime.js +335 -78
- package/dist/modules/dexbot_cow_runtime.js.map +1 -1
- package/dist/modules/dexbot_fill_runtime.d.ts.map +1 -1
- package/dist/modules/dexbot_fill_runtime.js +7 -1
- package/dist/modules/dexbot_fill_runtime.js.map +1 -1
- package/dist/modules/dexbot_startup_runtime.d.ts +1 -0
- package/dist/modules/dexbot_startup_runtime.d.ts.map +1 -1
- package/dist/modules/dexbot_startup_runtime.js +54 -4
- package/dist/modules/dexbot_startup_runtime.js.map +1 -1
- package/dist/modules/dexbot_state_recovery.d.ts.map +1 -1
- package/dist/modules/dexbot_state_recovery.js +7 -0
- package/dist/modules/dexbot_state_recovery.js.map +1 -1
- package/dist/modules/order/accounting.d.ts +34 -0
- package/dist/modules/order/accounting.d.ts.map +1 -1
- package/dist/modules/order/accounting.js +199 -5
- package/dist/modules/order/accounting.js.map +1 -1
- package/dist/modules/order/export.d.ts +122 -15
- package/dist/modules/order/export.d.ts.map +1 -1
- package/dist/modules/order/export.js +310 -46
- package/dist/modules/order/export.js.map +1 -1
- package/dist/modules/order/grid.d.ts.map +1 -1
- package/dist/modules/order/grid.js +22 -17
- package/dist/modules/order/grid.js.map +1 -1
- package/dist/modules/order/grid_reconcile.d.ts.map +1 -1
- package/dist/modules/order/grid_reconcile.js +7 -3
- package/dist/modules/order/grid_reconcile.js.map +1 -1
- package/dist/modules/order/grid_reconcile_internal.d.ts.map +1 -1
- package/dist/modules/order/grid_reconcile_internal.js +98 -28
- package/dist/modules/order/grid_reconcile_internal.js.map +1 -1
- package/dist/modules/order/manager.d.ts +52 -6
- package/dist/modules/order/manager.d.ts.map +1 -1
- package/dist/modules/order/manager.js +156 -21
- package/dist/modules/order/manager.js.map +1 -1
- package/dist/modules/order/strategy.d.ts.map +1 -1
- package/dist/modules/order/strategy.js +17 -2
- package/dist/modules/order/strategy.js.map +1 -1
- package/dist/modules/order/sync_engine.d.ts.map +1 -1
- package/dist/modules/order/sync_engine.js +213 -17
- package/dist/modules/order/sync_engine.js.map +1 -1
- package/dist/modules/order/utils/math.d.ts +70 -4
- package/dist/modules/order/utils/math.d.ts.map +1 -1
- package/dist/modules/order/utils/math.js +136 -5
- package/dist/modules/order/utils/math.js.map +1 -1
- package/dist/modules/order/utils/order.d.ts +117 -5
- package/dist/modules/order/utils/order.d.ts.map +1 -1
- package/dist/modules/order/utils/order.js +274 -13
- package/dist/modules/order/utils/order.js.map +1 -1
- package/dist/modules/order/utils/system.d.ts +14 -0
- package/dist/modules/order/utils/system.d.ts.map +1 -1
- package/dist/modules/order/utils/system.js +51 -3
- package/dist/modules/order/utils/system.js.map +1 -1
- package/dist/modules/order/utils/validate.d.ts +29 -2
- package/dist/modules/order/utils/validate.d.ts.map +1 -1
- package/dist/modules/order/utils/validate.js +207 -35
- package/dist/modules/order/utils/validate.js.map +1 -1
- package/dist/scripts/analyze-credit.d.ts.map +1 -1
- package/dist/scripts/analyze-credit.js +53 -33
- package/dist/scripts/analyze-credit.js.map +1 -1
- package/docs/DEXBOT_COMPARISON.md +3 -3
- package/docs/EVOLUTION.md +7 -5
- package/docs/FUND_MOVEMENT_AND_ACCOUNTING.md +3 -1
- package/docs/GRID_RECONCILE.md +1 -0
- package/docs/LOGGING.md +3 -0
- package/docs/README.md +2 -2
- package/docs/WORKFLOW.md +1 -1
- package/package.json +1 -1
|
@@ -1489,16 +1489,20 @@ function countGapBandSpread(manager, orders, resolveIndex) {
|
|
|
1489
1489
|
* the SELL start cannot be derived, so the slot is not excluded.
|
|
1490
1490
|
* @param {string} orderType - ORDER_TYPES.BUY or ORDER_TYPES.SELL.
|
|
1491
1491
|
* @param {any} slot - Grid slot (or any object exposing an id like `slot-3`);
|
|
1492
|
-
* slots with an unparseable id are
|
|
1493
|
-
*
|
|
1494
|
-
*
|
|
1492
|
+
* slots with an unparseable id are admitted (returns true): geometry cannot
|
|
1493
|
+
* identify the gap for legacy ids, so windowing falls back to the stored
|
|
1494
|
+
* slot type exactly as pre-1.4.25 did (fail-open; consumers still reject
|
|
1495
|
+
* SPREAD-typed/empty slots via their type filters).
|
|
1496
|
+
* @returns {boolean} true when the slot sits inside the requested rail or its
|
|
1497
|
+
* geometry cannot be determined (fail-open), false only when a parseable id
|
|
1498
|
+
* sits provably outside the rail.
|
|
1495
1499
|
*/
|
|
1496
1500
|
function isSlotInRail(boundaryIdx, gapSlots, orderType, slot) {
|
|
1497
1501
|
if (boundaryIdx == null || !Number.isFinite(Number(boundaryIdx)))
|
|
1498
1502
|
return true;
|
|
1499
1503
|
const parsed = parseSlotIndex(slot?.id);
|
|
1500
1504
|
if (parsed === null)
|
|
1501
|
-
return
|
|
1505
|
+
return true;
|
|
1502
1506
|
const idx = parsed;
|
|
1503
1507
|
if (orderType === ORDER_TYPES.BUY)
|
|
1504
1508
|
return idx <= Number(boundaryIdx);
|
|
@@ -1509,6 +1513,133 @@ function isSlotInRail(boundaryIdx, gapSlots, orderType, slot) {
|
|
|
1509
1513
|
return true;
|
|
1510
1514
|
return idx >= sellStartIdx;
|
|
1511
1515
|
}
|
|
1516
|
+
/**
|
|
1517
|
+
* Whether a slot index sits inside the gap (spread) band: strictly between
|
|
1518
|
+
* the last BUY index (boundary) and the first SELL index. Geometry-only —
|
|
1519
|
+
* never consults the stored slot type, so it keeps working after rail-typed
|
|
1520
|
+
* holes (Phase 2) retype in-band actives to BUY/SELL.
|
|
1521
|
+
*
|
|
1522
|
+
* @param {number|null} idx - Parsed slot index (parseSlotIndex output)
|
|
1523
|
+
* @param {number} boundaryIdx - Last BUY slot index
|
|
1524
|
+
* @param {number} gapSlots - Spread gap slot count
|
|
1525
|
+
* @returns {boolean} True when the index is inside the gap band
|
|
1526
|
+
*/
|
|
1527
|
+
function isSlotIndexInGapBand(idx, boundaryIdx, gapSlots) {
|
|
1528
|
+
// Explicit null guard: Number(null) === 0 must never read as slot 0.
|
|
1529
|
+
if (idx === null || idx === undefined || idx === '')
|
|
1530
|
+
return false;
|
|
1531
|
+
if (boundaryIdx === null || boundaryIdx === undefined || boundaryIdx === '')
|
|
1532
|
+
return false;
|
|
1533
|
+
const n = Number(idx);
|
|
1534
|
+
const b = Number(boundaryIdx);
|
|
1535
|
+
const g = Number(gapSlots);
|
|
1536
|
+
if (!Number.isFinite(n) || !Number.isFinite(b) || !Number.isFinite(g))
|
|
1537
|
+
return false;
|
|
1538
|
+
const sellStartIdx = getSellStartIdx(b, g);
|
|
1539
|
+
if (!Number.isFinite(sellStartIdx))
|
|
1540
|
+
return false;
|
|
1541
|
+
return n > b && n < sellStartIdx;
|
|
1542
|
+
}
|
|
1543
|
+
/**
|
|
1544
|
+
* Pure stamped-evacuation size re-proof: a B-stamped (plan-build-proven)
|
|
1545
|
+
* evacuation bypasses the live probe, but the plan was built against the
|
|
1546
|
+
* booked size at plan time. An unprocessed fill landing between plan-build
|
|
1547
|
+
* and execution shrinks the booked remaining below the planned size — the
|
|
1548
|
+
* PARTIAL-only growth guard at the execution site misses it when the slot
|
|
1549
|
+
* is not (yet) PARTIAL. Re-prove the size against the LIVE booked
|
|
1550
|
+
* remaining (masterOrder.size) before honoring the stamp: fail closed
|
|
1551
|
+
* (false → live probe) when the booked remaining is non-finite or <= 0.
|
|
1552
|
+
*
|
|
1553
|
+
* Int-compare via floatToBlockchainInt when a finite precision is supplied
|
|
1554
|
+
* (bit-exact on-chain semantics, consistent with
|
|
1555
|
+
* isEvacuationRotationAllowed), else a strict numeric <= (never a float
|
|
1556
|
+
* epsilon).
|
|
1557
|
+
*
|
|
1558
|
+
* @param {number} newSize - Rotation destination size (planned)
|
|
1559
|
+
* @param {number} bookedRemaining - Live booked remaining (master grid)
|
|
1560
|
+
* @param {number} [precision] - Asset precision for bit-exact int compare
|
|
1561
|
+
* @returns {boolean} True when the planned size is still covered by the booking
|
|
1562
|
+
*/
|
|
1563
|
+
function isEvacuationSizeStillValid(newSize, bookedRemaining, precision = null) {
|
|
1564
|
+
const nS = Number(newSize);
|
|
1565
|
+
const bR = Number(bookedRemaining);
|
|
1566
|
+
if (!Number.isFinite(nS) || nS <= 0)
|
|
1567
|
+
return false;
|
|
1568
|
+
if (!Number.isFinite(bR) || bR <= 0)
|
|
1569
|
+
return false;
|
|
1570
|
+
if (precision != null && Number.isFinite(Number(precision))) {
|
|
1571
|
+
try {
|
|
1572
|
+
return floatToBlockchainInt(nS, Number(precision)) <= floatToBlockchainInt(bR, Number(precision));
|
|
1573
|
+
}
|
|
1574
|
+
catch {
|
|
1575
|
+
return nS <= bR;
|
|
1576
|
+
}
|
|
1577
|
+
}
|
|
1578
|
+
return nS <= bR;
|
|
1579
|
+
}
|
|
1580
|
+
/**
|
|
1581
|
+
* Pure gap-evacuation rotation allowance: decides whether a slot-to-slot
|
|
1582
|
+
* rotation (UPDATE with newGridId) reduces the violation surface enough to
|
|
1583
|
+
* bypass the LAST-FILL guard. Unit-testable in isolation — the guard block
|
|
1584
|
+
* stays thin and only wires origin/geometry/fail-closed around this.
|
|
1585
|
+
*
|
|
1586
|
+
* Allowance requires ALL of:
|
|
1587
|
+
* - type is BUY or SELL (gap-evacuation moves a committed rail order;
|
|
1588
|
+
* CREATEs carry no source slot and never qualify),
|
|
1589
|
+
* - old/new price and old/new size are finite, newSize > 0,
|
|
1590
|
+
* - size is bit-exact non-growing: floatToBlockchainInt(newSize) <=
|
|
1591
|
+
* floatToBlockchainInt(oldSize) when a finite precision is supplied,
|
|
1592
|
+
* otherwise a strict numeric <= (never a float epsilon),
|
|
1593
|
+
* - price moves outward onto the rail, away from the gap: SELL
|
|
1594
|
+
* newPrice >= oldPrice, BUY newPrice <= oldPrice. An evacuation that
|
|
1595
|
+
* reprices toward (or across) the gap is not violation-reducing.
|
|
1596
|
+
*
|
|
1597
|
+
* @param {number} oldPrice - Source slot price (master, pre-rotation)
|
|
1598
|
+
* @param {number} oldSize - Source slot booked size (master, pre-rotation)
|
|
1599
|
+
* @param {number} newPrice - Rotation destination price
|
|
1600
|
+
* @param {number} newSize - Rotation destination size (clamped)
|
|
1601
|
+
* @param {string} type - ORDER_TYPES.BUY or ORDER_TYPES.SELL
|
|
1602
|
+
* @param {number} [precision] - Asset precision for bit-exact int compare
|
|
1603
|
+
* @returns {{allowed: boolean, reason: string}}
|
|
1604
|
+
*/
|
|
1605
|
+
function isEvacuationRotationAllowed(oldPrice, oldSize, newPrice, newSize, type, precision = null) {
|
|
1606
|
+
if (type !== ORDER_TYPES.BUY && type !== ORDER_TYPES.SELL) {
|
|
1607
|
+
return { allowed: false, reason: `type ${String(type)} is not a rail type` };
|
|
1608
|
+
}
|
|
1609
|
+
const oP = Number(oldPrice);
|
|
1610
|
+
const oS = Number(oldSize);
|
|
1611
|
+
const nP = Number(newPrice);
|
|
1612
|
+
const nS = Number(newSize);
|
|
1613
|
+
if (!Number.isFinite(oP) || oP <= 0)
|
|
1614
|
+
return { allowed: false, reason: 'oldPrice unresolvable' };
|
|
1615
|
+
if (!Number.isFinite(oS) || oS <= 0)
|
|
1616
|
+
return { allowed: false, reason: 'oldSize unresolvable' };
|
|
1617
|
+
if (!Number.isFinite(nP) || nP <= 0)
|
|
1618
|
+
return { allowed: false, reason: 'newPrice invalid' };
|
|
1619
|
+
if (!Number.isFinite(nS) || nS <= 0)
|
|
1620
|
+
return { allowed: false, reason: 'newSize invalid' };
|
|
1621
|
+
let grew;
|
|
1622
|
+
if (precision != null && Number.isFinite(Number(precision))) {
|
|
1623
|
+
try {
|
|
1624
|
+
grew = floatToBlockchainInt(nS, Number(precision)) > floatToBlockchainInt(oS, Number(precision));
|
|
1625
|
+
}
|
|
1626
|
+
catch {
|
|
1627
|
+
grew = nS > oS;
|
|
1628
|
+
}
|
|
1629
|
+
}
|
|
1630
|
+
else {
|
|
1631
|
+
grew = nS > oS;
|
|
1632
|
+
}
|
|
1633
|
+
if (grew)
|
|
1634
|
+
return { allowed: false, reason: 'rotation grows booked size' };
|
|
1635
|
+
if (type === ORDER_TYPES.SELL && nP < oP) {
|
|
1636
|
+
return { allowed: false, reason: 'SELL evacuation must not reprice toward the gap' };
|
|
1637
|
+
}
|
|
1638
|
+
if (type === ORDER_TYPES.BUY && nP > oP) {
|
|
1639
|
+
return { allowed: false, reason: 'BUY evacuation must not reprice toward the gap' };
|
|
1640
|
+
}
|
|
1641
|
+
return { allowed: true, reason: 'evacuation reduces violation surface (outward repricing, non-growing size)' };
|
|
1642
|
+
}
|
|
1512
1643
|
function hashPriceLevels(priceLevels) {
|
|
1513
1644
|
// Simple deterministic hash: join with high precision and hash via tiny FNV.
|
|
1514
1645
|
const str = priceLevels.map(p => p.toFixed(12)).join('|');
|
|
@@ -1608,7 +1739,7 @@ function buildGenesisFromPriceLevels(startPrice, incrementPercent, gapSlots, pri
|
|
|
1608
1739
|
createdAt: Date.now()
|
|
1609
1740
|
};
|
|
1610
1741
|
}
|
|
1611
|
-
export { getBtsSide, getSellStartIdx, resolveGapBand, countGapBandSpread, calculateGapSlots, isSlotInRail, validateBoundaryCommit, validatePersistedBoundary, resolveGapSlots, isPercentageString, isPositiveNumber, isPositiveNumberOrPercent, isPositiveInt, parsePercentageString, toDecimal, resolveRelativePrice, parseRelativeMultiplier, validateGridPriceBounds, isExplicitZeroAllocation, getPrecision, computeChainFundTotals, calculateAvailableFundsValue, computeBtsFeeImpact, adjustBudgetForBtsFees, getGridBestPrices, calculateSpreadFromOrders, resolveConfigValue, resolveConfigValueWithRegistry, hasValidAccountTotals, blockchainToFloat, floatToBlockchainInt, quantizeFloat, normalizeInt, getPrecisionByOrderType, getPrecisionsForManager, getPrecisionSlack, quantumForPrecision, calculatePriceTolerance, findPriceCollision, findCrossedOrder, validateOrderAmountsWithinLimits, getMinOrderSize, getDustThresholdFactor, getSingleDustThreshold, getDoubleDustThreshold, validateOrderSize, getAssetFees, getAssetFeesSafe, allocateFundsByWeights, calculateOrderSizes, calculateRotationOrderSizes, calculateGridSideDivergenceMetric, calculateOrderCreationFees, calculateSwapInAmount, _setFeeCache, cloneWeightDistribution, clamp, roundTo, fixedTo, roundToDecimals, priceLevelsForGenesis, priceForSlot, slotIndexForPrice, slotIdForPrice, assertSlotPriceInvariant, priceSlotEqual, buildGenesisFromPriceLevels, hashPriceLevels };
|
|
1742
|
+
export { getBtsSide, getSellStartIdx, resolveGapBand, countGapBandSpread, calculateGapSlots, isSlotInRail, isSlotIndexInGapBand, isEvacuationRotationAllowed, isEvacuationSizeStillValid, validateBoundaryCommit, validatePersistedBoundary, resolveGapSlots, isPercentageString, isPositiveNumber, isPositiveNumberOrPercent, isPositiveInt, parsePercentageString, toDecimal, resolveRelativePrice, parseRelativeMultiplier, validateGridPriceBounds, isExplicitZeroAllocation, getPrecision, computeChainFundTotals, calculateAvailableFundsValue, computeBtsFeeImpact, adjustBudgetForBtsFees, getGridBestPrices, calculateSpreadFromOrders, resolveConfigValue, resolveConfigValueWithRegistry, hasValidAccountTotals, blockchainToFloat, floatToBlockchainInt, quantizeFloat, normalizeInt, getPrecisionByOrderType, getPrecisionsForManager, getPrecisionSlack, quantumForPrecision, calculatePriceTolerance, findPriceCollision, findCrossedOrder, validateOrderAmountsWithinLimits, getMinOrderSize, getDustThresholdFactor, getSingleDustThreshold, getDoubleDustThreshold, validateOrderSize, getAssetFees, getAssetFeesSafe, allocateFundsByWeights, calculateOrderSizes, calculateRotationOrderSizes, calculateGridSideDivergenceMetric, calculateOrderCreationFees, calculateSwapInAmount, _setFeeCache, cloneWeightDistribution, clamp, roundTo, fixedTo, roundToDecimals, priceLevelsForGenesis, priceForSlot, slotIndexForPrice, slotIdForPrice, assertSlotPriceInvariant, priceSlotEqual, buildGenesisFromPriceLevels, hashPriceLevels };
|
|
1612
1743
|
/**
|
|
1613
1744
|
* Round a value to a given factor.
|
|
1614
1745
|
* @param {number} value - Value to round
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"math.js","sourceRoot":"","sources":["../../../../modules/order/utils/math.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"math.js","sourceRoot":"","sources":["../../../../modules/order/utils/math.ts"],"names":[],"mappings":"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"}
|
|
@@ -315,6 +315,57 @@ declare function virtualizeOrder(order: any): any;
|
|
|
315
315
|
* @returns {Object} Spread placeholder order (VIRTUAL, SPREAD type, zero size)
|
|
316
316
|
*/
|
|
317
317
|
declare function convertToSpreadPlaceholder(order: any): any;
|
|
318
|
+
/**
|
|
319
|
+
* Convert an order to a rail-typed hole placeholder: VIRTUAL with the rail
|
|
320
|
+
* (BUY/SELL) type and the booked size preserved.
|
|
321
|
+
*
|
|
322
|
+
* Phase 2 counterpart to convertToSpreadPlaceholder. A consumed/in-rail
|
|
323
|
+
* source slot (e.g. a filled sell at slot-147, or a rotation source) must
|
|
324
|
+
* stay on its rail so candidate-selection and evacuation geometry keep
|
|
325
|
+
* working — only true gap-band slots become side-neutral SPREAD holes.
|
|
326
|
+
* validateOrder accepts sized BUY/SELL VIRTUAL slots (phantom/ILLEGAL checks
|
|
327
|
+
* only fire for on-chain states), so the size survives validation.
|
|
328
|
+
*
|
|
329
|
+
* @param {Object} order - Order to convert
|
|
330
|
+
* @param {string} railType - ORDER_TYPES.BUY or ORDER_TYPES.SELL
|
|
331
|
+
* @param {number} [sizeOverride] - Explicit size (defaults to booked size, 0 when non-finite)
|
|
332
|
+
* @returns {Object} Rail hole placeholder (VIRTUAL, rail type, preserved size)
|
|
333
|
+
*/
|
|
334
|
+
declare function toRailHolePlaceholder(order: any, railType: any, sizeOverride?: any): any;
|
|
335
|
+
/**
|
|
336
|
+
* Geometry type for a slot index: BUY at/below the boundary, SELL at/above
|
|
337
|
+
* sellStart, SPREAD inside the gap band. Null-safe — returns null when the
|
|
338
|
+
* index, boundary, or gap width is unusable so callers fail closed.
|
|
339
|
+
*/
|
|
340
|
+
declare function geometryTypeForSlotIndex(idx: any, boundaryIdx: any, gapSlots: any): "sell" | "buy" | "spread" | null;
|
|
341
|
+
/**
|
|
342
|
+
* Detect gap-evacuation candidates by GEOMETRY ONLY: live on-chain orders
|
|
343
|
+
* whose parsed slot index sits strictly inside the gap band
|
|
344
|
+
* (boundary < idx < sellStartIdx). Never consults the stored slot type —
|
|
345
|
+
* Phase 2 retypes in-band actives to rail types, so type-based detection
|
|
346
|
+
* would go blind exactly when evacuation matters.
|
|
347
|
+
*
|
|
348
|
+
* @param {Map} masterGrid - Master grid (slotId -> order)
|
|
349
|
+
* @param {number} boundaryIdx - Last BUY slot index (frozen at plan-build)
|
|
350
|
+
* @param {number} gapSlots - Spread gap slot count (frozen at plan-build)
|
|
351
|
+
* @returns {Array} Candidates [{id, idx, type, price, size, orderId}]
|
|
352
|
+
*/
|
|
353
|
+
declare function detectGapEvacuationCandidates(masterGrid: any, boundaryIdx: any, gapSlots: any): any[];
|
|
354
|
+
/**
|
|
355
|
+
* Tick the per-slot gap-evacuation streak counter. In-memory on the manager
|
|
356
|
+
* (resets on restart — acceptable; a restart re-plans evacuation anyway).
|
|
357
|
+
* Slots still in-band increment; resolved slots are dropped. Returns the ids
|
|
358
|
+
* whose streak reached the threshold (stuck candidates).
|
|
359
|
+
*
|
|
360
|
+
* @param {Map} streakMap - Mutable Map slotId -> consecutive-cycle count
|
|
361
|
+
* @param {Array} candidates - detectGapEvacuationCandidates output
|
|
362
|
+
* @param {number} [threshold] - GRID_LIMITS.GAP_EVACUATION_STREAK_THRESHOLD default
|
|
363
|
+
* @returns {{streaks: Object, ready: Array}}
|
|
364
|
+
*/
|
|
365
|
+
declare function updateGapEvacuationStreaks(streakMap: any, candidates: any, threshold?: any): {
|
|
366
|
+
streaks: Record<string, number>;
|
|
367
|
+
ready: any[];
|
|
368
|
+
};
|
|
318
369
|
/**
|
|
319
370
|
* Resolve the real BUY/SELL side of a SPREAD-typed grid slot from its price
|
|
320
371
|
* relative to the configured start price. SPREAD slots never carry an
|
|
@@ -335,16 +386,77 @@ declare function resolveSpreadOrderSide(price: any, startPrice: any): string;
|
|
|
335
386
|
*/
|
|
336
387
|
declare function parseSlotIndex(id: any): number | null;
|
|
337
388
|
/**
|
|
338
|
-
* Whether a parsed chain order matches a grid slot
|
|
339
|
-
* type-compatible (slot may be SPREAD), price
|
|
340
|
-
* 1% quantum tolerance (floor 2
|
|
341
|
-
*
|
|
389
|
+
* Whether a parsed chain order matches a grid slot exactly:
|
|
390
|
+
* type-compatible (slot may be SPREAD), price strictly equal via integer
|
|
391
|
+
* round-trip (single epsilon), size within 1% quantum tolerance (floor 2
|
|
392
|
+
* units). STRICT genesis-slot-mapping matcher — use only where the slot is
|
|
393
|
+
* derived from the price (nearest-slot authority). Uncertain-landed
|
|
394
|
+
* adoption (a broadcast whose on-chain price may have drifted by dust)
|
|
395
|
+
* must use chainOrderMatchesSlotWithTolerance instead, or the drifted
|
|
396
|
+
* order is never adopted and gets re-broadcast as a duplicate.
|
|
342
397
|
* @param {Object} parsed - parseChainOrder output ({type, price, size, ...})
|
|
343
398
|
* @param {Object} slot - Grid slot order object
|
|
344
399
|
* @param {Object} assets - Manager assets ({assetA, assetB} with precision)
|
|
345
400
|
* @returns {boolean}
|
|
346
401
|
*/
|
|
347
402
|
declare function chainOrderMatchesSlot(parsed: any, slot: any, assets: any): boolean;
|
|
403
|
+
/**
|
|
404
|
+
* Whether a parsed chain order matches a grid slot within price tolerance:
|
|
405
|
+
* type-compatible (slot may be SPREAD), price within calculatePriceTolerance
|
|
406
|
+
* (clamped to ~2 price quanta so dust-inflated tolerances cannot adopt a
|
|
407
|
+
* wrong order), size within the same 1% quantum tolerance as the strict
|
|
408
|
+
* matcher. For the UNCERTAIN-ADOPT paths only (a just-broadcast create whose
|
|
409
|
+
* on-chain price may have drifted by rounding dust): the strict
|
|
410
|
+
* chainOrderMatchesSlot would miss the drifted order, the slot would stay
|
|
411
|
+
* VIRTUAL, and the next cycle would re-broadcast it as a duplicate.
|
|
412
|
+
* Genesis slot mapping keeps the strict matcher (nearest-slot authority).
|
|
413
|
+
* @param {Object} parsed - parseChainOrder output ({type, price, size, ...})
|
|
414
|
+
* @param {Object} slot - Grid slot order object
|
|
415
|
+
* @param {Object} assets - Manager assets ({assetA, assetB} with precision)
|
|
416
|
+
* @returns {boolean}
|
|
417
|
+
*/
|
|
418
|
+
declare function chainOrderMatchesSlotWithTolerance(parsed: any, slot: any, assets: any): boolean;
|
|
419
|
+
/**
|
|
420
|
+
* Identity of a crossing-check candidate. Master orders carry orderId,
|
|
421
|
+
* unmatched chain orders carry chainOrderId, pending-broadcast wrappers
|
|
422
|
+
* carry slotId + order (their inner order has no chain id yet — it may not
|
|
423
|
+
* even be on chain). All three classes must be visible to crossing guards:
|
|
424
|
+
* an UPDATE-only rotation batch can otherwise re-price across a pending
|
|
425
|
+
* CREATE from an earlier uncertain batch and self-trade (BitShares has no
|
|
426
|
+
* self-trade prevention).
|
|
427
|
+
* @param {Object} o - Candidate order or pending-broadcast wrapper entry
|
|
428
|
+
* @returns {string|null} Chain/slot identity, or null when not placeable
|
|
429
|
+
*/
|
|
430
|
+
declare function crossingCandidateChainId(o: any): string | null;
|
|
431
|
+
/**
|
|
432
|
+
* Shared predicate for every crossing-placement guard (COW create/rotation/
|
|
433
|
+
* fallback, startup reconcile placement, price-correction re-queue). Accepts
|
|
434
|
+
* master orders (orderId), unmatched chain orders (chainOrderId), AND
|
|
435
|
+
* pending-broadcast wrappers (slotId + order) — pending entries can never be
|
|
436
|
+
* in cancelOpIndexByOrderId (keyed by chain ids; wrapper orderIds are slot
|
|
437
|
+
* ids in a disjoint namespace), so the exclusion check is harmless for them.
|
|
438
|
+
* VIRTUAL slots (no orderId) are rejected: they have no chain presence and
|
|
439
|
+
* must never block placements.
|
|
440
|
+
* @param {Object} o - Candidate order or pending-broadcast wrapper entry
|
|
441
|
+
* @param {string|null} [excludeChainOrderId=null] - Chain id to exempt (the order being relocated itself)
|
|
442
|
+
* @param {Map|null} [cancelOpIndexByOrderId=null] - orderId -> op index of its already-queued cancel
|
|
443
|
+
* @returns {boolean} True when the candidate participates in crossing checks
|
|
444
|
+
*/
|
|
445
|
+
declare function isCrossingCheckCandidate(o: any, excludeChainOrderId?: any, cancelOpIndexByOrderId?: any): boolean;
|
|
446
|
+
/**
|
|
447
|
+
* Shared candidate set for crossing-placement checks: master orders plus
|
|
448
|
+
* chain-side orders that may exist on chain but are not (yet) adopted into
|
|
449
|
+
* the master grid — pending-broadcast wrappers from earlier uncertain
|
|
450
|
+
* batches (pushed as wrappers so the predicate can see their slotId; their
|
|
451
|
+
* inner order carries type/price via findCrossedOrder's item.order fallback)
|
|
452
|
+
* and unmatched chain orders (orphans). Without these, an UPDATE-only
|
|
453
|
+
* rotation batch can re-price across an un-adopted chain order that
|
|
454
|
+
* master-grid-only checks cannot see (the pending/unmatched batch guards
|
|
455
|
+
* fire only for CREATE batches).
|
|
456
|
+
* @param {Object} manager - OrderManager instance (orders Map, _pendingBroadcasts, _lastUnmatchedChainOrders)
|
|
457
|
+
* @returns {any[]} Candidate orders/wrappers for findCrossedOrder
|
|
458
|
+
*/
|
|
459
|
+
declare function buildCrossingCheckCandidates(manager: any): any[];
|
|
348
460
|
/**
|
|
349
461
|
* Filter orders array by type.
|
|
350
462
|
*
|
|
@@ -659,5 +771,5 @@ declare function getSideBudget(side: any, funds: any, config: any, totalTarget:
|
|
|
659
771
|
* @returns {Array} Array of calculated sizes
|
|
660
772
|
*/
|
|
661
773
|
declare function calculateBudgetedSizes(slots: any, side: any, budget: any, weightDist: any, incrementPercent: any, assets: any): any[];
|
|
662
|
-
export { parseChainOrder, findMatchingGridOrderByOpenOrder, applyChainSizeToGridOrder, buildFillKey, correctOrderPriceOnChain, correctAllPriceMismatches, buildCreateOrderArgs, getOrderTypeFromUpdatedFlags, resolveConfiguredPriceBound, virtualizeOrder, convertToSpreadPlaceholder, resolveSpreadOrderSide, chainOrderMatchesSlot, parseSlotIndex, filterOrdersByType, buildOutsideInPairGroups, extractBatchOperationResults, formatUnmatchedChainOrder, isOrderOnChain, isOrderVirtual, hasOnChainId, isOrderPlaced, isPhantomOrder, isSlotAvailable, isEmptyGridSlot, isOrderHealthy, checkSizeThreshold, checkSizesBeforeMinimum, calculateIdealBoundary, calculateFundDrivenBoundary, assignGridRoles, resolveOnChainRetypeType, shouldFlagOutOfSpread, buildIndexes, validateIndexes, ordersEqual, buildDelta, getOrderSize, deriveTargetBoundary, isShiftEligibleFill, getActiveOrdersTotal, getSideBudget, calculateBudgetedSizes, buildCreateOpFingerprint, isOrderGoneErrorMessage, recordDuplicateOrphanDetection, clearDuplicateOrphanDetection, duplicateOrphanLogInfo };
|
|
774
|
+
export { parseChainOrder, findMatchingGridOrderByOpenOrder, applyChainSizeToGridOrder, buildFillKey, correctOrderPriceOnChain, correctAllPriceMismatches, buildCreateOrderArgs, getOrderTypeFromUpdatedFlags, resolveConfiguredPriceBound, virtualizeOrder, convertToSpreadPlaceholder, toRailHolePlaceholder, geometryTypeForSlotIndex, detectGapEvacuationCandidates, updateGapEvacuationStreaks, resolveSpreadOrderSide, chainOrderMatchesSlot, chainOrderMatchesSlotWithTolerance, crossingCandidateChainId, isCrossingCheckCandidate, buildCrossingCheckCandidates, parseSlotIndex, filterOrdersByType, buildOutsideInPairGroups, extractBatchOperationResults, formatUnmatchedChainOrder, isOrderOnChain, isOrderVirtual, hasOnChainId, isOrderPlaced, isPhantomOrder, isSlotAvailable, isEmptyGridSlot, isOrderHealthy, checkSizeThreshold, checkSizesBeforeMinimum, calculateIdealBoundary, calculateFundDrivenBoundary, assignGridRoles, resolveOnChainRetypeType, shouldFlagOutOfSpread, buildIndexes, validateIndexes, ordersEqual, buildDelta, getOrderSize, deriveTargetBoundary, isShiftEligibleFill, getActiveOrdersTotal, getSideBudget, calculateBudgetedSizes, buildCreateOpFingerprint, isOrderGoneErrorMessage, recordDuplicateOrphanDetection, clearDuplicateOrphanDetection, duplicateOrphanLogInfo };
|
|
663
775
|
//# sourceMappingURL=order.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"order.d.ts","sourceRoot":"","sources":["../../../../modules/order/utils/order.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqEG;AAgBH;;;;;;;;;;;;;;;GAeG;AACH,iBAAS,uBAAuB,CAAC,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,WAW3D;AAgBD;;;;;;GAMG;AACH,iBAAS,8BAA8B,CAAC,OAAO,EAAE,GAAG;;;EA8BnD;AAED;;;;GAIG;AACH,iBAAS,6BAA6B,CAAC,OAAO,EAAE,GAAG,QAElD;AAED;;;;;;GAMG;AACH,iBAAS,sBAAsB,CAAC,OAAO,EAAE,GAAG;;;EAM3C;AAcD;;;;;;;;GAQG;AACH,iBAAS,eAAe,CAAC,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG;;;;;SAmCpD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,iBAAS,gCAAgC,CAAC,gBAAgB,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,OAmDzE;AAED;;;;;;;;;;;GAWG;AACH,iBAAe,yBAAyB,CAAC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,gBA8BpF;AAED;;;;;;;;GAQG;AACH,iBAAS,YAAY,CAAC,WAAW,EAAE,GAAG,iBAOrC;AAED;;;;;;;;;;;GAWG;AACH,iBAAe,wBAAwB,CAAC,OAAO,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"order.d.ts","sourceRoot":"","sources":["../../../../modules/order/utils/order.ts"],"names":[],"mappings":"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"}
|