dexbot 1.1.14 → 1.2.1

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 (125) hide show
  1. package/README.md +1 -0
  2. package/dist/credential-daemon.d.ts.map +1 -1
  3. package/dist/credential-daemon.js +6 -3
  4. package/dist/credential-daemon.js.map +1 -1
  5. package/dist/market_adapter/market_adapter.js +1 -1
  6. package/dist/market_adapter/market_adapter.js.map +1 -1
  7. package/dist/modules/bitshares-native/lru_cache.d.ts +20 -0
  8. package/dist/modules/bitshares-native/lru_cache.d.ts.map +1 -0
  9. package/dist/modules/bitshares-native/lru_cache.js +45 -0
  10. package/dist/modules/bitshares-native/lru_cache.js.map +1 -0
  11. package/dist/modules/bitshares-native/resolvers.d.ts +2 -18
  12. package/dist/modules/bitshares-native/resolvers.d.ts.map +1 -1
  13. package/dist/modules/bitshares-native/resolvers.js +2 -41
  14. package/dist/modules/bitshares-native/resolvers.js.map +1 -1
  15. package/dist/modules/bitshares-native/serial/chain_constants.d.ts +1 -0
  16. package/dist/modules/bitshares-native/serial/chain_constants.d.ts.map +1 -1
  17. package/dist/modules/bitshares-native/serial/chain_constants.js +3 -0
  18. package/dist/modules/bitshares-native/serial/chain_constants.js.map +1 -1
  19. package/dist/modules/bitshares-native/signing_client.d.ts.map +1 -1
  20. package/dist/modules/bitshares-native/signing_client.js +12 -1
  21. package/dist/modules/bitshares-native/signing_client.js.map +1 -1
  22. package/dist/modules/bitshares-native/subscriptions.d.ts.map +1 -1
  23. package/dist/modules/bitshares-native/subscriptions.js +42 -3
  24. package/dist/modules/bitshares-native/subscriptions.js.map +1 -1
  25. package/dist/modules/bitshares-native/transport.d.ts.map +1 -1
  26. package/dist/modules/bitshares-native/transport.js +77 -27
  27. package/dist/modules/bitshares-native/transport.js.map +1 -1
  28. package/dist/modules/bitshares-native/tx/builder.d.ts.map +1 -1
  29. package/dist/modules/bitshares-native/tx/builder.js +26 -16
  30. package/dist/modules/bitshares-native/tx/builder.js.map +1 -1
  31. package/dist/modules/bitshares-native/tx/tx_cache.d.ts +17 -0
  32. package/dist/modules/bitshares-native/tx/tx_cache.d.ts.map +1 -0
  33. package/dist/modules/bitshares-native/tx/tx_cache.js +62 -0
  34. package/dist/modules/bitshares-native/tx/tx_cache.js.map +1 -0
  35. package/dist/modules/bot_settings.d.ts.map +1 -1
  36. package/dist/modules/bot_settings.js +2 -1
  37. package/dist/modules/bot_settings.js.map +1 -1
  38. package/dist/modules/chain_orders.d.ts +4 -1
  39. package/dist/modules/chain_orders.d.ts.map +1 -1
  40. package/dist/modules/chain_orders.js +30 -1
  41. package/dist/modules/chain_orders.js.map +1 -1
  42. package/dist/modules/config.d.ts +6 -0
  43. package/dist/modules/config.d.ts.map +1 -1
  44. package/dist/modules/config.js +11 -0
  45. package/dist/modules/config.js.map +1 -1
  46. package/dist/modules/constants.d.ts +14 -1
  47. package/dist/modules/constants.d.ts.map +1 -1
  48. package/dist/modules/constants.js +64 -6
  49. package/dist/modules/constants.js.map +1 -1
  50. package/dist/modules/credential_policy.d.ts.map +1 -1
  51. package/dist/modules/credential_policy.js +7 -5
  52. package/dist/modules/credential_policy.js.map +1 -1
  53. package/dist/modules/credit_runtime.d.ts.map +1 -1
  54. package/dist/modules/credit_runtime.js +40 -29
  55. package/dist/modules/credit_runtime.js.map +1 -1
  56. package/dist/modules/dexbot_class.d.ts +6 -12
  57. package/dist/modules/dexbot_class.d.ts.map +1 -1
  58. package/dist/modules/dexbot_class.js +155 -81
  59. package/dist/modules/dexbot_class.js.map +1 -1
  60. package/dist/modules/dexbot_maintenance_runtime.d.ts +1 -5
  61. package/dist/modules/dexbot_maintenance_runtime.d.ts.map +1 -1
  62. package/dist/modules/dexbot_maintenance_runtime.js +23 -48
  63. package/dist/modules/dexbot_maintenance_runtime.js.map +1 -1
  64. package/dist/modules/launcher/child_env.d.ts.map +1 -1
  65. package/dist/modules/launcher/child_env.js +1 -0
  66. package/dist/modules/launcher/child_env.js.map +1 -1
  67. package/dist/modules/launcher/launch_modes.d.ts +2 -0
  68. package/dist/modules/launcher/launch_modes.d.ts.map +1 -1
  69. package/dist/modules/launcher/launch_modes.js +7 -6
  70. package/dist/modules/launcher/launch_modes.js.map +1 -1
  71. package/dist/modules/order/accounting.d.ts +8 -2
  72. package/dist/modules/order/accounting.d.ts.map +1 -1
  73. package/dist/modules/order/accounting.js +64 -26
  74. package/dist/modules/order/accounting.js.map +1 -1
  75. package/dist/modules/order/async_lock.d.ts +12 -4
  76. package/dist/modules/order/async_lock.d.ts.map +1 -1
  77. package/dist/modules/order/async_lock.js +27 -5
  78. package/dist/modules/order/async_lock.js.map +1 -1
  79. package/dist/modules/order/grid.d.ts +434 -475
  80. package/dist/modules/order/grid.d.ts.map +1 -1
  81. package/dist/modules/order/grid.js +1612 -1592
  82. package/dist/modules/order/grid.js.map +1 -1
  83. package/dist/modules/order/grid_reconcile.d.ts +3 -73
  84. package/dist/modules/order/grid_reconcile.d.ts.map +1 -1
  85. package/dist/modules/order/grid_reconcile.js +11 -843
  86. package/dist/modules/order/grid_reconcile.js.map +1 -1
  87. package/dist/modules/order/grid_reconcile_internal.d.ts +8 -0
  88. package/dist/modules/order/grid_reconcile_internal.d.ts.map +1 -0
  89. package/dist/modules/order/grid_reconcile_internal.js +782 -0
  90. package/dist/modules/order/grid_reconcile_internal.js.map +1 -0
  91. package/dist/modules/order/logger.d.ts +1 -1
  92. package/dist/modules/order/logger.d.ts.map +1 -1
  93. package/dist/modules/order/logger.js +26 -2
  94. package/dist/modules/order/logger.js.map +1 -1
  95. package/dist/modules/order/manager.d.ts +118 -15
  96. package/dist/modules/order/manager.d.ts.map +1 -1
  97. package/dist/modules/order/manager.js +206 -236
  98. package/dist/modules/order/manager.js.map +1 -1
  99. package/dist/modules/order/runner.js +2 -2
  100. package/dist/modules/order/runner.js.map +1 -1
  101. package/dist/modules/order/strategy.js +3 -3
  102. package/dist/modules/order/strategy.js.map +1 -1
  103. package/dist/modules/order/sync_engine.d.ts +3 -4
  104. package/dist/modules/order/sync_engine.d.ts.map +1 -1
  105. package/dist/modules/order/sync_engine.js +85 -32
  106. package/dist/modules/order/sync_engine.js.map +1 -1
  107. package/dist/modules/order/utils/order.d.ts +17 -0
  108. package/dist/modules/order/utils/order.d.ts.map +1 -1
  109. package/dist/modules/order/utils/order.js +81 -24
  110. package/dist/modules/order/utils/order.js.map +1 -1
  111. package/dist/modules/order/utils/system.js +4 -4
  112. package/dist/modules/order/utils/system.js.map +1 -1
  113. package/dist/modules/order/utils/validate.d.ts.map +1 -1
  114. package/dist/modules/order/utils/validate.js +6 -8
  115. package/dist/modules/order/utils/validate.js.map +1 -1
  116. package/dist/modules/types.d.ts +7 -12
  117. package/dist/modules/types.d.ts.map +1 -1
  118. package/dist/scripts/print_grid.js +3 -3
  119. package/dist/scripts/print_grid.js.map +1 -1
  120. package/dist/scripts/test-credit-renewal.js +1 -1
  121. package/dist/scripts/test-credit-renewal.js.map +1 -1
  122. package/dist/unlock.d.ts.map +1 -1
  123. package/dist/unlock.js +26 -12
  124. package/dist/unlock.js.map +1 -1
  125. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../modules/order/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../modules/order/manager.ts"],"names":[],"mappings":"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"}
@@ -60,7 +60,7 @@
60
60
  const { path } = require('../path_api');
61
61
  const { OrderManager } = require('./manager');
62
62
  const { PATHS } = require('../paths');
63
- const Grid = require('./grid');
63
+ const { initializeGrid } = require('./grid');
64
64
  const { readBotsFileSync } = require('../bots_file_lock');
65
65
  const { Config } = require('../config');
66
66
  const { parseJsonWithComments, sleep } = require('./utils/system');
@@ -124,7 +124,7 @@ async function runOrderManagerCalculation() {
124
124
  throw err;
125
125
  }
126
126
  const manager = new OrderManager(botConfig);
127
- await Grid.initializeGrid(manager);
127
+ await initializeGrid(manager);
128
128
  const cycles = Config.CALC_CYCLES;
129
129
  const delayMs = Config.CALC_DELAY_MS;
130
130
  for (let cycle = 1; cycle <= cycles; cycle++) {
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../modules/order/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../../modules/order/runner.ts"],"names":[],"mappings":"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"}
@@ -57,7 +57,7 @@
57
57
  const { ORDER_TYPES, ORDER_STATES, PIPELINE_TIMING } = require("../constants");
58
58
  const { virtualizeOrder, hasOnChainId, isOrderPlaced } = require("./utils/order");
59
59
  const { floatToBlockchainInt, getPrecisionByOrderType } = require('./utils/math');
60
- const Grid = require('./grid');
60
+ const { calculateGapSlots, hasAnyDust } = require('./grid');
61
61
  class StrategyEngine {
62
62
  manager;
63
63
  _settledFeeEvents;
@@ -282,7 +282,7 @@ class StrategyEngine {
282
282
  if (allSlots.length === 0)
283
283
  return { targetGrid: new Map(), boundaryIdx: currentBoundaryIdx };
284
284
  // 1. Determine new boundary based on fills (Boundary Crawl)
285
- const gapSlots = Grid.calculateGapSlots(config.incrementPercent, config.targetSpreadPercent, config.gridLimits);
285
+ const gapSlots = calculateGapSlots(config.incrementPercent, config.targetSpreadPercent, config.gridLimits);
286
286
  const newBoundaryIdx = deriveTargetBoundary(fills, currentBoundaryIdx, allSlots, config, gapSlots);
287
287
  // 2. Assign Roles (Buy/Sell/Spread)
288
288
  const updatedSlots = assignGridRoles(allSlots, newBoundaryIdx, gapSlots, ORDER_TYPES, ORDER_STATES, { assignOnChain: true });
@@ -391,7 +391,7 @@ class StrategyEngine {
391
391
  */
392
392
  hasAnyDust(partials, side) {
393
393
  const mgr = this.manager;
394
- return Grid.hasAnyDust(mgr, partials, side);
394
+ return hasAnyDust(mgr, partials, side);
395
395
  }
396
396
  }
397
397
  module.exports = StrategyEngine;
@@ -1 +1 @@
1
- {"version":3,"file":"strategy.js","sourceRoot":"","sources":["../../../modules/order/strategy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"strategy.js","sourceRoot":"","sources":["../../../modules/order/strategy.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AAEH,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAC/E,MAAM,EACF,eAAe,EACf,YAAY,EACZ,aAAa,EAChB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;AAC7B,MAAM,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAClF,MAAM,EAAE,iBAAiB,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AAE5D,MAAM,cAAc;IAChB,OAAO,CAAM;IACb,iBAAiB,CAAsB;IACvC,cAAc,CAAS;IACvB,eAAe,CAAS;IAExB;;OAEG;IACH,YAAY,OAAY;QACpB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,EAAE,CAAC;QACnC,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,eAAe,CAAC,sBAAsB,CAAC,CAAC;QACrE,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACH,sBAAsB,CAAC,GAAG;QACtB,gCAAgC;QAChC,KAAK,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACjD,IAAI,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;gBACjC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC3C,CAAC;QACL,CAAC;QAED,8FAA8F;QAC9F,8EAA8E;QAC9E,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACvD,MAAM,qBAAqB,GAAG,EAAE,CAAC;QACjC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,eAAe,CAAC,wBAAwB,CAAC,CAAC;QAExE,6EAA6E;QAC7E,MAAM,eAAe,GAAG,CAAC,IAAI,CAAC,eAAe,GAAG,qBAAqB,KAAK,CAAC,CAAC;YACpD,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC;QAElE,IAAI,eAAe,IAAI,IAAI,CAAC,iBAAiB,CAAC,IAAI,GAAG,SAAS,EAAE,CAAC;YAC7D,mEAAmE;YACnE,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC;iBACvD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACjC,6DAA6D;YAC7D,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,8BAA8B,CAAC,IAAI,eAAe,CAAC,8BAA8B,GAAG,CAAC;gBACxI,CAAC,CAAC,eAAe,CAAC,8BAA8B;gBAChD,CAAC,CAAC,IAAI,CAAC;YACX,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,cAAc,CAAC,CAAC;YACxF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACxD,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACjD,CAAC;YACD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CACvB,uCAAuC,SAAS,aAAa,UAAU,iBAAiB,EACxF,MAAM,CACT,CAAC;QACN,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,gBAAgB,CAAC,WAAW;QACxB,6EAA6E;QAC7E,2DAA2D;QAC3D,IAAI,SAAS,CAAC;QACd,IAAI,CAAC;YACD,IAAI,IAAI,CAAC,OAAO,EAAE,MAAM,IAAI,WAAW,EAAE,IAAI,EAAE,CAAC;gBAC5C,SAAS,GAAG,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;YAC/E,CAAC;QACL,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAChB,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CACvB,+CAA+C,WAAW,EAAE,IAAI,kCAAkC,GAAG,CAAC,OAAO,EAAE,EAC/G,OAAO,CACV,CAAC;QACN,CAAC;QAED,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;YAChC,OAAO,WAAW,CAAC,SAAS,IAAI;gBAC5B,WAAW,CAAC,OAAO,IAAI,WAAW,CAAC,EAAE;gBACrC,WAAW,CAAC,QAAQ,IAAI,IAAI;gBAC5B,MAAM,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,CAAC;gBAC9B,WAAW,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;aACpD,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChB,CAAC;QAED,MAAM,OAAO,GAAG,oBAAoB,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QAChF,OAAO,WAAW,CAAC,SAAS,IAAI;YAC5B,WAAW,CAAC,OAAO,IAAI,WAAW,CAAC,EAAE;YACrC,WAAW,CAAC,QAAQ,IAAI,IAAI;YAC5B,OAAO;YACP,WAAW,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;SACpD,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;IACH,KAAK,CAAC,gBAAgB,CAAC,YAAY,EAAE,eAAe,GAAG,IAAI,GAAG,EAAE;QAC5D,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;QACzB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAE3E,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,kCAAkC,YAAY,CAAC,MAAM,mBAAmB,EAAE,MAAM,CAAC,CAAC;QAEjG,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC;QAEjC,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,IAAI,cAAc,GAAG,CAAC,CAAC;QAEvB,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;YACrC,IAAI,eAAe,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC;gBACzC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,+CAA+C,WAAW,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;gBACzF,SAAS;YACb,CAAC;YAED,MAAM,SAAS,GAAG,WAAW,CAAC,SAAS,KAAK,IAAI,CAAC;YACjD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,kCAAkC,WAAW,CAAC,EAAE,UAAU,WAAW,CAAC,IAAI,WAAW,WAAW,CAAC,KAAK,UAAU,WAAW,CAAC,IAAI,aAAa,SAAS,EAAE,EAAE,OAAO,CAAC,CAAC;YAElL,IAAI,CAAC,SAAS,IAAI,WAAW,CAAC,wBAAwB,EAAE,CAAC;gBACrD,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;gBAEtD,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC1C,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;oBAC5C,aAAa,EAAE,CAAC;oBAChB,IAAI,WAAW,CAAC,OAAO,KAAK,KAAK;wBAAE,cAAc,EAAE,CAAC;;wBAC/C,cAAc,EAAE,CAAC;gBAC1B,CAAC;qBAAM,CAAC;oBACJ,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,sDAAsD,UAAU,EAAE,EAAE,OAAO,CAAC,CAAC;gBAChG,CAAC;gBAED,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;gBACnD,MAAM,UAAU,GAAG,WAAW,IAAI,YAAY,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,OAAO,IAAI,WAAW,CAAC,OAAO,KAAK,WAAW,CAAC,OAAO,CAAC;gBAElI,IAAI,WAAW,IAAI,CAAC,UAAU,IAAI,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,uCAAuC,WAAW,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;oBACjF,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,YAAY,CAC7B,EAAE,GAAG,eAAe,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAC5C,MAAM,EACN,EAAE,cAAc,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,CACpC,CAAC;oBACF,IAAI,EAAE,KAAK,KAAK,EAAE,CAAC;wBACf,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,+CAA+C,WAAW,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;oBAC5F,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QAED,2EAA2E;QAC3E,2EAA2E;QAC3E,2DAA2D;QAE3D,MAAM,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC7B,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,6DAA6D,aAAa,EAAE,EAAE,MAAM,CAAC,CAAC;QACrG,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+CG;IACH,mBAAmB,CAAC,MAOnB;QACG,qCAAqC;QACrC,MAAM,EACF,gBAAgB,EAChB,MAAM,EACN,aAAa,EACb,KAAK,EACL,KAAK,EACL,kBAAkB,EACrB,GAAG,MAAM,CAAC;QAEX,MAAM,EAAE,oBAAoB,EAAE,aAAa,EAAE,sBAAsB,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;QACjG,MAAM,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;QAErD,gDAAgD;QAChD,+DAA+D;QAC/D,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC;aACjD,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC;aAC5B,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;aACjC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,+BAA+B;QAE1D,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,UAAU,EAAE,IAAI,GAAG,EAAE,EAAE,WAAW,EAAE,kBAAkB,EAAE,CAAC;QAE7F,4DAA4D;QAC5D,MAAM,QAAQ,GAAG,iBAAiB,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,mBAAmB,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;QAC3G,MAAM,cAAc,GAAG,oBAAoB,CAAC,KAAK,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QAEnG,oCAAoC;QACpC,MAAM,YAAY,GAAG,eAAe,CAAC,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAE7H,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,yCAAyC,cAAc,SAAS,QAAQ,cAAc,YAAY,CAAC,MAAM,EAAE,EAAE,OAAO,CAAC,CAAC;QAC9I,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,IAAI,IAAI,KAAK,UAAU,CAAC,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC;QAE3I,uCAAuC;QACvC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC;QAC7G,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;QACnE,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;QAErE,6BAA6B;QAC7B,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,GAAG,CAAC,CAAC;QACzE,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,CAAC,CAAC;QAE3E,+CAA+C;QAC/C,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpE,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;QAEtE,mCAAmC;QACnC,MAAM,QAAQ,GAAG,WAAW;aACvB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;aACjC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;QAE9B,MAAM,SAAS,GAAG,YAAY;aACzB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;aACjC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC;QAE/B,aAAa;QACb,yEAAyE;QACzE,yEAAyE;QACzE,qDAAqD;QACrD,MAAM,qBAAqB,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;QACjF,MAAM,sBAAsB,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;QAEnF,MAAM,YAAY,GAAG,sBAAsB,CACvC,qBAAqB,EACrB,KAAK,EACL,SAAS,EACT,MAAM,CAAC,kBAAkB,EAAE,GAAG,EAC9B,MAAM,CAAC,gBAAgB,EACvB,aAAa,CAChB,CAAC;QACF,MAAM,aAAa,GAAG,sBAAsB,CACxC,sBAAsB,EACtB,MAAM,EACN,UAAU,EACV,MAAM,CAAC,kBAAkB,EAAE,IAAI,EAC/B,MAAM,CAAC,gBAAgB,EACvB,aAAa,CAChB,CAAC;QAEF,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACrG,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QAExG,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QACrE,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAExE,iCAAiC;QACjC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAE,CAAC;QAE7B,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAChC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;gBACtB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAC3B,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE;oBACpB,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,IAAI,EAAE,IAAI;oBACV,SAAS,EAAE,IAAI;oBACf,uEAAuE;oBACvE,KAAK,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO;oBAC5D,aAAa,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,CAAC;wBAC5E,CAAC,CAAC,IAAI,CAAC,IAAI;wBACX,CAAC,CAAC,IAAI,CAAC,aAAa;iBAC3B,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACP,CAAC,CAAC;QAEF,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC/B,UAAU,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAEjC,mEAAmE;QACnE,oEAAoE;QACpE,mEAAmE;QACnE,iEAAiE;QACjE,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,EAAE,GAAG,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACtE,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACxB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC1B,wEAAwE;gBACxE,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC;gBAC/F,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE;oBACpB,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,IAAI,EAAE,cAAc;oBACpB,SAAS,EAAE,cAAc;oBACzB,KAAK,EAAE,YAAY,CAAC,OAAO;oBAC3B,aAAa,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,CAAC;wBAC5E,CAAC,CAAC,IAAI,CAAC,IAAI;wBACX,CAAC,CAAC,IAAI,CAAC,aAAa;iBAC3B,CAAC,CAAC;YACP,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO;YACH,UAAU,EAAE,UAAU;YACtB,WAAW,EAAE,cAAc;SAC9B,CAAC;IACN,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,UAAU,CAAC,QAAQ,EAAE,IAAI;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;QACzB,OAAO,UAAU,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;CAEJ;AAED,iBAAS,cAAc,CAAC"}
@@ -154,7 +154,7 @@ declare class SyncEngine {
154
154
  /**
155
155
  * Synchronize grid orders with blockchain open orders snapshot.
156
156
  * @param {Array|null} chainOrders - Array of blockchain order objects
157
- * @param {Object} [options={}] - Sync options (e.g., { skipAccounting: true, protectCommittedOrders: true })
157
+ * @param {Object} [options={}] - Sync options (e.g., { skipAccounting: true })
158
158
  * @returns {Promise<Object>} Result with filledOrders, updatedOrders, ordersNeedingCorrection
159
159
  */
160
160
  syncFromOpenOrders(chainOrders: any[] | null, options?: Record<string, any>): Promise<any>;
@@ -207,7 +207,7 @@ declare class SyncEngine {
207
207
  * @param {Array<Object>} ordersNeedingCorrection - Output array: orders flagged for price correction
208
208
  * @param {Array<Object>} unmatchedChainOrders - Output array: open chain orders with no adoptable grid slot
209
209
  * @param {Object} options - Sync options (skipAccounting, etc.)
210
- * @returns {Promise<{filledOrders: Array, updatedOrders: Array, ordersNeedingCorrection: Array, unmatchedChainOrders: Array}>}
210
+ * @returns {Promise<import('./types').SyncResult>}
211
211
  */
212
212
  _performSyncFromOpenOrders(mgr: any, assetAPrecision: number, assetBPrecision: number, parsedChainOrders: Map<string, any>, rawChainOrders: Map<string, any>, chainOrderIdsOnGrid: Set<string>, matchedGridOrderIds: Set<string>, filledOrders: any[], updatedOrders: any[], ordersNeedingCorrection: any[], unmatchedChainOrders: any[], options: Record<string, any>): Promise<{
213
213
  filledOrders: any[];
@@ -217,10 +217,9 @@ declare class SyncEngine {
217
217
  }>;
218
218
  /**
219
219
  * Process one incremental fill-history event.
220
- * Returns `{ filledOrders, updatedOrders, partialFill, requiresOpenOrdersSync, ghostOrderId? }`.
221
220
  * @param {Object} fill - Fill history event object
222
221
  * @param {Object} [options] - Persistence mode options
223
- * @returns {Promise<Object>} { filledOrders, updatedOrders, partialFill, requiresOpenOrdersSync, ghostOrderId? }
222
+ * @returns {Promise<import('./types').SyncResult>}
224
223
  */
225
224
  syncFromFillHistory(fill: any, options?: Record<string, any>): Promise<{
226
225
  filledOrders: any[];
@@ -1 +1 @@
1
- {"version":3,"file":"sync_engine.d.ts","sourceRoot":"","sources":["../../../modules/order/sync_engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoFG;AAkLH,cAAM,UAAU;IACZ,OAAO,CAAC,OAAO,CAAM;IACrB;;OAEG;gBACS,OAAO,EAAE,GAAG;IAIxB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6DG;IACH;;;;;OAKG;IACG,kBAAkB,CAAC,WAAW,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM;IA4FrF;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACG,qBAAqB,CAAC,WAAW,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;;;;;;IA6HnF;;;;;;;;;;;;;;;OAeG;IACG,0BAA0B,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,EAC9J,mBAAmB,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,mBAAmB,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,GAAG,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,EAAE,uBAAuB,EAAE,GAAG,EAAE,EAAE,oBAAoB,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;;;;;;IA8X5M;;;;;;OAMG;IACG,mBAAmB,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM;;;;;;;;;;;;;;;;;;;IAuStE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiDG;IACG,oBAAoB,CAAC,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM;IA2K5F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiDG;IACG,gCAAgC;IA0CtC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4CG;IACG,gBAAgB;CAgCzB;AAED,SAAS,UAAU,CAAC"}
1
+ {"version":3,"file":"sync_engine.d.ts","sourceRoot":"","sources":["../../../modules/order/sync_engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoFG;AAkLH,cAAM,UAAU;IACZ,OAAO,CAAC,OAAO,CAAM;IACrB;;OAEG;gBACS,OAAO,EAAE,GAAG;IAIxB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6DG;IACH;;;;;OAKG;IACG,kBAAkB,CAAC,WAAW,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM;IAkIrF;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACG,qBAAqB,CAAC,WAAW,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;;;;;;IA+InF;;;;;;;;;;;;;;;OAeG;IACG,0BAA0B,CAAC,GAAG,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,EAC9J,mBAAmB,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,mBAAmB,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,YAAY,EAAE,GAAG,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,EAAE,uBAAuB,EAAE,GAAG,EAAE,EAAE,oBAAoB,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;;;;;;IA0Y5M;;;;;OAKG;IACG,mBAAmB,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM;;;;;;;;;;;;;;;;;;;IAwStE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiDG;IACG,oBAAoB,CAAC,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM;IAsK5F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiDG;IACG,gCAAgC;IA0CtC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4CG;IACG,gBAAgB;CAgCzB;AAED,SAAS,UAAU,CAAC"}
@@ -322,7 +322,7 @@ class SyncEngine {
322
322
  /**
323
323
  * Synchronize grid orders with blockchain open orders snapshot.
324
324
  * @param {Array|null} chainOrders - Array of blockchain order objects
325
- * @param {Object} [options={}] - Sync options (e.g., { skipAccounting: true, protectCommittedOrders: true })
325
+ * @param {Object} [options={}] - Sync options (e.g., { skipAccounting: true })
326
326
  * @returns {Promise<Object>} Result with filledOrders, updatedOrders, ordersNeedingCorrection
327
327
  */
328
328
  async syncFromOpenOrders(chainOrders, options = {}) {
@@ -334,12 +334,13 @@ class SyncEngine {
334
334
  mgr.logger?.log?.('Error: syncLock not initialized', 'error');
335
335
  return { filledOrders: [], updatedOrders: [], ordersNeedingCorrection: [], unmatchedChainOrders: [] };
336
336
  }
337
- if (!options?.fillLockAlreadyHeld && mgr._fillProcessingLock) {
337
+ // Skip re-acquiring if we're already inside _fillProcessingLock's
338
+ // execution context (the lock is re-entrant). The old fillLockAlreadyHeld
339
+ // flag achieved the same goal by being passed through the call chain;
340
+ // now the lock knows whether the caller already holds it.
341
+ if (mgr._fillProcessingLock && !mgr._fillProcessingLock.isReentrant()) {
338
342
  return mgr._fillProcessingLock.acquire(async () => {
339
- return this.syncFromOpenOrders(chainOrders, {
340
- ...options,
341
- fillLockAlreadyHeld: true
342
- });
343
+ return this.syncFromOpenOrders(chainOrders, options);
343
344
  });
344
345
  }
345
346
  mgr.logger?.log?.(`[SYNC] Starting synchronization from ${chainOrders?.length || 0} blockchain orders...`, 'info');
@@ -349,10 +350,37 @@ class SyncEngine {
349
350
  let timeoutHandle;
350
351
  let forceReleaseHandle;
351
352
  const syncStartedAt = Date.now();
353
+ // Capture sync generation so the orphan callback can detect that it
354
+ // was force-released and abort early instead of running to completion.
355
+ const captureGeneration = mgr._syncGeneration ?? 0;
352
356
  try {
353
357
  const result = await Promise.race([
354
358
  mgr._syncLock.acquire(async () => {
359
+ // Early-abort check: if forceRelease incremented _syncGeneration
360
+ // while we were waiting in the lock queue, this callback is
361
+ // orphaned and should return immediately.
362
+ if ((mgr._syncGeneration ?? 0) !== captureGeneration) {
363
+ mgr.logger?.log?.('[SYNC] Sync abandoned: force-released before lock acquired', 'warn');
364
+ return { filledOrders: [], updatedOrders: [], ordersNeedingCorrection: [], unmatchedChainOrders: [] };
365
+ }
366
+ // Snapshot the correction queue length so we can roll back
367
+ // side-effect pushes if forceRelease fires during the sync.
368
+ const preSyncCorrectionLen = Array.isArray(mgr.ordersNeedingPriceCorrection)
369
+ ? mgr.ordersNeedingPriceCorrection.length
370
+ : 0;
355
371
  const innerResult = await this._doSyncFromOpenOrders(chainOrders, options);
372
+ // Re-check generation after sync completes: if forceRelease fired
373
+ // during the sync, this result is orphaned — discard it.
374
+ if ((mgr._syncGeneration ?? 0) !== captureGeneration) {
375
+ mgr.logger?.log?.(`[SYNC] Sync abandoned: force-released during sync (${Date.now() - syncStartedAt}ms); discarding result`, 'warn');
376
+ // Roll back any corrections that _performSyncFromOpenOrders may
377
+ // have pushed to the manager-level queue — the caller discarding
378
+ // the result will never process them, leaving orphaned entries.
379
+ if (Array.isArray(mgr.ordersNeedingPriceCorrection) && mgr.ordersNeedingPriceCorrection.length > preSyncCorrectionLen) {
380
+ mgr.ordersNeedingPriceCorrection.length = preSyncCorrectionLen;
381
+ }
382
+ return { filledOrders: [], updatedOrders: [], ordersNeedingCorrection: [], unmatchedChainOrders: [] };
383
+ }
356
384
  if (timedOut) {
357
385
  mgr.logger?.log?.(`[SYNC] Sync completed after timeout (${Date.now() - syncStartedAt}ms) — ` +
358
386
  `timeout won the race; next sync will reconcile chain state`, 'warn');
@@ -392,8 +420,11 @@ class SyncEngine {
392
420
  if (forceReleaseMs > 0 && mgr._syncLock && typeof mgr._syncLock.forceRelease === 'function') {
393
421
  forceReleaseHandle = setTimeout(() => {
394
422
  if (mgr._syncLock.isLocked()) {
423
+ // Increment the sync generation so the orphan callback
424
+ // can detect it was force-released and abort early.
425
+ mgr._syncGeneration = (mgr._syncGeneration || 0) + 1;
395
426
  const released = mgr._syncLock.forceRelease();
396
- mgr.logger?.log?.(`[SYNC] Force-released sync lock (${released} queued ops cleared) after ${forceReleaseMs}ms grace period`, 'warn');
427
+ mgr.logger?.log?.(`[SYNC] Force-released sync lock (generation=${mgr._syncGeneration}, ${released} queued ops cleared) after ${forceReleaseMs}ms grace period`, 'warn');
397
428
  }
398
429
  }, Math.max(1000, forceReleaseMs - (Date.now() - syncStartedAt)));
399
430
  }
@@ -490,6 +521,21 @@ class SyncEngine {
490
521
  orderIdsToLock.add(gridOrder.id);
491
522
  }
492
523
  }
524
+ // Re-verify that all collected order IDs still exist in mgr.orders before
525
+ // locking. A concurrent createOrder/cancelOrder could have removed or
526
+ // modified an order between collection above and the lock call below.
527
+ // The _gridLock serializes the main reconciliation against _applyOrderUpdate,
528
+ // but this re-verification catches the window before _gridLock acquisition.
529
+ const validOrderIds = new Set();
530
+ for (const id of orderIdsToLock) {
531
+ if (mgr.orders.has(id)) {
532
+ validOrderIds.add(id);
533
+ }
534
+ else {
535
+ mgr.logger?.log?.(`[SYNC] Order ${id} disappeared between collection and locking; skipping`, 'debug');
536
+ }
537
+ }
538
+ const orderIdsToLockFinal = [...validOrderIds];
493
539
  const chainOrderIdsOnGrid = new Set();
494
540
  const matchedGridOrderIds = new Set();
495
541
  const filledOrders = [];
@@ -497,15 +543,15 @@ class SyncEngine {
497
543
  const ordersNeedingCorrection = [];
498
544
  const unmatchedChainOrders = [];
499
545
  // Lock orders before reconciliation
500
- mgr.lockOrders([...orderIdsToLock]);
546
+ mgr.lockOrders(orderIdsToLockFinal);
501
547
  // Keep lock leases alive during long reconciliation runs.
502
548
  const refreshEveryMs = Math.max(TIMING.LOCK_REFRESH_MIN_MS, Math.floor(TIMING.LOCK_TIMEOUT_MS / 3));
503
549
  const refreshLockLeases = () => {
504
550
  const expiresAt = Date.now() + TIMING.LOCK_TIMEOUT_MS;
505
- for (const id of orderIdsToLock) {
551
+ for (const id of orderIdsToLockFinal) {
506
552
  mgr.shadowOrderIds.set(id, expiresAt);
507
553
  }
508
- mgr.logger?.log?.(`Refreshed lock leases for ${orderIdsToLock.size} orders`, 'debug');
554
+ mgr.logger?.log?.(`Refreshed lock leases for ${orderIdsToLockFinal.length} orders`, 'debug');
509
555
  };
510
556
  refreshLockLeases();
511
557
  const lockRefreshTimer = setInterval(refreshLockLeases, refreshEveryMs);
@@ -529,7 +575,7 @@ class SyncEngine {
529
575
  finally {
530
576
  clearInterval(lockRefreshTimer);
531
577
  // Unlock after reconciliation completes
532
- mgr.unlockOrders([...orderIdsToLock]);
578
+ mgr.unlockOrders(orderIdsToLockFinal);
533
579
  }
534
580
  return { filledOrders, updatedOrders, ordersNeedingCorrection, unmatchedChainOrders };
535
581
  }
@@ -547,7 +593,7 @@ class SyncEngine {
547
593
  * @param {Array<Object>} ordersNeedingCorrection - Output array: orders flagged for price correction
548
594
  * @param {Array<Object>} unmatchedChainOrders - Output array: open chain orders with no adoptable grid slot
549
595
  * @param {Object} options - Sync options (skipAccounting, etc.)
550
- * @returns {Promise<{filledOrders: Array, updatedOrders: Array, ordersNeedingCorrection: Array, unmatchedChainOrders: Array}>}
596
+ * @returns {Promise<import('./types').SyncResult>}
551
597
  */
552
598
  async _performSyncFromOpenOrders(mgr, assetAPrecision, assetBPrecision, parsedChainOrders, rawChainOrders, chainOrderIdsOnGrid, matchedGridOrderIds, filledOrders, updatedOrders, ordersNeedingCorrection, unmatchedChainOrders, options) {
553
599
  const skipAccounting = Boolean(options?.skipAccounting);
@@ -647,13 +693,25 @@ class SyncEngine {
647
693
  }
648
694
  }
649
695
  else if (gridOrder.state === ORDER_STATES.ACTIVE || gridOrder.state === ORDER_STATES.PARTIAL) {
650
- // During recovery syncs (protectCommittedOrders=true), don't
651
- // virtualize orders that were placed by a successful COW commit.
696
+ // Don't virtualize orders placed by a successful COW commit.
652
697
  // The chain snapshot may lag behind confirmed transactions,
653
- // causing correctly-placed orders to appear missing. Keeping them
654
- // in the grid defers cleanup to the next normal sync cycle, which
655
- // will correctly detect fills via the fill-history pipeline.
656
- if (options.protectCommittedOrders && mgr._committedOrderIds.has(gridOrder.orderId)) {
698
+ // causing correctly-placed orders to appear missing. _committedOrderIds
699
+ // is atomically rebuilt from every successful COW commit
700
+ // (manager.ts:_commitCowPlan) and is always active for all sync
701
+ // paths — previously gated on options.protectCommittedOrders.
702
+ // Always-on is safe because committed IDs are self-cleaning:
703
+ // filled/virtualized orders are absent from the next commit's
704
+ // finalMap, so their IDs drop out on the next atomic rebuild.
705
+ //
706
+ // SAFETY: _committedOrderIds is replaced atomically (reference swap)
707
+ // by _commitCowPlan. The sync reads has(gridOrder.orderId) against the
708
+ // current reference. If a concurrent COW commit replaces the set mid-sync,
709
+ // the new set is a superset (only adds entries for newly committed orders).
710
+ // An order in the superset was just committed, so it is genuinely on-chain
711
+ // and should not be virtualized. An order removed from the old set was
712
+ // filled/virtualized, which the sync will detect independently via the
713
+ // chain snapshot. Superset behavior is safe for this guard.
714
+ if (mgr._committedOrderIds?.has(gridOrder.orderId)) {
657
715
  continue;
658
716
  }
659
717
  const currentGridOrder = mgr.orders.get(gridOrder.id) || gridOrder;
@@ -888,10 +946,9 @@ class SyncEngine {
888
946
  }
889
947
  /**
890
948
  * Process one incremental fill-history event.
891
- * Returns `{ filledOrders, updatedOrders, partialFill, requiresOpenOrdersSync, ghostOrderId? }`.
892
949
  * @param {Object} fill - Fill history event object
893
950
  * @param {Object} [options] - Persistence mode options
894
- * @returns {Promise<Object>} { filledOrders, updatedOrders, partialFill, requiresOpenOrdersSync, ghostOrderId? }
951
+ * @returns {Promise<import('./types').SyncResult>}
895
952
  */
896
953
  async syncFromFillHistory(fill, options = {}) {
897
954
  const mgr = this.manager;
@@ -965,9 +1022,10 @@ class SyncEngine {
965
1022
  let chainConfirmsEmpty = false;
966
1023
  let chainRefetched = false;
967
1024
  // -----------------------------------------------------------------
968
- // Drift-only refetch: the cache is self-correcting across sequential
969
- // websocket fills, but if a fill was ever missed (reconnect, restart,
970
- // reorg, external activity), the cache and the grid can disagree.
1025
+ // Drift-only refetch: the cache is self-correcting across
1026
+ // sequential websocket fills, but if a fill was ever missed
1027
+ // (reconnect, restart, reorg, external activity), the cache and
1028
+ // the grid can disagree.
971
1029
  // The only signal we can detect from the in-memory state is a
972
1030
  // consistent drift: cached for_sale < grid size. Chain `for_sale`
973
1031
  // can only decrease, so a smaller cached value is an obvious
@@ -1282,10 +1340,8 @@ class SyncEngine {
1282
1340
  break;
1283
1341
  }
1284
1342
  case 'cancelOrder': {
1285
- const orderId = typeof chainData === 'object' && chainData !== null
1286
- ? chainData.orderId
1287
- : chainData;
1288
- const clearSize = !!(typeof chainData === 'object' && chainData !== null && chainData.clearSize);
1343
+ const orderId = chainData.orderId;
1344
+ const clearSize = !!chainData.clearSize;
1289
1345
  let btsFeeData;
1290
1346
  try {
1291
1347
  btsFeeData = getAssetFees('BTS');
@@ -1351,9 +1407,7 @@ class SyncEngine {
1351
1407
  // Plain open-order syncs do not imply a fresh account balance fetch,
1352
1408
  // so they still use optimistic accounting deltas.
1353
1409
  return this.syncFromOpenOrders(chainData, {
1354
- skipAccounting: false,
1355
- fillLockAlreadyHeld: options?.fillLockAlreadyHeld,
1356
- protectCommittedOrders: options?.protectCommittedOrders
1410
+ skipAccounting: false
1357
1411
  });
1358
1412
  case 'periodicBlockchainFetch': {
1359
1413
  // This source is used after fetchAccountTotals() has refreshed
@@ -1361,8 +1415,7 @@ class SyncEngine {
1361
1415
  // commitment deltas here double-deducts newly adopted or resized
1362
1416
  // open orders from already-fetched free balances.
1363
1417
  return this.syncFromOpenOrders(chainData, {
1364
- skipAccounting: true,
1365
- fillLockAlreadyHeld: options?.fillLockAlreadyHeld
1418
+ skipAccounting: true
1366
1419
  });
1367
1420
  }
1368
1421
  }