@hoox-sh/hoox-shared 1.3.0 → 1.4.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 (55) hide show
  1. package/dist/agent-config-fields.js +2 -0
  2. package/dist/d1/index.js +4 -2
  3. package/dist/d1/repository.js +4 -2
  4. package/dist/errors.d.ts.map +1 -1
  5. package/dist/errors.js +4 -2
  6. package/dist/health.js +4 -2
  7. package/dist/index.d.ts +3 -3
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +209 -80
  10. package/dist/kill-switch.js +2 -0
  11. package/dist/kvKeys.d.ts +3 -0
  12. package/dist/kvKeys.d.ts.map +1 -1
  13. package/dist/kvKeys.js +3 -0
  14. package/dist/kvUtils.d.ts +34 -1
  15. package/dist/kvUtils.d.ts.map +1 -1
  16. package/dist/kvUtils.js +56 -3
  17. package/dist/middleware/auth.d.ts +6 -3
  18. package/dist/middleware/auth.d.ts.map +1 -1
  19. package/dist/middleware/auth.js +19 -5
  20. package/dist/middleware/index.d.ts +3 -2
  21. package/dist/middleware/index.d.ts.map +1 -1
  22. package/dist/middleware/index.js +88 -8
  23. package/dist/middleware/logger.js +4 -2
  24. package/dist/middleware/validate.d.ts +16 -0
  25. package/dist/middleware/validate.d.ts.map +1 -1
  26. package/dist/middleware/validate.js +37 -1
  27. package/dist/middleware/wait-until.d.ts +32 -0
  28. package/dist/middleware/wait-until.d.ts.map +1 -0
  29. package/dist/middleware/wait-until.js +46 -0
  30. package/dist/queue-handler.d.ts +6 -0
  31. package/dist/queue-handler.d.ts.map +1 -1
  32. package/dist/queue-handler.js +51 -20
  33. package/dist/router.d.ts.map +1 -1
  34. package/dist/router.js +12 -2
  35. package/dist/schemas/index.d.ts +2 -1
  36. package/dist/schemas/index.d.ts.map +1 -1
  37. package/dist/schemas/index.js +58 -13
  38. package/dist/schemas/registry.d.ts +13 -0
  39. package/dist/schemas/registry.d.ts.map +1 -1
  40. package/dist/schemas/registry.js +55 -12
  41. package/dist/schemas/types.d.ts +5 -0
  42. package/dist/schemas/types.d.ts.map +1 -1
  43. package/dist/schemas/validators.d.ts.map +1 -1
  44. package/dist/schemas/validators.js +3 -1
  45. package/dist/service-bindings.js +18 -5
  46. package/dist/stores/service-store.js +1 -1
  47. package/dist/types.d.ts +22 -4
  48. package/dist/types.d.ts.map +1 -1
  49. package/dist/types.js +8 -4
  50. package/dist/wizard/engine.d.ts.map +1 -1
  51. package/dist/wizard/engine.js +18 -35
  52. package/dist/wizard/index.js +18 -35
  53. package/dist/wizard/presets.d.ts.map +1 -1
  54. package/dist/wizard/presets.js +6 -32
  55. package/package.json +1 -1
@@ -317,7 +317,7 @@ function getBackoffDelay(retryCount) {
317
317
  if (retryCount <= 0)
318
318
  return 0;
319
319
  const index = Math.min(retryCount - 1, BACKOFF_SEQUENCE.length - 1);
320
- return BACKOFF_SEQUENCE[index];
320
+ return BACKOFF_SEQUENCE[index] ?? 0;
321
321
  }
322
322
  var useServiceStore = create()(immer((set, get) => ({
323
323
  ...initialState,
package/dist/types.d.ts CHANGED
@@ -9,6 +9,9 @@ export declare const TradeActionSchema: z.ZodEnum<{
9
9
  CLOSE_LONG: "CLOSE_LONG";
10
10
  CLOSE_SHORT: "CLOSE_SHORT";
11
11
  }>;
12
+ /** Hard caps aligned with major CEX max leverage / sane notional guards. */
13
+ export declare const MAX_WEBHOOK_LEVERAGE = 125;
14
+ export declare const MAX_WEBHOOK_QUANTITY = 1000000;
12
15
  export declare const WebhookPayloadSchema: z.ZodObject<{
13
16
  exchange: z.ZodString;
14
17
  action: z.ZodEnum<{
@@ -151,7 +154,15 @@ export interface WorkerConfigManifestLite {
151
154
  new_sqlite_classes?: string[];
152
155
  }[];
153
156
  }
157
+ /** Per-service result from agent-worker `POST /agent/housekeeping`. */
154
158
  export interface HousekeepingCheck {
159
+ service: string;
160
+ /** "ok" | "error" | "skipped" (and any future statuses). */
161
+ status: string;
162
+ detail: unknown;
163
+ }
164
+ /** @deprecated Prefer HousekeepingCheck; kept for older issue-list payloads. */
165
+ export interface HousekeepingIssue {
155
166
  worker: string;
156
167
  type: "error" | "warning" | "info";
157
168
  message: string;
@@ -161,12 +172,19 @@ export interface HousekeepingSummary {
161
172
  warnings: number;
162
173
  info: number;
163
174
  }
175
+ /**
176
+ * Housekeeping response from agent-worker.
177
+ * Current shape uses `checks`; `issues`/`summary`/worker counts are legacy.
178
+ */
164
179
  export interface HousekeepingPayload {
165
180
  timestamp: string;
166
- totalWorkers: number;
167
- checkedWorkers: number;
168
- issues: HousekeepingCheck[];
169
- summary: HousekeepingSummary;
181
+ checks?: HousekeepingCheck[];
182
+ reconcile?: unknown;
183
+ /** @deprecated Legacy issue-list shape */
184
+ issues?: HousekeepingIssue[];
185
+ totalWorkers?: number;
186
+ checkedWorkers?: number;
187
+ summary?: HousekeepingSummary;
170
188
  }
171
189
  export interface SettingsPayload {
172
190
  worker: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,iBAAiB;;;;;EAK5B,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;kBAetB,CAAC;AAEZ,6EAA6E;AAC7E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;kBAkBzB,CAAC;AAEZ,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;kBAcnB,CAAC;AAEZ,eAAO,MAAM,cAAc;;;;;;;;;;;;;;kBAWhB,CAAC;AAEZ,eAAO,MAAM,aAAa;;;;;kBAOf,CAAC;AAIZ,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACnC,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,EAAE,CAAC,CAAC;CACT;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,KAAK,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,kBAAkB,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC;AAEtE,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACjD,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAClC,YAAY,CAAC,EAAE,eAAe,EAAE,CAAC;IACjC,aAAa,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,yBAAyB,EAAE,CAAA;KAAE,CAAC;IAC3D,qBAAqB,CAAC,EAAE,yBAAyB,EAAE,CAAC;IACpD,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,eAAe,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,CAAA;SAAE,EAAE,CAAA;KAAE,CAAC;IACxE,UAAU,CAAC,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,EAAE,CAAC;CAC/D;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACnC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,OAAO,EAAE,mBAAmB,CAAC;CAC9B;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;CAClC;AAID;;;;;;;GAOG;AACH,MAAM,WAAW,GAAG;IAClB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,yDAAyD;IACzD,SAAS,CAAC,EAAE,WAAW,CAAC;IACxB,sDAAsD;IACtD,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,OAAO;IACtB,sDAAsD;IACtD,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,8CAA8C;IAC9C,SAAS,CAAC,EAAE,WAAW,CAAC;CACzB;AAED,MAAM,MAAM,MAAM,CAAC,CAAC,IAAI;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,GAAG;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAI9E,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,YAAY,EAAE,CAAC;CAC5B;AAID;;;GAGG;AACH,MAAM,WAAW,kBAAkB,CAAC,CAAC,GAAG,OAAO;IAC7C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,CAAC,CAAC;CACZ;AAMD,0CAA0C;AAC1C,MAAM,MAAM,MAAM,GACd,WAAW,GACX,SAAS,GACT,eAAe,GACf,eAAe,GACf,aAAa,GACb,iBAAiB,GACjB,eAAe,GACf,cAAc,GACd,UAAU,GACV,aAAa,GACb,WAAW,GACX,gBAAgB,GAChB,UAAU,GACV,SAAS,GACT,eAAe,GACf,iBAAiB,CAAC;AAStB;;;;;;GAMG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB,CAAC,CAAC,GAAG,OAAO;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,sCAAsC;AACtC,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;CACvB;AAID,MAAM,MAAM,YAAY,GAAG,aAAa,GAAG,UAAU,GAAG,MAAM,CAAC;AAE/D;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,YAAY,CAAC;IACrB,wBAAwB;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,mCAAmC;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,yBAAyB;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,0BAA0B;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,yCAAyC;IACzC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,yDAAyD;IACzD,SAAS,EAAE,MAAM,CAAC;IAClB,4BAA4B;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sCAAsC;IACtC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAID,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,MAAM,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,mCAAmC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAID,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,EAAE,EAAE,MAAM,CAAC;IACX,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,aAAa,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,gCAAgC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,0BAA0B;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAID,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAE3D;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,QAAQ,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,mCAAmC;IACnC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAID;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,yCAAyC;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,oCAAoC;IACpC,aAAa,EAAE,MAAM,CAAC;IACtB,uBAAuB;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,sCAAsC;IACtC,gBAAgB,EAAE,MAAM,CAAC;IACzB,kCAAkC;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,0CAA0C;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,kCAAkC;IAClC,WAAW,EAAE,MAAM,CAAC;CACrB;AAID,iEAAiE;AACjE,MAAM,MAAM,gBAAgB,GACxB,WAAW,GACX,SAAS,GACT,SAAS,GACT,cAAc,CAAC;AAInB,iCAAiC;AACjC,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,QAAQ,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wCAAwC;AACxC,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;CACjB;AAID;;;;;;GAMG;AACH,MAAM,MAAM,YAAY;AACtB,uEAAuE;AACrE,kBAAkB;AACpB,mDAAmD;GACjD,SAAS;AACX,qEAAqE;GACnE,SAAS;AACX,oDAAoD;GAClD,eAAe;AACjB,iEAAiE;GAC/D,aAAa,CAAC;AAElB;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe;IAC9B,iFAAiF;IACjF,OAAO,EAAE,MAAM,CAAC;IAChB,4EAA4E;IAC5E,QAAQ,EAAE,MAAM,CAAC;IACjB,iFAAiF;IACjF,MAAM,EAAE,MAAM,CAAC;IACf,gFAAgF;IAChF,MAAM,EAAE,MAAM,CAAC;IACf,mEAAmE;IACnE,SAAS,EAAE,YAAY,CAAC;IACxB,6DAA6D;IAC7D,SAAS,EAAE,MAAM,CAAC;IAClB,kFAAkF;IAClF,QAAQ,EAAE,MAAM,CAAC;CAClB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js CHANGED
@@ -23,14 +23,16 @@ var TradeActionSchema = z.enum([
23
23
  "CLOSE_LONG",
24
24
  "CLOSE_SHORT"
25
25
  ]);
26
+ var MAX_WEBHOOK_LEVERAGE = 125;
27
+ var MAX_WEBHOOK_QUANTITY = 1e6;
26
28
  var WebhookPayloadSchema = z.object({
27
29
  exchange: z.string().min(1),
28
30
  action: TradeActionSchema,
29
31
  symbol: z.string().min(1).max(20),
30
- quantity: z.number().positive().finite(),
32
+ quantity: z.number().positive().finite().max(MAX_WEBHOOK_QUANTITY),
31
33
  price: z.number().positive().finite().optional(),
32
34
  orderType: z.string().optional(),
33
- leverage: z.number().int().positive().optional(),
35
+ leverage: z.number().int().positive().max(MAX_WEBHOOK_LEVERAGE).optional(),
34
36
  test: z.boolean().optional()
35
37
  }).strict();
36
38
  var TradeQueueMessageSchema = z.object({
@@ -38,9 +40,9 @@ var TradeQueueMessageSchema = z.object({
38
40
  exchange: z.string().min(1).max(64),
39
41
  action: TradeActionSchema,
40
42
  symbol: z.string().min(1).max(32),
41
- quantity: z.number().positive().finite(),
43
+ quantity: z.number().positive().finite().max(MAX_WEBHOOK_QUANTITY),
42
44
  price: z.number().positive().finite().optional(),
43
- leverage: z.number().int().positive().max(125).optional(),
45
+ leverage: z.number().int().positive().max(MAX_WEBHOOK_LEVERAGE).optional(),
44
46
  test: z.boolean().optional(),
45
47
  idempotencyKey: z.string().min(1).max(512).optional(),
46
48
  queuedAt: z.string().min(1).max(64)
@@ -80,5 +82,7 @@ export {
80
82
  TradeQueueMessageSchema,
81
83
  TradeActionSchema,
82
84
  PositionSchema,
85
+ MAX_WEBHOOK_QUANTITY,
86
+ MAX_WEBHOOK_LEVERAGE,
83
87
  BalanceSchema
84
88
  };
@@ -1 +1 @@
1
- {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/wizard/engine.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;GAKG;AACH,OAAO,KAAK,EACV,MAAM,EACN,cAAc,EACd,WAAW,EACX,iBAAiB,EAEjB,gBAAgB,EAGjB,MAAM,SAAS,CAAC;AAiKjB,qBAAa,YAAY;IACvB,OAAO,CAAC,KAAK,CAAc;gBAEf,YAAY,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC;IAI/C,uCAAuC;IACvC,QAAQ,IAAI,WAAW;IAIvB,uCAAuC;IACvC,cAAc,IAAI,cAAc;IAIhC,sCAAsC;IACtC,iBAAiB,IAAI,MAAM,EAAE;IAI7B,iFAAiF;IACjF,UAAU,IAAI,OAAO;IAKrB,gEAAgE;IAChE,SAAS,IAAI,OAAO;IAIpB;;;OAGG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,EAAE;IA0BjD,0CAA0C;IAC1C,MAAM,IAAI,IAAI;IAgBd,qCAAqC;IACrC,KAAK,IAAI,IAAI;IAIb;;;OAGG;IACH,WAAW,IAAI,iBAAiB;IA+DhC;;;OAGG;IACH,mBAAmB,IAAI,gBAAgB;IAwCvC,OAAO,CAAC,UAAU;CA4DnB"}
1
+ {"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../src/wizard/engine.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;GAKG;AACH,OAAO,KAAK,EACV,MAAM,EACN,cAAc,EACd,WAAW,EACX,iBAAiB,EAEjB,gBAAgB,EAGjB,MAAM,SAAS,CAAC;AAiKjB,qBAAa,YAAY;IACvB,OAAO,CAAC,KAAK,CAAc;gBAEf,YAAY,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC;IAI/C,uCAAuC;IACvC,QAAQ,IAAI,WAAW;IAIvB,uCAAuC;IACvC,cAAc,IAAI,cAAc;IAQhC,sCAAsC;IACtC,iBAAiB,IAAI,MAAM,EAAE;IAI7B,iFAAiF;IACjF,UAAU,IAAI,OAAO;IAKrB,gEAAgE;IAChE,SAAS,IAAI,OAAO;IAIpB;;;OAGG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,EAAE;IA6BjD,0CAA0C;IAC1C,MAAM,IAAI,IAAI;IAiBd,qCAAqC;IACrC,KAAK,IAAI,IAAI;IAIb;;;OAGG;IACH,WAAW,IAAI,iBAAiB;IA+DhC;;;OAGG;IACH,mBAAmB,IAAI,gBAAgB;IAwCvC,OAAO,CAAC,UAAU;CA4DnB"}
@@ -35,7 +35,7 @@ var PRESETS = [
35
35
  "analytics-worker",
36
36
  "telegram-worker"
37
37
  ],
38
- integrations: ["binance", "telegram"]
38
+ integrations: ["exchange", "telegram"]
39
39
  },
40
40
  {
41
41
  name: "full",
@@ -52,15 +52,7 @@ var PRESETS = [
52
52
  "web3-wallet-worker",
53
53
  "pyne-worker"
54
54
  ],
55
- integrations: [
56
- "binance",
57
- "bybit",
58
- "mexc",
59
- "telegram",
60
- "openai",
61
- "wallet",
62
- "pyne"
63
- ]
55
+ integrations: ["exchange", "telegram", "openai", "wallet", "pyne"]
64
56
  }
65
57
  ];
66
58
  var WORKER_DEPENDENCIES = {
@@ -92,30 +84,12 @@ function resolveDependencies(selected) {
92
84
  }
93
85
  var INTEGRATIONS = [
94
86
  {
95
- key: "binance",
96
- label: "Binance Exchange",
87
+ key: "exchange",
88
+ label: "Exchange API (Binance / Bybit / MEXC)",
97
89
  workerName: "trade-worker",
98
90
  secrets: {
99
- BINANCE_KEY_BINDING: "Binance API Key",
100
- BINANCE_SECRET_BINDING: "Binance API Secret"
101
- }
102
- },
103
- {
104
- key: "mexc",
105
- label: "MEXC Exchange",
106
- workerName: "trade-worker",
107
- secrets: {
108
- MEXC_KEY_BINDING: "MEXC API Key",
109
- MEXC_SECRET_BINDING: "MEXC API Secret"
110
- }
111
- },
112
- {
113
- key: "bybit",
114
- label: "Bybit Exchange",
115
- workerName: "trade-worker",
116
- secrets: {
117
- BYBIT_KEY_BINDING: "Bybit API Key",
118
- BYBIT_SECRET_BINDING: "Bybit API Secret"
91
+ EXCHANGE_KEY_BINDING: "Exchange API Key",
92
+ EXCHANGE_SECRET_BINDING: "Exchange API Secret"
119
93
  }
120
94
  },
121
95
  {
@@ -345,7 +319,11 @@ class WizardEngine {
345
319
  return { ...this.state };
346
320
  }
347
321
  getCurrentStep() {
348
- return STEPS.find((s) => s.id === this.state.step) ?? STEPS[0];
322
+ const step = STEPS.find((s) => s.id === this.state.step) ?? STEPS[0];
323
+ if (!step) {
324
+ throw new Error("Wizard has no steps defined");
325
+ }
326
+ return step;
349
327
  }
350
328
  getCompletedSteps() {
351
329
  return [...this.state.completedSteps];
@@ -368,8 +346,11 @@ class WizardEngine {
368
346
  this.state.completedSteps.push(this.state.step);
369
347
  }
370
348
  const currentIdx = STEP_ORDER.indexOf(this.state.step);
371
- if (currentIdx < STEP_ORDER.length - 1) {
372
- this.state.step = STEP_ORDER[currentIdx + 1];
349
+ if (currentIdx >= 0 && currentIdx < STEP_ORDER.length - 1) {
350
+ const nextStep = STEP_ORDER[currentIdx + 1];
351
+ if (nextStep !== undefined) {
352
+ this.state.step = nextStep;
353
+ }
373
354
  }
374
355
  this.state.updatedAt = Date.now();
375
356
  return [];
@@ -380,6 +361,8 @@ class WizardEngine {
380
361
  const currentIdx = STEP_ORDER.indexOf(this.state.step);
381
362
  if (currentIdx > 0) {
382
363
  const previousStep = STEP_ORDER[currentIdx - 1];
364
+ if (previousStep === undefined)
365
+ return;
383
366
  this.state.step = previousStep;
384
367
  this.state.completedSteps = this.state.completedSteps.filter((s) => s !== this.state.step || STEP_ORDER.indexOf(s) <= STEP_ORDER.indexOf(previousStep));
385
368
  }
@@ -35,7 +35,7 @@ var PRESETS = [
35
35
  "analytics-worker",
36
36
  "telegram-worker"
37
37
  ],
38
- integrations: ["binance", "telegram"]
38
+ integrations: ["exchange", "telegram"]
39
39
  },
40
40
  {
41
41
  name: "full",
@@ -52,15 +52,7 @@ var PRESETS = [
52
52
  "web3-wallet-worker",
53
53
  "pyne-worker"
54
54
  ],
55
- integrations: [
56
- "binance",
57
- "bybit",
58
- "mexc",
59
- "telegram",
60
- "openai",
61
- "wallet",
62
- "pyne"
63
- ]
55
+ integrations: ["exchange", "telegram", "openai", "wallet", "pyne"]
64
56
  }
65
57
  ];
66
58
  var WORKER_DEPENDENCIES = {
@@ -92,30 +84,12 @@ function resolveDependencies(selected) {
92
84
  }
93
85
  var INTEGRATIONS = [
94
86
  {
95
- key: "binance",
96
- label: "Binance Exchange",
87
+ key: "exchange",
88
+ label: "Exchange API (Binance / Bybit / MEXC)",
97
89
  workerName: "trade-worker",
98
90
  secrets: {
99
- BINANCE_KEY_BINDING: "Binance API Key",
100
- BINANCE_SECRET_BINDING: "Binance API Secret"
101
- }
102
- },
103
- {
104
- key: "mexc",
105
- label: "MEXC Exchange",
106
- workerName: "trade-worker",
107
- secrets: {
108
- MEXC_KEY_BINDING: "MEXC API Key",
109
- MEXC_SECRET_BINDING: "MEXC API Secret"
110
- }
111
- },
112
- {
113
- key: "bybit",
114
- label: "Bybit Exchange",
115
- workerName: "trade-worker",
116
- secrets: {
117
- BYBIT_KEY_BINDING: "Bybit API Key",
118
- BYBIT_SECRET_BINDING: "Bybit API Secret"
91
+ EXCHANGE_KEY_BINDING: "Exchange API Key",
92
+ EXCHANGE_SECRET_BINDING: "Exchange API Secret"
119
93
  }
120
94
  },
121
95
  {
@@ -345,7 +319,11 @@ class WizardEngine {
345
319
  return { ...this.state };
346
320
  }
347
321
  getCurrentStep() {
348
- return STEPS.find((s) => s.id === this.state.step) ?? STEPS[0];
322
+ const step = STEPS.find((s) => s.id === this.state.step) ?? STEPS[0];
323
+ if (!step) {
324
+ throw new Error("Wizard has no steps defined");
325
+ }
326
+ return step;
349
327
  }
350
328
  getCompletedSteps() {
351
329
  return [...this.state.completedSteps];
@@ -368,8 +346,11 @@ class WizardEngine {
368
346
  this.state.completedSteps.push(this.state.step);
369
347
  }
370
348
  const currentIdx = STEP_ORDER.indexOf(this.state.step);
371
- if (currentIdx < STEP_ORDER.length - 1) {
372
- this.state.step = STEP_ORDER[currentIdx + 1];
349
+ if (currentIdx >= 0 && currentIdx < STEP_ORDER.length - 1) {
350
+ const nextStep = STEP_ORDER[currentIdx + 1];
351
+ if (nextStep !== undefined) {
352
+ this.state.step = nextStep;
353
+ }
373
354
  }
374
355
  this.state.updatedAt = Date.now();
375
356
  return [];
@@ -380,6 +361,8 @@ class WizardEngine {
380
361
  const currentIdx = STEP_ORDER.indexOf(this.state.step);
381
362
  if (currentIdx > 0) {
382
363
  const previousStep = STEP_ORDER[currentIdx - 1];
364
+ if (previousStep === undefined)
365
+ return;
383
366
  this.state.step = previousStep;
384
367
  this.state.completedSteps = this.state.completedSteps.filter((s) => s !== this.state.step || STEP_ORDER.indexOf(s) <= STEP_ORDER.indexOf(previousStep));
385
368
  }
@@ -1 +1 @@
1
- {"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../src/wizard/presets.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAI/D,eAAO,MAAM,OAAO,EAAE,YAAY,EA8CjC,CAAC;AAIF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAOxD,CAAC;AAEF;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAkBhE;AAID;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,iBAAiB,EAkG3C,CAAC;AAIF,eAAO,MAAM,YAAY,EAAE,MAAM,CAC/B,MAAM,EACN;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAmBjE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAIjD,CAAC"}
1
+ {"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../../src/wizard/presets.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAI/D,eAAO,MAAM,OAAO,EAAE,YAAY,EAsCjC,CAAC;AAIF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAOxD,CAAC;AAEF;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAkBhE;AAID;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,iBAAiB,EAgF3C,CAAC;AAIF,eAAO,MAAM,YAAY,EAAE,MAAM,CAC/B,MAAM,EACN;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,CAmBjE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAIjD,CAAC"}
@@ -35,7 +35,7 @@ var PRESETS = [
35
35
  "analytics-worker",
36
36
  "telegram-worker"
37
37
  ],
38
- integrations: ["binance", "telegram"]
38
+ integrations: ["exchange", "telegram"]
39
39
  },
40
40
  {
41
41
  name: "full",
@@ -52,15 +52,7 @@ var PRESETS = [
52
52
  "web3-wallet-worker",
53
53
  "pyne-worker"
54
54
  ],
55
- integrations: [
56
- "binance",
57
- "bybit",
58
- "mexc",
59
- "telegram",
60
- "openai",
61
- "wallet",
62
- "pyne"
63
- ]
55
+ integrations: ["exchange", "telegram", "openai", "wallet", "pyne"]
64
56
  }
65
57
  ];
66
58
  var WORKER_DEPENDENCIES = {
@@ -92,30 +84,12 @@ function resolveDependencies(selected) {
92
84
  }
93
85
  var INTEGRATIONS = [
94
86
  {
95
- key: "binance",
96
- label: "Binance Exchange",
87
+ key: "exchange",
88
+ label: "Exchange API (Binance / Bybit / MEXC)",
97
89
  workerName: "trade-worker",
98
90
  secrets: {
99
- BINANCE_KEY_BINDING: "Binance API Key",
100
- BINANCE_SECRET_BINDING: "Binance API Secret"
101
- }
102
- },
103
- {
104
- key: "mexc",
105
- label: "MEXC Exchange",
106
- workerName: "trade-worker",
107
- secrets: {
108
- MEXC_KEY_BINDING: "MEXC API Key",
109
- MEXC_SECRET_BINDING: "MEXC API Secret"
110
- }
111
- },
112
- {
113
- key: "bybit",
114
- label: "Bybit Exchange",
115
- workerName: "trade-worker",
116
- secrets: {
117
- BYBIT_KEY_BINDING: "Bybit API Key",
118
- BYBIT_SECRET_BINDING: "Bybit API Secret"
91
+ EXCHANGE_KEY_BINDING: "Exchange API Key",
92
+ EXCHANGE_SECRET_BINDING: "Exchange API Secret"
119
93
  }
120
94
  },
121
95
  {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hoox-sh/hoox-shared",
3
- "version": "1.3.0",
3
+ "version": "1.4.0",
4
4
  "description": "Shared utilities, types, and stores for HOOX CLI, TUI, and Cloudflare Workers",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",