Skip to Content
We are live but in Staging 🎉
DSL ReferenceCompatibility And Caveats

Compatibility And Caveats

Last validated: 2026-05-14

This page summarizes DSL authoring caveats between parser support, runtime behavior, and CLI/API parity.

For full service-level matrix, see 07-feature-status.md.

Parser vs Runtime Notes

ConstructParserRuntime today
do with on errorImplementedRecovery forms parse; behavior depends on runtime/tool path
each ... parallelImplementedParallel fast path limited; complex bodies may run sequentially
pipe ... parallelImplementedTrue parallel path limited to simple execute body patterns
togetherImplementedFull parallelism limited; multi-step lanes may degrade to sequential
decideImplementedRules and LLM parse; some branch metadata/binding details are limited
check ... on fail: retryImplementedRetry path has partial behavior in runtime matrix
send ... viaImplementedChannel support currently limited (slack, email)
ask + resumeImplementedAPI supports resume; CLI still lacks direct resume command

Known Syntax/Behavior Edges

  1. Tool import syntax is import tools ... (or legacy tools ...).
  2. Direct script file import syntax (import "file.scriptum" as x) is not part of current parser.
  3. Section markers are tokenized via ### ... ###; avoid relying on a standalone section keyword.
  4. each optional quoted label is accepted but not preserved as a named field in AST.
  5. env declarations default to text when no explicit type is provided.
  6. Object declarations are permissive; keep downstream tool contracts explicit.

Practical Authoring Guardrails

  1. Prefer deterministic decide ... with rules for critical routing.
  2. Keep parallel blocks simple (single execute-heavy lanes) when throughput matters.
  3. Always provide explicit bindings (-> name) for inspectability and debuggability.
  4. Add check gates after high-variance LLM/tool steps.
  5. For large outputs, design with yield + stream retrieval in mind.
  6. Keep ask prompts typed (type, options, timeout, max_retries) to reduce resume failures.

Validation Workflow

  1. Compile every draft before publish.
  2. Run representative test inputs for each major branch.
  3. Inspect thread/step events for branch routing and yielded shape.
  4. Re-check feature matrix before depending on edge behaviors in production.