dexbot 1.4.5 → 1.4.7

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.
Files changed (57) hide show
  1. package/dist/modules/bots_file_lock.d.ts +4 -4
  2. package/dist/modules/bots_file_lock.d.ts.map +1 -1
  3. package/dist/modules/bots_file_lock.js +16 -53
  4. package/dist/modules/bots_file_lock.js.map +1 -1
  5. package/dist/modules/dexbot_class.d.ts +10 -10
  6. package/dist/modules/dexbot_class.d.ts.map +1 -1
  7. package/dist/modules/dexbot_class.js +18 -8
  8. package/dist/modules/dexbot_class.js.map +1 -1
  9. package/dist/modules/dexbot_cow_runtime.d.ts.map +1 -1
  10. package/dist/modules/dexbot_cow_runtime.js +4 -5
  11. package/dist/modules/dexbot_cow_runtime.js.map +1 -1
  12. package/dist/modules/dexbot_maintenance_runtime.d.ts +2 -2
  13. package/dist/modules/dexbot_maintenance_runtime.js +7 -7
  14. package/dist/modules/dexbot_maintenance_runtime.js.map +1 -1
  15. package/dist/modules/dexbot_startup_runtime.d.ts.map +1 -1
  16. package/dist/modules/dexbot_startup_runtime.js +1 -0
  17. package/dist/modules/dexbot_startup_runtime.js.map +1 -1
  18. package/dist/modules/dexbot_state_recovery.js +2 -2
  19. package/dist/modules/dexbot_state_recovery.js.map +1 -1
  20. package/dist/modules/order/accounting.d.ts +25 -19
  21. package/dist/modules/order/accounting.d.ts.map +1 -1
  22. package/dist/modules/order/accounting.js +64 -40
  23. package/dist/modules/order/accounting.js.map +1 -1
  24. package/dist/modules/order/async_lock.d.ts +5 -3
  25. package/dist/modules/order/async_lock.d.ts.map +1 -1
  26. package/dist/modules/order/async_lock.js +15 -7
  27. package/dist/modules/order/async_lock.js.map +1 -1
  28. package/dist/modules/order/grid.d.ts +8 -0
  29. package/dist/modules/order/grid.d.ts.map +1 -1
  30. package/dist/modules/order/grid.js +30 -20
  31. package/dist/modules/order/grid.js.map +1 -1
  32. package/dist/modules/order/grid_reconcile.d.ts +4 -2
  33. package/dist/modules/order/grid_reconcile.d.ts.map +1 -1
  34. package/dist/modules/order/grid_reconcile.js +82 -61
  35. package/dist/modules/order/grid_reconcile.js.map +1 -1
  36. package/dist/modules/order/grid_reconcile_internal.d.ts +10 -6
  37. package/dist/modules/order/grid_reconcile_internal.d.ts.map +1 -1
  38. package/dist/modules/order/grid_reconcile_internal.js +138 -61
  39. package/dist/modules/order/grid_reconcile_internal.js.map +1 -1
  40. package/dist/modules/order/manager.d.ts +22 -5
  41. package/dist/modules/order/manager.d.ts.map +1 -1
  42. package/dist/modules/order/manager.js +109 -42
  43. package/dist/modules/order/manager.js.map +1 -1
  44. package/dist/modules/order/strategy.d.ts.map +1 -1
  45. package/dist/modules/order/strategy.js +9 -2
  46. package/dist/modules/order/strategy.js.map +1 -1
  47. package/dist/modules/order/sync_engine.d.ts +7 -3
  48. package/dist/modules/order/sync_engine.d.ts.map +1 -1
  49. package/dist/modules/order/sync_engine.js +32 -39
  50. package/dist/modules/order/sync_engine.js.map +1 -1
  51. package/dist/modules/order/utils/order.d.ts +5 -2
  52. package/dist/modules/order/utils/order.d.ts.map +1 -1
  53. package/dist/modules/order/utils/order.js +23 -6
  54. package/dist/modules/order/utils/order.js.map +1 -1
  55. package/dist/modules/order/utils/system.js +1 -1
  56. package/dist/modules/order/utils/system.js.map +1 -1
  57. package/package.json +1 -1
@@ -208,7 +208,7 @@ function _findLargestOrder(unmatchedOrders, updateCount) {
208
208
  * @returns {Promise<{gridIndex: number, gridOrder: Object}|null>} Grid slot info or null
209
209
  * @private
210
210
  */
211
- async function _cancelLargestOrder({ chainOrders, account, privateKey, manager, unmatchedOrders, updateCount, orderType, dryRun }) {
211
+ async function _cancelLargestOrder({ chainOrders, account, privateKey, manager, unmatchedOrders, updateCount, orderType, dryRun, planOnly = false }) {
212
212
  if (dryRun)
213
213
  return null;
214
214
  if (!Array.isArray(unmatchedOrders) || unmatchedOrders.length === 0)
@@ -222,6 +222,11 @@ async function _cancelLargestOrder({ chainOrders, account, privateKey, manager,
222
222
  const originalSize = Number(largestOrder.for_sale) || 0;
223
223
  const orderId = largestOrder.id;
224
224
  logger?.log?.(`Grid edge detected: cancelling largest order ${orderId} (size ${originalSize}) to free up funds`, 'info');
225
+ if (planOnly) {
226
+ // In planOnly mode, return the index and chain order info so the caller
227
+ // can plan the replacement create. Actual cancellation happens in Phase 2.
228
+ return { index: largestIndex, orderType, chainOrderObj: largestOrder };
229
+ }
225
230
  try {
226
231
  // Cancel the largest order on blockchain and release untracked funds.
227
232
  await _cancelChainOrder({
@@ -262,14 +267,14 @@ async function _cancelLargestOrder({ chainOrders, account, privateKey, manager,
262
267
  */
263
268
  async function _createOrderFromGrid({ chainOrders, account, privateKey, manager, gridOrder, dryRun }) {
264
269
  if (dryRun)
265
- return;
270
+ return null;
266
271
  // ATOMIC RE-VERIFICATION: Ensure slot is still virtual and hasn't been filled by recovery sync.
267
272
  // This protects the same slot (own orderId). The collision check below protects
268
273
  // against other slots at the same price — the two are complementary.
269
274
  const currentSlot = manager.orders.get(gridOrder.id);
270
275
  if (currentSlot && currentSlot.orderId) {
271
276
  manager.logger?.log?.(`[_createOrderFromGrid] SKIP: Slot ${gridOrder.id} already has orderId ${currentSlot.orderId}`, 'warn');
272
- return;
277
+ return null;
273
278
  }
274
279
  // Price collision guard: reject if another placed order already exists at this price level.
275
280
  const createPrice = gridOrder.price;
@@ -278,27 +283,52 @@ async function _createOrderFromGrid({ chainOrders, account, privateKey, manager,
278
283
  if (priceCollision) {
279
284
  manager.logger?.log?.(`[_createOrderFromGrid] SKIP: Create for ${gridOrder.id} at ${Format.formatPrice6(createPrice)} ` +
280
285
  `collides with placed order ${priceCollision.id} (${priceCollision.orderId}) at ${Format.formatPrice6(priceCollision.price)}`, 'warn');
281
- return;
286
+ return null;
282
287
  }
283
288
  const { amountToSell, sellAssetId, minToReceive, receiveAssetId } = (0, order_1.buildCreateOrderArgs)(gridOrder, manager.assets.assetA, manager.assets.assetB);
284
289
  const result = await chainOrders.createOrder(account, privateKey, amountToSell, sellAssetId, minToReceive, receiveAssetId, null, false);
285
290
  if (result && result.skipped) {
286
291
  const logger = manager && manager.logger;
287
292
  logger?.log?.(`[_createOrderFromGrid] Skipped slot ${gridOrder.id}: order amounts too small to place on-chain`, 'warn');
288
- return;
293
+ return null;
289
294
  }
290
295
  const operationResults = (0, order_1.extractBatchOperationResults)(result) || [];
291
296
  const chainOrderId = operationResults[0] && operationResults[0][1];
292
297
  if (chainOrderId) {
293
- const btsFeeData = (0, math_1.getAssetFees)('BTS');
294
- // Centralized Fund Tracking: Use manager's sync core to handle state transition and fund deduction
295
- // CRITICAL: Use _applySync (lock-free) since caller holds _gridLock
296
- await manager._applySync({
297
- gridOrderId: gridOrder.id,
298
- chainOrderId,
299
- isPartialPlacement: false,
300
- fee: btsFeeData.createFee
301
- }, 'createOrder', { gridLockAlreadyHeld: true });
298
+ // Capture chain order ID BEFORE _applySync, so even if _applySync
299
+ // fails (leaving the order unregistered in manager.orders), Phase 3
300
+ // will still know this order was legitimately created and avoid cancelling it.
301
+ const capturedId = chainOrderId;
302
+ try {
303
+ const btsFeeData = (0, math_1.getAssetFees)('BTS');
304
+ await manager._applySync({
305
+ gridOrderId: gridOrder.id,
306
+ chainOrderId,
307
+ isPartialPlacement: false,
308
+ expectedType: gridOrder.type,
309
+ fee: btsFeeData.createFee
310
+ }, 'createOrder');
311
+ }
312
+ catch (syncErr) {
313
+ const logger = manager && manager.logger;
314
+ logger?.log?.(`[_createOrderFromGrid] _applySync failed after successful broadcast for ${capturedId}: ${(0, errors_1.getErrorMessage)(syncErr)}`, 'error');
315
+ // Run recovery sync to register the orphaned order. If this also
316
+ // fails, the returned capturedId still prevents Phase 3 cancellation.
317
+ try {
318
+ const freshChainOrders = await chainOrders.readOpenOrders((0, system_1.resolveAccountRef)(manager, account), constants_1.TIMING.CONNECTION_TIMEOUT_MS);
319
+ await manager.syncFromOpenOrders(freshChainOrders, {
320
+ skipAccounting: false,
321
+ source: 'createOrder-applySync-failure',
322
+ });
323
+ }
324
+ catch (recoveryErr) {
325
+ logger?.log?.(`[_createOrderFromGrid] Recovery sync after _applySync failure also failed: ${(0, errors_1.getErrorMessage)(recoveryErr)}`, 'error');
326
+ }
327
+ // Return the captured ID regardless so Phase 3 knows this order was
328
+ // legitimately created and avoids cancelling it.
329
+ return capturedId;
330
+ }
331
+ return capturedId;
302
332
  }
303
333
  else {
304
334
  // CRITICAL FIX: Recovery sync if order extraction fails
@@ -306,12 +336,9 @@ async function _createOrderFromGrid({ chainOrders, account, privateKey, manager,
306
336
  logger?.log?.(`[_createOrderFromGrid] CRITICAL: createOrder succeeded but chainOrderId extraction failed`, 'error');
307
337
  try {
308
338
  const freshChainOrders = await chainOrders.readOpenOrders((0, system_1.resolveAccountRef)(manager, account), constants_1.TIMING.CONNECTION_TIMEOUT_MS);
309
- // CRITICAL FIX: Use skipAccounting: false - order discovery must update accounting
310
- // Orphan order requires fund deduction to prevent phantom capital
311
339
  await manager.syncFromOpenOrders(freshChainOrders, {
312
340
  skipAccounting: false,
313
341
  source: 'chainOrderIdExtractionFailure',
314
- gridLockAlreadyHeld: true,
315
342
  });
316
343
  }
317
344
  catch (syncErr) {
@@ -332,6 +359,7 @@ async function _createOrderFromGrid({ chainOrders, account, privateKey, manager,
332
359
  }
333
360
  }
334
361
  }
362
+ return null;
335
363
  }
336
364
  /**
337
365
  * Cancel a chain order and sync with manager.
@@ -358,12 +386,10 @@ async function _cancelChainOrder({ chainOrders, account, privateKey, manager, ch
358
386
  await manager.syncFromOpenOrders(freshChainOrders, {
359
387
  skipAccounting: false,
360
388
  source: 'cancelOrder',
361
- gridLockAlreadyHeld: true,
362
389
  });
363
390
  }
364
391
  else {
365
- // CRITICAL: Use _applySync (lock-free) since caller holds _gridLock
366
- await manager._applySync({ orderId: chainOrderId }, 'cancelOrder', { gridLockAlreadyHeld: true });
392
+ await manager._applySync({ orderId: chainOrderId }, 'cancelOrder');
367
393
  }
368
394
  // Unmatched chain orders are not represented as ACTIVE/PARTIAL grid slots, so
369
395
  // synchronizeWithChain('cancelOrder') cannot release their commitment.
@@ -381,7 +407,6 @@ async function _recoverStartupSyncFailure({ chainOrders, manager, account, logge
381
407
  await manager.syncFromOpenOrders(freshChainOrders, {
382
408
  skipAccounting: false,
383
409
  source,
384
- gridLockAlreadyHeld: true,
385
410
  });
386
411
  return freshChainOrders;
387
412
  }
@@ -457,10 +482,11 @@ async function _finalizeStartupUpdate({ manager, preparedUpdate }) {
457
482
  gridOrderId: plan.gridOrder.id,
458
483
  chainOrderId: plan.chainOrderId,
459
484
  isPartialPlacement: false,
485
+ expectedType: plan.gridOrder.type,
460
486
  fee: btsFeeData.updateFee,
461
487
  skipAccounting: false,
462
488
  deferredFee: deferredFeeFloat,
463
- }, 'createOrder', { gridLockAlreadyHeld: true });
489
+ }, 'createOrder');
464
490
  }
465
491
  async function _executeStartupUpdateBatch({ updatePlans, chainOrders, account, privateKey, manager, dryRun, }) {
466
492
  if (!Array.isArray(updatePlans) || updatePlans.length === 0 || dryRun) {
@@ -584,7 +610,7 @@ async function _executeStartupSequentialUpdateFallback({ updatePlans, chainOrder
584
610
  }
585
611
  async function _createStartupOrderWithHandling({ chainOrders, account, privateKey, manager, gridOrder, orderLabel, dryRun, recovery, }) {
586
612
  try {
587
- await _createOrderFromGrid({ chainOrders, account, privateKey, manager, gridOrder, dryRun });
613
+ return await _createOrderFromGrid({ chainOrders, account, privateKey, manager, gridOrder, dryRun });
588
614
  }
589
615
  catch (err) {
590
616
  manager?.logger?.log?.(`Startup: Failed to create ${orderLabel}: ${(0, errors_1.getErrorMessage)(err)}`, 'error');
@@ -598,6 +624,7 @@ async function _createStartupOrderWithHandling({ chainOrders, account, privateKe
598
624
  source: recovery.source,
599
625
  });
600
626
  }
627
+ return null;
601
628
  }
602
629
  }
603
630
  // _extractBatchOperationResults — thin wrapper over shared utility,
@@ -615,7 +642,7 @@ function _resolveGroupRecovery(group, fallbackMessage, fallbackSource) {
615
642
  }
616
643
  async function _executeStartupCreateGroupBatch({ group, chainOrders, account, privateKey, manager, dryRun, groupIndex, totalGroups, }) {
617
644
  if (!Array.isArray(group) || group.length === 0 || dryRun)
618
- return;
645
+ return [];
619
646
  if (typeof chainOrders?.buildCreateOrderOp !== 'function' || typeof chainOrders?.executeBatch !== 'function') {
620
647
  throw new Error('chainOrders does not support batch create operations');
621
648
  }
@@ -651,13 +678,18 @@ async function _executeStartupCreateGroupBatch({ group, chainOrders, account, pr
651
678
  prepared.push({ plan, op: buildResult.op });
652
679
  }
653
680
  if (prepared.length === 0)
654
- return;
681
+ return [];
655
682
  const recovery = _resolveGroupRecovery(group, `Startup: Triggering recovery sync after create group ${groupIndex + 1}/${totalGroups} failure`, 'startupCreateGroupFailure');
683
+ const createdOrderIds = [];
656
684
  try {
657
685
  logger?.log?.(`Startup: Broadcasting create group ${groupIndex + 1}/${totalGroups} in single batch (${prepared.length} op${prepared.length > 1 ? 's' : ''})`, 'info');
658
686
  const batchResult = await chainOrders.executeBatch(account, privateKey, prepared.map((p) => p.op));
659
687
  const opResults = _extractBatchOperationResults(batchResult);
660
688
  const btsFeeData = (0, math_1.getAssetFees)('BTS');
689
+ // Phase A: Extract ALL chain order IDs from batch results first, capturing
690
+ // every on-chain ID before any _applySync call. This ensures createdOrderIds
691
+ // is complete even if a subsequent _applySync throws mid-loop.
692
+ const batchResults = [];
661
693
  let missingChainOrderId = false;
662
694
  for (let i = 0; i < prepared.length; i++) {
663
695
  const chainOrderId = opResults[i] && opResults[i][1];
@@ -665,14 +697,24 @@ async function _executeStartupCreateGroupBatch({ group, chainOrders, account, pr
665
697
  if (!chainOrderId) {
666
698
  logger?.log?.(`Startup: create result missing chainOrderId for ${plan.orderLabel}`, 'error');
667
699
  missingChainOrderId = true;
668
- continue;
669
700
  }
701
+ else {
702
+ createdOrderIds.push(chainOrderId);
703
+ }
704
+ batchResults.push({ chainOrderId, plan });
705
+ }
706
+ // Phase B: Register each created order with the manager. All IDs are
707
+ // already in createdOrderIds, so _applySync failures won't lose them.
708
+ for (const { chainOrderId, plan } of batchResults) {
709
+ if (!chainOrderId)
710
+ continue;
670
711
  await manager._applySync({
671
712
  gridOrderId: plan.gridOrder.id,
672
713
  chainOrderId,
673
714
  isPartialPlacement: false,
715
+ expectedType: plan.gridOrder.type,
674
716
  fee: btsFeeData.createFee
675
- }, 'createOrder', { gridLockAlreadyHeld: true });
717
+ }, 'createOrder');
676
718
  }
677
719
  if (missingChainOrderId) {
678
720
  await _recoverStartupSyncFailure({
@@ -696,6 +738,7 @@ async function _executeStartupCreateGroupBatch({ group, chainOrders, account, pr
696
738
  source: recovery.source,
697
739
  });
698
740
  }
741
+ return createdOrderIds;
699
742
  }
700
743
  function _buildOutsideInCreateGroups(createPlans) {
701
744
  return (0, order_1.buildOutsideInPairGroups)(createPlans, {
@@ -707,8 +750,9 @@ function _buildOutsideInCreateGroups(createPlans) {
707
750
  async function _executePlannedStartupCreates({ createPlans, chainOrders, account, privateKey, manager, dryRun, }) {
708
751
  const logger = manager?.logger;
709
752
  const groups = _buildOutsideInCreateGroups(createPlans);
753
+ const createdOrderIds = new Set();
710
754
  if (groups.length === 0)
711
- return;
755
+ return createdOrderIds;
712
756
  logger?.log?.(`Startup: Executing ${createPlans.length} planned create(s) in ${groups.length} outside->center group(s)`, 'info');
713
757
  for (let i = 0; i < groups.length; i++) {
714
758
  const group = groups[i];
@@ -716,7 +760,7 @@ async function _executePlannedStartupCreates({ createPlans, chainOrders, account
716
760
  logger?.log?.(`Startup: Create group ${i + 1}/${groups.length} (${labels})`, 'info');
717
761
  const canBatchCreate = typeof chainOrders?.buildCreateOrderOp === 'function' && typeof chainOrders?.executeBatch === 'function';
718
762
  if (group.length > 1 && canBatchCreate) {
719
- await _executeStartupCreateGroupBatch({
763
+ const batchIds = await _executeStartupCreateGroupBatch({
720
764
  group,
721
765
  chainOrders,
722
766
  account,
@@ -726,13 +770,15 @@ async function _executePlannedStartupCreates({ createPlans, chainOrders, account
726
770
  groupIndex: i,
727
771
  totalGroups: groups.length,
728
772
  });
773
+ for (const id of batchIds)
774
+ createdOrderIds.add(id);
729
775
  continue;
730
776
  }
731
777
  if (group.length > 1 && !canBatchCreate) {
732
778
  logger?.log?.('Startup: Batch create helpers unavailable; falling back to sequential creates for this group', 'warn');
733
779
  }
734
780
  for (const plan of group) {
735
- await _createStartupOrderWithHandling({
781
+ const chainOrderId = await _createStartupOrderWithHandling({
736
782
  chainOrders,
737
783
  account,
738
784
  privateKey,
@@ -742,10 +788,13 @@ async function _executePlannedStartupCreates({ createPlans, chainOrders, account
742
788
  dryRun,
743
789
  recovery: plan.recovery,
744
790
  });
791
+ if (chainOrderId)
792
+ createdOrderIds.add(chainOrderId);
745
793
  }
746
794
  }
795
+ return createdOrderIds;
747
796
  }
748
- async function _reconcileStartupSide({ orderType, targetCount, chainSideOrders, unmatchedSideOrders, manager, chainOrders, account, privateKey, dryRun, plannedCreates, plannedUpdates, }) {
797
+ async function _reconcileStartupSide({ orderType, targetCount, chainSideOrders, unmatchedSideOrders, manager, chainOrders, account, privateKey, dryRun, plannedCreates, plannedUpdates, plannedCancels, planOnly = false, }) {
749
798
  const logger = manager?.logger;
750
799
  const sideUpper = orderType === constants_1.ORDER_TYPES.SELL ? 'SELL' : 'BUY';
751
800
  const balanceKey = orderType === constants_1.ORDER_TYPES.SELL ? 'sellFree' : 'buyFree';
@@ -770,9 +819,18 @@ async function _reconcileStartupSide({ orderType, targetCount, chainSideOrders,
770
819
  updateCount,
771
820
  orderType,
772
821
  dryRun,
822
+ planOnly,
773
823
  });
774
- if (cancelInfo)
824
+ if (cancelInfo) {
775
825
  cancelledIndex = cancelInfo.index;
826
+ if (planOnly && cancelInfo.chainOrderObj) {
827
+ plannedCancels.push({
828
+ chainOrderId: cancelInfo.chainOrderObj.id,
829
+ chainOrderObj: cancelInfo.chainOrderObj,
830
+ releaseUntrackedFunds: true,
831
+ });
832
+ }
833
+ }
776
834
  }
777
835
  for (let i = 0; i < updateCount; i++) {
778
836
  if (cancelledIndex !== null && i === cancelledIndex)
@@ -848,43 +906,62 @@ async function _reconcileStartupSide({ orderType, targetCount, chainSideOrders,
848
906
  .map((co) => ({ chain: co, parsed: (0, order_1.parseChainOrder)(co, manager.assets) }))
849
907
  .filter((x) => x.parsed)
850
908
  .sort(sortExcessCancelComparator);
851
- for (const x of parsedUnmatched) {
852
- if (cancelCount <= 0)
853
- break;
854
- logger?.log?.(`Startup: Cancelling excess ${sideUpper} chain order ${x.chain.id}`, 'info');
855
- try {
856
- await _cancelChainOrder({
857
- chainOrders,
858
- account,
859
- privateKey,
860
- manager,
861
- chainOrderId: x.chain.id,
862
- chainOrderObj: x.chain,
863
- releaseUntrackedFunds: true,
864
- dryRun,
865
- });
866
- logger?.log?.(`Startup: Successfully cancelled excess ${sideUpper} order ${x.chain.id}`, 'info');
867
- cancelCount--;
868
- }
869
- catch (err) {
870
- logger?.log?.(`Startup: Failed to cancel ${sideUpper} ${x.chain.id}: ${(0, errors_1.getErrorMessage)(err)}`, 'error');
909
+ if (planOnly) {
910
+ // In planOnly mode, record the cancellations for Phase 2 execution.
911
+ // This prevents blockchain I/O inside _gridLock (Level 3).
912
+ if (cancelCount > 0) {
913
+ logger?.log?.(`Startup: ${sideUpper} excess ${cancelCount} order(s) queued for cancellation (Phase 2)`, 'info');
914
+ for (const x of parsedUnmatched) {
915
+ if (cancelCount <= 0)
916
+ break;
917
+ plannedCancels.push({
918
+ chainOrderId: x.chain.id,
919
+ chainOrderObj: x.chain,
920
+ releaseUntrackedFunds: true,
921
+ });
922
+ cancelCount--;
923
+ }
871
924
  }
872
925
  }
873
- if (cancelCount > 0) {
874
- const activeOrders = manager.getOrdersByTypeAndState(orderType, constants_1.ORDER_STATES.ACTIVE)
875
- .filter((o) => o && o.orderId)
876
- .sort(sortMatchedCancelComparator);
877
- for (const o of activeOrders) {
926
+ else {
927
+ for (const x of parsedUnmatched) {
878
928
  if (cancelCount <= 0)
879
929
  break;
880
- logger?.log?.(`Startup: Cancelling excess matched ${sideUpper} ${o.orderId} (grid ${o.id})`, 'warn');
930
+ logger?.log?.(`Startup: Cancelling excess ${sideUpper} chain order ${x.chain.id}`, 'info');
881
931
  try {
882
- await _cancelChainOrder({ chainOrders, account, privateKey, manager, chainOrderId: o.orderId, dryRun, chainOrderObj: o });
883
- logger?.log?.(`Startup: Successfully cancelled excess matched ${sideUpper} order ${o.orderId} (grid ${o.id})`, 'info');
932
+ await _cancelChainOrder({
933
+ chainOrders,
934
+ account,
935
+ privateKey,
936
+ manager,
937
+ chainOrderId: x.chain.id,
938
+ chainOrderObj: x.chain,
939
+ releaseUntrackedFunds: true,
940
+ dryRun,
941
+ });
942
+ logger?.log?.(`Startup: Successfully cancelled excess ${sideUpper} order ${x.chain.id}`, 'info');
884
943
  cancelCount--;
885
944
  }
886
945
  catch (err) {
887
- logger?.log?.(`Startup: Failed to cancel matched ${sideUpper} ${o.orderId}: ${(0, errors_1.getErrorMessage)(err)}`, 'error');
946
+ logger?.log?.(`Startup: Failed to cancel ${sideUpper} ${x.chain.id}: ${(0, errors_1.getErrorMessage)(err)}`, 'error');
947
+ }
948
+ }
949
+ if (cancelCount > 0) {
950
+ const activeOrders = manager.getOrdersByTypeAndState(orderType, constants_1.ORDER_STATES.ACTIVE)
951
+ .filter((o) => o && o.orderId)
952
+ .sort(sortMatchedCancelComparator);
953
+ for (const o of activeOrders) {
954
+ if (cancelCount <= 0)
955
+ break;
956
+ logger?.log?.(`Startup: Cancelling excess matched ${sideUpper} ${o.orderId} (grid ${o.id})`, 'warn');
957
+ try {
958
+ await _cancelChainOrder({ chainOrders, account, privateKey, manager, chainOrderId: o.orderId, dryRun, chainOrderObj: o });
959
+ logger?.log?.(`Startup: Successfully cancelled excess matched ${sideUpper} order ${o.orderId} (grid ${o.id})`, 'info');
960
+ cancelCount--;
961
+ }
962
+ catch (err) {
963
+ logger?.log?.(`Startup: Failed to cancel matched ${sideUpper} ${o.orderId}: ${(0, errors_1.getErrorMessage)(err)}`, 'error');
964
+ }
888
965
  }
889
966
  }
890
967
  }
@@ -1 +1 @@
1
- {"version":3,"file":"grid_reconcile_internal.js","sourceRoot":"","sources":["../../../modules/order/grid_reconcile_internal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grid_reconcile_internal.js","sourceRoot":"","sources":["../../../modules/order/grid_reconcile_internal.ts"],"names":[],"mappings":"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"}
@@ -24,8 +24,8 @@ declare class OrderManager {
24
24
  strategy: any;
25
25
  sync: any;
26
26
  _rebalanceState: string;
27
- _bootstrapping: boolean;
28
- _broadcastingFlag: boolean;
27
+ _bootstrapping: number;
28
+ _broadcastingFlag: number;
29
29
  _broadcastingStartedAt: number;
30
30
  _illegalStateSignal: any;
31
31
  _accountingFailureSignal: any;
@@ -82,6 +82,7 @@ declare class OrderManager {
82
82
  _accountTotalsPromise: any;
83
83
  _accountTotalsResolve: any;
84
84
  _isFetchingTotals: boolean;
85
+ accountTotalsStale: boolean;
85
86
  ordersNeedingPriceCorrection: any[];
86
87
  shadowOrderIds: Map<any, any>;
87
88
  processedFillTracker: Map<any, any>;
@@ -106,12 +107,13 @@ declare class OrderManager {
106
107
  _pendingBroadcasts: Map<any, any>;
107
108
  _committedOrderIds: Set<string>;
108
109
  _committedOrderIdsBuiltAt: number;
110
+ _gapSlots: number;
109
111
  _gridDirtyAt: number | null;
110
112
  _orphanFillsCreditedAt: number | null;
111
113
  _pendingRecovery: Promise<void> | null;
112
114
  _recentFillKeysSnapshot: Record<string, number> | null;
113
115
  _metrics: any;
114
- _currentWorkingGrid: any;
116
+ private _currentWorkingGridStack;
115
117
  _cowEngine: any;
116
118
  accountOrders: any;
117
119
  btsBalance: {
@@ -126,6 +128,7 @@ declare class OrderManager {
126
128
  _getCOWEngine(): any;
127
129
  _clearWorkingGridRef(): void;
128
130
  _setRebalanceState(state: any): void;
131
+ _resetRebalanceStateToDepth(): void;
129
132
  /**
130
133
  * @returns {boolean}
131
134
  */
@@ -184,6 +187,13 @@ declare class OrderManager {
184
187
  _addToChainFree(orderType: any, size: any, operation: any): Promise<any>;
185
188
  _getGridTotal(side: any): any;
186
189
  /**
190
+ * Computes committed amounts directly from the orders map to ensure the
191
+ * snapshot is internally consistent even when called inside a
192
+ * pauseFundRecalc region. Normally recalculateFunds() keeps
193
+ * funds.committed.chain in sync, but when pauses are nested the cached
194
+ * value can lag behind the actual orders state (virtualized orders
195
+ * release committed capital via updateOptimisticFreeBalance without
196
+ * triggering a recalc). Reading from the orders map avoids that race.
187
197
  * @returns {import('./types').ChainFundsSnapshot}
188
198
  */
189
199
  getChainFundsSnapshot(): {
@@ -299,8 +309,8 @@ declare class OrderManager {
299
309
  * @param {string} src - Source identifier
300
310
  * @returns {Promise<import('./types').SyncResult>}
301
311
  */
302
- synchronizeWithChain(data: any, src: any, options?: any): Promise<any>;
303
- _applySync(data: any, src: any, options?: any): Promise<any>;
312
+ synchronizeWithChain(data: any, src: any): Promise<any>;
313
+ _applySync(data: any, src: any): Promise<any>;
304
314
  _initializeAssets(): Promise<any>;
305
315
  /**
306
316
  * @param {string[]|Set<string>} orderIds - Order IDs to lock
@@ -327,6 +337,13 @@ declare class OrderManager {
327
337
  };
328
338
  _updateOrder(order: any, context?: any, options?: any): Promise<any>;
329
339
  _applyOrderUpdate(order: any, context?: any, options?: any): Promise<boolean>;
340
+ /**
341
+ * Backward-compatible accessor for _currentWorkingGrid.
342
+ * Returns the top of the working grid stack (null if empty).
343
+ */
344
+ get _currentWorkingGrid(): any;
345
+ set _currentWorkingGrid(val: any);
346
+ _peekWorkingGrid(): any;
330
347
  _syncWorkingGridFromMasterMutation(orderId: any, context: any): void;
331
348
  /**
332
349
  * @param {Array<import('./types').Order>} updates - Order updates to apply