DSL Troubleshooting and State Validation

Updated Jun 9, 2026 · 1 min read

Check active status, core state fields, and field naming to fix broken DSL, and confirm a zero-trade agent is actually running.

If your DSL is not working or positions are unprotected, check these critical state fields in order:

DSL skipping the position

Fix

`active` must be `true`. Otherwise DSL skips the position.

highWaterPrice is 0

Fix

`highWaterPrice` should be `null`, not 0.

No tiers configured

Fix

`tiers` array must be present with at least one tier.

Config field-name mistakes

Fix

Use phase1MaxMinutes, not hardTimeoutMinutes. Use deadWeightCutMin, not deadWeightCutMinutes.

Zero trades since deploy

Fix

Check if your agent's cron is actually running. Zero-trade agents are broken until proven otherwise. Run the scanner manually on deployment and verify output.

For the underlying ratchet stop architecture (which fields belong to which phase), see DSL architecture and phase handoff. For configuration values per asset, see DSL configuration.

Share

Related articles