jcc_hyper_tool 0.1.4 → 0.1.5

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 (93) hide show
  1. package/README.md +43 -12
  2. package/dist/advisor/actionRunner.d.ts +29 -0
  3. package/dist/advisor/actionRunner.d.ts.map +1 -0
  4. package/dist/advisor/actionRunner.js +163 -0
  5. package/dist/advisor/actionRunner.js.map +1 -0
  6. package/dist/advisor/actionSchema.d.ts +417 -0
  7. package/dist/advisor/actionSchema.d.ts.map +1 -0
  8. package/dist/advisor/actionSchema.js +90 -0
  9. package/dist/advisor/actionSchema.js.map +1 -0
  10. package/dist/advisor/adviseEngine.d.ts +43 -0
  11. package/dist/advisor/adviseEngine.d.ts.map +1 -0
  12. package/dist/advisor/adviseEngine.js +91 -0
  13. package/dist/advisor/adviseEngine.js.map +1 -0
  14. package/dist/advisor/contextBuilder.d.ts +34 -0
  15. package/dist/advisor/contextBuilder.d.ts.map +1 -0
  16. package/dist/advisor/contextBuilder.js +134 -0
  17. package/dist/advisor/contextBuilder.js.map +1 -0
  18. package/dist/advisor/deepseekClient.d.ts +26 -0
  19. package/dist/advisor/deepseekClient.d.ts.map +1 -0
  20. package/dist/advisor/deepseekClient.js +96 -0
  21. package/dist/advisor/deepseekClient.js.map +1 -0
  22. package/dist/advisor/guards.d.ts +17 -0
  23. package/dist/advisor/guards.d.ts.map +1 -0
  24. package/dist/advisor/guards.js +71 -0
  25. package/dist/advisor/guards.js.map +1 -0
  26. package/dist/advisor/promptTemplate.d.ts +5 -0
  27. package/dist/advisor/promptTemplate.d.ts.map +1 -0
  28. package/dist/advisor/promptTemplate.js +78 -0
  29. package/dist/advisor/promptTemplate.js.map +1 -0
  30. package/dist/advisor/sessionLog.d.ts +41 -0
  31. package/dist/advisor/sessionLog.d.ts.map +1 -0
  32. package/dist/advisor/sessionLog.js +7 -0
  33. package/dist/advisor/sessionLog.js.map +1 -0
  34. package/dist/cli/advisorCli.d.ts +3 -0
  35. package/dist/cli/advisorCli.d.ts.map +1 -0
  36. package/dist/cli/advisorCli.js +354 -0
  37. package/dist/cli/advisorCli.js.map +1 -0
  38. package/dist/cli/index.js +4 -2
  39. package/dist/cli/index.js.map +1 -1
  40. package/dist/cli/strategyCli.js +1 -1
  41. package/dist/cli/tradingCli.d.ts.map +1 -1
  42. package/dist/cli/tradingCli.js +3 -1
  43. package/dist/cli/tradingCli.js.map +1 -1
  44. package/dist/core/cliBin.d.ts +8 -0
  45. package/dist/core/cliBin.d.ts.map +1 -0
  46. package/dist/core/cliBin.js +15 -0
  47. package/dist/core/cliBin.js.map +1 -0
  48. package/dist/core/errorFormat.d.ts +7 -0
  49. package/dist/core/errorFormat.d.ts.map +1 -0
  50. package/dist/core/errorFormat.js +59 -0
  51. package/dist/core/errorFormat.js.map +1 -0
  52. package/dist/core/errors.d.ts +2 -1
  53. package/dist/core/errors.d.ts.map +1 -1
  54. package/dist/core/errors.js +3 -1
  55. package/dist/core/errors.js.map +1 -1
  56. package/dist/core/hyperliquid/client.d.ts +3 -0
  57. package/dist/core/hyperliquid/client.d.ts.map +1 -1
  58. package/dist/core/hyperliquid/client.js +31 -21
  59. package/dist/core/hyperliquid/client.js.map +1 -1
  60. package/dist/core/hyperliquid/exchange.d.ts +3 -0
  61. package/dist/core/hyperliquid/exchange.d.ts.map +1 -1
  62. package/dist/core/hyperliquid/exchange.js +31 -21
  63. package/dist/core/hyperliquid/exchange.js.map +1 -1
  64. package/dist/core/hyperliquid/exchangeParse.d.ts +3 -0
  65. package/dist/core/hyperliquid/exchangeParse.d.ts.map +1 -1
  66. package/dist/core/hyperliquid/exchangeParse.js +62 -0
  67. package/dist/core/hyperliquid/exchangeParse.js.map +1 -1
  68. package/dist/core/hyperliquid/httpRequest.d.ts +36 -0
  69. package/dist/core/hyperliquid/httpRequest.d.ts.map +1 -0
  70. package/dist/core/hyperliquid/httpRequest.js +171 -0
  71. package/dist/core/hyperliquid/httpRequest.js.map +1 -0
  72. package/dist/core/state/gcTradeState.js +1 -1
  73. package/dist/core/state/gcTradeState.js.map +1 -1
  74. package/dist/core/state/profileStore.d.ts +6 -0
  75. package/dist/core/state/profileStore.d.ts.map +1 -0
  76. package/dist/core/state/profileStore.js +30 -0
  77. package/dist/core/state/profileStore.js.map +1 -0
  78. package/dist/core/state/runReconcile.d.ts.map +1 -1
  79. package/dist/core/state/runReconcile.js +40 -13
  80. package/dist/core/state/runReconcile.js.map +1 -1
  81. package/dist/core/state/schema.d.ts +188 -118
  82. package/dist/core/state/schema.d.ts.map +1 -1
  83. package/dist/core/state/schema.js +11 -0
  84. package/dist/core/state/schema.js.map +1 -1
  85. package/dist/core/state/statePaths.d.ts +1 -0
  86. package/dist/core/state/statePaths.d.ts.map +1 -1
  87. package/dist/core/state/statePaths.js +4 -0
  88. package/dist/core/state/statePaths.js.map +1 -1
  89. package/dist/core/state/store.js +1 -1
  90. package/dist/core/state/store.js.map +1 -1
  91. package/dist/daemon/index.js +3 -3
  92. package/dist/daemon/index.js.map +1 -1
  93. package/package.json +1 -1
@@ -43,14 +43,14 @@ declare const BracketIntentSchema: z.ZodObject<{
43
43
  entrySide: "buy" | "sell";
44
44
  entryLimitPx: number;
45
45
  entrySz: number;
46
- tif: "Gtc" | "Ioc" | "Alo";
46
+ tif: "Ioc" | "Gtc" | "Alo";
47
47
  tpTriggerPx: number;
48
48
  slTriggerPx: number;
49
49
  tpslIsMarket: boolean;
50
50
  protectionReduceOnly: boolean;
51
- phase: "cancelled" | "planned" | "entry_pending" | "entry_partial" | "entry_filled" | "protection_active" | "tp_filled" | "sl_filled" | "closed" | "expired" | "error";
52
- network?: string | undefined;
51
+ phase: "planned" | "entry_pending" | "entry_partial" | "entry_filled" | "protection_active" | "tp_filled" | "sl_filled" | "closed" | "cancelled" | "expired" | "error";
53
52
  dex?: string | undefined;
53
+ network?: string | undefined;
54
54
  entryReduceOnly?: boolean | undefined;
55
55
  tpslLimitPx?: number | undefined;
56
56
  entryOid?: number | undefined;
@@ -72,13 +72,13 @@ declare const BracketIntentSchema: z.ZodObject<{
72
72
  entrySide: "buy" | "sell";
73
73
  entryLimitPx: number;
74
74
  entrySz: number;
75
- tif: "Gtc" | "Ioc" | "Alo";
75
+ tif: "Ioc" | "Gtc" | "Alo";
76
76
  tpTriggerPx: number;
77
77
  slTriggerPx: number;
78
78
  tpslIsMarket: boolean;
79
- phase: "cancelled" | "planned" | "entry_pending" | "entry_partial" | "entry_filled" | "protection_active" | "tp_filled" | "sl_filled" | "closed" | "expired" | "error";
80
- network?: string | undefined;
79
+ phase: "planned" | "entry_pending" | "entry_partial" | "entry_filled" | "protection_active" | "tp_filled" | "sl_filled" | "closed" | "cancelled" | "expired" | "error";
81
80
  dex?: string | undefined;
81
+ network?: string | undefined;
82
82
  entryReduceOnly?: boolean | undefined;
83
83
  tpslLimitPx?: number | undefined;
84
84
  protectionReduceOnly?: boolean | undefined;
@@ -141,7 +141,7 @@ declare const GridIntentSchema: z.ZodObject<{
141
141
  index: number;
142
142
  px: number;
143
143
  isBuy: boolean;
144
- legPhase: "pending" | "open" | "partial" | "filled" | "cancelled";
144
+ legPhase: "cancelled" | "pending" | "open" | "partial" | "filled";
145
145
  oid?: number | undefined;
146
146
  lastSz?: number | undefined;
147
147
  lastOrigSz?: number | undefined;
@@ -153,7 +153,7 @@ declare const GridIntentSchema: z.ZodObject<{
153
153
  index: number;
154
154
  px: number;
155
155
  isBuy: boolean;
156
- legPhase: "pending" | "open" | "partial" | "filled" | "cancelled";
156
+ legPhase: "cancelled" | "pending" | "open" | "partial" | "filled";
157
157
  oid?: number | undefined;
158
158
  lastSz?: number | undefined;
159
159
  lastOrigSz?: number | undefined;
@@ -164,22 +164,22 @@ declare const GridIntentSchema: z.ZodObject<{
164
164
  }>, "many">;
165
165
  }, "strip", z.ZodTypeAny, {
166
166
  coin: string;
167
- reduceOnly: boolean;
168
167
  kind: "grid";
169
168
  id: string;
170
169
  createdAtMs: number;
171
170
  updatedAtMs: number;
172
- tif: "Gtc" | "Ioc" | "Alo";
171
+ tif: "Ioc" | "Gtc" | "Alo";
173
172
  lower: number;
174
173
  upper: number;
175
174
  grids: number;
176
175
  orderSz: number;
177
176
  bias: "symmetric" | "long" | "short";
177
+ reduceOnly: boolean;
178
178
  legs: {
179
179
  index: number;
180
180
  px: number;
181
181
  isBuy: boolean;
182
- legPhase: "pending" | "open" | "partial" | "filled" | "cancelled";
182
+ legPhase: "cancelled" | "pending" | "open" | "partial" | "filled";
183
183
  oid?: number | undefined;
184
184
  lastSz?: number | undefined;
185
185
  lastOrigSz?: number | undefined;
@@ -188,29 +188,29 @@ declare const GridIntentSchema: z.ZodObject<{
188
188
  fillPx: number;
189
189
  } | undefined;
190
190
  }[];
191
- network?: string | undefined;
192
191
  dex?: string | undefined;
192
+ network?: string | undefined;
193
193
  maxOrders?: number | undefined;
194
194
  replenishGapPx?: number | undefined;
195
195
  replenishDedupeKeys?: string[] | undefined;
196
196
  }, {
197
197
  coin: string;
198
- reduceOnly: boolean;
199
198
  kind: "grid";
200
199
  id: string;
201
200
  createdAtMs: number;
202
201
  updatedAtMs: number;
203
- tif: "Gtc" | "Ioc" | "Alo";
202
+ tif: "Ioc" | "Gtc" | "Alo";
204
203
  lower: number;
205
204
  upper: number;
206
205
  grids: number;
207
206
  orderSz: number;
208
207
  bias: "symmetric" | "long" | "short";
208
+ reduceOnly: boolean;
209
209
  legs: {
210
210
  index: number;
211
211
  px: number;
212
212
  isBuy: boolean;
213
- legPhase: "pending" | "open" | "partial" | "filled" | "cancelled";
213
+ legPhase: "cancelled" | "pending" | "open" | "partial" | "filled";
214
214
  oid?: number | undefined;
215
215
  lastSz?: number | undefined;
216
216
  lastOrigSz?: number | undefined;
@@ -219,8 +219,8 @@ declare const GridIntentSchema: z.ZodObject<{
219
219
  fillPx: number;
220
220
  } | undefined;
221
221
  }[];
222
- network?: string | undefined;
223
222
  dex?: string | undefined;
223
+ network?: string | undefined;
224
224
  maxOrders?: number | undefined;
225
225
  replenishGapPx?: number | undefined;
226
226
  replenishDedupeKeys?: string[] | undefined;
@@ -239,29 +239,29 @@ declare const SingleLimitIntentSchema: z.ZodObject<{
239
239
  reduceOnly: z.ZodBoolean;
240
240
  oid: z.ZodOptional<z.ZodNumber>;
241
241
  }, "strip", z.ZodTypeAny, {
242
- coin: string;
243
242
  sz: number;
244
- reduceOnly: boolean;
245
- limitPx: number;
243
+ coin: string;
246
244
  kind: "single_limit";
247
245
  id: string;
248
246
  createdAtMs: number;
249
247
  updatedAtMs: number;
250
248
  entrySide: "buy" | "sell";
251
- tif: "Gtc" | "Ioc" | "Alo";
249
+ tif: "Ioc" | "Gtc" | "Alo";
250
+ reduceOnly: boolean;
251
+ limitPx: number;
252
252
  dex?: string | undefined;
253
253
  oid?: number | undefined;
254
254
  }, {
255
- coin: string;
256
255
  sz: number;
257
- reduceOnly: boolean;
258
- limitPx: number;
256
+ coin: string;
259
257
  kind: "single_limit";
260
258
  id: string;
261
259
  createdAtMs: number;
262
260
  updatedAtMs: number;
263
261
  entrySide: "buy" | "sell";
264
- tif: "Gtc" | "Ioc" | "Alo";
262
+ tif: "Ioc" | "Gtc" | "Alo";
263
+ reduceOnly: boolean;
264
+ limitPx: number;
265
265
  dex?: string | undefined;
266
266
  oid?: number | undefined;
267
267
  }>;
@@ -281,30 +281,30 @@ declare const StandaloneTpslIntentSchema: z.ZodObject<{
281
281
  reduceOnly: z.ZodBoolean;
282
282
  oid: z.ZodOptional<z.ZodNumber>;
283
283
  }, "strip", z.ZodTypeAny, {
284
- coin: string;
285
284
  side: "buy" | "sell";
286
285
  sz: number;
287
- reduceOnly: boolean;
288
- triggerPx: number;
286
+ coin: string;
289
287
  kind: "standalone_tpsl";
290
288
  id: string;
291
289
  createdAtMs: number;
292
290
  updatedAtMs: number;
291
+ reduceOnly: boolean;
292
+ triggerPx: number;
293
293
  tpsl: "tp" | "sl";
294
294
  isMarket: boolean;
295
295
  dex?: string | undefined;
296
296
  oid?: number | undefined;
297
297
  limitPx?: number | undefined;
298
298
  }, {
299
- coin: string;
300
299
  side: "buy" | "sell";
301
300
  sz: number;
302
- reduceOnly: boolean;
303
- triggerPx: number;
301
+ coin: string;
304
302
  kind: "standalone_tpsl";
305
303
  id: string;
306
304
  createdAtMs: number;
307
305
  updatedAtMs: number;
306
+ reduceOnly: boolean;
307
+ triggerPx: number;
308
308
  tpsl: "tp" | "sl";
309
309
  isMarket: boolean;
310
310
  dex?: string | undefined;
@@ -355,14 +355,14 @@ export declare const IntentRecordSchema: z.ZodDiscriminatedUnion<"kind", [z.ZodO
355
355
  entrySide: "buy" | "sell";
356
356
  entryLimitPx: number;
357
357
  entrySz: number;
358
- tif: "Gtc" | "Ioc" | "Alo";
358
+ tif: "Ioc" | "Gtc" | "Alo";
359
359
  tpTriggerPx: number;
360
360
  slTriggerPx: number;
361
361
  tpslIsMarket: boolean;
362
362
  protectionReduceOnly: boolean;
363
- phase: "cancelled" | "planned" | "entry_pending" | "entry_partial" | "entry_filled" | "protection_active" | "tp_filled" | "sl_filled" | "closed" | "expired" | "error";
364
- network?: string | undefined;
363
+ phase: "planned" | "entry_pending" | "entry_partial" | "entry_filled" | "protection_active" | "tp_filled" | "sl_filled" | "closed" | "cancelled" | "expired" | "error";
365
364
  dex?: string | undefined;
365
+ network?: string | undefined;
366
366
  entryReduceOnly?: boolean | undefined;
367
367
  tpslLimitPx?: number | undefined;
368
368
  entryOid?: number | undefined;
@@ -384,13 +384,13 @@ export declare const IntentRecordSchema: z.ZodDiscriminatedUnion<"kind", [z.ZodO
384
384
  entrySide: "buy" | "sell";
385
385
  entryLimitPx: number;
386
386
  entrySz: number;
387
- tif: "Gtc" | "Ioc" | "Alo";
387
+ tif: "Ioc" | "Gtc" | "Alo";
388
388
  tpTriggerPx: number;
389
389
  slTriggerPx: number;
390
390
  tpslIsMarket: boolean;
391
- phase: "cancelled" | "planned" | "entry_pending" | "entry_partial" | "entry_filled" | "protection_active" | "tp_filled" | "sl_filled" | "closed" | "expired" | "error";
392
- network?: string | undefined;
391
+ phase: "planned" | "entry_pending" | "entry_partial" | "entry_filled" | "protection_active" | "tp_filled" | "sl_filled" | "closed" | "cancelled" | "expired" | "error";
393
392
  dex?: string | undefined;
393
+ network?: string | undefined;
394
394
  entryReduceOnly?: boolean | undefined;
395
395
  tpslLimitPx?: number | undefined;
396
396
  protectionReduceOnly?: boolean | undefined;
@@ -452,7 +452,7 @@ export declare const IntentRecordSchema: z.ZodDiscriminatedUnion<"kind", [z.ZodO
452
452
  index: number;
453
453
  px: number;
454
454
  isBuy: boolean;
455
- legPhase: "pending" | "open" | "partial" | "filled" | "cancelled";
455
+ legPhase: "cancelled" | "pending" | "open" | "partial" | "filled";
456
456
  oid?: number | undefined;
457
457
  lastSz?: number | undefined;
458
458
  lastOrigSz?: number | undefined;
@@ -464,7 +464,7 @@ export declare const IntentRecordSchema: z.ZodDiscriminatedUnion<"kind", [z.ZodO
464
464
  index: number;
465
465
  px: number;
466
466
  isBuy: boolean;
467
- legPhase: "pending" | "open" | "partial" | "filled" | "cancelled";
467
+ legPhase: "cancelled" | "pending" | "open" | "partial" | "filled";
468
468
  oid?: number | undefined;
469
469
  lastSz?: number | undefined;
470
470
  lastOrigSz?: number | undefined;
@@ -475,22 +475,22 @@ export declare const IntentRecordSchema: z.ZodDiscriminatedUnion<"kind", [z.ZodO
475
475
  }>, "many">;
476
476
  }, "strip", z.ZodTypeAny, {
477
477
  coin: string;
478
- reduceOnly: boolean;
479
478
  kind: "grid";
480
479
  id: string;
481
480
  createdAtMs: number;
482
481
  updatedAtMs: number;
483
- tif: "Gtc" | "Ioc" | "Alo";
482
+ tif: "Ioc" | "Gtc" | "Alo";
484
483
  lower: number;
485
484
  upper: number;
486
485
  grids: number;
487
486
  orderSz: number;
488
487
  bias: "symmetric" | "long" | "short";
488
+ reduceOnly: boolean;
489
489
  legs: {
490
490
  index: number;
491
491
  px: number;
492
492
  isBuy: boolean;
493
- legPhase: "pending" | "open" | "partial" | "filled" | "cancelled";
493
+ legPhase: "cancelled" | "pending" | "open" | "partial" | "filled";
494
494
  oid?: number | undefined;
495
495
  lastSz?: number | undefined;
496
496
  lastOrigSz?: number | undefined;
@@ -499,29 +499,29 @@ export declare const IntentRecordSchema: z.ZodDiscriminatedUnion<"kind", [z.ZodO
499
499
  fillPx: number;
500
500
  } | undefined;
501
501
  }[];
502
- network?: string | undefined;
503
502
  dex?: string | undefined;
503
+ network?: string | undefined;
504
504
  maxOrders?: number | undefined;
505
505
  replenishGapPx?: number | undefined;
506
506
  replenishDedupeKeys?: string[] | undefined;
507
507
  }, {
508
508
  coin: string;
509
- reduceOnly: boolean;
510
509
  kind: "grid";
511
510
  id: string;
512
511
  createdAtMs: number;
513
512
  updatedAtMs: number;
514
- tif: "Gtc" | "Ioc" | "Alo";
513
+ tif: "Ioc" | "Gtc" | "Alo";
515
514
  lower: number;
516
515
  upper: number;
517
516
  grids: number;
518
517
  orderSz: number;
519
518
  bias: "symmetric" | "long" | "short";
519
+ reduceOnly: boolean;
520
520
  legs: {
521
521
  index: number;
522
522
  px: number;
523
523
  isBuy: boolean;
524
- legPhase: "pending" | "open" | "partial" | "filled" | "cancelled";
524
+ legPhase: "cancelled" | "pending" | "open" | "partial" | "filled";
525
525
  oid?: number | undefined;
526
526
  lastSz?: number | undefined;
527
527
  lastOrigSz?: number | undefined;
@@ -530,8 +530,8 @@ export declare const IntentRecordSchema: z.ZodDiscriminatedUnion<"kind", [z.ZodO
530
530
  fillPx: number;
531
531
  } | undefined;
532
532
  }[];
533
- network?: string | undefined;
534
533
  dex?: string | undefined;
534
+ network?: string | undefined;
535
535
  maxOrders?: number | undefined;
536
536
  replenishGapPx?: number | undefined;
537
537
  replenishDedupeKeys?: string[] | undefined;
@@ -549,29 +549,29 @@ export declare const IntentRecordSchema: z.ZodDiscriminatedUnion<"kind", [z.ZodO
549
549
  reduceOnly: z.ZodBoolean;
550
550
  oid: z.ZodOptional<z.ZodNumber>;
551
551
  }, "strip", z.ZodTypeAny, {
552
- coin: string;
553
552
  sz: number;
554
- reduceOnly: boolean;
555
- limitPx: number;
553
+ coin: string;
556
554
  kind: "single_limit";
557
555
  id: string;
558
556
  createdAtMs: number;
559
557
  updatedAtMs: number;
560
558
  entrySide: "buy" | "sell";
561
- tif: "Gtc" | "Ioc" | "Alo";
559
+ tif: "Ioc" | "Gtc" | "Alo";
560
+ reduceOnly: boolean;
561
+ limitPx: number;
562
562
  dex?: string | undefined;
563
563
  oid?: number | undefined;
564
564
  }, {
565
- coin: string;
566
565
  sz: number;
567
- reduceOnly: boolean;
568
- limitPx: number;
566
+ coin: string;
569
567
  kind: "single_limit";
570
568
  id: string;
571
569
  createdAtMs: number;
572
570
  updatedAtMs: number;
573
571
  entrySide: "buy" | "sell";
574
- tif: "Gtc" | "Ioc" | "Alo";
572
+ tif: "Ioc" | "Gtc" | "Alo";
573
+ reduceOnly: boolean;
574
+ limitPx: number;
575
575
  dex?: string | undefined;
576
576
  oid?: number | undefined;
577
577
  }>, z.ZodObject<{
@@ -590,30 +590,30 @@ export declare const IntentRecordSchema: z.ZodDiscriminatedUnion<"kind", [z.ZodO
590
590
  reduceOnly: z.ZodBoolean;
591
591
  oid: z.ZodOptional<z.ZodNumber>;
592
592
  }, "strip", z.ZodTypeAny, {
593
- coin: string;
594
593
  side: "buy" | "sell";
595
594
  sz: number;
596
- reduceOnly: boolean;
597
- triggerPx: number;
595
+ coin: string;
598
596
  kind: "standalone_tpsl";
599
597
  id: string;
600
598
  createdAtMs: number;
601
599
  updatedAtMs: number;
600
+ reduceOnly: boolean;
601
+ triggerPx: number;
602
602
  tpsl: "tp" | "sl";
603
603
  isMarket: boolean;
604
604
  dex?: string | undefined;
605
605
  oid?: number | undefined;
606
606
  limitPx?: number | undefined;
607
607
  }, {
608
- coin: string;
609
608
  side: "buy" | "sell";
610
609
  sz: number;
611
- reduceOnly: boolean;
612
- triggerPx: number;
610
+ coin: string;
613
611
  kind: "standalone_tpsl";
614
612
  id: string;
615
613
  createdAtMs: number;
616
614
  updatedAtMs: number;
615
+ reduceOnly: boolean;
616
+ triggerPx: number;
617
617
  tpsl: "tp" | "sl";
618
618
  isMarket: boolean;
619
619
  dex?: string | undefined;
@@ -625,6 +625,33 @@ export type BracketIntentRecord = z.infer<typeof BracketIntentSchema>;
625
625
  export type GridIntentRecord = z.infer<typeof GridIntentSchema>;
626
626
  export type SingleLimitIntentRecord = z.infer<typeof SingleLimitIntentSchema>;
627
627
  export type StandaloneTpslIntentRecord = z.infer<typeof StandaloneTpslIntentSchema>;
628
+ /** Optional per-user trading preferences (advisor prompts, guards). Not touched by reconcile / cancel-open. */
629
+ export declare const UserProfileSchema: z.ZodObject<{
630
+ risk: z.ZodDefault<z.ZodEnum<["conservative", "balanced", "aggressive"]>>;
631
+ defaultMaxSz: z.ZodOptional<z.ZodNumber>;
632
+ maxSzByCoin: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
633
+ requireTpsl: z.ZodDefault<z.ZodBoolean>;
634
+ priceDeviationPctMax: z.ZodDefault<z.ZodNumber>;
635
+ tradingStyleNotes: z.ZodOptional<z.ZodString>;
636
+ updatedAtMs: z.ZodOptional<z.ZodNumber>;
637
+ }, "strip", z.ZodTypeAny, {
638
+ risk: "conservative" | "balanced" | "aggressive";
639
+ requireTpsl: boolean;
640
+ priceDeviationPctMax: number;
641
+ updatedAtMs?: number | undefined;
642
+ defaultMaxSz?: number | undefined;
643
+ maxSzByCoin?: Record<string, number> | undefined;
644
+ tradingStyleNotes?: string | undefined;
645
+ }, {
646
+ updatedAtMs?: number | undefined;
647
+ risk?: "conservative" | "balanced" | "aggressive" | undefined;
648
+ defaultMaxSz?: number | undefined;
649
+ maxSzByCoin?: Record<string, number> | undefined;
650
+ requireTpsl?: boolean | undefined;
651
+ priceDeviationPctMax?: number | undefined;
652
+ tradingStyleNotes?: string | undefined;
653
+ }>;
654
+ export type UserProfile = z.infer<typeof UserProfileSchema>;
628
655
  export declare const TradeStateFileSchema: z.ZodObject<{
629
656
  version: z.ZodLiteral<1>;
630
657
  updatedAtMs: z.ZodNumber;
@@ -672,14 +699,14 @@ export declare const TradeStateFileSchema: z.ZodObject<{
672
699
  entrySide: "buy" | "sell";
673
700
  entryLimitPx: number;
674
701
  entrySz: number;
675
- tif: "Gtc" | "Ioc" | "Alo";
702
+ tif: "Ioc" | "Gtc" | "Alo";
676
703
  tpTriggerPx: number;
677
704
  slTriggerPx: number;
678
705
  tpslIsMarket: boolean;
679
706
  protectionReduceOnly: boolean;
680
- phase: "cancelled" | "planned" | "entry_pending" | "entry_partial" | "entry_filled" | "protection_active" | "tp_filled" | "sl_filled" | "closed" | "expired" | "error";
681
- network?: string | undefined;
707
+ phase: "planned" | "entry_pending" | "entry_partial" | "entry_filled" | "protection_active" | "tp_filled" | "sl_filled" | "closed" | "cancelled" | "expired" | "error";
682
708
  dex?: string | undefined;
709
+ network?: string | undefined;
683
710
  entryReduceOnly?: boolean | undefined;
684
711
  tpslLimitPx?: number | undefined;
685
712
  entryOid?: number | undefined;
@@ -701,13 +728,13 @@ export declare const TradeStateFileSchema: z.ZodObject<{
701
728
  entrySide: "buy" | "sell";
702
729
  entryLimitPx: number;
703
730
  entrySz: number;
704
- tif: "Gtc" | "Ioc" | "Alo";
731
+ tif: "Ioc" | "Gtc" | "Alo";
705
732
  tpTriggerPx: number;
706
733
  slTriggerPx: number;
707
734
  tpslIsMarket: boolean;
708
- phase: "cancelled" | "planned" | "entry_pending" | "entry_partial" | "entry_filled" | "protection_active" | "tp_filled" | "sl_filled" | "closed" | "expired" | "error";
709
- network?: string | undefined;
735
+ phase: "planned" | "entry_pending" | "entry_partial" | "entry_filled" | "protection_active" | "tp_filled" | "sl_filled" | "closed" | "cancelled" | "expired" | "error";
710
736
  dex?: string | undefined;
737
+ network?: string | undefined;
711
738
  entryReduceOnly?: boolean | undefined;
712
739
  tpslLimitPx?: number | undefined;
713
740
  protectionReduceOnly?: boolean | undefined;
@@ -769,7 +796,7 @@ export declare const TradeStateFileSchema: z.ZodObject<{
769
796
  index: number;
770
797
  px: number;
771
798
  isBuy: boolean;
772
- legPhase: "pending" | "open" | "partial" | "filled" | "cancelled";
799
+ legPhase: "cancelled" | "pending" | "open" | "partial" | "filled";
773
800
  oid?: number | undefined;
774
801
  lastSz?: number | undefined;
775
802
  lastOrigSz?: number | undefined;
@@ -781,7 +808,7 @@ export declare const TradeStateFileSchema: z.ZodObject<{
781
808
  index: number;
782
809
  px: number;
783
810
  isBuy: boolean;
784
- legPhase: "pending" | "open" | "partial" | "filled" | "cancelled";
811
+ legPhase: "cancelled" | "pending" | "open" | "partial" | "filled";
785
812
  oid?: number | undefined;
786
813
  lastSz?: number | undefined;
787
814
  lastOrigSz?: number | undefined;
@@ -792,22 +819,22 @@ export declare const TradeStateFileSchema: z.ZodObject<{
792
819
  }>, "many">;
793
820
  }, "strip", z.ZodTypeAny, {
794
821
  coin: string;
795
- reduceOnly: boolean;
796
822
  kind: "grid";
797
823
  id: string;
798
824
  createdAtMs: number;
799
825
  updatedAtMs: number;
800
- tif: "Gtc" | "Ioc" | "Alo";
826
+ tif: "Ioc" | "Gtc" | "Alo";
801
827
  lower: number;
802
828
  upper: number;
803
829
  grids: number;
804
830
  orderSz: number;
805
831
  bias: "symmetric" | "long" | "short";
832
+ reduceOnly: boolean;
806
833
  legs: {
807
834
  index: number;
808
835
  px: number;
809
836
  isBuy: boolean;
810
- legPhase: "pending" | "open" | "partial" | "filled" | "cancelled";
837
+ legPhase: "cancelled" | "pending" | "open" | "partial" | "filled";
811
838
  oid?: number | undefined;
812
839
  lastSz?: number | undefined;
813
840
  lastOrigSz?: number | undefined;
@@ -816,29 +843,29 @@ export declare const TradeStateFileSchema: z.ZodObject<{
816
843
  fillPx: number;
817
844
  } | undefined;
818
845
  }[];
819
- network?: string | undefined;
820
846
  dex?: string | undefined;
847
+ network?: string | undefined;
821
848
  maxOrders?: number | undefined;
822
849
  replenishGapPx?: number | undefined;
823
850
  replenishDedupeKeys?: string[] | undefined;
824
851
  }, {
825
852
  coin: string;
826
- reduceOnly: boolean;
827
853
  kind: "grid";
828
854
  id: string;
829
855
  createdAtMs: number;
830
856
  updatedAtMs: number;
831
- tif: "Gtc" | "Ioc" | "Alo";
857
+ tif: "Ioc" | "Gtc" | "Alo";
832
858
  lower: number;
833
859
  upper: number;
834
860
  grids: number;
835
861
  orderSz: number;
836
862
  bias: "symmetric" | "long" | "short";
863
+ reduceOnly: boolean;
837
864
  legs: {
838
865
  index: number;
839
866
  px: number;
840
867
  isBuy: boolean;
841
- legPhase: "pending" | "open" | "partial" | "filled" | "cancelled";
868
+ legPhase: "cancelled" | "pending" | "open" | "partial" | "filled";
842
869
  oid?: number | undefined;
843
870
  lastSz?: number | undefined;
844
871
  lastOrigSz?: number | undefined;
@@ -847,8 +874,8 @@ export declare const TradeStateFileSchema: z.ZodObject<{
847
874
  fillPx: number;
848
875
  } | undefined;
849
876
  }[];
850
- network?: string | undefined;
851
877
  dex?: string | undefined;
878
+ network?: string | undefined;
852
879
  maxOrders?: number | undefined;
853
880
  replenishGapPx?: number | undefined;
854
881
  replenishDedupeKeys?: string[] | undefined;
@@ -866,29 +893,29 @@ export declare const TradeStateFileSchema: z.ZodObject<{
866
893
  reduceOnly: z.ZodBoolean;
867
894
  oid: z.ZodOptional<z.ZodNumber>;
868
895
  }, "strip", z.ZodTypeAny, {
869
- coin: string;
870
896
  sz: number;
871
- reduceOnly: boolean;
872
- limitPx: number;
897
+ coin: string;
873
898
  kind: "single_limit";
874
899
  id: string;
875
900
  createdAtMs: number;
876
901
  updatedAtMs: number;
877
902
  entrySide: "buy" | "sell";
878
- tif: "Gtc" | "Ioc" | "Alo";
903
+ tif: "Ioc" | "Gtc" | "Alo";
904
+ reduceOnly: boolean;
905
+ limitPx: number;
879
906
  dex?: string | undefined;
880
907
  oid?: number | undefined;
881
908
  }, {
882
- coin: string;
883
909
  sz: number;
884
- reduceOnly: boolean;
885
- limitPx: number;
910
+ coin: string;
886
911
  kind: "single_limit";
887
912
  id: string;
888
913
  createdAtMs: number;
889
914
  updatedAtMs: number;
890
915
  entrySide: "buy" | "sell";
891
- tif: "Gtc" | "Ioc" | "Alo";
916
+ tif: "Ioc" | "Gtc" | "Alo";
917
+ reduceOnly: boolean;
918
+ limitPx: number;
892
919
  dex?: string | undefined;
893
920
  oid?: number | undefined;
894
921
  }>, z.ZodObject<{
@@ -907,30 +934,30 @@ export declare const TradeStateFileSchema: z.ZodObject<{
907
934
  reduceOnly: z.ZodBoolean;
908
935
  oid: z.ZodOptional<z.ZodNumber>;
909
936
  }, "strip", z.ZodTypeAny, {
910
- coin: string;
911
937
  side: "buy" | "sell";
912
938
  sz: number;
913
- reduceOnly: boolean;
914
- triggerPx: number;
939
+ coin: string;
915
940
  kind: "standalone_tpsl";
916
941
  id: string;
917
942
  createdAtMs: number;
918
943
  updatedAtMs: number;
944
+ reduceOnly: boolean;
945
+ triggerPx: number;
919
946
  tpsl: "tp" | "sl";
920
947
  isMarket: boolean;
921
948
  dex?: string | undefined;
922
949
  oid?: number | undefined;
923
950
  limitPx?: number | undefined;
924
951
  }, {
925
- coin: string;
926
952
  side: "buy" | "sell";
927
953
  sz: number;
928
- reduceOnly: boolean;
929
- triggerPx: number;
954
+ coin: string;
930
955
  kind: "standalone_tpsl";
931
956
  id: string;
932
957
  createdAtMs: number;
933
958
  updatedAtMs: number;
959
+ reduceOnly: boolean;
960
+ triggerPx: number;
934
961
  tpsl: "tp" | "sl";
935
962
  isMarket: boolean;
936
963
  dex?: string | undefined;
@@ -956,6 +983,31 @@ export declare const TradeStateFileSchema: z.ZodObject<{
956
983
  message?: string | undefined;
957
984
  data?: Record<string, unknown> | undefined;
958
985
  }>, "many">;
986
+ userProfile: z.ZodOptional<z.ZodObject<{
987
+ risk: z.ZodDefault<z.ZodEnum<["conservative", "balanced", "aggressive"]>>;
988
+ defaultMaxSz: z.ZodOptional<z.ZodNumber>;
989
+ maxSzByCoin: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
990
+ requireTpsl: z.ZodDefault<z.ZodBoolean>;
991
+ priceDeviationPctMax: z.ZodDefault<z.ZodNumber>;
992
+ tradingStyleNotes: z.ZodOptional<z.ZodString>;
993
+ updatedAtMs: z.ZodOptional<z.ZodNumber>;
994
+ }, "strip", z.ZodTypeAny, {
995
+ risk: "conservative" | "balanced" | "aggressive";
996
+ requireTpsl: boolean;
997
+ priceDeviationPctMax: number;
998
+ updatedAtMs?: number | undefined;
999
+ defaultMaxSz?: number | undefined;
1000
+ maxSzByCoin?: Record<string, number> | undefined;
1001
+ tradingStyleNotes?: string | undefined;
1002
+ }, {
1003
+ updatedAtMs?: number | undefined;
1004
+ risk?: "conservative" | "balanced" | "aggressive" | undefined;
1005
+ defaultMaxSz?: number | undefined;
1006
+ maxSzByCoin?: Record<string, number> | undefined;
1007
+ requireTpsl?: boolean | undefined;
1008
+ priceDeviationPctMax?: number | undefined;
1009
+ tradingStyleNotes?: string | undefined;
1010
+ }>>;
959
1011
  }, "strip", z.ZodTypeAny, {
960
1012
  updatedAtMs: number;
961
1013
  version: 1;
@@ -968,14 +1020,14 @@ export declare const TradeStateFileSchema: z.ZodObject<{
968
1020
  entrySide: "buy" | "sell";
969
1021
  entryLimitPx: number;
970
1022
  entrySz: number;
971
- tif: "Gtc" | "Ioc" | "Alo";
1023
+ tif: "Ioc" | "Gtc" | "Alo";
972
1024
  tpTriggerPx: number;
973
1025
  slTriggerPx: number;
974
1026
  tpslIsMarket: boolean;
975
1027
  protectionReduceOnly: boolean;
976
- phase: "cancelled" | "planned" | "entry_pending" | "entry_partial" | "entry_filled" | "protection_active" | "tp_filled" | "sl_filled" | "closed" | "expired" | "error";
977
- network?: string | undefined;
1028
+ phase: "planned" | "entry_pending" | "entry_partial" | "entry_filled" | "protection_active" | "tp_filled" | "sl_filled" | "closed" | "cancelled" | "expired" | "error";
978
1029
  dex?: string | undefined;
1030
+ network?: string | undefined;
979
1031
  entryReduceOnly?: boolean | undefined;
980
1032
  tpslLimitPx?: number | undefined;
981
1033
  entryOid?: number | undefined;
@@ -990,22 +1042,22 @@ export declare const TradeStateFileSchema: z.ZodObject<{
990
1042
  dedupeKeys?: string[] | undefined;
991
1043
  } | {
992
1044
  coin: string;
993
- reduceOnly: boolean;
994
1045
  kind: "grid";
995
1046
  id: string;
996
1047
  createdAtMs: number;
997
1048
  updatedAtMs: number;
998
- tif: "Gtc" | "Ioc" | "Alo";
1049
+ tif: "Ioc" | "Gtc" | "Alo";
999
1050
  lower: number;
1000
1051
  upper: number;
1001
1052
  grids: number;
1002
1053
  orderSz: number;
1003
1054
  bias: "symmetric" | "long" | "short";
1055
+ reduceOnly: boolean;
1004
1056
  legs: {
1005
1057
  index: number;
1006
1058
  px: number;
1007
1059
  isBuy: boolean;
1008
- legPhase: "pending" | "open" | "partial" | "filled" | "cancelled";
1060
+ legPhase: "cancelled" | "pending" | "open" | "partial" | "filled";
1009
1061
  oid?: number | undefined;
1010
1062
  lastSz?: number | undefined;
1011
1063
  lastOrigSz?: number | undefined;
@@ -1014,34 +1066,34 @@ export declare const TradeStateFileSchema: z.ZodObject<{
1014
1066
  fillPx: number;
1015
1067
  } | undefined;
1016
1068
  }[];
1017
- network?: string | undefined;
1018
1069
  dex?: string | undefined;
1070
+ network?: string | undefined;
1019
1071
  maxOrders?: number | undefined;
1020
1072
  replenishGapPx?: number | undefined;
1021
1073
  replenishDedupeKeys?: string[] | undefined;
1022
1074
  } | {
1023
- coin: string;
1024
1075
  sz: number;
1025
- reduceOnly: boolean;
1026
- limitPx: number;
1076
+ coin: string;
1027
1077
  kind: "single_limit";
1028
1078
  id: string;
1029
1079
  createdAtMs: number;
1030
1080
  updatedAtMs: number;
1031
1081
  entrySide: "buy" | "sell";
1032
- tif: "Gtc" | "Ioc" | "Alo";
1082
+ tif: "Ioc" | "Gtc" | "Alo";
1083
+ reduceOnly: boolean;
1084
+ limitPx: number;
1033
1085
  dex?: string | undefined;
1034
1086
  oid?: number | undefined;
1035
1087
  } | {
1036
- coin: string;
1037
1088
  side: "buy" | "sell";
1038
1089
  sz: number;
1039
- reduceOnly: boolean;
1040
- triggerPx: number;
1090
+ coin: string;
1041
1091
  kind: "standalone_tpsl";
1042
1092
  id: string;
1043
1093
  createdAtMs: number;
1044
1094
  updatedAtMs: number;
1095
+ reduceOnly: boolean;
1096
+ triggerPx: number;
1045
1097
  tpsl: "tp" | "sl";
1046
1098
  isMarket: boolean;
1047
1099
  dex?: string | undefined;
@@ -1055,6 +1107,15 @@ export declare const TradeStateFileSchema: z.ZodObject<{
1055
1107
  message?: string | undefined;
1056
1108
  data?: Record<string, unknown> | undefined;
1057
1109
  }[];
1110
+ userProfile?: {
1111
+ risk: "conservative" | "balanced" | "aggressive";
1112
+ requireTpsl: boolean;
1113
+ priceDeviationPctMax: number;
1114
+ updatedAtMs?: number | undefined;
1115
+ defaultMaxSz?: number | undefined;
1116
+ maxSzByCoin?: Record<string, number> | undefined;
1117
+ tradingStyleNotes?: string | undefined;
1118
+ } | undefined;
1058
1119
  }, {
1059
1120
  updatedAtMs: number;
1060
1121
  version: 1;
@@ -1067,13 +1128,13 @@ export declare const TradeStateFileSchema: z.ZodObject<{
1067
1128
  entrySide: "buy" | "sell";
1068
1129
  entryLimitPx: number;
1069
1130
  entrySz: number;
1070
- tif: "Gtc" | "Ioc" | "Alo";
1131
+ tif: "Ioc" | "Gtc" | "Alo";
1071
1132
  tpTriggerPx: number;
1072
1133
  slTriggerPx: number;
1073
1134
  tpslIsMarket: boolean;
1074
- phase: "cancelled" | "planned" | "entry_pending" | "entry_partial" | "entry_filled" | "protection_active" | "tp_filled" | "sl_filled" | "closed" | "expired" | "error";
1075
- network?: string | undefined;
1135
+ phase: "planned" | "entry_pending" | "entry_partial" | "entry_filled" | "protection_active" | "tp_filled" | "sl_filled" | "closed" | "cancelled" | "expired" | "error";
1076
1136
  dex?: string | undefined;
1137
+ network?: string | undefined;
1077
1138
  entryReduceOnly?: boolean | undefined;
1078
1139
  tpslLimitPx?: number | undefined;
1079
1140
  protectionReduceOnly?: boolean | undefined;
@@ -1089,22 +1150,22 @@ export declare const TradeStateFileSchema: z.ZodObject<{
1089
1150
  dedupeKeys?: string[] | undefined;
1090
1151
  } | {
1091
1152
  coin: string;
1092
- reduceOnly: boolean;
1093
1153
  kind: "grid";
1094
1154
  id: string;
1095
1155
  createdAtMs: number;
1096
1156
  updatedAtMs: number;
1097
- tif: "Gtc" | "Ioc" | "Alo";
1157
+ tif: "Ioc" | "Gtc" | "Alo";
1098
1158
  lower: number;
1099
1159
  upper: number;
1100
1160
  grids: number;
1101
1161
  orderSz: number;
1102
1162
  bias: "symmetric" | "long" | "short";
1163
+ reduceOnly: boolean;
1103
1164
  legs: {
1104
1165
  index: number;
1105
1166
  px: number;
1106
1167
  isBuy: boolean;
1107
- legPhase: "pending" | "open" | "partial" | "filled" | "cancelled";
1168
+ legPhase: "cancelled" | "pending" | "open" | "partial" | "filled";
1108
1169
  oid?: number | undefined;
1109
1170
  lastSz?: number | undefined;
1110
1171
  lastOrigSz?: number | undefined;
@@ -1113,34 +1174,34 @@ export declare const TradeStateFileSchema: z.ZodObject<{
1113
1174
  fillPx: number;
1114
1175
  } | undefined;
1115
1176
  }[];
1116
- network?: string | undefined;
1117
1177
  dex?: string | undefined;
1178
+ network?: string | undefined;
1118
1179
  maxOrders?: number | undefined;
1119
1180
  replenishGapPx?: number | undefined;
1120
1181
  replenishDedupeKeys?: string[] | undefined;
1121
1182
  } | {
1122
- coin: string;
1123
1183
  sz: number;
1124
- reduceOnly: boolean;
1125
- limitPx: number;
1184
+ coin: string;
1126
1185
  kind: "single_limit";
1127
1186
  id: string;
1128
1187
  createdAtMs: number;
1129
1188
  updatedAtMs: number;
1130
1189
  entrySide: "buy" | "sell";
1131
- tif: "Gtc" | "Ioc" | "Alo";
1190
+ tif: "Ioc" | "Gtc" | "Alo";
1191
+ reduceOnly: boolean;
1192
+ limitPx: number;
1132
1193
  dex?: string | undefined;
1133
1194
  oid?: number | undefined;
1134
1195
  } | {
1135
- coin: string;
1136
1196
  side: "buy" | "sell";
1137
1197
  sz: number;
1138
- reduceOnly: boolean;
1139
- triggerPx: number;
1198
+ coin: string;
1140
1199
  kind: "standalone_tpsl";
1141
1200
  id: string;
1142
1201
  createdAtMs: number;
1143
1202
  updatedAtMs: number;
1203
+ reduceOnly: boolean;
1204
+ triggerPx: number;
1144
1205
  tpsl: "tp" | "sl";
1145
1206
  isMarket: boolean;
1146
1207
  dex?: string | undefined;
@@ -1154,6 +1215,15 @@ export declare const TradeStateFileSchema: z.ZodObject<{
1154
1215
  message?: string | undefined;
1155
1216
  data?: Record<string, unknown> | undefined;
1156
1217
  }[];
1218
+ userProfile?: {
1219
+ updatedAtMs?: number | undefined;
1220
+ risk?: "conservative" | "balanced" | "aggressive" | undefined;
1221
+ defaultMaxSz?: number | undefined;
1222
+ maxSzByCoin?: Record<string, number> | undefined;
1223
+ requireTpsl?: boolean | undefined;
1224
+ priceDeviationPctMax?: number | undefined;
1225
+ tradingStyleNotes?: string | undefined;
1226
+ } | undefined;
1157
1227
  }>;
1158
1228
  export type TradeStateFile = z.infer<typeof TradeStateFileSchema>;
1159
1229
  export declare function createEmptyTradeState(nowMs: number): TradeStateFile;