@senpi/runtime 1.0.95-dev.20260409192509 → 1.0.95-dev.feat-dsl-backend-int.20260413215501

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 (80) hide show
  1. package/dist/actions/llm-decision/shared.d.ts +1 -1
  2. package/dist/actions/llm-decision/shared.d.ts.map +1 -1
  3. package/dist/actions/llm-decision/shared.js +1 -1
  4. package/dist/actions/llm-decision/shared.js.map +1 -1
  5. package/dist/actions/open-position/open-position.action.d.ts.map +1 -1
  6. package/dist/actions/open-position/open-position.action.js +7 -48
  7. package/dist/actions/open-position/open-position.action.js.map +1 -1
  8. package/dist/cli/guide-commands.d.ts.map +1 -1
  9. package/dist/cli/guide-commands.js +4 -3
  10. package/dist/cli/guide-commands.js.map +1 -1
  11. package/dist/dsl/engine-client/event-mapping.d.ts.map +1 -1
  12. package/dist/dsl/engine-client/event-mapping.js +4 -2
  13. package/dist/dsl/engine-client/event-mapping.js.map +1 -1
  14. package/dist/dsl/engine-client/index.d.ts +0 -2
  15. package/dist/dsl/engine-client/index.d.ts.map +1 -1
  16. package/dist/dsl/engine-client/index.js +0 -1
  17. package/dist/dsl/engine-client/index.js.map +1 -1
  18. package/dist/dsl/engine-client/types.d.ts +5 -68
  19. package/dist/dsl/engine-client/types.d.ts.map +1 -1
  20. package/dist/dsl/events/handlers.d.ts +1 -2
  21. package/dist/dsl/events/handlers.d.ts.map +1 -1
  22. package/dist/dsl/events/handlers.js +28 -38
  23. package/dist/dsl/events/handlers.js.map +1 -1
  24. package/dist/dsl/monitor/create-monitor.d.ts +0 -2
  25. package/dist/dsl/monitor/create-monitor.d.ts.map +1 -1
  26. package/dist/dsl/monitor/create-monitor.js +1 -2
  27. package/dist/dsl/monitor/create-monitor.js.map +1 -1
  28. package/dist/dsl/monitor/process-one-position.d.ts +0 -2
  29. package/dist/dsl/monitor/process-one-position.d.ts.map +1 -1
  30. package/dist/dsl/monitor/process-one-position.js +73 -67
  31. package/dist/dsl/monitor/process-one-position.js.map +1 -1
  32. package/dist/dsl/plugin/index.d.ts +0 -1
  33. package/dist/dsl/plugin/index.d.ts.map +1 -1
  34. package/dist/dsl/plugin/index.js +4 -9
  35. package/dist/dsl/plugin/index.js.map +1 -1
  36. package/dist/runtime/load-runtime-config.d.ts +1 -1
  37. package/dist/runtime/load-runtime-config.d.ts.map +1 -1
  38. package/dist/runtime/load-runtime-config.js +1 -1
  39. package/dist/runtime/map-strategies.d.ts +1 -1
  40. package/dist/runtime/map-strategies.d.ts.map +1 -1
  41. package/dist/runtime/map-strategies.js +2 -16
  42. package/dist/runtime/map-strategies.js.map +1 -1
  43. package/dist/runtime/runtime-schema.d.ts +18 -18
  44. package/dist/runtime/runtime-schema.js +1 -1
  45. package/dist/runtime/runtime-schema.js.map +1 -1
  46. package/dist/scripts/run-dsl-standalone-live.js +1 -1
  47. package/dist/scripts/run-dsl-standalone-live.js.map +1 -1
  48. package/dist/scripts/run-dsl-standalone-mock.js +1 -1
  49. package/dist/scripts/run-dsl-standalone-mock.js.map +1 -1
  50. package/dist/senpi/client.d.ts +15 -1
  51. package/dist/senpi/client.d.ts.map +1 -1
  52. package/dist/senpi/client.js +59 -0
  53. package/dist/senpi/client.js.map +1 -1
  54. package/dist/senpi/index.d.ts +1 -1
  55. package/dist/senpi/index.d.ts.map +1 -1
  56. package/dist/senpi/types.d.ts +68 -0
  57. package/dist/senpi/types.d.ts.map +1 -1
  58. package/dist/strategy/strategy-state.d.ts +35 -1
  59. package/dist/strategy/strategy-state.d.ts.map +1 -1
  60. package/dist/strategy/strategy-state.js +40 -0
  61. package/dist/strategy/strategy-state.js.map +1 -1
  62. package/dist/types/strategy.d.ts +35 -2
  63. package/dist/types/strategy.d.ts.map +1 -1
  64. package/examples/strategies/dsl-showcase.yaml +2 -1
  65. package/examples/strategies/dsl.yaml +1 -1
  66. package/examples/strategies/fox-minimal-loosened.yaml +3 -2
  67. package/examples/strategies/fox-minimal.yaml +2 -8
  68. package/examples/strategies/minimal.yaml +2 -0
  69. package/examples/strategies/viper.yaml +3 -2
  70. package/examples/strategies/wolf.yaml +3 -2
  71. package/examples/yamls/sample-with-dsl-and-emerging-movers.yaml +3 -2
  72. package/package.json +1 -1
  73. package/dist/actions/open-position/resolve-margin.d.ts +0 -22
  74. package/dist/actions/open-position/resolve-margin.d.ts.map +0 -1
  75. package/dist/actions/open-position/resolve-margin.js +0 -30
  76. package/dist/actions/open-position/resolve-margin.js.map +0 -1
  77. package/dist/dsl/engine-client/client.d.ts +0 -27
  78. package/dist/dsl/engine-client/client.d.ts.map +0 -1
  79. package/dist/dsl/engine-client/client.js +0 -76
  80. package/dist/dsl/engine-client/client.js.map +0 -1
@@ -22,7 +22,7 @@ export declare const ACTION_DECISION_SCHEMA: {
22
22
  };
23
23
  readonly required: readonly ["execute", "confidence", "reasoning"];
24
24
  };
25
- export declare const SYSTEM_PROMPT = "You are a trading decision engine. Analyze the provided context and decide whether to execute the requested trading action.\n\nRespond with a JSON object:\n- execute (boolean): whether the action should proceed\n- confidence (integer 1\u201310): how confident you are\n- reasoning (string): concise explanation of your decision\n- actionType (string): the action type being evaluated\n- payload (object): action-specific fields. For OPEN_POSITION, payload.signals is an array where each signal has: asset (string), direction (\"LONG\"|\"SHORT\"), reason (string). Optionally include \"leverage\" (number, your recommended leverage) and \"margin\" (number, $ margin amount) per signal if you have conviction about position sizing.";
25
+ export declare const SYSTEM_PROMPT = "You are a trading decision engine. Analyze the provided context and decide whether to execute the requested trading action.\n\nRespond with a JSON object:\n- execute (boolean): whether the action should proceed\n- confidence (integer 1\u201310): how confident you are\n- reasoning (string): concise explanation of your decision\n- actionType (string): the action type being evaluated\n- payload (object): action-specific fields as described in the prompt";
26
26
  /**
27
27
  * Extract a decision object from the llm-task response.
28
28
  *
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/actions/llm-decision/shared.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEnE,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;CAUzB,CAAC;AAEX,eAAO,MAAM,aAAa,8tBAOuT,CAAC;AA8BlV;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,GAAG;IAAE,QAAQ,EAAE,CAAC,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CA8DpF"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/actions/llm-decision/shared.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEnE,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;CAUzB,CAAC;AAEX,eAAO,MAAM,aAAa,2cAO4C,CAAC;AA8BvE;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,GAAG;IAAE,QAAQ,EAAE,CAAC,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CA8DpF"}
@@ -19,7 +19,7 @@ Respond with a JSON object:
19
19
  - confidence (integer 1–10): how confident you are
20
20
  - reasoning (string): concise explanation of your decision
21
21
  - actionType (string): the action type being evaluated
22
- - payload (object): action-specific fields. For OPEN_POSITION, payload.signals is an array where each signal has: asset (string), direction ("LONG"|"SHORT"), reason (string). Optionally include "leverage" (number, your recommended leverage) and "margin" (number, $ margin amount) per signal if you have conviction about position sizing.`;
22
+ - payload (object): action-specific fields as described in the prompt`;
23
23
  // ─── Response parsing ───────────────────────────────────────────────────────
24
24
  /**
25
25
  * Try to parse a JSON string into a record. Returns null on failure.
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/actions/llm-decision/shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/actions/llm-decision/shared.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"open-position.action.d.ts","sourceRoot":"","sources":["../../../src/actions/open-position/open-position.action.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EACN,YAAY,EACZ,aAAa,EACb,cAAc,EACd,YAAY,EACZ,SAAS,EAEV,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAiBtD,qBAAa,kBAAmB,YAAW,MAAM;IAO7C,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,OAAO;IAPjB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,UAAU,EAAG,eAAe,CAAU;IAE/C,OAAO,CAAC,cAAc,CAAiB;gBAG7B,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,cAAc;IAS3B,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC;IAkJrD,OAAO,CAAC,gBAAgB;YAaV,aAAa;CAoK5B;AAID,eAAO,MAAM,mBAAmB,EAAE,aACO,CAAC;AAE1C,eAAO,MAAM,oBAAoB,EAAE,cAMlC,CAAC"}
1
+ {"version":3,"file":"open-position.action.d.ts","sourceRoot":"","sources":["../../../src/actions/open-position/open-position.action.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EACN,YAAY,EACZ,aAAa,EACb,cAAc,EACd,YAAY,EACZ,SAAS,EAEV,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAUtD,qBAAa,kBAAmB,YAAW,MAAM;IAO7C,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,OAAO;IAPjB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,UAAU,EAAG,eAAe,CAAU;IAE/C,OAAO,CAAC,cAAc,CAAiB;gBAG7B,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,cAAc;IAS3B,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC;IAkJrD,OAAO,CAAC,gBAAgB;YAQV,aAAa;CA8H5B;AAID,eAAO,MAAM,mBAAmB,EAAE,aACO,CAAC;AAE1C,eAAO,MAAM,oBAAoB,EAAE,cAMlC,CAAC"}
@@ -3,13 +3,8 @@ import { HOOK_EVENT } from '../../types/hooks.js';
3
3
  import { interpolatePrompt } from '../../context/interpolate.js';
4
4
  import { formatDecisionErrorNotification } from '../../runtime/notifications.js';
5
5
  import { resolveLeverage } from '../../leverage/resolve-leverage.js';
6
- import { resolveMargin } from './resolve-margin.js';
7
6
  import { createLogger } from '../../utils/logger.js';
8
7
  const logger = createLogger("[actions][open-position]");
9
- /** Hyperliquid minimum notional value (margin × leverage) required to open a position. */
10
- const MIN_NOTIONAL_VALUE = 10;
11
- /** Minimum leverage floor — positions cannot go below 1x. */
12
- const MIN_LEVERAGE = 1;
13
8
  // ─── Open Position Action ───────────────────────────────────────────────────
14
9
  export class OpenPositionAction {
15
10
  config;
@@ -162,25 +157,13 @@ export class OpenPositionAction {
162
157
  if (Array.isArray(payload.signals))
163
158
  return payload.signals;
164
159
  if (typeof payload.asset === 'string') {
165
- return [{
166
- asset: payload.asset, direction: payload.direction, reason: payload.reason,
167
- dex: payload.dex, score: 1,
168
- ...(payload.leverage != null ? { leverage: payload.leverage } : {}),
169
- ...(payload.margin != null ? { margin: payload.margin } : {}),
170
- }];
160
+ return [{ asset: payload.asset, direction: payload.direction, reason: payload.reason, dex: payload.dex, score: 1 }];
171
161
  }
172
162
  return [];
173
163
  }
174
164
  async handleSignals(signals, event, strategyState, reasoning) {
175
165
  const address = event.address;
176
166
  let remainingSlots = strategyState.getAvailableSlots?.() ?? 0;
177
- // Fetch withdrawable balance when margin_pct is configured
178
- let withdrawable;
179
- if (strategyState.config.marginPct != null) {
180
- const chState = strategyState.getClearinghouseState()
181
- ?? await strategyState.fetchClearinghouseState();
182
- withdrawable = chState?.withdrawable;
183
- }
184
167
  // Sort by score descending — highest conviction first
185
168
  const sorted = [...signals].sort((a, b) => (b.score ?? 0) - (a.score ?? 0));
186
169
  const results = [];
@@ -211,38 +194,14 @@ export class OpenPositionAction {
211
194
  results.push({ asset, success: true, reason: `risk_gate_${gate.gate}` });
212
195
  continue;
213
196
  }
214
- // Leverage: LLM override > config-based resolution
215
- const llmLeverage = typeof signal.leverage === 'number' ? signal.leverage : undefined;
216
197
  const maxLeverage = await this.context.maxLeverageCache.get(asset, address) ?? 20;
217
- const leverage = llmLeverage != null && llmLeverage > 0
218
- ? Math.max(MIN_LEVERAGE, Math.min(llmLeverage, maxLeverage))
219
- : resolveLeverage({
220
- tradingRisk: strategyState.config.tradingRisk,
221
- maxLeverage,
222
- defaultLeverage: strategyState.config.defaultLeverage,
223
- leverageMultipliers: strategyState.config.leverageMultipliers,
224
- });
225
- // Margin: LLM override > margin_pct > margin_per_slot
226
- const llmMargin = typeof signal.margin === 'number' ? signal.margin : undefined;
227
- const marginAmount = resolveMargin({
228
- llmMargin,
229
- marginPct: strategyState.config.marginPct,
230
- withdrawable,
231
- marginPerSlot: strategyState.config.marginPerSlot,
198
+ const leverage = resolveLeverage({
199
+ tradingRisk: strategyState.config.tradingRisk,
200
+ maxLeverage,
201
+ defaultLeverage: strategyState.config.defaultLeverage,
202
+ leverageMultipliers: strategyState.config.leverageMultipliers,
232
203
  });
233
- if (marginAmount == null || marginAmount <= 0) {
234
- results.push({ asset, success: false, reason: 'no_margin_configured' });
235
- failedCount++;
236
- continue;
237
- }
238
- const notionalValue = marginAmount * leverage;
239
- if (notionalValue < MIN_NOTIONAL_VALUE) {
240
- logger.warn(`Skipping ${asset}: notional value $${notionalValue.toFixed(2)} ` +
241
- `(margin $${marginAmount.toFixed(2)} × ${leverage}x) is below minimum $${MIN_NOTIONAL_VALUE}`);
242
- results.push({ asset, success: false, reason: 'below_min_notional' });
243
- failedCount++;
244
- continue;
245
- }
204
+ const marginAmount = strategyState.config.marginPerSlot ?? strategyState.config.budget / strategyState.config.slots;
246
205
  const signalReason = signal.reason ?? signal.signalType ?? reasoning;
247
206
  try {
248
207
  logger.info('opening position', { wallet: address, asset, direction });
@@ -1 +1 @@
1
- {"version":3,"file":"open-position.action.js","sourceRoot":"","sources":["../../../src/actions/open-position/open-position.action.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"open-position.action.js","sourceRoot":"","sources":["../../../src/actions/open-position/open-position.action.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"guide-commands.d.ts","sourceRoot":"","sources":["../../src/cli/guide-commands.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AA4WH,eAAO,MAAM,eAAe,QA0FpB,CAAC;AAIT,kFAAkF;AAClF,UAAU,gBAAgB;IACxB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAAC;IACvD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAAC;IAC5C,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAAC;IAC9D,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC;CACxF;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,gBAAgB,EACvB,OAAO,EAAE,MAAM,GACd,IAAI,CA2CN"}
1
+ {"version":3,"file":"guide-commands.d.ts","sourceRoot":"","sources":["../../src/cli/guide-commands.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AA6WH,eAAO,MAAM,eAAe,QA0FpB,CAAC;AAIT,kFAAkF;AAClF,UAAU,gBAAgB;IACxB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAAC;IACvD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,CAAC;IAC5C,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAAC;IAC9D,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC;CACxF;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,gBAAgB,EACvB,OAAO,EAAE,MAAM,GACd,IAAI,CA2CN"}
@@ -258,7 +258,7 @@ Key Type Req Description
258
258
  name string Yes Recipe name
259
259
  version number/string No Recipe version (default: 1). Integer or semver string; major version is the schema version.
260
260
  description string No Human-readable description
261
- strategy object Yes Single strategy config (wallet, slots, margin, etc.)
261
+ strategy object Yes Single strategy config (wallet, budget, slots, etc.)
262
262
  scanners array * Scanner definitions (* required when actions
263
263
  have OPEN_POSITION or a scanners list)
264
264
  actions array No Action definitions
@@ -273,9 +273,9 @@ advanced object No Extra options
273
273
 
274
274
  strategy
275
275
  wallet string Yes Wallet address; supports \${VAR} substitution
276
+ budget number No Total budget
276
277
  slots number No Max concurrent positions
277
- margin_pct number No Margin as % of withdrawable balance (1-100)
278
- margin_per_slot number No Fixed $ margin per slot
278
+ margin_per_slot number No Margin per slot
279
279
  trading_risk string No conservative | moderate | aggressive
280
280
  enabled boolean No Default true
281
281
 
@@ -329,6 +329,7 @@ description: Watch-only strategy — logs signals, opens no positions.
329
329
 
330
330
  strategy:
331
331
  wallet: "\${WALLET_ADDRESS}"
332
+ budget: "0"
332
333
  slots: 1
333
334
  margin_per_slot: 0
334
335
  trading_risk: conservative
@@ -1 +1 @@
1
- {"version":3,"file":"guide-commands.js","sourceRoot":"","sources":["../../src/cli/guide-commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"guide-commands.js","sourceRoot":"","sources":["../../src/cli/guide-commands.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"event-mapping.d.ts","sourceRoot":"","sources":["../../../src/dsl/engine-client/event-mapping.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAExD,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,EAAE,CAAC;CAClB;AAkBD,iFAAiF;AACjF,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,aAAa,GACrB,cAAc,GAAG,IAAI,CAoEvB"}
1
+ {"version":3,"file":"event-mapping.d.ts","sourceRoot":"","sources":["../../../src/dsl/engine-client/event-mapping.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAExD,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,EAAE,CAAC;CAClB;AAkBD,iFAAiF;AACjF,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,aAAa,GACrB,cAAc,GAAG,IAAI,CAqEvB"}
@@ -26,14 +26,16 @@ export function mapBackendEventToBusEvent(event, context) {
26
26
  if (tierIndex == null || newFloorPrice == null)
27
27
  return null;
28
28
  const tier = context.tiers[tierIndex];
29
+ if (!tier)
30
+ return null;
29
31
  return {
30
32
  eventName: DSL_EVENTS.TIER_ADVANCED,
31
33
  payload: {
32
34
  address: context.address,
33
35
  asset: context.asset,
34
36
  tier: tierIndex,
35
- lockHwPct: tier?.lockHwPct ?? 0,
36
- triggerPct: tier?.triggerPct ?? 0,
37
+ lockHwPct: tier.lockHwPct,
38
+ triggerPct: tier.triggerPct,
37
39
  newFloorPrice,
38
40
  timestamp: ts,
39
41
  },
@@ -1 +1 @@
1
- {"version":3,"file":"event-mapping.js","sourceRoot":"","sources":["../../../src/dsl/engine-client/event-mapping.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-mapping.js","sourceRoot":"","sources":["../../../src/dsl/engine-client/event-mapping.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,3 @@
1
- export { DslEngineClient } from "./client.js";
2
- export type { DslMcpClient } from "./client.js";
3
1
  export type { DslEnginePosition, DslEngineEvent, AddRatchetStopInput, EditRatchetStopInput, DeleteRatchetStopInput, QueryRatchetStopsInput, QueryRatchetStopEventsInput, } from "./types.js";
4
2
  export { mapTiersToEngineConfig, mapEnginePositionToStateFields, } from "./config-mapping.js";
5
3
  export { mapBackendEventToBusEvent } from "./event-mapping.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/dsl/engine-client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,YAAY,EACV,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,sBAAsB,EACtB,8BAA8B,GAC/B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,YAAY,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/dsl/engine-client/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,sBAAsB,EACtB,8BAA8B,GAC/B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAC/D,YAAY,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC"}
@@ -1,4 +1,3 @@
1
- export { DslEngineClient } from "./client.js";
2
1
  export { mapTiersToEngineConfig, mapEnginePositionToStateFields, } from "./config-mapping.js";
3
2
  export { mapBackendEventToBusEvent } from "./event-mapping.js";
4
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/dsl/engine-client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAW9C,OAAO,EACL,sBAAsB,EACtB,8BAA8B,GAC/B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/dsl/engine-client/index.ts"],"names":[],"mappings":"AASA,OAAO,EACL,sBAAsB,EACtB,8BAA8B,GAC/B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -1,69 +1,6 @@
1
- export interface DslEnginePosition {
2
- id: string;
3
- status: string;
4
- currentTierIndex: number;
5
- tierFloorPrice: number;
6
- highWaterPrice: number;
7
- highWaterRoe: number;
8
- activeSLOrderId: string;
9
- lastEvaluatedAt: string;
10
- lastPrice: number;
11
- }
12
- export interface DslEngineEvent {
13
- eventType: string;
14
- details: Record<string, unknown>;
15
- createdAt: string;
16
- }
17
- export interface AddRatchetStopInput {
18
- asset: string;
19
- strategyWalletAddress: string;
20
- strategyId: string;
21
- dex?: string;
22
- ratchetStopConfig: {
23
- tiered: {
24
- tiers: Array<{
25
- triggerRoe: number;
26
- lockRoe: number;
27
- }>;
28
- };
29
- };
30
- direction?: "LONG" | "SHORT";
31
- entryPrice?: number;
32
- size?: number;
33
- leverage?: number;
34
- }
35
- export interface EditRatchetStopInput {
36
- asset: string;
37
- strategyWalletAddress: string;
38
- strategyId: string;
39
- dex?: string;
40
- ratchetStopConfig?: {
41
- tiered: {
42
- tiers: Array<{
43
- triggerRoe: number;
44
- lockRoe: number;
45
- }>;
46
- };
47
- };
48
- paused?: boolean;
49
- }
50
- export interface DeleteRatchetStopInput {
51
- asset: string;
52
- strategyWalletAddress: string;
53
- strategyId: string;
54
- dex?: string;
55
- cancelOrder?: boolean;
56
- }
57
- export interface QueryRatchetStopsInput {
58
- strategyWalletAddress: string;
59
- strategyId: string;
60
- asset?: string;
61
- dex?: string;
62
- status?: "ACTIVE" | "PAUSED" | "DELETED" | "ALL";
63
- }
64
- export interface QueryRatchetStopEventsInput {
65
- strategyWalletAddress: string;
66
- strategyId: string;
67
- since?: string;
68
- }
1
+ /**
2
+ * Re-export ratchet stop types from the canonical senpi types module.
3
+ * Kept for backwards compatibility with existing DSL imports.
4
+ */
5
+ export type { RatchetStopPosition as DslEnginePosition, RatchetStopEvent as DslEngineEvent, AddRatchetStopInput, EditRatchetStopInput, DeleteRatchetStopInput, QueryRatchetStopsInput, QueryRatchetStopEventsInput, } from "../../senpi/types.js";
69
6
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/dsl/engine-client/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB,EAAE,MAAM,CAAC;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,iBAAiB,EAAE;QACjB,MAAM,EAAE;YACN,KAAK,EAAE,KAAK,CAAC;gBAAE,UAAU,EAAE,MAAM,CAAC;gBAAC,OAAO,EAAE,MAAM,CAAA;aAAE,CAAC,CAAC;SACvD,CAAC;KACH,CAAC;IACF,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB,EAAE,MAAM,CAAC;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,iBAAiB,CAAC,EAAE;QAClB,MAAM,EAAE;YACN,KAAK,EAAE,KAAK,CAAC;gBAAE,UAAU,EAAE,MAAM,CAAC;gBAAC,OAAO,EAAE,MAAM,CAAA;aAAE,CAAC,CAAC;SACvD,CAAC;KACH,CAAC;IACF,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,qBAAqB,EAAE,MAAM,CAAC;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACrC,qBAAqB,EAAE,MAAM,CAAC;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,KAAK,CAAC;CAClD;AAED,MAAM,WAAW,2BAA2B;IAC1C,qBAAqB,EAAE,MAAM,CAAC;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/dsl/engine-client/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,YAAY,EACV,mBAAmB,IAAI,iBAAiB,EACxC,gBAAgB,IAAI,cAAc,EAClC,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,sBAAsB,CAAC"}
@@ -7,8 +7,7 @@ import type { SenpiEventBus } from "./bus-types.js";
7
7
  import type { StrategyState } from "../../types/strategy.js";
8
8
  import type { DslPluginConfig, DslCreatedTriggerReason } from "../../types/dsl/index.js";
9
9
  import type { StateManager } from "../../state/index.js";
10
- import type { DslEngineClient } from "../engine-client/index.js";
11
- export declare function createEventHandlers(config: DslPluginConfig, stateManager: StateManager, strategyStates: Map<string, StrategyState>, bus: SenpiEventBus, _baseDir: string, dslEngineClient?: DslEngineClient): {
10
+ export declare function createEventHandlers(config: DslPluginConfig, stateManager: StateManager, strategyStates: Map<string, StrategyState>, bus: SenpiEventBus, _baseDir: string): {
12
11
  handlePositionOpened: (payload: unknown, triggerReason?: DslCreatedTriggerReason) => Promise<void>;
13
12
  handlePositionClosed: (payload: unknown) => Promise<void>;
14
13
  handlePositionFlipped: (payload: unknown) => Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../src/dsl/events/handlers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EACV,eAAe,EAGf,uBAAuB,EAIxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAwDjE,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,eAAe,EACvB,YAAY,EAAE,YAAY,EAC1B,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAC1C,GAAG,EAAE,aAAa,EAClB,QAAQ,EAAE,MAAM,EAChB,eAAe,CAAC,EAAE,eAAe,GAChC;IACD,oBAAoB,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,uBAAuB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnG,oBAAoB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,qBAAqB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,uBAAuB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,uBAAuB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,qBAAqB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,uBAAuB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;CACnD,CAmdA"}
1
+ {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../src/dsl/events/handlers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EACV,eAAe,EAGf,uBAAuB,EAIxB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAwDzD,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,eAAe,EACvB,YAAY,EAAE,YAAY,EAC1B,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,EAC1C,GAAG,EAAE,aAAa,EAClB,QAAQ,EAAE,MAAM,GACf;IACD,oBAAoB,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,uBAAuB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACnG,oBAAoB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,qBAAqB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,uBAAuB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,uBAAuB,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,qBAAqB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,uBAAuB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;CACnD,CAwcA"}
@@ -33,7 +33,7 @@ function buildDslCreatedPayload(event, presetName, preset, state, triggerReason,
33
33
  };
34
34
  }
35
35
  const IDEMPOTENCY_EPS = 0.0001;
36
- export function createEventHandlers(config, stateManager, strategyStates, bus, _baseDir, dslEngineClient) {
36
+ export function createEventHandlers(config, stateManager, strategyStates, bus, _baseDir) {
37
37
  /** In-memory only — never persisted. Prevents monitor SL sync racing initial `editPosition` on open. */
38
38
  const slPlacementInProgress = new Set();
39
39
  async function isDuplicatePositionEvent(event) {
@@ -219,8 +219,8 @@ export function createEventHandlers(config, stateManager, strategyStates, bus, _
219
219
  });
220
220
  const closedState = { ...state, active: false, closedAt: now(), closeReason: archiveCloseReason };
221
221
  await stateManager.archiveAndDeleteDslState(state.address, state.asset, state.dex, closedState);
222
- if (dslEngineClient && state.handoffStatus === "ok" && state.backendDslPositionId != null) {
223
- fireAndForgetBackendDelete(dslEngineClient, state, "position.closed");
222
+ if (state.handoffStatus === "ok" && state.backendDslPositionId != null) {
223
+ fireAndForgetBackendDelete(state, "position.closed");
224
224
  }
225
225
  const closedTs = now();
226
226
  bus.emit(EVENTS.POSITION_CLOSED, {
@@ -268,8 +268,8 @@ export function createEventHandlers(config, stateManager, strategyStates, bus, _
268
268
  // Must use canonical keys from loaded state — not event.asset (e.g. xyz:BASE vs BASE + dex xyz
269
269
  // produce different stateKey paths; wrong asset would archive nothing and leave the live file active).
270
270
  await stateManager.archiveAndDeleteDslState(event.address, oldState.asset, oldState.dex ?? "", closedState);
271
- if (dslEngineClient && oldState.handoffStatus === "ok" && oldState.backendDslPositionId != null) {
272
- fireAndForgetBackendDelete(dslEngineClient, oldState, "position.flipped");
271
+ if (oldState.handoffStatus === "ok" && oldState.backendDslPositionId != null) {
272
+ fireAndForgetBackendDelete(oldState, "position.flipped");
273
273
  }
274
274
  }
275
275
  else {
@@ -310,8 +310,8 @@ export function createEventHandlers(config, stateManager, strategyStates, bus, _
310
310
  await stateManager.archiveAndDeleteDslState(event.address, oldState.asset, oldState.dex, closedState);
311
311
  // TODO: When backend supports edit-based size/leverage updates, call editPosition here
312
312
  // instead of delete+recreate to preserve accumulated Phase 2 state (high water, tier index).
313
- if (dslEngineClient && oldState.handoffStatus === "ok" && oldState.backendDslPositionId != null) {
314
- fireAndForgetBackendDelete(dslEngineClient, oldState, "position.increased");
313
+ if (oldState.handoffStatus === "ok" && oldState.backendDslPositionId != null) {
314
+ fireAndForgetBackendDelete(oldState, "position.increased");
315
315
  }
316
316
  }
317
317
  await handlePositionOpened(event, "position_increased");
@@ -338,8 +338,8 @@ export function createEventHandlers(config, stateManager, strategyStates, bus, _
338
338
  await stateManager.archiveAndDeleteDslState(event.address, oldState.asset, oldState.dex, closedState);
339
339
  // TODO: When backend supports edit-based size/leverage updates, call editPosition here
340
340
  // instead of delete+recreate to preserve accumulated Phase 2 state (high water, tier index).
341
- if (dslEngineClient && oldState.handoffStatus === "ok" && oldState.backendDslPositionId != null) {
342
- fireAndForgetBackendDelete(dslEngineClient, oldState, "position.decreased");
341
+ if (oldState.handoffStatus === "ok" && oldState.backendDslPositionId != null) {
342
+ fireAndForgetBackendDelete(oldState, "position.decreased");
343
343
  }
344
344
  }
345
345
  await handlePositionOpened(event, "position_decreased");
@@ -370,28 +370,22 @@ export function createEventHandlers(config, stateManager, strategyStates, bus, _
370
370
  else {
371
371
  logger.warn("[dsl] no strategy found for address, skipping SL cancel", { address });
372
372
  }
373
- if (dslEngineClient && state.handoffStatus === "ok" && state.backendDslPositionId != null) {
374
- const strategyForDelete = strategyStates.get(state.address);
375
- const detailsForDelete = strategyForDelete?.getDetails();
376
- const deleteStrategyId = detailsForDelete?.strategyId;
377
- if (deleteStrategyId) {
378
- cleanupPromises.push(dslEngineClient.deletePosition({
373
+ if (state.handoffStatus === "ok" && state.backendDslPositionId != null && strategy) {
374
+ cleanupPromises.push(strategy.deleteRatchetStop({
375
+ asset: state.asset,
376
+ dex: state.dex || undefined,
377
+ }).then(() => {
378
+ logger.info("[dsl] deleted backend dsl position (deleteDslsForStrategy)", {
379
+ address,
380
+ asset: state.asset,
381
+ });
382
+ }).catch((err) => {
383
+ logger.warn("[dsl] failed to delete backend dsl position (deleteDslsForStrategy)", {
384
+ address,
379
385
  asset: state.asset,
380
- strategyWalletAddress: state.wallet,
381
- strategyId: deleteStrategyId,
382
- }).then(() => {
383
- logger.info("[dsl] deleted backend dsl position (deleteDslsForStrategy)", {
384
- address,
385
- asset: state.asset,
386
- });
387
- }).catch((err) => {
388
- logger.warn("[dsl] failed to delete backend dsl position (deleteDslsForStrategy)", {
389
- address,
390
- asset: state.asset,
391
- err,
392
- });
393
- }));
394
- }
386
+ err,
387
+ });
388
+ }));
395
389
  }
396
390
  await Promise.all(cleanupPromises);
397
391
  const closedState = {
@@ -412,23 +406,19 @@ export function createEventHandlers(config, stateManager, strategyStates, bus, _
412
406
  function isSlPlacementInProgress(key) {
413
407
  return slPlacementInProgress.has(key);
414
408
  }
415
- function fireAndForgetBackendDelete(client, state, trigger) {
409
+ function fireAndForgetBackendDelete(state, trigger) {
416
410
  const resolveAndDelete = async () => {
417
411
  const strategy = strategyStates.get(state.address);
418
- const details = strategy?.getDetails() ?? (await strategy?.fetchDetails());
419
- const strategyId = details?.strategyId;
420
- if (!strategyId) {
421
- logger.warn("[dsl] cannot delete backend position: strategyId unavailable", {
412
+ if (!strategy) {
413
+ logger.warn("[dsl] cannot delete backend position: strategy unavailable", {
422
414
  trigger,
423
415
  asset: state.asset,
424
416
  address: state.address,
425
417
  });
426
418
  return;
427
419
  }
428
- await client.deletePosition({
420
+ await strategy.deleteRatchetStop({
429
421
  asset: state.asset,
430
- strategyWalletAddress: state.wallet,
431
- strategyId,
432
422
  dex: state.dex || undefined,
433
423
  });
434
424
  };