dexbot 1.2.5 → 1.2.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.
- package/README.md +30 -27
- package/dist/dexbot.d.ts +22 -22
- package/dist/dexbot.js +29 -29
- package/dist/dexbot.js.map +1 -1
- package/dist/modules/account_orders.d.ts +8 -1
- package/dist/modules/account_orders.d.ts.map +1 -1
- package/dist/modules/account_orders.js +24 -1
- package/dist/modules/account_orders.js.map +1 -1
- package/dist/modules/chain_orders.d.ts +16 -0
- package/dist/modules/chain_orders.d.ts.map +1 -1
- package/dist/modules/chain_orders.js +41 -0
- package/dist/modules/chain_orders.js.map +1 -1
- package/dist/modules/constants.d.ts +0 -3
- package/dist/modules/constants.d.ts.map +1 -1
- package/dist/modules/constants.js +0 -14
- package/dist/modules/constants.js.map +1 -1
- package/dist/modules/dexbot_class.d.ts +10 -2
- package/dist/modules/dexbot_class.d.ts.map +1 -1
- package/dist/modules/dexbot_class.js +176 -57
- package/dist/modules/dexbot_class.js.map +1 -1
- package/dist/modules/dexbot_fill_runtime.d.ts +2 -2
- package/dist/modules/dexbot_fill_runtime.d.ts.map +1 -1
- package/dist/modules/dexbot_fill_runtime.js +3 -3
- package/dist/modules/dexbot_fill_runtime.js.map +1 -1
- package/dist/modules/dexbot_maintenance_runtime.d.ts.map +1 -1
- package/dist/modules/dexbot_maintenance_runtime.js +8 -9
- package/dist/modules/dexbot_maintenance_runtime.js.map +1 -1
- package/dist/modules/node_manager.d.ts.map +1 -1
- package/dist/modules/node_manager.js +7 -0
- package/dist/modules/node_manager.js.map +1 -1
- package/dist/modules/order/accounting.d.ts +2 -18
- package/dist/modules/order/accounting.d.ts.map +1 -1
- package/dist/modules/order/accounting.js +22 -49
- package/dist/modules/order/accounting.js.map +1 -1
- package/dist/modules/order/async_lock.d.ts +10 -0
- package/dist/modules/order/async_lock.d.ts.map +1 -1
- package/dist/modules/order/async_lock.js +60 -5
- package/dist/modules/order/async_lock.js.map +1 -1
- package/dist/modules/order/grid.js +2 -2
- package/dist/modules/order/grid.js.map +1 -1
- package/dist/modules/order/manager.d.ts +8 -1
- package/dist/modules/order/manager.d.ts.map +1 -1
- package/dist/modules/order/manager.js +28 -14
- package/dist/modules/order/manager.js.map +1 -1
- package/dist/modules/order/strategy.d.ts +2 -49
- package/dist/modules/order/strategy.d.ts.map +1 -1
- package/dist/modules/order/strategy.js +4 -132
- package/dist/modules/order/strategy.js.map +1 -1
- package/dist/modules/order/sync_engine.d.ts +53 -6
- package/dist/modules/order/sync_engine.d.ts.map +1 -1
- package/dist/modules/order/sync_engine.js +384 -204
- package/dist/modules/order/sync_engine.js.map +1 -1
- package/dist/modules/order/utils/math.d.ts.map +1 -1
- package/dist/modules/order/utils/math.js +8 -3
- package/dist/modules/order/utils/math.js.map +1 -1
- package/dist/modules/order/utils/order.js +1 -1
- package/dist/modules/order/utils/order.js.map +1 -1
- package/dist/modules/order/utils/system.d.ts +1 -1
- package/dist/modules/order/utils/system.d.ts.map +1 -1
- package/dist/modules/order/utils/system.js +3 -2
- package/dist/modules/order/utils/system.js.map +1 -1
- package/dist/modules/runtime_settings.d.ts +3 -0
- package/dist/modules/runtime_settings.d.ts.map +1 -1
- package/dist/modules/runtime_settings.js +34 -1
- package/dist/modules/runtime_settings.js.map +1 -1
- package/dist/modules/types.d.ts +29 -4
- package/dist/modules/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/scripts/README.md +9 -9
- package/scripts/reset-settings.sh +1 -1
package/README.md
CHANGED
|
@@ -30,8 +30,8 @@ DEXBot2 is the first open source trading bot with zero runtime dependencies and
|
|
|
30
30
|
## 🔥 Quick Start
|
|
31
31
|
|
|
32
32
|
```bash
|
|
33
|
-
# Option A — Install via npm
|
|
34
|
-
npm i dexbot
|
|
33
|
+
# Option A — Install globally via npm
|
|
34
|
+
npm i -g dexbot
|
|
35
35
|
|
|
36
36
|
# Option B — Clone and install from source
|
|
37
37
|
git clone https://github.com/froooze/DEXBot2.git && cd DEXBot2 && npm install
|
|
@@ -40,16 +40,19 @@ git clone https://github.com/froooze/DEXBot2.git && cd DEXBot2 && npm install
|
|
|
40
40
|
Then set up your master password, keys and add bots:
|
|
41
41
|
|
|
42
42
|
```bash
|
|
43
|
-
|
|
44
|
-
|
|
43
|
+
dexbot key
|
|
44
|
+
dexbot bot
|
|
45
45
|
```
|
|
46
46
|
|
|
47
47
|
And start DEXBot2:
|
|
48
48
|
|
|
49
49
|
```bash
|
|
50
|
-
|
|
50
|
+
dexbot unlock
|
|
51
51
|
```
|
|
52
52
|
|
|
53
|
+
> `dexbot` is available globally after `npm i -g dexbot`. Repo-root users can
|
|
54
|
+
> run `./scripts/dexbot` instead.
|
|
55
|
+
|
|
53
56
|
For detailed setup, see [Installation](#installation) section below.
|
|
54
57
|
|
|
55
58
|
### Disclaimer — Use At Your Own Risk
|
|
@@ -100,8 +103,8 @@ sudo dnf install nodejs npm git
|
|
|
100
103
|
### Install
|
|
101
104
|
|
|
102
105
|
```bash
|
|
103
|
-
# Option A — Install via npm
|
|
104
|
-
npm i dexbot
|
|
106
|
+
# Option A — Install globally via npm
|
|
107
|
+
npm i -g dexbot
|
|
105
108
|
|
|
106
109
|
# Option B — Clone and install from source
|
|
107
110
|
git clone https://github.com/froooze/DEXBot2.git && cd DEXBot2 && npm install
|
|
@@ -110,8 +113,8 @@ git clone https://github.com/froooze/DEXBot2.git && cd DEXBot2 && npm install
|
|
|
110
113
|
Then set up your master password, keys and add bots:
|
|
111
114
|
|
|
112
115
|
```bash
|
|
113
|
-
|
|
114
|
-
|
|
116
|
+
dexbot key
|
|
117
|
+
dexbot bot
|
|
115
118
|
```
|
|
116
119
|
|
|
117
120
|
## 🔧 Configuration
|
|
@@ -138,18 +141,18 @@ market volatility instead of using an unnecessarily wide range.
|
|
|
138
141
|
|
|
139
142
|
### Simple AMA Workflow
|
|
140
143
|
|
|
141
|
-
1. Create the bot with `
|
|
144
|
+
1. Create the bot with `dexbot bot`.
|
|
142
145
|
2. Leave defaults unchanged.
|
|
143
146
|
3. Tune `targetSpreadPercent` and `incrementPercent`.
|
|
144
147
|
4. Set `gridPrice` to `ama`.
|
|
145
148
|
5. Generate the market-adapter whitelist:
|
|
146
149
|
|
|
147
150
|
```bash
|
|
148
|
-
|
|
151
|
+
dexbot white
|
|
149
152
|
```
|
|
150
153
|
|
|
151
154
|
This writes `profiles/market_adapter_whitelist.json`. New AMA bots get AMA
|
|
152
|
-
live writes and range scaling. Use `
|
|
155
|
+
live writes and range scaling. Use `dexbot white --dynamic-weight` for
|
|
153
156
|
newly generated dynamic-weight entries; existing entries are preserved.
|
|
154
157
|
|
|
155
158
|
6. Start DEXBot2 with `node unlock` (or `node pm2` for PM2).
|
|
@@ -157,7 +160,7 @@ market volatility instead of using an unnecessarily wide range.
|
|
|
157
160
|
|
|
158
161
|
### Bot Options Reference
|
|
159
162
|
|
|
160
|
-
Configuration options from `
|
|
163
|
+
Configuration options from `dexbot bot`, stored in `profiles/bots.json`:
|
|
161
164
|
|
|
162
165
|
<details><summary>Full parameter reference (click to expand)</summary>
|
|
163
166
|
|
|
@@ -183,7 +186,7 @@ Configuration options from `node dexbot bot`, stored in `profiles/bots.json`:
|
|
|
183
186
|
|
|
184
187
|
### General Options (Global)
|
|
185
188
|
|
|
186
|
-
Global settings via `
|
|
189
|
+
Global settings via `dexbot bot`, stored in `profiles/general.settings.json`:
|
|
187
190
|
|
|
188
191
|
<details><summary>Global settings reference (click to expand)</summary>
|
|
189
192
|
|
|
@@ -218,21 +221,21 @@ For independent per-bot process control, start isolated mode with `node unlock -
|
|
|
218
221
|
## 🛠️ Bot Management
|
|
219
222
|
|
|
220
223
|
```bash
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
+
dexbot key # Master password/keyring
|
|
225
|
+
dexbot bot # Interactive bot configurator
|
|
226
|
+
dexbot white # Market adapter whitelist, dynamic weights off by default
|
|
224
227
|
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
+
dexbot unlock # Standard live runtime
|
|
229
|
+
dexbot reset {all|<bot>} # Regenerate grid
|
|
230
|
+
dexbot disable {all|<bot>} # Disable bot in config
|
|
228
231
|
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
+
dexbot stat # Runtime status (unlock or PM2)
|
|
233
|
+
dexbot order # Analyze order grids
|
|
234
|
+
dexbot order --export # Export as HTML to root folder
|
|
232
235
|
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
+
dexbot update # Update DEXBot2
|
|
237
|
+
dexbot clear # Clear log files
|
|
238
|
+
dexbot default # Reset settings to defaults
|
|
236
239
|
```
|
|
237
240
|
|
|
238
241
|
## 🎯 PM2 Process Management
|
|
@@ -257,8 +260,8 @@ Logs are written to `profiles/logs/<bot-name>.log` (errors to `<bot-name>-error.
|
|
|
257
260
|
|
|
258
261
|
- **[Market Adapter](market_adapter/README.md)** - AMA pricing, grid triggers, dynamic weights, and collateral advisory signals
|
|
259
262
|
- **[MPA and Credit Usage](docs/MPA_CREDIT_USAGE.md)** - Bot-scoped debt policy, MPA borrowing, and credit offer workflows
|
|
260
|
-
- **[Claw](claw/README.md)** - Bridge setup, launcher commands, short MPA workflow, and example commands
|
|
261
263
|
- **[Analysis](analysis/README.md)** - Research runners, chart generators, and tuning helpers for AMA fitting, trend detection, bot fitting, and TradingView exports
|
|
264
|
+
- **[Claw](claw/README.md)** - Bridge setup, launcher commands, short MPA workflow, and example commands
|
|
262
265
|
|
|
263
266
|
### Operational & Security
|
|
264
267
|
|
package/dist/dexbot.d.ts
CHANGED
|
@@ -35,38 +35,38 @@
|
|
|
35
35
|
* ===============================================================================
|
|
36
36
|
*
|
|
37
37
|
* TRADING OPERATIONS:
|
|
38
|
-
*
|
|
39
|
-
*
|
|
38
|
+
* dexbot test <bot-name> - Test-run single bot (live trading)
|
|
39
|
+
* dexbot drystart <bot-name> - Start bot in dry-run mode (no transactions)
|
|
40
40
|
*
|
|
41
41
|
* 🛠️ BOT MANAGEMENT:
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
*
|
|
42
|
+
* dexbot reset all - Reset all active bot grids (full regeneration)
|
|
43
|
+
* dexbot reset <bot-name> - Reset bot grid (full regeneration)
|
|
44
|
+
* dexbot default - Reset settings to defaults (deletes general.settings.json, market_profiles.json, market_adapter_settings.json)
|
|
45
|
+
* dexbot disable all - Mark all bots inactive in config
|
|
46
|
+
* dexbot disable <bot-name> - Mark bot inactive in config
|
|
47
|
+
* dexbot clear - Clear all log files in profiles/logs/
|
|
48
48
|
*
|
|
49
49
|
* CONFIGURATION:
|
|
50
|
-
*
|
|
51
|
-
*
|
|
50
|
+
* dexbot keys - Set up master password and keyring
|
|
51
|
+
* dexbot bots - Interactive editor for bot definitions
|
|
52
52
|
*
|
|
53
53
|
* PM2 ORCHESTRATION:
|
|
54
|
-
*
|
|
55
|
-
*
|
|
56
|
-
*
|
|
57
|
-
*
|
|
58
|
-
*
|
|
59
|
-
*
|
|
54
|
+
* dexbot pm2 - Start all bots via PM2 with daemon
|
|
55
|
+
* dexbot pm2 stop all - Stop all PM2 bot processes
|
|
56
|
+
* dexbot pm2 stop <bot-name> - Stop specific bot
|
|
57
|
+
* dexbot pm2 delete all - Delete all bots from PM2
|
|
58
|
+
* dexbot pm2 delete <bot-name>- Delete specific bot from PM2
|
|
59
|
+
* dexbot pm2 help - Show PM2 command help
|
|
60
60
|
*
|
|
61
61
|
* STATUS:
|
|
62
|
-
*
|
|
62
|
+
* dexbot status - Show bot runtime status (unlock monolithic/isolated or PM2)
|
|
63
63
|
*
|
|
64
64
|
* MAINTENANCE:
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
*
|
|
68
|
-
*
|
|
69
|
-
*
|
|
65
|
+
* dexbot update - Update to latest version (pull + install + restart)
|
|
66
|
+
* dexbot export <bot-name> - Export trading history to CSV/JSON for QTradeX
|
|
67
|
+
* dexbot order - Analyze persisted order grids in profiles/orders/
|
|
68
|
+
* dexbot order --export - Export order analysis as standalone HTML report
|
|
69
|
+
* dexbot help - Show this help message
|
|
70
70
|
*
|
|
71
71
|
* NPM SCRIPTS (alternative invocation):
|
|
72
72
|
* npm run pm2:start - Start bots (requires ecosystem.config.js pre-generated)
|
package/dist/dexbot.js
CHANGED
|
@@ -37,38 +37,38 @@
|
|
|
37
37
|
* ===============================================================================
|
|
38
38
|
*
|
|
39
39
|
* TRADING OPERATIONS:
|
|
40
|
-
*
|
|
41
|
-
*
|
|
40
|
+
* dexbot test <bot-name> - Test-run single bot (live trading)
|
|
41
|
+
* dexbot drystart <bot-name> - Start bot in dry-run mode (no transactions)
|
|
42
42
|
*
|
|
43
43
|
* 🛠️ BOT MANAGEMENT:
|
|
44
|
-
*
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
*
|
|
48
|
-
*
|
|
49
|
-
*
|
|
44
|
+
* dexbot reset all - Reset all active bot grids (full regeneration)
|
|
45
|
+
* dexbot reset <bot-name> - Reset bot grid (full regeneration)
|
|
46
|
+
* dexbot default - Reset settings to defaults (deletes general.settings.json, market_profiles.json, market_adapter_settings.json)
|
|
47
|
+
* dexbot disable all - Mark all bots inactive in config
|
|
48
|
+
* dexbot disable <bot-name> - Mark bot inactive in config
|
|
49
|
+
* dexbot clear - Clear all log files in profiles/logs/
|
|
50
50
|
*
|
|
51
51
|
* CONFIGURATION:
|
|
52
|
-
*
|
|
53
|
-
*
|
|
52
|
+
* dexbot keys - Set up master password and keyring
|
|
53
|
+
* dexbot bots - Interactive editor for bot definitions
|
|
54
54
|
*
|
|
55
55
|
* PM2 ORCHESTRATION:
|
|
56
|
-
*
|
|
57
|
-
*
|
|
58
|
-
*
|
|
59
|
-
*
|
|
60
|
-
*
|
|
61
|
-
*
|
|
56
|
+
* dexbot pm2 - Start all bots via PM2 with daemon
|
|
57
|
+
* dexbot pm2 stop all - Stop all PM2 bot processes
|
|
58
|
+
* dexbot pm2 stop <bot-name> - Stop specific bot
|
|
59
|
+
* dexbot pm2 delete all - Delete all bots from PM2
|
|
60
|
+
* dexbot pm2 delete <bot-name>- Delete specific bot from PM2
|
|
61
|
+
* dexbot pm2 help - Show PM2 command help
|
|
62
62
|
*
|
|
63
63
|
* STATUS:
|
|
64
|
-
*
|
|
64
|
+
* dexbot status - Show bot runtime status (unlock monolithic/isolated or PM2)
|
|
65
65
|
*
|
|
66
66
|
* MAINTENANCE:
|
|
67
|
-
*
|
|
68
|
-
*
|
|
69
|
-
*
|
|
70
|
-
*
|
|
71
|
-
*
|
|
67
|
+
* dexbot update - Update to latest version (pull + install + restart)
|
|
68
|
+
* dexbot export <bot-name> - Export trading history to CSV/JSON for QTradeX
|
|
69
|
+
* dexbot order - Analyze persisted order grids in profiles/orders/
|
|
70
|
+
* dexbot order --export - Export order analysis as standalone HTML report
|
|
71
|
+
* dexbot help - Show this help message
|
|
72
72
|
*
|
|
73
73
|
* NPM SCRIPTS (alternative invocation):
|
|
74
74
|
* npm run pm2:start - Start bots (requires ecosystem.config.js pre-generated)
|
|
@@ -168,7 +168,7 @@ const CLI_EXAMPLES = [
|
|
|
168
168
|
{ title: 'Manage keys', command: 'dexbot key', notes: 'Runs modules/chain_keys.ts to add or update master passwords.' },
|
|
169
169
|
{ title: 'Edit bot definitions', command: 'dexbot bot', notes: 'Launches the interactive modules/account_bots.ts helper for the JSON config.' },
|
|
170
170
|
{ title: 'Start bots with PM2', command: 'dexbot pm2', notes: 'Generates ecosystem config, authenticates, and starts PM2.' },
|
|
171
|
-
{ title: 'Update DEXBot2', command: '
|
|
171
|
+
{ title: 'Update DEXBot2', command: 'dexbot update', notes: 'Fetches latest code, updates dependencies, and restarts PM2.' },
|
|
172
172
|
{ title: 'Export bot trades for QTradeX', command: 'dexbot export bot-name', notes: 'Exports trading history and settings to CSV/JSON for backtesting.' },
|
|
173
173
|
{ title: 'Analyze persisted order grids', command: 'dexbot order', notes: 'Runs the order analyzer across profiles/orders/ and prints spread/increment/funds/distribution metrics. Add --export for an HTML report.' },
|
|
174
174
|
{ title: 'Clear all bot log files', command: 'dexbot clear', notes: 'Runs scripts/clear-logs.sh to remove log files from profiles/logs/.' },
|
|
@@ -555,7 +555,7 @@ async function runBotInstances(botEntries, { forceDryRun = false, sourceName = '
|
|
|
555
555
|
unregisterCleanup(botCleanupHandler);
|
|
556
556
|
}
|
|
557
557
|
// Attempt graceful cleanup before continuing. Idempotent via the
|
|
558
|
-
//
|
|
558
|
+
// _shuttingDown guard, so a redundant call is a no-op.
|
|
559
559
|
if (bot) {
|
|
560
560
|
try {
|
|
561
561
|
await bot.shutdown();
|
|
@@ -1170,14 +1170,14 @@ async function bootstrap() {
|
|
|
1170
1170
|
await chainKeys.main();
|
|
1171
1171
|
console.log();
|
|
1172
1172
|
console.log(startupSuccess('Master password configured! Now you can:'));
|
|
1173
|
-
console.log('
|
|
1174
|
-
console.log('
|
|
1173
|
+
console.log(' dexbot bots - Create and manage bots');
|
|
1174
|
+
console.log(' dexbot - Run your configured bots');
|
|
1175
1175
|
console.log();
|
|
1176
1176
|
}
|
|
1177
1177
|
else {
|
|
1178
1178
|
console.log();
|
|
1179
1179
|
console.log('You can set up your master password later by running:');
|
|
1180
|
-
console.log('
|
|
1180
|
+
console.log(' dexbot keys');
|
|
1181
1181
|
console.log();
|
|
1182
1182
|
}
|
|
1183
1183
|
return;
|
|
@@ -1190,10 +1190,10 @@ async function bootstrap() {
|
|
|
1190
1190
|
console.log('No bot configuration found.');
|
|
1191
1191
|
console.log();
|
|
1192
1192
|
console.log('First, set up your master password:');
|
|
1193
|
-
console.log('
|
|
1193
|
+
console.log(' dexbot keys');
|
|
1194
1194
|
console.log();
|
|
1195
1195
|
console.log('Then, create your first bot:');
|
|
1196
|
-
console.log('
|
|
1196
|
+
console.log(' dexbot bots');
|
|
1197
1197
|
console.log();
|
|
1198
1198
|
process.exit(0);
|
|
1199
1199
|
}
|
package/dist/dexbot.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dexbot.js","sourceRoot":"","sources":["../dexbot.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dexbot.js","sourceRoot":"","sources":["../dexbot.ts"],"names":[],"mappings":"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"}
|
|
@@ -161,14 +161,21 @@ declare class AccountOrders {
|
|
|
161
161
|
* @param {number|null} boundaryIdx - Optional master boundary index for StrategyEngine
|
|
162
162
|
* @param {Object|null} assets - Optional asset metadata { assetA, assetB }
|
|
163
163
|
* @param {Object|null} debugInputs - Optional debug-only input snapshot
|
|
164
|
+
* @param {Object|null} recentFillKeys - Optional fill key dedup snapshot for crash recovery
|
|
164
165
|
*/
|
|
165
|
-
storeMasterGrid(orders?: any[], btsFeesOwed?: any, boundaryIdx?: any, assets?: any, debugInputs?: any): Promise<void>;
|
|
166
|
+
storeMasterGrid(orders?: any[], btsFeesOwed?: any, boundaryIdx?: any, assets?: any, debugInputs?: any, recentFillKeys?: any): Promise<void>;
|
|
166
167
|
/**
|
|
167
168
|
* Load the persisted order grid for this bot.
|
|
168
169
|
* @param {boolean} forceReload - If true, reload from disk to ensure fresh data
|
|
169
170
|
* @returns {Array|null} Order grid array or null if not found
|
|
170
171
|
*/
|
|
171
172
|
loadGrid(forceReload?: boolean): any;
|
|
173
|
+
/**
|
|
174
|
+
* Load the recently queued fill keys for crash-durable dedup.
|
|
175
|
+
* @param {boolean} forceReload - If true, reload from disk
|
|
176
|
+
* @returns {Object|null} Recent fill keys map or null if not found
|
|
177
|
+
*/
|
|
178
|
+
loadRecentFillKeys(forceReload?: boolean): any;
|
|
172
179
|
/**
|
|
173
180
|
* Load persisted asset metadata for this bot.
|
|
174
181
|
* @param {boolean} forceReload - If true, reload from disk
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account_orders.d.ts","sourceRoot":"","sources":["../../modules/account_orders.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AAyCH;;;;;;;;GAQG;AACH,iBAAS,YAAY,CAAC,GAAG,KAAA,EAAE,KAAK,KAAA,UAU/B;
|
|
1
|
+
{"version":3,"file":"account_orders.d.ts","sourceRoot":"","sources":["../../modules/account_orders.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AAyCH;;;;;;;;GAQG;AACH,iBAAS,YAAY,CAAC,GAAG,KAAA,EAAE,KAAK,KAAA,UAU/B;AAmED;;;;;;;;;;;;GAYG;AACH,cAAM,aAAa;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,GAAG,CAAC;IACtB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,IAAI,EAAE,GAAG,CAAC;IAEV;;;;;;OAMG;gBACS,OAAO,GAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAmB;IAwBnG;;;;OAIG;IACH,SAAS;IAKT;;;;;;;OAOG;IACH,qBAAqB,IAAI,OAAO;IAkDhC;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,KAAA;IAYlB;;;OAGG;IACH,QAAQ;IAKR;;;;;OAKG;IACG,QAAQ,CAAC,SAAS,EAAE,GAAG;IAyB7B;;;;;;OAMG;IACH,YAAY,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG;IASrC;;;;;;;;OAQG;IACH,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAW;;;;;;;;;;IAc/F;;;;;;;;;OASG;IACG,eAAe,CAAC,MAAM,GAAE,GAAG,EAAO,EAAE,WAAW,GAAE,GAAU,EAAE,WAAW,GAAE,GAAU,EAAE,MAAM,GAAE,GAAU,EAAE,WAAW,GAAE,GAAU,EAAE,cAAc,GAAE,GAAU;IAmDnK;;;;OAIG;IACH,QAAQ,CAAC,WAAW,GAAE,OAAe;IAOrC;;;;OAIG;IACH,kBAAkB,CAAC,WAAW,GAAE,OAAe;IAU/C;;;;OAIG;IACH,mBAAmB,CAAC,WAAW,GAAE,OAAe;IAUhD;;;;OAIG;IACH,eAAe,CAAC,WAAW,GAAE,OAAe;IAa5C;;;;OAIG;IACH,cAAc,CAAC,WAAW,GAAE,OAAe;IAU3C;;;;;;OAMG;IACH,eAAe,CAAC,WAAW,GAAE,OAAe;IAa5C;;;;;OAKG;IACG,iBAAiB,CAAC,WAAW,EAAE,GAAG;IASxC;;;OAGG;IACG,SAAS;IAWf;;;;;OAKG;IACH,kBAAkB,CAAC,OAAO,GAAE,OAAO,GAAG;QAAE,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAO;IAoB3F;;;OAGG;IACG,yBAAyB,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAyB1D;;;;OAIG;IACG,sBAAsB,CAAC,WAAW,GAAE,MAAgB;IA2B1D;;;;;OAKG;IACH,gBAAgB,CAAC,WAAW,GAAE,OAAe;;;;;;;;;;;;;;;;IA+B7C;;;;;OAKG;IACH,eAAe,CAAC,KAAK,GAAE,GAAQ;;;;;;;;CA0BhC;;;;;AAED,kBAGE"}
|
|
@@ -163,6 +163,7 @@ function emptyData() {
|
|
|
163
163
|
assets: null,
|
|
164
164
|
debugInputs: null,
|
|
165
165
|
processedFills: {},
|
|
166
|
+
recentFillKeys: {},
|
|
166
167
|
createdAt: timestamp,
|
|
167
168
|
lastUpdated: timestamp
|
|
168
169
|
};
|
|
@@ -374,8 +375,9 @@ class AccountOrders {
|
|
|
374
375
|
* @param {number|null} boundaryIdx - Optional master boundary index for StrategyEngine
|
|
375
376
|
* @param {Object|null} assets - Optional asset metadata { assetA, assetB }
|
|
376
377
|
* @param {Object|null} debugInputs - Optional debug-only input snapshot
|
|
378
|
+
* @param {Object|null} recentFillKeys - Optional fill key dedup snapshot for crash recovery
|
|
377
379
|
*/
|
|
378
|
-
async storeMasterGrid(orders = [], btsFeesOwed = null, boundaryIdx = null, assets = null, debugInputs = null) {
|
|
380
|
+
async storeMasterGrid(orders = [], btsFeesOwed = null, boundaryIdx = null, assets = null, debugInputs = null, recentFillKeys = null) {
|
|
379
381
|
// Use AsyncLock to serialize read-modify-write operations
|
|
380
382
|
await this._persistenceLock.acquire(async () => {
|
|
381
383
|
// Reload from disk before writing to prevent race conditions
|
|
@@ -403,6 +405,13 @@ class AccountOrders {
|
|
|
403
405
|
if (!this.data.processedFills) {
|
|
404
406
|
this.data.processedFills = {};
|
|
405
407
|
}
|
|
408
|
+
// Persist recent fill keys for crash-durable dedup window
|
|
409
|
+
if (recentFillKeys) {
|
|
410
|
+
this.data.recentFillKeys = recentFillKeys;
|
|
411
|
+
}
|
|
412
|
+
else if (!this.data.recentFillKeys) {
|
|
413
|
+
this.data.recentFillKeys = {};
|
|
414
|
+
}
|
|
406
415
|
const timestamp = nowIso();
|
|
407
416
|
this.data.lastUpdated = timestamp;
|
|
408
417
|
if (this.data.meta)
|
|
@@ -421,6 +430,20 @@ class AccountOrders {
|
|
|
421
430
|
}
|
|
422
431
|
return (this.data && Array.isArray(this.data.grid)) ? this.data.grid : null;
|
|
423
432
|
}
|
|
433
|
+
/**
|
|
434
|
+
* Load the recently queued fill keys for crash-durable dedup.
|
|
435
|
+
* @param {boolean} forceReload - If true, reload from disk
|
|
436
|
+
* @returns {Object|null} Recent fill keys map or null if not found
|
|
437
|
+
*/
|
|
438
|
+
loadRecentFillKeys(forceReload = false) {
|
|
439
|
+
if (forceReload) {
|
|
440
|
+
this.data = this._loadData() || emptyData();
|
|
441
|
+
}
|
|
442
|
+
if (this.data && this.data.recentFillKeys) {
|
|
443
|
+
return this.data.recentFillKeys;
|
|
444
|
+
}
|
|
445
|
+
return null;
|
|
446
|
+
}
|
|
424
447
|
/**
|
|
425
448
|
* Load persisted asset metadata for this bot.
|
|
426
449
|
* @param {boolean} forceReload - If true, reload from disk
|