dexbot 1.6.5 → 1.6.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 (228) hide show
  1. package/CHANGELOG.md +76 -4
  2. package/README.md +108 -36
  3. package/analysis/README.md +11 -16
  4. package/analysis/account_resolver.ts +1 -11
  5. package/analysis/bot_usage/kibana_bot_queries.ts +1 -1
  6. package/analysis/chain_pool.ts +1 -1
  7. package/analysis/fills_source.ts +0 -6
  8. package/analysis/grid_correction_check.ts +20 -26
  9. package/analysis/resolve_source.ts +1 -1
  10. package/analysis/trade_profitability.ts +2 -5
  11. package/analysis/trend_detection/README.md +1 -3
  12. package/analysis/trend_detection/package.json +1 -1
  13. package/claw/package.json +1 -1
  14. package/claw/runtimes/openclaw-plugin/openclaw.plugin.json +1 -1
  15. package/claw/runtimes/openclaw-plugin/package.json +1 -1
  16. package/claw/tests/test_claw_mcp_transport.ts +2 -2
  17. package/dist/analysis/account_resolver.d.ts +1 -4
  18. package/dist/analysis/account_resolver.d.ts.map +1 -1
  19. package/dist/analysis/account_resolver.js +1 -1
  20. package/dist/analysis/account_resolver.js.map +1 -1
  21. package/dist/analysis/bot_usage/kibana_bot_queries.d.ts +1 -2
  22. package/dist/analysis/bot_usage/kibana_bot_queries.d.ts.map +1 -1
  23. package/dist/analysis/bot_usage/kibana_bot_queries.js +1 -1
  24. package/dist/analysis/bot_usage/kibana_bot_queries.js.map +1 -1
  25. package/dist/analysis/chain_pool.d.ts +1 -3
  26. package/dist/analysis/chain_pool.d.ts.map +1 -1
  27. package/dist/analysis/chain_pool.js +1 -1
  28. package/dist/analysis/chain_pool.js.map +1 -1
  29. package/dist/analysis/fills_source.d.ts +1 -51
  30. package/dist/analysis/fills_source.d.ts.map +1 -1
  31. package/dist/analysis/fills_source.js +1 -1
  32. package/dist/analysis/fills_source.js.map +1 -1
  33. package/dist/analysis/grid_correction_check.d.ts +2 -3
  34. package/dist/analysis/grid_correction_check.d.ts.map +1 -1
  35. package/dist/analysis/grid_correction_check.js +18 -26
  36. package/dist/analysis/grid_correction_check.js.map +1 -1
  37. package/dist/analysis/resolve_source.d.ts +1 -1
  38. package/dist/analysis/resolve_source.d.ts.map +1 -1
  39. package/dist/analysis/trade_profitability.d.ts.map +1 -1
  40. package/dist/analysis/trade_profitability.js +2 -7
  41. package/dist/analysis/trade_profitability.js.map +1 -1
  42. package/dist/dexbot.d.ts.map +1 -1
  43. package/dist/dexbot.js +82 -83
  44. package/dist/dexbot.js.map +1 -1
  45. package/dist/market_adapter/core/kibana_candles.d.ts +1 -15
  46. package/dist/market_adapter/core/kibana_candles.d.ts.map +1 -1
  47. package/dist/market_adapter/core/kibana_candles.js +1 -1
  48. package/dist/market_adapter/core/kibana_candles.js.map +1 -1
  49. package/dist/market_adapter/inputs/fetch_lp_data.d.ts +1 -35
  50. package/dist/market_adapter/inputs/fetch_lp_data.d.ts.map +1 -1
  51. package/dist/market_adapter/inputs/fetch_lp_data.js +10 -54
  52. package/dist/market_adapter/inputs/fetch_lp_data.js.map +1 -1
  53. package/dist/market_adapter/inputs/kibana_feed_source.d.ts +1 -8
  54. package/dist/market_adapter/inputs/kibana_feed_source.d.ts.map +1 -1
  55. package/dist/market_adapter/inputs/kibana_feed_source.js +1 -1
  56. package/dist/market_adapter/inputs/kibana_feed_source.js.map +1 -1
  57. package/dist/market_adapter/inputs/window_cache.d.ts +2 -63
  58. package/dist/market_adapter/inputs/window_cache.d.ts.map +1 -1
  59. package/dist/market_adapter/inputs/window_cache.js +22 -102
  60. package/dist/market_adapter/inputs/window_cache.js.map +1 -1
  61. package/dist/modules/account_bots.d.ts +16 -2
  62. package/dist/modules/account_bots.d.ts.map +1 -1
  63. package/dist/modules/account_bots.js +108 -44
  64. package/dist/modules/account_bots.js.map +1 -1
  65. package/dist/modules/account_orders.d.ts +20 -2
  66. package/dist/modules/account_orders.d.ts.map +1 -1
  67. package/dist/modules/account_orders.js +63 -3
  68. package/dist/modules/account_orders.js.map +1 -1
  69. package/dist/modules/bitshares-native/chain_client.d.ts +10 -0
  70. package/dist/modules/bitshares-native/chain_client.d.ts.map +1 -1
  71. package/dist/modules/bitshares-native/chain_client.js +197 -28
  72. package/dist/modules/bitshares-native/chain_client.js.map +1 -1
  73. package/dist/modules/bitshares-native/crypto/ecc.browser.d.ts.map +1 -1
  74. package/dist/modules/bitshares-native/crypto/ecc.browser.js +0 -31
  75. package/dist/modules/bitshares-native/crypto/ecc.browser.js.map +1 -1
  76. package/dist/modules/bitshares-native/subscriptions.d.ts.map +1 -1
  77. package/dist/modules/bitshares-native/subscriptions.js +312 -10
  78. package/dist/modules/bitshares-native/subscriptions.js.map +1 -1
  79. package/dist/modules/bitshares-native/transport.d.ts +1 -0
  80. package/dist/modules/bitshares-native/transport.d.ts.map +1 -1
  81. package/dist/modules/bitshares-native/transport.js +97 -3
  82. package/dist/modules/bitshares-native/transport.js.map +1 -1
  83. package/dist/modules/bitshares_client.d.ts +20 -0
  84. package/dist/modules/bitshares_client.d.ts.map +1 -1
  85. package/dist/modules/bitshares_client.js +29 -0
  86. package/dist/modules/bitshares_client.js.map +1 -1
  87. package/dist/modules/chain_keys.d.ts +37 -22
  88. package/dist/modules/chain_keys.d.ts.map +1 -1
  89. package/dist/modules/chain_keys.js +145 -44
  90. package/dist/modules/chain_keys.js.map +1 -1
  91. package/dist/modules/cli_start_onboarding.d.ts +10 -0
  92. package/dist/modules/cli_start_onboarding.d.ts.map +1 -0
  93. package/dist/modules/cli_start_onboarding.js +15 -0
  94. package/dist/modules/cli_start_onboarding.js.map +1 -0
  95. package/dist/modules/cli_start_output.d.ts +6 -0
  96. package/dist/modules/cli_start_output.d.ts.map +1 -0
  97. package/dist/modules/cli_start_output.js +8 -0
  98. package/dist/modules/cli_start_output.js.map +1 -0
  99. package/dist/modules/constants.d.ts +13 -0
  100. package/dist/modules/constants.d.ts.map +1 -1
  101. package/dist/modules/constants.js +103 -1
  102. package/dist/modules/constants.js.map +1 -1
  103. package/dist/modules/credit_runtime.d.ts +0 -2
  104. package/dist/modules/credit_runtime.d.ts.map +1 -1
  105. package/dist/modules/credit_runtime.js +1 -10
  106. package/dist/modules/credit_runtime.js.map +1 -1
  107. package/dist/modules/dexbot_class.d.ts +13 -10
  108. package/dist/modules/dexbot_class.d.ts.map +1 -1
  109. package/dist/modules/dexbot_class.js +0 -9
  110. package/dist/modules/dexbot_class.js.map +1 -1
  111. package/dist/modules/dexbot_cow_runtime.d.ts +13 -0
  112. package/dist/modules/dexbot_cow_runtime.d.ts.map +1 -1
  113. package/dist/modules/dexbot_cow_runtime.js +62 -10
  114. package/dist/modules/dexbot_cow_runtime.js.map +1 -1
  115. package/dist/modules/dexbot_fill_runtime.d.ts +6 -1
  116. package/dist/modules/dexbot_fill_runtime.d.ts.map +1 -1
  117. package/dist/modules/dexbot_fill_runtime.js +22 -3
  118. package/dist/modules/dexbot_fill_runtime.js.map +1 -1
  119. package/dist/modules/dexbot_maintenance_runtime.d.ts +24 -1
  120. package/dist/modules/dexbot_maintenance_runtime.d.ts.map +1 -1
  121. package/dist/modules/dexbot_maintenance_runtime.js +45 -1
  122. package/dist/modules/dexbot_maintenance_runtime.js.map +1 -1
  123. package/dist/modules/dexbot_state_recovery.d.ts.map +1 -1
  124. package/dist/modules/dexbot_state_recovery.js +13 -1
  125. package/dist/modules/dexbot_state_recovery.js.map +1 -1
  126. package/dist/modules/order/accounting.d.ts +4 -18
  127. package/dist/modules/order/accounting.d.ts.map +1 -1
  128. package/dist/modules/order/accounting.js +4 -34
  129. package/dist/modules/order/accounting.js.map +1 -1
  130. package/dist/modules/order/export.d.ts +9 -12
  131. package/dist/modules/order/export.d.ts.map +1 -1
  132. package/dist/modules/order/export.js +9 -12
  133. package/dist/modules/order/export.js.map +1 -1
  134. package/dist/modules/order/grid.d.ts +35 -40
  135. package/dist/modules/order/grid.d.ts.map +1 -1
  136. package/dist/modules/order/grid.js +76 -44
  137. package/dist/modules/order/grid.js.map +1 -1
  138. package/dist/modules/order/grid_reconcile.d.ts.map +1 -1
  139. package/dist/modules/order/grid_reconcile.js +111 -20
  140. package/dist/modules/order/grid_reconcile.js.map +1 -1
  141. package/dist/modules/order/grid_reconcile_internal.d.ts +5 -3
  142. package/dist/modules/order/grid_reconcile_internal.d.ts.map +1 -1
  143. package/dist/modules/order/grid_reconcile_internal.js +29 -3
  144. package/dist/modules/order/grid_reconcile_internal.js.map +1 -1
  145. package/dist/modules/order/logger.d.ts +12 -2
  146. package/dist/modules/order/logger.d.ts.map +1 -1
  147. package/dist/modules/order/logger.js +29 -7
  148. package/dist/modules/order/logger.js.map +1 -1
  149. package/dist/modules/order/manager.d.ts +49 -8
  150. package/dist/modules/order/manager.d.ts.map +1 -1
  151. package/dist/modules/order/manager.js +72 -34
  152. package/dist/modules/order/manager.js.map +1 -1
  153. package/dist/modules/order/utils/order.d.ts +22 -7
  154. package/dist/modules/order/utils/order.d.ts.map +1 -1
  155. package/dist/modules/order/utils/order.js +200 -33
  156. package/dist/modules/order/utils/order.js.map +1 -1
  157. package/dist/modules/order/utils/system.d.ts +97 -0
  158. package/dist/modules/order/utils/system.d.ts.map +1 -1
  159. package/dist/modules/order/utils/system.js +274 -2
  160. package/dist/modules/order/utils/system.js.map +1 -1
  161. package/dist/modules/order/utils/withPoolRef.d.ts +12 -0
  162. package/dist/modules/order/utils/withPoolRef.d.ts.map +1 -1
  163. package/dist/modules/order/utils/withPoolRef.js +17 -0
  164. package/dist/modules/order/utils/withPoolRef.js.map +1 -1
  165. package/dist/modules/order/working_grid.d.ts +8 -13
  166. package/dist/modules/order/working_grid.d.ts.map +1 -1
  167. package/dist/modules/order/working_grid.js +8 -29
  168. package/dist/modules/order/working_grid.js.map +1 -1
  169. package/dist/modules/paths.d.ts +7 -1
  170. package/dist/modules/paths.d.ts.map +1 -1
  171. package/dist/modules/paths.js +10 -3
  172. package/dist/modules/paths.js.map +1 -1
  173. package/dist/modules/utils/text_width.d.ts +19 -0
  174. package/dist/modules/utils/text_width.d.ts.map +1 -0
  175. package/dist/modules/utils/text_width.js +97 -0
  176. package/dist/modules/utils/text_width.js.map +1 -0
  177. package/dist/pm2.d.ts.map +1 -1
  178. package/dist/pm2.js +95 -18
  179. package/dist/pm2.js.map +1 -1
  180. package/dist/scripts/sync-version.js +0 -22
  181. package/dist/scripts/sync-version.js.map +1 -1
  182. package/dist/scripts/update.js +62 -13
  183. package/dist/scripts/update.js.map +1 -1
  184. package/dist/scripts/update_dist_freshness.d.ts +12 -0
  185. package/dist/scripts/update_dist_freshness.d.ts.map +1 -1
  186. package/dist/scripts/update_dist_freshness.js +30 -1
  187. package/dist/scripts/update_dist_freshness.js.map +1 -1
  188. package/dist/unlock.d.ts +14 -2
  189. package/dist/unlock.d.ts.map +1 -1
  190. package/dist/unlock.js +73 -4
  191. package/dist/unlock.js.map +1 -1
  192. package/docs/BITSHARES_ONBOARDING.md +9 -6
  193. package/docs/COW_INVARIANTS.md +9 -0
  194. package/docs/CREDENTIAL_SECURITY.md +26 -0
  195. package/docs/DEXBOT_COMPARISON.md +11 -11
  196. package/docs/EVOLUTION.md +9 -7
  197. package/docs/FUND_MOVEMENT_AND_ACCOUNTING.md +1 -1
  198. package/docs/GRID_PRICE_INVARIANT.md +573 -0
  199. package/docs/GRID_RECALCULATION.md +1 -1
  200. package/docs/GRID_RECONCILE.md +60 -39
  201. package/docs/LOGGING.md +17 -2
  202. package/docs/ORDER_ENGINE_POST_1.0_RETROSPECTIVE.md +555 -0
  203. package/docs/README.md +3 -3
  204. package/docs/WORKFLOW.md +12 -6
  205. package/docs/architecture.md +40 -38
  206. package/docs/developer_guide.md +4 -8
  207. package/market_adapter/README.md +16 -12
  208. package/modules/README.md +1 -1
  209. package/package.json +8 -4
  210. package/scripts/README.md +0 -9
  211. package/scripts/reset-settings.sh +1 -1
  212. package/analysis/ama_fitting/package.json +0 -12
  213. package/analysis/analyze_derivatives.ts +0 -320
  214. package/analysis/derivative_chart_generator.ts +0 -874
  215. package/analysis/trend_detection/SIGNAL_DOCUMENTATION.md +0 -403
  216. package/analysis/trend_detection/derivative_analyzer.ts +0 -1059
  217. package/dist/analysis/analyze_derivatives.d.ts +0 -68
  218. package/dist/analysis/analyze_derivatives.d.ts.map +0 -1
  219. package/dist/analysis/analyze_derivatives.js +0 -287
  220. package/dist/analysis/analyze_derivatives.js.map +0 -1
  221. package/dist/analysis/derivative_chart_generator.d.ts +0 -12
  222. package/dist/analysis/derivative_chart_generator.d.ts.map +0 -1
  223. package/dist/analysis/derivative_chart_generator.js +0 -891
  224. package/dist/analysis/derivative_chart_generator.js.map +0 -1
  225. package/dist/analysis/trend_detection/derivative_analyzer.d.ts +0 -248
  226. package/dist/analysis/trend_detection/derivative_analyzer.d.ts.map +0 -1
  227. package/dist/analysis/trend_detection/derivative_analyzer.js +0 -910
  228. package/dist/analysis/trend_detection/derivative_analyzer.js.map +0 -1
@@ -13,10 +13,10 @@
13
13
  * - JSON: Sanitized bot settings (excludes private keys)
14
14
  *
15
15
  * ===============================================================================
16
- * TABLE OF CONTENTS (6 exported functions + internal helpers)
16
+ * TABLE OF CONTENTS (5 exported functions + internal helpers)
17
17
  * ===============================================================================
18
18
  *
19
- * PUBLIC EXPORTS (6 functions)
19
+ * PUBLIC EXPORTS (5 functions)
20
20
  * 1. exportBotTrades(botKey, botConfig, outputDir) - Main export function (async)
21
21
  * Orchestrates trade extraction and writing CSV/JSON exports
22
22
  * Returns: { success, trades_exported, csv_path, settings_path, output_dir, timestamp }
@@ -26,22 +26,17 @@
26
26
  * FILL DETECTED blocks, links with fee information
27
27
  * Returns: Array of trade objects with { timestamp, side, amount, price, proceeds, fee_asset, fee_amount, order_id }
28
28
  *
29
- * 3. writeTradesCSV(trades, outputPath) - Write trades to CSV file (async)
30
- * Generates standardized CSV with proper escaping and formatting
31
- * Returns: { success, count } or { success: false, error }
32
- *
33
- * 4. writeSettingsJSON(botConfig, botName, outputPath) - Write sanitized bot settings (async)
34
- * Exports bot parameters and configuration (excludes private keys)
35
- * Returns: { success } or { success: false, error }
36
- *
37
- * 5. parseFillLine(line) - Parse legacy fill entry from a single log line
29
+ * 3. parseFillLine(line) - Parse legacy fill entry from a single log line
38
30
  * Expected format: [TIMESTAMP] [DEBUG] [FILL] side fill: size=X, price=Y, proceeds=Z [order=1.7.N]
39
31
  * Returns: { timestamp, side, amount, price, proceeds, order_id? } or null
40
32
  *
41
- * 6. parseFeeLine(line) - Parse fee information from log line
33
+ * 4. parseFeeLine(line) - Parse fee information from log line
42
34
  * Expected format: [TIMESTAMP] [INFO] [FEES] N maker fills @ FEE ASSET = TOTAL
43
35
  * Returns: { timestamp, count, fee_per_fill, fee_asset, total_fee } or null
44
36
  *
37
+ * 5. deriveTradeFromFillBlock(block, assetContext) - Derive a trade from a
38
+ * parsed FILL DETECTED block using the available asset context.
39
+ *
45
40
  * INTERNAL HELPERS
46
41
  * - isoToUnixSeconds(iso) - Shared ISO-timestamp to unix-seconds conversion
47
42
  * - extractLogTimestamp(line) - Pull unix-seconds timestamp from a log line prefix
@@ -58,6 +53,8 @@
58
53
  * Reads profiles/orders/<botKey>.json for assetA/assetB ids+precisions and
59
54
  * grid price stats. No chain access (export stays offline/browser-safe).
60
55
  * Returns: { assetA, assetB, gridMedianPrice?, ... } or null
56
+ * - writeTradesCSV(trades, outputPath) - Write the generated trade CSV
57
+ * - writeSettingsJSON(botConfig, botName, outputPath) - Write sanitized settings JSON
61
58
  *
62
59
  * ===============================================================================
63
60
  *
@@ -1 +1 @@
1
- {"version":3,"file":"export.js","sourceRoot":"","sources":["../../../modules/order/export.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+EG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAChD,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;AAC7B,IAAI,SAAc,CAAC;AACnB,SAAS,WAAW;IAChB,IAAI,CAAC,SAAS,IAAI,QAAQ;QAAE,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC7D,OAAO,SAAS,CAAC;AACrB,CAAC;AACD,MAAM,YAAY,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC;AA+B1C,sEAAsE;AACtE,SAAS,gBAAgB,CAAC,GAAW;IACjC,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,uBAAuB,CAAC;AACpE,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,+KAA+K,CAAC,CAAC;IAE9M,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAC;IAE5B,OAAO;QACH,SAAS,EAAE,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAgB,4BAA4B;QACrF,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,EAAoC,kBAAkB;QACxE,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAsB,qBAAqB;QAC3E,KAAK,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAuB,kBAAkB;QACxE,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAqB,gBAAgB;QACvE,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,CAAC;QACb,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE;KAC/B,CAAC;AACN,CAAC;AAED;;;;;GAKG;AACH,SAAS,YAAY,CAAC,IAAY;IAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,iIAAiI,CAAC,CAAC;IAE/J,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAE3B,OAAO;QACH,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,YAAY,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QACrC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;QACtB,SAAS,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAClC,SAAS,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;KAC3C,CAAC;AACN,CAAC;AA8BD,MAAM,oBAAoB,GAAG,yBAAyB,CAAC;AACvD,MAAM,gBAAgB,GAAG,mDAAmD,CAAC;AAC7E,MAAM,mBAAmB,GAAG,yBAAyB,CAAC;AACtD,+EAA+E;AAC/E,iEAAiE;AACjE,wEAAwE;AACxE,MAAM,qBAAqB,GAAG,kGAAkG,CAAC;AACjI,MAAM,oBAAoB,GAAG,4CAA4C,CAAC;AAE1E,6EAA6E;AAC7E,SAAS,mBAAmB,CAAC,IAAY;IACrC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACvC,OAAO,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAClD,CAAC;AAED,SAAS,UAAU,CAAC,GAAW,EAAE,SAAiB;IAC9C,OAAO,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;AACzC,CAAC;AAED;;;;GAIG;AACH,SAAS,0BAA0B,CAAC,OAAe,EAAE,WAAmB,EAAE,OAAgB,EAAE,GAAuB;IAC/G,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC7F,MAAM,aAAa,GAAG,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACrG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,aAAa,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACxH,mEAAmE;IACnE,yDAAyD;IACzD,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,GAAG,aAAa,CAAC;IAC9E,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACvD,OAAO;QACH,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK;QAC9B,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,EAAG,iCAAiC;QAC/E,KAAK;QACL,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAE,+DAA+D;KACjH,CAAC;AACN,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,wBAAwB,CAAC,KAAgB,EAAE,GAA8B;IAC9E,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,IAAI,KAAK,CAAC,SAAS,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IACzC,IAAI,KAAK,CAAC,OAAO,IAAI,IAAI,IAAI,KAAK,CAAC,WAAW,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC;IAEpE,IAAI,UAAU,GAAoB,IAAI,CAAC;IAEvC,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QAC7C,MAAM,eAAe,GAAG,KAAK,CAAC,WAAW,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,CAAC,eAAe,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QACvG,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,CAAC,eAAe,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QACtG,IAAI,CAAC,eAAe,IAAI,CAAC,cAAc;YAAE,OAAO,IAAI,CAAC,CAAE,gCAAgC;QACvF,UAAU,GAAG,0BAA0B,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,EAAE,eAAe,EAAE,GAAG,CAAC,CAAC;IACpG,CAAC;SAAM,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;QACpD,sEAAsE;QACtE,0DAA0D;QAC1D,+DAA+D;QAC/D,wEAAwE;QACxE,IAAI,OAAgB,CAAC;QACrB,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;YACpB,IAAI,KAAK,CAAC,WAAW,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,CAAC,WAAW,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE;gBAAE,OAAO,IAAI,CAAC;YAC5F,OAAO,GAAG,KAAK,CAAC,WAAW,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,CAAC;aAAM,CAAC;YACJ,IAAI,KAAK,CAAC,eAAe,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,CAAC,eAAe,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE;gBAAE,OAAO,IAAI,CAAC;YACpG,OAAO,GAAG,KAAK,CAAC,eAAe,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QACtD,CAAC;QACD,UAAU,GAAG,0BAA0B,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;IAC5F,CAAC;SAAM,CAAC;QACJ,mDAAmD;QACnD,MAAM,OAAO,GAAG,0BAA0B,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;QACxF,MAAM,MAAM,GAAG,0BAA0B,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;QACxF,IAAI,OAAO,IAAI,CAAC,MAAM;YAAE,UAAU,GAAG,OAAO,CAAC;aACxC,IAAI,MAAM,IAAI,CAAC,OAAO;YAAE,UAAU,GAAG,MAAM,CAAC;aAC5C,IAAI,OAAO,IAAI,MAAM,IAAI,GAAG,CAAC,eAAe,IAAI,GAAG,CAAC,eAAe,GAAG,CAAC,EAAE,CAAC;YAC3E,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC;YACnF,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC;YACjF,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,GAAG;gBAAE,OAAO,IAAI,CAAC,CAAE,kBAAkB;YACxE,UAAU,GAAG,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;QACvD,CAAC;;YAAM,OAAO,IAAI,CAAC;IACvB,CAAC;IAED,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAC7B,OAAO;QACH,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,GAAG,UAAU;QACb,SAAS,EAAE,KAAK;QAChB,UAAU,EAAE,CAAC;QACb,QAAQ,EAAE,KAAK,CAAC,OAAO,IAAI,EAAE;KAChC,CAAC;AACN,CAAC;AAED;;;;;GAKG;AACH,SAAS,yBAAyB,CAAC,MAAc,EAAE,SAAc;IAC7D,MAAM,YAAY,GAAG,CAAC,QAAgB,EAAc,EAAE;QAClD,IAAI,CAAC;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QACvF,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC,CAAC;IAEF,uEAAuE;IACvE,IAAI,QAAQ,GAAa,EAAE,CAAC;IAC5B,IAAI,CAAC;QACD,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IACzF,CAAC;IAAC,MAAM,CAAC,CAAC,mBAAmB,CAAC,CAAC;IAC/B,MAAM,SAAS,GAAG,GAAG,MAAM,OAAO,CAAC;IACnC,MAAM,OAAO,GAAG,CAAC,SAAS,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC;IACxE,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7C,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,EAAE,IAAI,IAAI,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;IAEjE,IAAI,GAAG,GAAe,IAAI,CAAC;IAC3B,KAAK,MAAM,QAAQ,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;QACzC,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,MAAM;YAAE,SAAS;QAC9C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YACzB,GAAG,GAAG,SAAS,CAAC;YAChB,MAAM;QACV,CAAC;QACD,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpF,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvF,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,QAAQ,IAAI,QAAQ,KAAK,QAAQ,CAAC,EAAE,CAAC;YAC1E,GAAG,GAAG,SAAS,CAAC;YAChB,MAAM;QACV,CAAC;IACL,CAAC;IACD,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAClC,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAClC,IAAI,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE;QAAE,OAAO,IAAI,CAAC;IAC5C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAE1F,MAAM,GAAG,GAAuB;QAC5B,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;QACrF,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;KACxF,CAAC;IAEF,IAAI,CAAC;QACD,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QAChF,MAAM,MAAM,GAAG,IAAI;aACd,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;aACjC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aAClD,IAAI,CAAC,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,GAAG,CAAC,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IACvF,CAAC;IAAC,MAAM,CAAC,CAAC,gCAAgC,CAAC,CAAC;IAE5C,OAAO,GAAG,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,YAAY,CAAC,WAAgB,EAAE,eAA0C,IAAI;IACxF,MAAM,KAAK,GAAU,EAAE,CAAC;IACxB,MAAM,IAAI,GAAU,EAAE,CAAC;IACvB,IAAI,YAAY,GAAqB,IAAI,CAAC;IAC1C,IAAI,aAAa,GAAG,CAAC,CAAC;IAEtB,MAAM,aAAa,GAAG,CAAC,KAAgB,EAAE,EAAE;QACvC,wDAAwD;QACxD,MAAM,KAAK,GAAG,wBAAwB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAC5D,IAAI,KAAK;YAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;;YACxB,aAAa,EAAE,CAAC;IACzB,CAAC,CAAC;IAEF,IAAI,CAAC;QACD,MAAM,UAAU,GAAG,OAAO,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QACzD,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC,eAAe,CAAC;YACrC,KAAK,EAAE,UAAU;YACjB,SAAS,EAAE,QAAQ;SACtB,CAAC,CAAC;QAEH,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,EAAE,EAAE,CAAC;YAC1B,mEAAmE;YACnE,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,IAAI,EAAE,CAAC;gBACP,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACjB,SAAS;YACb,CAAC;YAED,gEAAgE;YAChE,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;YAC/B,IAAI,GAAG,EAAE,CAAC;gBACN,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACf,SAAS;YACb,CAAC;YAED,iEAAiE;YACjE,wDAAwD;YACxD,IAAI,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAClC,IAAI,YAAY;oBAAE,aAAa,CAAC,YAAY,CAAC,CAAC;gBAC9C,YAAY,GAAG,EAAE,SAAS,EAAE,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxD,SAAS;YACb,CAAC;YAED,IAAI,YAAY,EAAE,CAAC;gBACf,MAAM,EAAE,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;gBACrC,IAAI,EAAE,KAAK,SAAS,IAAI,YAAY,CAAC,SAAS,KAAK,SAAS;oBAAE,YAAY,CAAC,SAAS,GAAG,EAAE,CAAC;gBAE1F,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBACnD,IAAI,UAAU,EAAE,CAAC;oBACb,YAAY,CAAC,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;oBACrC,SAAS;gBACb,CAAC;gBAED,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;gBACvD,IAAI,YAAY,EAAE,CAAC;oBACf,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;oBACrC,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;oBACzC,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;wBAAE,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC;oBACvD,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;wBAAE,YAAY,CAAC,WAAW,GAAG,QAAQ,CAAC;oBACnE,IAAI,YAAY,CAAC,CAAC,CAAC;wBAAE,YAAY,CAAC,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;oBAChE,IAAI,YAAY,CAAC,CAAC,CAAC;wBAAE,YAAY,CAAC,eAAe,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;oBACpE,SAAS;gBACb,CAAC;gBAED,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;gBACpD,IAAI,UAAU,EAAE,CAAC;oBACb,YAAY,CAAC,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACpD,YAAY,CAAC,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;oBAC9C,2DAA2D;oBAC3D,aAAa,CAAC,YAAY,CAAC,CAAC;oBAC5B,YAAY,GAAG,IAAI,CAAC;oBACpB,SAAS;gBACb,CAAC;YACL,CAAC;QACL,CAAC;QAED,sEAAsE;QACtE,IAAI,YAAY;YAAE,aAAa,CAAC,YAAY,CAAC,CAAC;QAE9C,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;YACpB,YAAY,CAAC,IAAI,CAAC,WAAW,aAAa,2FAA2F,CAAC,CAAC;QAC3I,CAAC;QAED,qEAAqE;QACrE,wEAAwE;QACxE,uEAAuE;QACvE,sEAAsE;QACtE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,IAAI,IAAI,CAAC,UAAU,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3C,IAAI,IAAI,GAAQ,IAAI,CAAC;gBACrB,IAAI,QAAQ,GAAG,QAAQ,CAAC;gBACxB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;oBACnB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAE,CAAS,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;oBAC7D,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,QAAQ,EAAE,CAAC;wBAC9B,IAAI,GAAG,CAAC,CAAC;wBACT,QAAQ,GAAG,IAAI,CAAC;oBACpB,CAAC;gBACL,CAAC;gBACD,IAAI,IAAI,EAAE,CAAC;oBACP,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;oBAChC,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC;wBAC9C,CAAC,CAAC,IAAI,CAAC,YAAY;wBACnB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACtE,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC;gBAC9B,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,YAAY,CAAC,KAAK,CAAC,4BAA4B,WAAW,KAAK,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvF,OAAO,EAAE,CAAC;IACd,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,cAAc,CAAC,MAAW,EAAE,UAAe;IACtD,IAAI,CAAC;QACD,aAAa;QACb,MAAM,OAAO,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;QAE3F,WAAW;QACX,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAU,EAAE,EAAE,CAAC;YACpC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;YAC1B,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC;YAC/B,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC;YAClC,KAAK,CAAC,IAAI;YACV,KAAK,CAAC,SAAS,IAAI,KAAK;YACxB,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC;YAC3C,KAAK,CAAC,QAAQ,IAAI,EAAE;SACvB,CAAC,CAAC;QAEH,oBAAoB;QACpB,MAAM,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;aACzB,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE;YACpC,gEAAgE;YAChE,sDAAsD;YACtD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;gBAC5F,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC;YAC1C,CAAC;YACD,OAAO,GAAG,CAAC;QACf,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aACZ,IAAI,CAAC,IAAI,CAAC,CAAC;QAEhB,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,GAAG,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;QAClD,YAAY,CAAC,IAAI,CAAC,cAAc,MAAM,CAAC,MAAM,cAAc,UAAU,EAAE,CAAC,CAAC;QAEzE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;IACnD,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,YAAY,CAAC,KAAK,CAAC,wBAAwB,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;IAC3D,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,iBAAiB,CAAC,SAAc,EAAE,OAAY,EAAE,UAAe;IAC1E,IAAI,CAAC;QACD,MAAM,SAAS,GAAG;YACd,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE,SAAS,CAAC,QAAQ,IAAI,cAAc;YAC9C,MAAM,EAAE,SAAS,CAAC,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,EAAE;YACrE,UAAU,EAAE;gBACR,WAAW,EAAE,SAAS,CAAC,UAAU,IAAI,cAAc,CAAC,UAAU;gBAC9D,SAAS,EAAE,SAAS,CAAC,QAAQ,IAAI,cAAc,CAAC,QAAQ;gBACxD,SAAS,EAAE,SAAS,CAAC,QAAQ,IAAI,cAAc,CAAC,QAAQ;gBACxD,iBAAiB,EAAE,SAAS,CAAC,gBAAgB,IAAI,cAAc,CAAC,gBAAgB;gBAChF,qBAAqB,EAAE,SAAS,CAAC,mBAAmB,IAAI,cAAc,CAAC,mBAAmB;gBAC1F,aAAa,EAAE,SAAS,CAAC,YAAY,IAAI,cAAc,CAAC,YAAY;gBACpE,cAAc,EAAE,SAAS,CAAC,aAAa,IAAI,cAAc,CAAC,aAAa;gBACvE,SAAS,EAAE,SAAS,CAAC,QAAQ,IAAI,cAAc,CAAC,QAAQ;gBACxD,mBAAmB,EAAE,SAAS,CAAC,kBAAkB,IAAI,cAAc,CAAC,kBAAkB;gBACtF,OAAO,EAAE,SAAS,CAAC,MAAM,IAAI,KAAK;gBAClC,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,KAAK;aACrC;YACD,MAAM,EAAE;gBACJ,IAAI,EAAE,SAAS,CAAC,MAAM;gBACtB,KAAK,EAAE,SAAS,CAAC,MAAM;aAC1B;YACD,WAAW,EAAE,MAAM,EAAE;SACxB,CAAC;QAEF,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,CAAC;QACjF,YAAY,CAAC,IAAI,CAAC,0BAA0B,UAAU,EAAE,CAAC,CAAC;QAE1D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC7B,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,YAAY,CAAC,KAAK,CAAC,kCAAkC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC7E,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;IAC3D,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,eAAe,CAAC,MAAW,EAAE,SAAc,EAAE,YAAiB,WAAW;IACpF,IAAI,CAAC;QACD,iCAAiC;QACjC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAE7B,iEAAiE;QACjE,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC;QAC/B,IAAI,WAAW,GAAkB,IAAI,CAAC;QAEtC,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC1C,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;YAC1C,iEAAiE;YACjE,2DAA2D;YAC3D,sEAAsE;YACtE,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CACtC,CAAC,CAAC,WAAW,EAAE,KAAK,GAAG,IAAI,MAAM,CACpC,CAAC;YACF,MAAM,WAAW,GAAG,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CACrD,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAC7F,CAAC;YAEF,IAAI,WAAW,EAAE,CAAC;gBACd,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;YAClD,CAAC;QACL,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAChB,YAAY,CAAC,IAAI,CAAC,kCAAkC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChF,CAAC;QAED,gEAAgE;QAChE,uEAAuE;QACvE,MAAM,YAAY,GAAG,yBAAyB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAClE,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,YAAY,CAAC,IAAI,CAAC,yCAAyC,MAAM,iDAAiD,CAAC,CAAC;QACxH,CAAC;QAED,6BAA6B;QAC7B,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAEhF,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,YAAY,CAAC,IAAI,CAAC,mCAAmC,MAAM,EAAE,CAAC,CAAC;QACnE,CAAC;QAED,mBAAmB;QACnB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,MAAM,aAAa,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAExD,sBAAsB;QACtB,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,MAAM,gBAAgB,CAAC,CAAC;QACrE,MAAM,cAAc,GAAG,MAAM,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;QAEhF,OAAO;YACH,OAAO,EAAE,SAAS,CAAC,OAAO,IAAI,cAAc,CAAC,OAAO;YACpD,eAAe,EAAE,MAAM,CAAC,MAAM;YAC9B,QAAQ,EAAE,OAAO;YACjB,aAAa,EAAE,YAAY;YAC3B,UAAU,EAAE,SAAS;YACrB,SAAS,EAAE,MAAM,EAAE;SACtB,CAAC;IACN,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAChB,YAAY,CAAC,KAAK,CAAC,qBAAqB,MAAM,KAAK,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC3E,OAAO;YACH,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,eAAe,CAAC,GAAG,CAAC;YAC3B,OAAO,EAAE,MAAM;SAClB,CAAC;IACN,CAAC;AACL,CAAC;AAED,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,wBAAwB,EAAE,CAAA"}
1
+ {"version":3,"file":"export.js","sourceRoot":"","sources":["../../../modules/order/export.ts"],"names":[],"mappings":"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"}
@@ -12,63 +12,58 @@
12
12
  * - Detects and flags out-of-spread conditions
13
13
  *
14
14
  * ===============================================================================
15
- * TABLE OF CONTENTS - Grid Functions (27 exported functions)
15
+ * TABLE OF CONTENTS - Grid Functions (22 exported functions)
16
16
  * ===============================================================================
17
17
  *
18
- * CONFIGURATION & CALCULATION (1 method)
19
- * 1. calculateGapSlots(incrementPercent, targetSpreadPercent) - Calculate spread gap size
18
+ * CONFIGURATION & CALCULATION (2 functions)
19
+ * 1. resolveRmsThresholdPct(manager) - Resolve the structural-divergence threshold
20
+ * 2. calculateGapSlots(incrementPercent, targetSpreadPercent) - Calculate spread gap size
20
21
  *
21
- * GRID SIZING & CONTEXT (1 method)
22
- * 3. _getSizingContext(manager, side) - Get budget and sizing parameters (internal)
23
- * Determines budget from allocated funds, deducts BTS fees if needed
22
+ * GRID SIZING & CONTEXT (1 function)
23
+ * 3. _getSizingContext(manager, side, options) - Get budget and sizing parameters
24
+ * Determines budget from allocated funds and optionally deducts BTS fees
24
25
  *
25
- * GRID CREATION (1 method)
26
+ * GRID CREATION (1 function)
26
27
  * 4. createOrderGrid(config) - Create geometric price grid
27
28
  * Returns price levels from minPrice to maxPrice with increment spacing
28
29
  *
29
- * ORDER CACHE MANAGEMENT (1 method - internal)
30
- * 5. _clearOrderCachesLogic(manager) - Clear order caches (_ordersByType, _ordersByState)
30
+ * GRID LOADING & INITIALIZATION (2 functions - async)
31
+ * 5. loadGrid(manager, grid, boundaryIdx, genesisInput, options) - Load grid into manager orders
32
+ * 6. initializeGrid(manager) - Full grid initialization from config
31
33
  *
32
- * GRID LOADING & INITIALIZATION (2 methods - async)
33
- * 6. loadGrid(manager, grid, boundaryIdx) - Load grid into manager orders
34
- * 7. initializeGrid(manager) - Full grid initialization from config
34
+ * GRID RECALCULATION (1 function - async)
35
+ * 7. recalculateGrid(manager, opts) - Recalculate grid based on current state
35
36
  *
36
- * GRID RECALCULATION (1 method - async)
37
- * 8. recalculateGrid(manager, opts) - Recalculate grid based on current state
37
+ * GRID STATE CHECKING (1 function)
38
+ * 8. checkAndUpdateGridIfNeeded(manager) - Check if grid needs update
38
39
  *
39
- * GRID STATE CHECKING (1 method)
40
- * 9. checkAndUpdateGridIfNeeded(manager) - Check if grid needs update
40
+ * BLOCKCHAIN SYNCHRONIZATION (2 functions - async)
41
+ * 9. _recalculateGridOrderSizesFromBlockchain(manager, orderType, options) - Recalculate sizes from blockchain
42
+ * 10. updateGridFromBlockchainSnapshot(manager, orderType, fromBlockchainTimer, overrideBoundaryIdx) - Update grid from blockchain
41
43
  *
42
- * BLOCKCHAIN SYNCHRONIZATION (2 methods - async)
43
- * 10. _recalculateGridOrderSizesFromBlockchain(manager, orderType) - Recalculate sizes from blockchain
44
- * 11. updateGridFromBlockchainSnapshot(manager, orderType, fromBlockchainTimer) - Update grid from blockchain
45
- *
46
- * GRID COMPARISON (2 methods - async)
47
- * 12. compareGrids(calculatedGrid, persistedGrid, manager) - Compare two grids
44
+ * GRID COMPARISON (2 functions - async)
45
+ * 11. compareGrids(calculatedGrid, persistedGrid, manager) - Compare two grids
48
46
  * Validates grid structure and reports divergence metrics
49
- * 13. monitorDivergence(manager, calculatedGrid, persistedGrid) - Unified divergence check
47
+ * 12. monitorDivergence(manager, calculatedGrid, persistedGrid) - Unified divergence check
50
48
  * Runs ratio-based + RMS-based checks and returns combined result
51
49
  *
52
- * ON-CHAIN ORDER FETCHING (1 method - async)
53
- * 14. _getOnChainOrders(manager) - Collect on-chain buy/sell orders from manager
54
- *
55
- * SPREAD MANAGEMENT (2 methods - async)
56
- * 15. calculateCurrentSpread(manager) - Calculate current bid-ask spread
57
- * 16. checkSpreadCondition(manager, BitShares, updateOrdersOnChainBatch) - Check and flag spread condition
50
+ * SPREAD MANAGEMENT (2 functions)
51
+ * 13. calculateCurrentSpread(manager) - Calculate current bid-ask spread
52
+ * 14. checkSpreadCondition(manager, BitShares, updateOrdersOnChainBatch) - Check and flag spread condition
58
53
  *
59
- * GRID HEALTH MONITORING (6 methods)
60
- * 17. checkGridHealth(manager, updateOrdersOnChainBatch) - Monitor grid health (async)
61
- * 18. checkWindowDust(manager) - Dust check scoped to the active buy/sell window (async)
62
- * 19. _hasAnyDust(manager, partials, type) - Check for dust orders (internal)
63
- * 20. hasAnyDust(manager, partials, side) - Check for dust orders (public)
64
- * 21. getDustOrders(manager, partials, side) - Get all dust order IDs (public)
65
- * 22. determineOrderSideByFunds(manager, currentMarketPrice) - Determine priority side
54
+ * GRID HEALTH MONITORING (4 functions)
55
+ * 15. checkGridHealth(manager, updateOrdersOnChainBatch) - Monitor grid health
56
+ * 16. checkWindowDust(manager) - Dust check scoped to the active buy/sell window
57
+ * 17. hasAnyDust(manager, partials, side) - Check for dust orders
58
+ * 18. getDustOrders(manager, partials, side) - Get dust order IDs
66
59
  *
67
- * SPREAD CORRECTION (1 method)
68
- * 23. prepareSpreadCorrectionOrders(manager, preferredSide) - Prepare correction orders
60
+ * SIDE SELECTION (1 function)
61
+ * 19. determineOrderSideByFunds(manager, currentMarketPrice) - Determine priority side
69
62
  *
70
- * DUST DETECTION (1 method - internal)
71
- * 25. _getDustOrders(manager, partials, type) - Internal dust detection helper
63
+ * BLOAT STATUS (3 functions)
64
+ * 20. isGridBloated(manager, orders) - Check whether the grid is bloated
65
+ * 21. isGridBloatGraceActive(manager) - Check the bloat grace state
66
+ * 22. clearGridBloatFlag(manager) - Clear the bloat state
72
67
  *
73
68
  * ===============================================================================
74
69
  *
@@ -1 +1 @@
1
- {"version":3,"file":"grid.d.ts","sourceRoot":"","sources":["../../../modules/order/grid.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grid.d.ts","sourceRoot":"","sources":["../../../modules/order/grid.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwFG;AAkBH;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,GAAG,GAAG,MAAM,CAG3D;AAWD,OAAO,EAeH,iBAAiB,IAAI,aAAa,EAcrC,MAAM,iBAAiB,CAAC;AA8BzB,QAAA,MAAM,iBAAiB,sBAAgB,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAE7B,wBAAgB,aAAa,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,GAAG,GAAG,CA0DxD;AAED;;;;;;;;;;;;GAYG;AACP,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG,CAOpD;AAED;;;;GAIG;AACP,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI,CAEjD;AAED;;;;;;;;GAQG;AACP,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,UAAkB,EAAE,GAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAO;;;;UAyDjH;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AACP,wBAAgB,eAAe,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,CAiJ5C;AA2BD;;;;;;;;;;;;;;GAcG;AACP,wBAAsB,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,GAAE,GAAU,EAAE,YAAY,GAAE,GAAU,EAAE,OAAO,GAAE;IAAE,0BAA0B,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAqe3K;AAUL;;;;;OAKO;AACP,wBAAsB,cAAc,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CA+b5D;AAED;;;;;;;;;GASG;AACP,wBAAsB,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAgIxE;AAED;;;;;GAKG;AACP,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG,CAiFxD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AACP,wBAAsB,wCAAwC,CAAC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,GAAE;IAAE,WAAW,CAAC,EAAE,GAAG,CAAA;CAAO;;;eAiK3H;AAED;;;;;;;;;;GAUG;AACP,wBAAsB,gCAAgC,CAAC,OAAO,EAAE,GAAG,EAAE,SAAS,GAAE,GAAY,EAAE,mBAAmB,GAAE,GAAW,EAAE,mBAAmB,GAAE,GAAU;;;;;;;UAgE1J;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACP,wBAAsB,YAAY,CAAC,cAAc,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,OAAO,GAAE,GAAU,GAAG,OAAO,CAAC,GAAG,CAAC,CAuIzG;AAED;;;;;;;;GAQG;AACP,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CA6BvG;AA6BD;;;;GAIG;AACP,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,GAAG,GAAG,MAAM,CAGvD;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACP,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,wBAAwB,GAAE,GAAU,GAAG,OAAO,CAAC,GAAG,CAAC,CAwOxH;AAED;;;;;;;;;;;;GAYG;AACP,wBAAsB,eAAe,CAAC,OAAO,EAAE,GAAG,EAAE,yBAAyB,GAAE,GAAU,GAAG,OAAO,CAAC,GAAG,CAAC,CAenG;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACP,wBAAsB,eAAe,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAiF5D;AA8ED;;;;;;GAMG;AACP,wBAAsB,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAIrF;AAED;;;;;;;GAOG;AACP,wBAAsB,aAAa,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAItF;AAED;;;;;;GAMG;AACP,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,GAAG,EAAE,kBAAkB,EAAE,GAAG,GAAG,GAAG,CAyEhF;AAmED;;;;;;GAMG;AACH,wBAAsB,6BAA6B,CAAC,OAAO,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,WAAW,GAAE,MAAU,GAAG,OAAO,CAAC,GAAG,CAAC,CA6b3H"}
@@ -12,63 +12,58 @@
12
12
  * - Detects and flags out-of-spread conditions
13
13
  *
14
14
  * ===============================================================================
15
- * TABLE OF CONTENTS - Grid Functions (27 exported functions)
15
+ * TABLE OF CONTENTS - Grid Functions (22 exported functions)
16
16
  * ===============================================================================
17
17
  *
18
- * CONFIGURATION & CALCULATION (1 method)
19
- * 1. calculateGapSlots(incrementPercent, targetSpreadPercent) - Calculate spread gap size
18
+ * CONFIGURATION & CALCULATION (2 functions)
19
+ * 1. resolveRmsThresholdPct(manager) - Resolve the structural-divergence threshold
20
+ * 2. calculateGapSlots(incrementPercent, targetSpreadPercent) - Calculate spread gap size
20
21
  *
21
- * GRID SIZING & CONTEXT (1 method)
22
- * 3. _getSizingContext(manager, side) - Get budget and sizing parameters (internal)
23
- * Determines budget from allocated funds, deducts BTS fees if needed
22
+ * GRID SIZING & CONTEXT (1 function)
23
+ * 3. _getSizingContext(manager, side, options) - Get budget and sizing parameters
24
+ * Determines budget from allocated funds and optionally deducts BTS fees
24
25
  *
25
- * GRID CREATION (1 method)
26
+ * GRID CREATION (1 function)
26
27
  * 4. createOrderGrid(config) - Create geometric price grid
27
28
  * Returns price levels from minPrice to maxPrice with increment spacing
28
29
  *
29
- * ORDER CACHE MANAGEMENT (1 method - internal)
30
- * 5. _clearOrderCachesLogic(manager) - Clear order caches (_ordersByType, _ordersByState)
30
+ * GRID LOADING & INITIALIZATION (2 functions - async)
31
+ * 5. loadGrid(manager, grid, boundaryIdx, genesisInput, options) - Load grid into manager orders
32
+ * 6. initializeGrid(manager) - Full grid initialization from config
31
33
  *
32
- * GRID LOADING & INITIALIZATION (2 methods - async)
33
- * 6. loadGrid(manager, grid, boundaryIdx) - Load grid into manager orders
34
- * 7. initializeGrid(manager) - Full grid initialization from config
34
+ * GRID RECALCULATION (1 function - async)
35
+ * 7. recalculateGrid(manager, opts) - Recalculate grid based on current state
35
36
  *
36
- * GRID RECALCULATION (1 method - async)
37
- * 8. recalculateGrid(manager, opts) - Recalculate grid based on current state
37
+ * GRID STATE CHECKING (1 function)
38
+ * 8. checkAndUpdateGridIfNeeded(manager) - Check if grid needs update
38
39
  *
39
- * GRID STATE CHECKING (1 method)
40
- * 9. checkAndUpdateGridIfNeeded(manager) - Check if grid needs update
40
+ * BLOCKCHAIN SYNCHRONIZATION (2 functions - async)
41
+ * 9. _recalculateGridOrderSizesFromBlockchain(manager, orderType, options) - Recalculate sizes from blockchain
42
+ * 10. updateGridFromBlockchainSnapshot(manager, orderType, fromBlockchainTimer, overrideBoundaryIdx) - Update grid from blockchain
41
43
  *
42
- * BLOCKCHAIN SYNCHRONIZATION (2 methods - async)
43
- * 10. _recalculateGridOrderSizesFromBlockchain(manager, orderType) - Recalculate sizes from blockchain
44
- * 11. updateGridFromBlockchainSnapshot(manager, orderType, fromBlockchainTimer) - Update grid from blockchain
45
- *
46
- * GRID COMPARISON (2 methods - async)
47
- * 12. compareGrids(calculatedGrid, persistedGrid, manager) - Compare two grids
44
+ * GRID COMPARISON (2 functions - async)
45
+ * 11. compareGrids(calculatedGrid, persistedGrid, manager) - Compare two grids
48
46
  * Validates grid structure and reports divergence metrics
49
- * 13. monitorDivergence(manager, calculatedGrid, persistedGrid) - Unified divergence check
47
+ * 12. monitorDivergence(manager, calculatedGrid, persistedGrid) - Unified divergence check
50
48
  * Runs ratio-based + RMS-based checks and returns combined result
51
49
  *
52
- * ON-CHAIN ORDER FETCHING (1 method - async)
53
- * 14. _getOnChainOrders(manager) - Collect on-chain buy/sell orders from manager
54
- *
55
- * SPREAD MANAGEMENT (2 methods - async)
56
- * 15. calculateCurrentSpread(manager) - Calculate current bid-ask spread
57
- * 16. checkSpreadCondition(manager, BitShares, updateOrdersOnChainBatch) - Check and flag spread condition
50
+ * SPREAD MANAGEMENT (2 functions)
51
+ * 13. calculateCurrentSpread(manager) - Calculate current bid-ask spread
52
+ * 14. checkSpreadCondition(manager, BitShares, updateOrdersOnChainBatch) - Check and flag spread condition
58
53
  *
59
- * GRID HEALTH MONITORING (6 methods)
60
- * 17. checkGridHealth(manager, updateOrdersOnChainBatch) - Monitor grid health (async)
61
- * 18. checkWindowDust(manager) - Dust check scoped to the active buy/sell window (async)
62
- * 19. _hasAnyDust(manager, partials, type) - Check for dust orders (internal)
63
- * 20. hasAnyDust(manager, partials, side) - Check for dust orders (public)
64
- * 21. getDustOrders(manager, partials, side) - Get all dust order IDs (public)
65
- * 22. determineOrderSideByFunds(manager, currentMarketPrice) - Determine priority side
54
+ * GRID HEALTH MONITORING (4 functions)
55
+ * 15. checkGridHealth(manager, updateOrdersOnChainBatch) - Monitor grid health
56
+ * 16. checkWindowDust(manager) - Dust check scoped to the active buy/sell window
57
+ * 17. hasAnyDust(manager, partials, side) - Check for dust orders
58
+ * 18. getDustOrders(manager, partials, side) - Get dust order IDs
66
59
  *
67
- * SPREAD CORRECTION (1 method)
68
- * 23. prepareSpreadCorrectionOrders(manager, preferredSide) - Prepare correction orders
60
+ * SIDE SELECTION (1 function)
61
+ * 19. determineOrderSideByFunds(manager, currentMarketPrice) - Determine priority side
69
62
  *
70
- * DUST DETECTION (1 method - internal)
71
- * 25. _getDustOrders(manager, partials, type) - Internal dust detection helper
63
+ * BLOAT STATUS (3 functions)
64
+ * 20. isGridBloated(manager, orders) - Check whether the grid is bloated
65
+ * 21. isGridBloatGraceActive(manager) - Check the bloat grace state
66
+ * 22. clearGridBloatFlag(manager) - Clear the bloat state
72
67
  *
73
68
  * ===============================================================================
74
69
  *
@@ -123,9 +118,9 @@ function _snapshotFundState(manager) {
123
118
  }
124
119
  import { floatToBlockchainInt, getPrecisionByOrderType, getPrecisionsForManager, calculateOrderCreationFees, calculateOrderSizes, calculateRotationOrderSizes, calculateAvailableFundsValue, calculateGridSideDivergenceMetric, getPrecisionSlack, getMinOrderSize, getSingleDustThreshold, getGridBestPrices, calculateSpreadFromOrders, allocateFundsByWeights, calculateGapSlots as _mathGapSlots, priceSlotEqual, getBtsSide, getSellStartIdx, resolveGapBand, countGapBandSpread, validatePersistedBoundary, isTransientInBandRejection, adjustBudgetForBtsFees, clamp, buildGenesisFromPriceLevels, assertSlotPriceInvariant, priceForSlot, hashPriceLevels, } from './utils/math.js';
125
120
  import { filterOrdersByType, checkSizesBeforeMinimum, checkSizeThreshold, resolveConfiguredPriceBound, shouldFlagOutOfSpread, isOrderHealthy, isPhantomOrder, isSlotAvailable, isOrderOnChain, isOrderPlaced, hasOnChainId, isEmptyGridSlot, parseSlotIndex, calculateIdealBoundary, assignGridRoles, resolveOnChainRetypeType, resolveReserveCount, reserveEdgeIdSet, resolveLiveReserveEdgeAnchorPrice } from './utils/order.js';
126
- import { loadAmaCenterPrice, loadAmaCenterSnapshot, withBlockchainRetry } from './utils/system.js';
121
+ import { loadAmaCenterPrice, loadAmaCenterSnapshot, withBlockchainRetry, restoreLastFillPivot, resetLastFillPivot } from './utils/system.js';
127
122
  import * as MathUtils from './utils/math.js';
128
- import { derivePriceWithPoolRef } from './utils/withPoolRef.js';
123
+ import { derivePriceWithPoolRef, resolveStartPriceMode } from './utils/withPoolRef.js';
129
124
  import { getWhitelistFlags } from '../market_adapter_whitelist.js';
130
125
  import { getErrorMessage } from '../utils/errors.js';
131
126
  const calculateGapSlots = _mathGapSlots;
@@ -754,6 +749,23 @@ export async function loadGrid(manager, grid, boundaryIdx = null, genesisInput =
754
749
  manager._restoreBoundary(restoredBoundary);
755
750
  manager.logger?.log?.(`Restored boundary index: ${restoredBoundary}`, 'info');
756
751
  }
752
+ // Restart resilience: restore the persisted LAST-FILL-GUARD pivot
753
+ // WITH the boundary — after the persisted genesis is applied and
754
+ // the grid re-typed, before the first reconcile/broadcast — so a
755
+ // restart cannot re-open the cold window where the guard is
756
+ // disabled and evacuation stamps get applied against a boundary
757
+ // that is still being rebuilt. restoreLastFillPivot validates the
758
+ // row against the manager's live genesis (refuses on mismatch —
759
+ // a regenerated grid drops it) and onto the price ladder with the
760
+ // same one-increment drift rule the runtime guard applies.
761
+ if (restoredBoundary !== null) {
762
+ try {
763
+ restoreLastFillPivot(manager, manager?.accountOrders?.loadLastFillPivot?.() ?? null);
764
+ }
765
+ catch (pivotErr) {
766
+ manager.logger?.log?.(`[LAST-FILL-GUARD] Persisted pivot restore failed (${getErrorMessage(pivotErr)}); book seed takes over`, 'warn');
767
+ }
768
+ }
757
769
  // Reassign slot types based on current boundary.
758
770
  // Every slot's type must match its price-slot index (parseSlotIndex)
759
771
  // relative to the boundary + gapSlots, not array position. After
@@ -954,9 +966,14 @@ export async function initializeGrid(manager) {
954
966
  if (typeof mpRaw !== 'number' || isNaN(mpRaw)) {
955
967
  try {
956
968
  const { BitShares } = require('../bitshares_client');
957
- const derived = await derivePriceWithPoolRef(BitShares, manager.config.assetA, manager.config.assetB, manager.config.priceMode || 'auto', manager.config.poolRef);
969
+ // startPrice is the master price source: pass its own mode so a
970
+ // pinned poolRef only refines pool discovery. Without this,
971
+ // the old `priceMode || 'auto'` read (priceMode is never set in
972
+ // the runtime path) let a poolRef override startPrice:"book".
973
+ const startPriceMode = resolveStartPriceMode(mpRaw, manager.config.priceMode || 'auto');
974
+ const derived = await derivePriceWithPoolRef(BitShares, manager.config.assetA, manager.config.assetB, startPriceMode, manager.config.poolRef);
958
975
  if (derived) {
959
- manager.logger?.log?.(`[DIAGNOSTIC] initializeGrid: Derived new startPrice=${derived.toFixed(8)} (mode=${manager.config.priceMode || 'auto'})`, 'info');
976
+ manager.logger?.log?.(`[DIAGNOSTIC] initializeGrid: Derived new startPrice=${derived.toFixed(8)} (mode=${startPriceMode})`, 'info');
960
977
  manager.config.startPrice = Number(derived);
961
978
  }
962
979
  else {
@@ -1244,6 +1261,21 @@ export async function initializeGrid(manager) {
1244
1261
  // deltas would shift the new anchor again for movement it already
1245
1262
  // contains (and their slot ids now name different prices).
1246
1263
  manager._clearPendingFillCrawls?.('grid rebuild');
1264
+ // Same generation contract for the LAST-FILL-GUARD pivot: it was
1265
+ // armed against the previous ladder, and restoreLastFillPivot would
1266
+ // refuse it against the new genesis anyway. Drop it now so the guard
1267
+ // re-arms on the first real fill of the new generation (the startup
1268
+ // book seed may arm a heuristic pivot in the meantime, which is
1269
+ // in-memory-only by provenance).
1270
+ try {
1271
+ if (typeof manager._resetLastFillPivot === 'function') {
1272
+ manager._resetLastFillPivot('grid rebuild');
1273
+ }
1274
+ else {
1275
+ resetLastFillPivot(manager, 'grid rebuild');
1276
+ }
1277
+ }
1278
+ catch { }
1247
1279
  // RC-8: Update boundary with notification to dependent systems
1248
1280
  // Persist master boundary for StrategyEngine
1249
1281
  if (manager.boundaryIdx !== boundaryIdx) {