dexbot 1.4.25 → 1.5.0

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 (182) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/README.md +6 -2
  3. package/analysis/README.md +14 -7
  4. package/analysis/ama_fitting/package.json +1 -1
  5. package/analysis/analyze_derivatives.ts +1 -1
  6. package/analysis/bot_key_utils.ts +272 -3
  7. package/analysis/bot_usage/discover_bot_accounts.ts +64 -9
  8. package/analysis/bot_usage/kibana_bot_queries.ts +40 -1
  9. package/analysis/chart_utils.ts +6 -3
  10. package/analysis/grid_correction_check.ts +56 -20
  11. package/analysis/resolve_bot_accounts.ts +199 -0
  12. package/analysis/trade_profitability.ts +36 -8
  13. package/analysis/tradingview/README.md +25 -0
  14. package/analysis/tradingview/analyze_tradingview.ts +2 -2
  15. package/analysis/trend_detection/package.json +1 -1
  16. package/claw/modules/claw_launcher.ts +5 -4
  17. package/claw/modules/credit_runtime_adapter.ts +2 -1
  18. package/claw/modules/dexbot_profiles.ts +4 -3
  19. package/claw/package.json +1 -1
  20. package/claw/runtimes/openclaw-plugin/openclaw.plugin.json +1 -1
  21. package/claw/runtimes/openclaw-plugin/package.json +1 -1
  22. package/claw/tests/test_claw_mcp_transport.ts +2 -2
  23. package/dist/analysis/analyze_derivatives.js +1 -1
  24. package/dist/analysis/bot_key_utils.d.ts +28 -1
  25. package/dist/analysis/bot_key_utils.d.ts.map +1 -1
  26. package/dist/analysis/bot_key_utils.js +385 -3
  27. package/dist/analysis/bot_key_utils.js.map +1 -1
  28. package/dist/analysis/bot_usage/discover_bot_accounts.js +60 -10
  29. package/dist/analysis/bot_usage/discover_bot_accounts.js.map +1 -1
  30. package/dist/analysis/bot_usage/kibana_bot_queries.d.ts +45 -1
  31. package/dist/analysis/bot_usage/kibana_bot_queries.d.ts.map +1 -1
  32. package/dist/analysis/bot_usage/kibana_bot_queries.js +39 -1
  33. package/dist/analysis/bot_usage/kibana_bot_queries.js.map +1 -1
  34. package/dist/analysis/chart_utils.d.ts +2 -1
  35. package/dist/analysis/chart_utils.d.ts.map +1 -1
  36. package/dist/analysis/chart_utils.js +4 -1
  37. package/dist/analysis/chart_utils.js.map +1 -1
  38. package/dist/analysis/grid_correction_check.d.ts.map +1 -1
  39. package/dist/analysis/grid_correction_check.js +60 -20
  40. package/dist/analysis/grid_correction_check.js.map +1 -1
  41. package/dist/analysis/resolve_bot_accounts.d.ts +3 -0
  42. package/dist/analysis/resolve_bot_accounts.d.ts.map +1 -0
  43. package/dist/analysis/resolve_bot_accounts.js +216 -0
  44. package/dist/analysis/resolve_bot_accounts.js.map +1 -0
  45. package/dist/analysis/trade_profitability.d.ts.map +1 -1
  46. package/dist/analysis/trade_profitability.js +40 -8
  47. package/dist/analysis/trade_profitability.js.map +1 -1
  48. package/dist/analysis/tradingview/analyze_tradingview.js +2 -2
  49. package/dist/analysis/tradingview/analyze_tradingview.js.map +1 -1
  50. package/dist/bot.d.ts.map +1 -1
  51. package/dist/bot.js +2 -1
  52. package/dist/bot.js.map +1 -1
  53. package/dist/dexbot.d.ts.map +1 -1
  54. package/dist/dexbot.js +73 -17
  55. package/dist/dexbot.js.map +1 -1
  56. package/dist/market_adapter/ama_signal_runner.js +2 -2
  57. package/dist/market_adapter/inputs/fetch_cex_synthetic_data.js +2 -1
  58. package/dist/market_adapter/inputs/fetch_cex_synthetic_data.js.map +1 -1
  59. package/dist/market_adapter/inputs/fetch_lp_data.d.ts +4 -1
  60. package/dist/market_adapter/inputs/fetch_lp_data.d.ts.map +1 -1
  61. package/dist/market_adapter/inputs/fetch_lp_data.js +3 -2
  62. package/dist/market_adapter/inputs/fetch_lp_data.js.map +1 -1
  63. package/dist/modules/account_bots.d.ts +42 -1
  64. package/dist/modules/account_bots.d.ts.map +1 -1
  65. package/dist/modules/account_bots.js +168 -17
  66. package/dist/modules/account_bots.js.map +1 -1
  67. package/dist/modules/bitshares_client.d.ts +4 -1
  68. package/dist/modules/bitshares_client.d.ts.map +1 -1
  69. package/dist/modules/bitshares_client.js +12 -4
  70. package/dist/modules/bitshares_client.js.map +1 -1
  71. package/dist/modules/bot_settings.d.ts.map +1 -1
  72. package/dist/modules/bot_settings.js +2 -1
  73. package/dist/modules/bot_settings.js.map +1 -1
  74. package/dist/modules/cli_colors.d.ts +39 -0
  75. package/dist/modules/cli_colors.d.ts.map +1 -0
  76. package/dist/modules/cli_colors.js +42 -0
  77. package/dist/modules/cli_colors.js.map +1 -0
  78. package/dist/modules/constants.d.ts.map +1 -1
  79. package/dist/modules/constants.js +15 -11
  80. package/dist/modules/constants.js.map +1 -1
  81. package/dist/modules/credit_pricing.d.ts +61 -0
  82. package/dist/modules/credit_pricing.d.ts.map +1 -0
  83. package/dist/modules/credit_pricing.js +237 -0
  84. package/dist/modules/credit_pricing.js.map +1 -0
  85. package/dist/modules/credit_runtime.d.ts +1 -0
  86. package/dist/modules/credit_runtime.d.ts.map +1 -1
  87. package/dist/modules/credit_runtime.js +49 -107
  88. package/dist/modules/credit_runtime.js.map +1 -1
  89. package/dist/modules/dexbot_class.d.ts +2 -1
  90. package/dist/modules/dexbot_class.d.ts.map +1 -1
  91. package/dist/modules/dexbot_class.js +22 -6
  92. package/dist/modules/dexbot_class.js.map +1 -1
  93. package/dist/modules/dexbot_cow_runtime.d.ts +19 -2
  94. package/dist/modules/dexbot_cow_runtime.d.ts.map +1 -1
  95. package/dist/modules/dexbot_cow_runtime.js +249 -26
  96. package/dist/modules/dexbot_cow_runtime.js.map +1 -1
  97. package/dist/modules/dexbot_maintenance_runtime.d.ts +15 -16
  98. package/dist/modules/dexbot_maintenance_runtime.d.ts.map +1 -1
  99. package/dist/modules/dexbot_maintenance_runtime.js +69 -42
  100. package/dist/modules/dexbot_maintenance_runtime.js.map +1 -1
  101. package/dist/modules/fund_registry.d.ts +1 -1
  102. package/dist/modules/fund_registry.js +1 -1
  103. package/dist/modules/launcher/adapter_requirement.d.ts +38 -0
  104. package/dist/modules/launcher/adapter_requirement.d.ts.map +1 -0
  105. package/dist/modules/launcher/adapter_requirement.js +141 -0
  106. package/dist/modules/launcher/adapter_requirement.js.map +1 -0
  107. package/dist/modules/launcher/bot_supervisor.d.ts +2 -2
  108. package/dist/modules/launcher/bot_supervisor.d.ts.map +1 -1
  109. package/dist/modules/launcher/bot_supervisor.js +32 -3
  110. package/dist/modules/launcher/bot_supervisor.js.map +1 -1
  111. package/dist/modules/launcher/launch_modes.d.ts.map +1 -1
  112. package/dist/modules/launcher/launch_modes.js +5 -4
  113. package/dist/modules/launcher/launch_modes.js.map +1 -1
  114. package/dist/modules/launcher/monolithic_runtime.d.ts +1 -1
  115. package/dist/modules/launcher/monolithic_runtime.d.ts.map +1 -1
  116. package/dist/modules/launcher/monolithic_runtime.js +12 -8
  117. package/dist/modules/launcher/monolithic_runtime.js.map +1 -1
  118. package/dist/modules/launcher/status_reporting.d.ts +6 -6
  119. package/dist/modules/launcher/status_reporting.d.ts.map +1 -1
  120. package/dist/modules/launcher/status_reporting.js +9 -6
  121. package/dist/modules/launcher/status_reporting.js.map +1 -1
  122. package/dist/modules/order/export.d.ts +1 -1
  123. package/dist/modules/order/export.js +1 -1
  124. package/dist/modules/order/grid.d.ts.map +1 -1
  125. package/dist/modules/order/grid.js +47 -12
  126. package/dist/modules/order/grid.js.map +1 -1
  127. package/dist/modules/order/logger.d.ts +23 -1
  128. package/dist/modules/order/logger.d.ts.map +1 -1
  129. package/dist/modules/order/logger.js +60 -17
  130. package/dist/modules/order/logger.js.map +1 -1
  131. package/dist/modules/order/manager.d.ts.map +1 -1
  132. package/dist/modules/order/manager.js +43 -3
  133. package/dist/modules/order/manager.js.map +1 -1
  134. package/dist/modules/order/sync_engine.js +1 -1
  135. package/dist/modules/order/utils/system.d.ts +52 -4
  136. package/dist/modules/order/utils/system.d.ts.map +1 -1
  137. package/dist/modules/order/utils/system.js +106 -14
  138. package/dist/modules/order/utils/system.js.map +1 -1
  139. package/dist/modules/order/utils/validate.d.ts +1 -1
  140. package/dist/modules/order/utils/validate.d.ts.map +1 -1
  141. package/dist/modules/order/utils/validate.js +43 -3
  142. package/dist/modules/order/utils/validate.js.map +1 -1
  143. package/dist/modules/utils/chain_logs.d.ts +11 -0
  144. package/dist/modules/utils/chain_logs.d.ts.map +1 -0
  145. package/dist/modules/utils/chain_logs.js +23 -0
  146. package/dist/modules/utils/chain_logs.js.map +1 -0
  147. package/dist/modules/utils/sanitize_key.d.ts +7 -0
  148. package/dist/modules/utils/sanitize_key.d.ts.map +1 -1
  149. package/dist/modules/utils/sanitize_key.js +15 -0
  150. package/dist/modules/utils/sanitize_key.js.map +1 -1
  151. package/dist/pm2.d.ts +11 -1
  152. package/dist/pm2.d.ts.map +1 -1
  153. package/dist/pm2.js +66 -15
  154. package/dist/pm2.js.map +1 -1
  155. package/dist/scripts/analyze-credit.d.ts +4 -0
  156. package/dist/scripts/analyze-credit.d.ts.map +1 -0
  157. package/dist/scripts/analyze-credit.js +760 -0
  158. package/dist/scripts/analyze-credit.js.map +1 -0
  159. package/dist/scripts/analyze-orders.d.ts +1 -10
  160. package/dist/scripts/analyze-orders.d.ts.map +1 -1
  161. package/dist/scripts/analyze-orders.js +11 -34
  162. package/dist/scripts/analyze-orders.js.map +1 -1
  163. package/dist/scripts/test-credit-renewal.d.ts.map +1 -1
  164. package/dist/scripts/test-credit-renewal.js +37 -5
  165. package/dist/scripts/test-credit-renewal.js.map +1 -1
  166. package/dist/scripts/tv.d.ts +11 -0
  167. package/dist/scripts/tv.d.ts.map +1 -0
  168. package/dist/scripts/tv.js +357 -0
  169. package/dist/scripts/tv.js.map +1 -0
  170. package/dist/scripts/update.js +77 -10
  171. package/dist/scripts/update.js.map +1 -1
  172. package/dist/unlock.d.ts.map +1 -1
  173. package/dist/unlock.js +20 -8
  174. package/dist/unlock.js.map +1 -1
  175. package/docs/DEXBOT_COMPARISON.md +3 -3
  176. package/docs/EVOLUTION.md +7 -6
  177. package/docs/FUND_MOVEMENT_AND_ACCOUNTING.md +1 -1
  178. package/docs/MPA_CREDIT_USAGE.md +3 -1
  179. package/docs/README.md +2 -2
  180. package/docs/WORKFLOW.md +3 -1
  181. package/package.json +2 -1
  182. package/scripts/README.md +12 -0
@@ -15,12 +15,16 @@ const { writeJSON } = getStorage();
15
15
  * Q1 — top 100 accounts by limit_order_create count
16
16
  * Q2 — top 100 accounts by limit_order_cancel count
17
17
  * Q3 — top 100 accounts by fill_order count
18
+ * Q4 — top 200 accounts by limit_order_update count (op 77, DEXBot2 fingerprint)
18
19
  * 2. Merge & pre-filter:
19
20
  * creates ≥ MIN_CREATES (grid analysis determines DEXBot candidacy)
20
21
  * 3. Grid analysis (parallel, batches of 5):
21
22
  * Fetch 200 raw orders per candidate → per-session geometric spacing test
22
23
  * 4. BitShares: resolve account IDs → names (batch db.get_objects call)
23
- * 5. Rank by DEX score and print table
24
+ * 5. Rank by DEX score and print table.
25
+ * HIGH tier (80+) is split by op-77 usage:
26
+ * updates ≥ 1 → DEXBot2 (native limit_order_update in-place re-price)
27
+ * updates = 0 → DEXBot1-style (cancel-only, cancel + recreate)
24
28
  *
25
29
  * Usage:
26
30
  * node dist/analysis/bot_usage/discover_bot_accounts.js
@@ -41,7 +45,7 @@ const { writeJSON } = getStorage();
41
45
  * --verbose Print extra debug/diagnostic info
42
46
  * --help, -h Show this help
43
47
  */
44
- import { kibanaSearch, buildOrderPriceQuery, buildTopSellerAccountsQuery, buildTopCancellerAccountsQuery, buildTopFilledAccountsQuery, DEFAULT_CONFIG, } from './kibana_bot_queries.js';
48
+ import { kibanaSearch, buildOrderPriceQuery, buildTopSellerAccountsQuery, buildTopCancellerAccountsQuery, buildTopFilledAccountsQuery, buildTopUpdaterAccountsQuery, DEFAULT_CONFIG, } from './kibana_bot_queries.js';
45
49
  import { NODE_MANAGEMENT } from '../../modules/constants.js';
46
50
  // ─── Configuration ────────────────────────────────────────────────────────────
47
51
  // Node pool from central node management (failover-capable) instead of a
@@ -287,14 +291,16 @@ async function run() {
287
291
  console.log('');
288
292
  // ── Phase 1: Discovery queries ─────────────────────────────────────────────
289
293
  console.log('Phase 1: Querying Kibana for top active accounts...');
290
- const [createRes, cancelRes, fillRes] = await Promise.all([
294
+ const [createRes, cancelRes, fillRes, updateRes] = await Promise.all([
291
295
  withRetry(() => kibanaSearch(KIBANA_CFG, buildTopSellerAccountsQuery(lookbackH, 200, opts.minCreates)), 'top-seller query'),
292
296
  withRetry(() => kibanaSearch(KIBANA_CFG, buildTopCancellerAccountsQuery(lookbackH, 200, 5)), 'top-canceller query'),
293
297
  withRetry(() => kibanaSearch(KIBANA_CFG, buildTopFilledAccountsQuery(lookbackH, 200, 3)), 'top-fills query'),
298
+ withRetry(() => kibanaSearch(KIBANA_CFG, buildTopUpdaterAccountsQuery(lookbackH, 200, 1)), 'top-updater query'),
294
299
  ]);
295
300
  const createBuckets = createRes?.aggregations?.by_account?.buckets ?? [];
296
301
  const cancelBuckets = cancelRes?.aggregations?.by_account?.buckets ?? [];
297
302
  const fillBuckets = fillRes?.aggregations?.by_account?.buckets ?? [];
303
+ const updateBuckets = updateRes?.aggregations?.by_account?.buckets ?? [];
298
304
  if (opts.verbose) {
299
305
  console.log(` [verbose] createRes keys: ${Object.keys(createRes ?? {}).join(', ')}`);
300
306
  console.log(` [verbose] createRes took: ${createRes?.took ?? '?'}ms`);
@@ -302,6 +308,7 @@ async function run() {
302
308
  console.log(` Creates: ${createBuckets.length} accounts with ≥${opts.minCreates} creates`);
303
309
  console.log(` Cancels: ${cancelBuckets.length} accounts with ≥5 cancels`);
304
310
  console.log(` Fills: ${fillBuckets.length} accounts with ≥3 fills`);
311
+ console.log(` Updates: ${updateBuckets.length} accounts with ≥1 limit_order_update (op 77)`);
305
312
  if (createBuckets.length === 0) {
306
313
  console.log('');
307
314
  console.log(' No accounts found. Try a larger --days window or lower --min-creates.');
@@ -315,18 +322,25 @@ async function run() {
315
322
  console.log('\nPhase 2: Merging and filtering candidates...');
316
323
  const accounts = {};
317
324
  for (const b of createBuckets)
318
- accounts[b.key] = { creates: b.doc_count, cancels: 0, fills: 0 };
325
+ accounts[b.key] = { creates: b.doc_count, cancels: 0, fills: 0, updates: 0 };
319
326
  for (const b of cancelBuckets) {
320
327
  if (!accounts[b.key])
321
- accounts[b.key] = { creates: 0, cancels: 0, fills: 0 };
328
+ accounts[b.key] = { creates: 0, cancels: 0, fills: 0, updates: 0 };
322
329
  accounts[b.key].cancels = b.doc_count;
323
330
  }
324
331
  for (const b of fillBuckets) {
325
332
  if (!accounts[b.key])
326
- accounts[b.key] = { creates: 0, cancels: 0, fills: 0 };
333
+ accounts[b.key] = { creates: 0, cancels: 0, fills: 0, updates: 0 };
327
334
  accounts[b.key].fills = b.doc_count;
328
335
  }
336
+ for (const b of updateBuckets) {
337
+ if (!accounts[b.key])
338
+ accounts[b.key] = { creates: 0, cancels: 0, fills: 0, updates: 0 };
339
+ accounts[b.key].updates = b.doc_count;
340
+ }
329
341
  // Pre-filter: must have creates ≥ minCreates (grid analysis determines DEXBot candidacy)
342
+ // Flavor: any limit_order_update (op 77) in-window → DEXBot2 (native in-place
343
+ // re-price); zero updates → DEXBot1-style (cancel-only: cancel + recreate).
330
344
  const candidates = Object.entries(accounts)
331
345
  .filter(([, s]) => s.creates >= opts.minCreates)
332
346
  .map(([id, s]) => ({
@@ -334,6 +348,8 @@ async function run() {
334
348
  creates: s.creates,
335
349
  cancels: s.cancels,
336
350
  fills: s.fills,
351
+ updates: s.updates,
352
+ flavor: (s.updates >= 1 ? 'DEXBot2' : 'DEXBot1'),
337
353
  cancelRatio: s.cancels / Math.max(s.creates, 1),
338
354
  fillRate: s.creates > 0 ? (s.fills / s.creates * 100) : 0,
339
355
  }))
@@ -419,9 +435,40 @@ async function run() {
419
435
  console.log(' Discovery Results — Ranked by DEX Score');
420
436
  console.log('════════════════════════════════════════════════════════════════════════════════════');
421
437
  console.log('');
422
- // Print by DEX score tier
438
+ // Print by DEX score tier. HIGH tier (80+) splits by update-order usage:
439
+ // DEXBot2 — broadcast limit_order_update (op 77) in-window (in-place re-price)
440
+ // DEXBot1-style — cancel-only, no op 77 (cancel + recreate)
441
+ const highV2 = results.filter(r => r.dexScore >= 80 && r.updates >= 1);
442
+ const highV1 = results.filter(r => r.dexScore >= 80 && r.updates < 1);
443
+ const hdrHigh = ' # Name ID Creates Fills Cancel Fill% C/C MaxBatch Incr% Grid DEX Updates';
444
+ function printHighGroup(label, rows) {
445
+ if (!rows.length)
446
+ return;
447
+ console.log(` ── ${label}`);
448
+ console.log('');
449
+ console.log(hdrHigh);
450
+ console.log(' ' + '─'.repeat(hdrHigh.length - 1));
451
+ for (const r of rows) {
452
+ const rank = String(results.indexOf(r) + 1).padStart(2);
453
+ const name = r.name.padEnd(22).slice(0, 22);
454
+ const id = r.id.padEnd(14);
455
+ const creates = String(r.creates).padStart(7);
456
+ const fills = String(r.fills).padStart(6);
457
+ const cancels = String(r.cancels).padStart(7);
458
+ const fr = (r.fillRate.toFixed(1) + '%').padStart(5);
459
+ const cr = r.cancelRatio.toFixed(2).padStart(4);
460
+ const batch = String(r.maxBatch || '-').padStart(9);
461
+ const inc = (r.impliedInc != null ? r.impliedInc.toFixed(2) + '%' : 'n/a').padStart(6);
462
+ const grid = String(r.gridScore).padStart(5);
463
+ const dex = String(r.dexScore).padStart(4);
464
+ const upd = String(r.updates).padStart(7);
465
+ console.log(` ${rank} ${name} ${id} ${creates} ${fills} ${cancels} ${fr} ${cr} ${batch} ${inc} ${grid} ${dex} ${upd}`);
466
+ }
467
+ console.log('');
468
+ }
469
+ printHighGroup('HIGH confidence — DEXBot2 (80+, uses limit_order_update op 77)', highV2);
470
+ printHighGroup('HIGH confidence — DEXBot1-style (80+, cancel-only, no op 77)', highV1);
423
471
  const tiers = [
424
- { label: 'HIGH confidence (80+) — almost certainly DEXBot/DEXBot2', min: 80, max: 101 },
425
472
  { label: 'MEDIUM confidence (50–79) — likely a grid bot', min: 50, max: 80 },
426
473
  { label: 'LOW confidence (25–49) — some automation detected', min: 25, max: 50 },
427
474
  { label: 'WEAK signal (<25) — create/cancel pattern, no grid', min: 0, max: 25 },
@@ -453,12 +500,12 @@ async function run() {
453
500
  console.log('');
454
501
  }
455
502
  // ── Summary ───────────────────────────────────────────────────────────────
456
- const high = results.filter(r => r.dexScore >= 80).length;
503
+ const high = highV2.length + highV1.length;
457
504
  const medium = results.filter(r => r.dexScore >= 50 && r.dexScore < 80).length;
458
505
  const low = results.filter(r => r.dexScore >= 25 && r.dexScore < 50).length;
459
506
  console.log('════════════════════════════════════════════════════════════════════════════════════');
460
507
  console.log(` Total candidates scanned: ${results.length}`);
461
- console.log(` HIGH (80+): ${high} accounts — almost certainly DEXBot/DEXBot2`);
508
+ console.log(` HIGH (80+): ${high} accounts — DEXBot2: ${highV2.length} (op 77 updates) / DEXBot1-style: ${highV1.length} (cancel-only)`);
462
509
  console.log(` MEDIUM (50+): ${medium} accounts — likely grid bots`);
463
510
  console.log(` LOW (25+): ${low} accounts — weak signal`);
464
511
  console.log('');
@@ -466,15 +513,18 @@ async function run() {
466
513
  console.log(' C/C = cancel/create ratio (grid bots: ~1.0)');
467
514
  console.log(' Incr% = implied grid increment from price spacing');
468
515
  console.log(' Grid = grid quality 0-100 | DEX = DEXBot confidence 0-100');
516
+ console.log(' Updates = limit_order_update (op 77) count — DEXBot2 only; 0 = cancel-only (DEXBot1-style)');
469
517
  console.log('');
470
518
  // ── Export JSON ────────────────────────────────────────────────────────────
471
519
  if (opts.outputJson) {
472
520
  const exportData = results.map(r => ({
473
521
  id: r.id,
474
522
  name: r.name,
523
+ flavor: r.flavor,
475
524
  creates: r.creates,
476
525
  fills: r.fills,
477
526
  cancels: r.cancels,
527
+ updates: r.updates,
478
528
  fillPct: r.fillRate,
479
529
  cancelRatio: r.cancelRatio,
480
530
  maxBatch: r.maxBatch,
@@ -1 +1 @@
1
- {"version":3,"file":"discover_bot_accounts.js","sourceRoot":"","sources":["../../../analysis/bot_usage/discover_bot_accounts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"discover_bot_accounts.js","sourceRoot":"","sources":["../../../analysis/bot_usage/discover_bot_accounts.ts"],"names":[],"mappings":"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"}
@@ -31,8 +31,13 @@
31
31
  * limit_order_cancel:
32
32
  * op_object.fee_paying_account — account that cancelled
33
33
  * op_object.order — the order ID cancelled
34
+ *
35
+ * limit_order_update (op 77, DEXBot2-only — native in-place re-price):
36
+ * op_object.seller — account that updated the order
37
+ * op_object.order — the limit order ID updated
34
38
  */
35
39
  import { kibanaSearch } from '../../market_adapter/core/kibana_client.js';
40
+ declare const OP_LIMIT_ORDER_UPDATE = 77;
36
41
  declare const DEFAULT_CONFIG: {
37
42
  timeout: number;
38
43
  kibanaUrl: "https://kibana.bitshares.dev";
@@ -191,5 +196,44 @@ declare function buildTopFilledAccountsQuery(lookbackHours: number, topN?: numbe
191
196
  };
192
197
  };
193
198
  };
194
- export { DEFAULT_CONFIG, kibanaSearch, buildOrderPriceQuery, buildTopSellerAccountsQuery, buildTopCancellerAccountsQuery, buildTopFilledAccountsQuery };
199
+ /**
200
+ * Top N accounts by limit_order_update count (seller field, op 77).
201
+ * DEXBot2 fingerprint: only DEXBot2 broadcasts native in-place re-prices
202
+ * (COW UPDATE actions). DEXBot1-style bots never emit op 77 — they cancel
203
+ * (op 2) and recreate (op 1) instead.
204
+ */
205
+ declare function buildTopUpdaterAccountsQuery(lookbackHours: number, topN?: number, minUpdates?: number): {
206
+ size: number;
207
+ query: {
208
+ bool: {
209
+ filter: ({
210
+ term: {
211
+ operation_type: number;
212
+ };
213
+ range?: undefined;
214
+ } | {
215
+ range: {
216
+ 'block_data.block_time': {
217
+ gte: string;
218
+ lte: string;
219
+ };
220
+ };
221
+ term?: undefined;
222
+ })[];
223
+ };
224
+ };
225
+ aggs: {
226
+ by_account: {
227
+ terms: {
228
+ field: string;
229
+ size: number;
230
+ min_doc_count: number;
231
+ order: {
232
+ _count: string;
233
+ };
234
+ };
235
+ };
236
+ };
237
+ };
238
+ export { DEFAULT_CONFIG, kibanaSearch, buildOrderPriceQuery, buildTopSellerAccountsQuery, buildTopCancellerAccountsQuery, buildTopFilledAccountsQuery, buildTopUpdaterAccountsQuery, OP_LIMIT_ORDER_UPDATE };
195
239
  //# sourceMappingURL=kibana_bot_queries.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"kibana_bot_queries.d.ts","sourceRoot":"","sources":["../../../analysis/bot_usage/kibana_bot_queries.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAGH,OAAO,EAAE,YAAY,EAAiC,MAAM,4CAA4C,CAAC;AAQzG,QAAA,MAAM,cAAc;;;;CAGnB,CAAC;AAIF;;;;;;;;;GASG;AACH,iBAAS,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,GAAE,MAAM,GAAG,IAAW,EAAE,UAAU,GAAE,MAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoBnI;AAID;;;GAGG;AACH,iBAAS,2BAA2B,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,GAAE,MAAY,EAAE,UAAU,GAAE,MAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsBtG;AAED;;GAEG;AACH,iBAAS,8BAA8B,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,GAAE,MAAY,EAAE,UAAU,GAAE,MAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsBxG;AAED;;GAEG;AACH,iBAAS,2BAA2B,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,GAAE,MAAY,EAAE,QAAQ,GAAE,MAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsBnG;AAID,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,8BAA8B,EAAE,2BAA2B,EAAE,CAAA"}
1
+ {"version":3,"file":"kibana_bot_queries.d.ts","sourceRoot":"","sources":["../../../analysis/bot_usage/kibana_bot_queries.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAGH,OAAO,EAAE,YAAY,EAAiC,MAAM,4CAA4C,CAAC;AAWzG,QAAA,MAAM,qBAAqB,KAAK,CAAC;AAEjC,QAAA,MAAM,cAAc;;;;CAGnB,CAAC;AAIF;;;;;;;;;GASG;AACH,iBAAS,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,GAAE,MAAM,GAAG,IAAW,EAAE,UAAU,GAAE,MAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoBnI;AAID;;;GAGG;AACH,iBAAS,2BAA2B,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,GAAE,MAAY,EAAE,UAAU,GAAE,MAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsBtG;AAED;;GAEG;AACH,iBAAS,8BAA8B,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,GAAE,MAAY,EAAE,UAAU,GAAE,MAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsBxG;AAED;;GAEG;AACH,iBAAS,2BAA2B,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,GAAE,MAAY,EAAE,QAAQ,GAAE,MAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsBnG;AAED;;;;;GAKG;AACH,iBAAS,4BAA4B,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,GAAE,MAAY,EAAE,UAAU,GAAE,MAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsBtG;AAID,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,8BAA8B,EAAE,2BAA2B,EAAE,4BAA4B,EAAE,qBAAqB,EAAE,CAAA"}
@@ -32,12 +32,21 @@
32
32
  * limit_order_cancel:
33
33
  * op_object.fee_paying_account — account that cancelled
34
34
  * op_object.order — the order ID cancelled
35
+ *
36
+ * limit_order_update (op 77, DEXBot2-only — native in-place re-price):
37
+ * op_object.seller — account that updated the order
38
+ * op_object.order — the limit order ID updated
35
39
  */
36
40
  import { kibanaSearch, DEFAULT_CONFIG as BASE_CONFIG } from '../../market_adapter/core/kibana_client.js';
37
41
  // ─── Constants ────────────────────────────────────────────────────────────────
38
42
  const OP_LIMIT_ORDER_CREATE = 1;
39
43
  const OP_LIMIT_ORDER_CANCEL = 2;
40
44
  const OP_FILL_ORDER = 4;
45
+ // Native in-place order re-price. Only DEXBot2 broadcasts this (COW UPDATE
46
+ // actions via buildUpdateOrderOp); DEXBot1 (Python staggered_orders) predates
47
+ // it and can only cancel + recreate. Presence of op 77 on an account is the
48
+ // DEXBot2 fingerprint; absence means cancel-only (DEXBot1-style).
49
+ const OP_LIMIT_ORDER_UPDATE = 77;
41
50
  const DEFAULT_CONFIG = {
42
51
  ...BASE_CONFIG,
43
52
  timeout: 25000,
@@ -154,6 +163,35 @@ function buildTopFilledAccountsQuery(lookbackHours, topN = 100, minFills = 3) {
154
163
  },
155
164
  };
156
165
  }
166
+ /**
167
+ * Top N accounts by limit_order_update count (seller field, op 77).
168
+ * DEXBot2 fingerprint: only DEXBot2 broadcasts native in-place re-prices
169
+ * (COW UPDATE actions). DEXBot1-style bots never emit op 77 — they cancel
170
+ * (op 2) and recreate (op 1) instead.
171
+ */
172
+ function buildTopUpdaterAccountsQuery(lookbackHours, topN = 200, minUpdates = 1) {
173
+ return {
174
+ size: 0,
175
+ query: {
176
+ bool: {
177
+ filter: [
178
+ { term: { operation_type: OP_LIMIT_ORDER_UPDATE } },
179
+ { range: { 'block_data.block_time': { gte: `now-${lookbackHours}h`, lte: 'now' } } },
180
+ ],
181
+ },
182
+ },
183
+ aggs: {
184
+ by_account: {
185
+ terms: {
186
+ field: 'operation_history.op_object.seller.keyword',
187
+ size: topN,
188
+ min_doc_count: minUpdates,
189
+ order: { _count: 'desc' },
190
+ },
191
+ },
192
+ },
193
+ };
194
+ }
157
195
  // ─── Exports ──────────────────────────────────────────────────────────────────
158
- export { DEFAULT_CONFIG, kibanaSearch, buildOrderPriceQuery, buildTopSellerAccountsQuery, buildTopCancellerAccountsQuery, buildTopFilledAccountsQuery };
196
+ export { DEFAULT_CONFIG, kibanaSearch, buildOrderPriceQuery, buildTopSellerAccountsQuery, buildTopCancellerAccountsQuery, buildTopFilledAccountsQuery, buildTopUpdaterAccountsQuery, OP_LIMIT_ORDER_UPDATE };
159
197
  //# sourceMappingURL=kibana_bot_queries.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"kibana_bot_queries.js","sourceRoot":"","sources":["../../../analysis/bot_usage/kibana_bot_queries.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kibana_bot_queries.js","sourceRoot":"","sources":["../../../analysis/bot_usage/kibana_bot_queries.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AACb;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAGH,OAAO,EAAE,YAAY,EAAE,cAAc,IAAI,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAEzG,iFAAiF;AAEjF,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAChC,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAChC,MAAM,aAAa,GAAW,CAAC,CAAC;AAChC,2EAA2E;AAC3E,8EAA8E;AAC9E,4EAA4E;AAC5E,kEAAkE;AAClE,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAEjC,MAAM,cAAc,GAAG;IACnB,GAAG,WAAW;IACd,OAAO,EAAE,KAAK;CACjB,CAAC;AAEF,iFAAiF;AAEjF;;;;;;;;;GASG;AACH,SAAS,oBAAoB,CAAC,SAAiB,EAAE,aAAqB,EAAE,cAA6B,IAAI,EAAE,aAAqB,IAAI;IAChI,MAAM,OAAO,GAAG;QACZ,EAAE,IAAI,EAAG,EAAE,cAAc,EAAE,qBAAqB,EAAE,EAAE;QACpD,EAAE,IAAI,EAAG,EAAE,4CAA4C,EAAE,SAAS,EAAE,EAAE;QACtE,EAAE,KAAK,EAAE,EAAE,uBAAuB,EAAE,EAAE,GAAG,EAAE,OAAO,aAAa,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE;KACvF,CAAC;IACF,IAAI,WAAW,EAAE,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,6DAA6D,EAAE,WAAW,EAAE,EAAS,CAAC,CAAC;IAClH,CAAC;IACD,OAAO;QACH,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE;YACL,uBAAuB;YACvB,4CAA4C;YAC5C,4CAA4C;YAC5C,wCAAwC;SAC3C;QACD,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;QACpC,IAAI,EAAG,CAAC,EAAE,uBAAuB,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC;KAC1D,CAAC;AACN,CAAC;AAED,iFAAiF;AAEjF;;;GAGG;AACH,SAAS,2BAA2B,CAAC,aAAqB,EAAE,OAAe,GAAG,EAAE,aAAqB,EAAE;IACnG,OAAO;QACH,IAAI,EAAE,CAAC;QACP,KAAK,EAAE;YACH,IAAI,EAAE;gBACF,MAAM,EAAE;oBACJ,EAAE,IAAI,EAAG,EAAE,cAAc,EAAE,qBAAqB,EAAE,EAAE;oBACpD,EAAE,KAAK,EAAE,EAAE,uBAAuB,EAAE,EAAE,GAAG,EAAE,OAAO,aAAa,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE;iBACvF;aACJ;SACJ;QACD,IAAI,EAAE;YACF,UAAU,EAAE;gBACR,KAAK,EAAE;oBACH,KAAK,EAAW,4CAA4C;oBAC5D,IAAI,EAAY,IAAI;oBACpB,aAAa,EAAG,UAAU;oBAC1B,KAAK,EAAW,EAAE,MAAM,EAAE,MAAM,EAAE;iBACrC;aACJ;SACJ;KACJ,CAAC;AACN,CAAC;AAED;;GAEG;AACH,SAAS,8BAA8B,CAAC,aAAqB,EAAE,OAAe,GAAG,EAAE,aAAqB,CAAC;IACrG,OAAO;QACH,IAAI,EAAE,CAAC;QACP,KAAK,EAAE;YACH,IAAI,EAAE;gBACF,MAAM,EAAE;oBACJ,EAAE,IAAI,EAAG,EAAE,cAAc,EAAE,qBAAqB,EAAE,EAAE;oBACpD,EAAE,KAAK,EAAE,EAAE,uBAAuB,EAAE,EAAE,GAAG,EAAE,OAAO,aAAa,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE;iBACvF;aACJ;SACJ;QACD,IAAI,EAAE;YACF,UAAU,EAAE;gBACR,KAAK,EAAE;oBACH,KAAK,EAAU,wDAAwD;oBACvE,IAAI,EAAW,IAAI;oBACnB,aAAa,EAAE,UAAU;oBACzB,KAAK,EAAU,EAAE,MAAM,EAAE,MAAM,EAAE;iBACpC;aACJ;SACJ;KACJ,CAAC;AACN,CAAC;AAED;;GAEG;AACH,SAAS,2BAA2B,CAAC,aAAqB,EAAE,OAAe,GAAG,EAAE,WAAmB,CAAC;IAChG,OAAO;QACH,IAAI,EAAE,CAAC;QACP,KAAK,EAAE;YACH,IAAI,EAAE;gBACF,MAAM,EAAE;oBACJ,EAAE,IAAI,EAAG,EAAE,cAAc,EAAE,aAAa,EAAE,EAAE;oBAC5C,EAAE,KAAK,EAAE,EAAE,uBAAuB,EAAE,EAAE,GAAG,EAAE,OAAO,aAAa,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE;iBACvF;aACJ;SACJ;QACD,IAAI,EAAE;YACF,UAAU,EAAE;gBACR,KAAK,EAAE;oBACH,KAAK,EAAU,gDAAgD;oBAC/D,IAAI,EAAW,IAAI;oBACnB,aAAa,EAAE,QAAQ;oBACvB,KAAK,EAAU,EAAE,MAAM,EAAE,MAAM,EAAE;iBACpC;aACJ;SACJ;KACJ,CAAC;AACN,CAAC;AAED;;;;;GAKG;AACH,SAAS,4BAA4B,CAAC,aAAqB,EAAE,OAAe,GAAG,EAAE,aAAqB,CAAC;IACnG,OAAO;QACH,IAAI,EAAE,CAAC;QACP,KAAK,EAAE;YACH,IAAI,EAAE;gBACF,MAAM,EAAE;oBACJ,EAAE,IAAI,EAAG,EAAE,cAAc,EAAE,qBAAqB,EAAE,EAAE;oBACpD,EAAE,KAAK,EAAE,EAAE,uBAAuB,EAAE,EAAE,GAAG,EAAE,OAAO,aAAa,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,EAAE;iBACvF;aACJ;SACJ;QACD,IAAI,EAAE;YACF,UAAU,EAAE;gBACR,KAAK,EAAE;oBACH,KAAK,EAAU,4CAA4C;oBAC3D,IAAI,EAAW,IAAI;oBACnB,aAAa,EAAE,UAAU;oBACzB,KAAK,EAAU,EAAE,MAAM,EAAE,MAAM,EAAE;iBACpC;aACJ;SACJ;KACJ,CAAC;AACN,CAAC;AAED,iFAAiF;AAEjF,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,8BAA8B,EAAE,2BAA2B,EAAE,4BAA4B,EAAE,qBAAqB,EAAE,CAAA"}
@@ -1,6 +1,7 @@
1
1
  declare function escapeHtml(str: string): string;
2
2
  declare function serializeJsonForScript(value: any): string;
3
3
  declare function toEpochSeconds(ts: any, fallbackIdx: any): number;
4
+ declare function toFileUrl(filePath: any): string;
4
5
  declare function writeChartFile(filePath: any, html: any): void;
5
6
  /**
6
7
  * Serialize the exact source of the given pure functions for injection into a
@@ -20,5 +21,5 @@ declare function embedFunctionSources(fns: Array<Function>): string;
20
21
  * before embedding this script block.
21
22
  */
22
23
  declare const UPLOT_SHARED_SCRIPT = "\nfunction clampXRange(min, max) {\n let nextMin = min, nextMax = max;\n if (!Number.isFinite(nextMin) || !Number.isFinite(nextMax) || nextMax <= nextMin) {\n return { min: xMin, max: xMax };\n }\n if (nextMin < xMin) { nextMax += xMin - nextMin; nextMin = xMin; }\n if (nextMax > xMax) { nextMin -= nextMax - xMax; nextMax = xMax; }\n if (nextMin < xMin) nextMin = xMin;\n if (nextMax > xMax) nextMax = xMax;\n if (nextMax <= nextMin) return { min: xMin, max: xMax };\n return { min: nextMin, max: nextMax };\n}\n\nfunction syncXRange(min, max) {\n pendingRange = clampXRange(min, max);\n if (pendingRangeRaf) return;\n const raf = typeof requestAnimationFrame !== 'undefined' ? requestAnimationFrame.bind(window) : (fn) => setTimeout(fn, 0);\n pendingRangeRaf = raf(() => {\n const next = pendingRange;\n pendingRange = null;\n pendingRangeRaf = 0;\n if (!next) return;\n charts.forEach(c => c && c.batch(() => c.setScale('x', next)));\n });\n}\n\nfunction bindWheelZoom(chart) {\n chart.root.addEventListener('wheel', (e) => {\n if (e.ctrlKey || e.metaKey || e.altKey) return;\n e.preventDefault();\n e.stopPropagation();\n const rect = chart.root.getBoundingClientRect();\n \n // Correctly calculate plot-relative 'left' for accurate centering\n const left = e.clientX - rect.left - (chart.bbox.left / (chart.pxRatio || 1));\n const center = chart.posToVal(left, 'x');\n \n const s = chart.scales.x || {};\n const currMin = Number.isFinite(s.min) ? s.min : xMin;\n const currMax = Number.isFinite(s.max) ? s.max : xMax;\n const span = currMax - currMin;\n if (!Number.isFinite(span) || span <= 0) return;\n const factor = e.deltaY < 0 ? 0.85 : 1.15;\n const nextSpan = Math.max(1, Math.min(xMax - xMin, span * factor));\n const ratio = (center - currMin) / span;\n syncXRange(center - nextSpan * ratio, center - nextSpan * ratio + nextSpan);\n }, { passive: false });\n}\n\nfunction bindPan(chart) {\n let dragging = false, startClientX = 0, startClientY = 0, startMin = xMin, startMax = xMax, xUnitsPerPx = 0;\n const getScale = () => {\n const s = chart.scales.x || {};\n return { currMin: Number.isFinite(s.min) ? s.min : xMin, currMax: Number.isFinite(s.max) ? s.max : xMax };\n };\n const onMouseMove = (e) => {\n if (!dragging) return;\n \n // Ignore if vertical movement is dominant (likely scrolling)\n if (Math.abs(e.clientY - startClientY) > 20) return;\n \n e.preventDefault();\n const deltaPx = e.clientX - startClientX;\n const deltaVal = deltaPx * xUnitsPerPx;\n syncXRange(startMin - deltaVal, startMax - deltaVal);\n };\n const endDrag = () => {\n if (!dragging) return;\n dragging = false;\n document.body.style.cursor = '';\n window.removeEventListener('mousemove', onMouseMove);\n window.removeEventListener('mouseup', endDrag);\n };\n chart.root.addEventListener('mousedown', (e) => {\n if (!e || e.button !== 0 || e.ctrlKey || e.metaKey || e.altKey) return;\n const rect = chart.root.getBoundingClientRect();\n if (e.clientX < rect.left || e.clientX > rect.right || e.clientY < rect.top || e.clientY > rect.bottom) return;\n \n e.preventDefault();\n e.stopPropagation();\n \n dragging = true;\n startClientX = e.clientX;\n startClientY = e.clientY;\n const cur = getScale();\n startMin = cur.currMin; startMax = cur.currMax;\n \n // Calculate units per pixel once at start of drag to avoid sliding bug\n // chart.bbox.width is in device pixels; divide by pxRatio for CSS pixels\n xUnitsPerPx = (cur.currMax - cur.currMin) / (chart.bbox.width / (chart.pxRatio || 1));\n \n document.body.style.cursor = 'grabbing';\n window.addEventListener('mousemove', onMouseMove);\n window.addEventListener('mouseup', endDrag, { once: true });\n });\n}\n";
23
- export { escapeHtml, serializeJsonForScript, toEpochSeconds, writeChartFile, embedFunctionSources, UPLOT_SHARED_SCRIPT };
24
+ export { escapeHtml, serializeJsonForScript, toEpochSeconds, writeChartFile, toFileUrl, embedFunctionSources, UPLOT_SHARED_SCRIPT };
24
25
  //# sourceMappingURL=chart_utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"chart_utils.d.ts","sourceRoot":"","sources":["../../analysis/chart_utils.ts"],"names":[],"mappings":"AAmCA,iBAAS,UAAU,CAAC,GAAG,EAAE,MAAM,UAS9B;AAED,iBAAS,sBAAsB,CAAC,KAAK,EAAE,GAAG,UAEzC;AAED,iBAAS,cAAc,CAAC,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,UAIhD;AAED,iBAAS,cAAc,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,QAc/C;AAED;;;;;;;;;;GAUG;AACH,iBAAS,oBAAoB,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,MAAM,CAG1D;AAED;;;;GAIG;AACH,QAAA,MAAM,mBAAmB,okIAiGxB,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,cAAc,EAAE,cAAc,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,CAAA"}
1
+ {"version":3,"file":"chart_utils.d.ts","sourceRoot":"","sources":["../../analysis/chart_utils.ts"],"names":[],"mappings":"AAmCA,iBAAS,UAAU,CAAC,GAAG,EAAE,MAAM,UAS9B;AAED,iBAAS,sBAAsB,CAAC,KAAK,EAAE,GAAG,UAEzC;AAED,iBAAS,cAAc,CAAC,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,UAIhD;AAED,iBAAS,SAAS,CAAC,QAAQ,EAAE,GAAG,GAAG,MAAM,CAExC;AAED,iBAAS,cAAc,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,QAa/C;AAED;;;;;;;;;;GAUG;AACH,iBAAS,oBAAoB,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,MAAM,CAG1D;AAED;;;;GAIG;AACH,QAAA,MAAM,mBAAmB,okIAiGxB,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,cAAc,EAAE,cAAc,EAAE,SAAS,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,CAAA"}
@@ -49,6 +49,9 @@ function toEpochSeconds(ts, fallbackIdx) {
49
49
  return Math.floor(ms / 1000);
50
50
  return fallbackIdx * 3600;
51
51
  }
52
+ function toFileUrl(filePath) {
53
+ return `file://${path.resolve(String(filePath))}`;
54
+ }
52
55
  function writeChartFile(filePath, html) {
53
56
  const chartDir = path.dirname(filePath);
54
57
  if (!fs.existsSync(chartDir))
@@ -187,5 +190,5 @@ function bindPan(chart) {
187
190
  });
188
191
  }
189
192
  `;
190
- export { escapeHtml, serializeJsonForScript, toEpochSeconds, writeChartFile, embedFunctionSources, UPLOT_SHARED_SCRIPT };
193
+ export { escapeHtml, serializeJsonForScript, toEpochSeconds, writeChartFile, toFileUrl, embedFunctionSources, UPLOT_SHARED_SCRIPT };
191
194
  //# sourceMappingURL=chart_utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chart_utils.js","sourceRoot":"","sources":["../../analysis/chart_utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chart_utils.js","sourceRoot":"","sources":["../../analysis/chart_utils.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"grid_correction_check.d.ts","sourceRoot":"","sources":["../../analysis/grid_correction_check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grid_correction_check.d.ts","sourceRoot":"","sources":["../../analysis/grid_correction_check.ts"],"names":[],"mappings":"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"}