clusterflux-public/docs/debugging.md
Disasmer release dry run 2bef715211 Public dry run dryrun-20b59dc46b72
Source commit: 20b59dc46b72103c2f8a516c692b5cc3d54fab19

Public tree identity: sha256:aaa5ac7b58b2a0d23c6b11e5f76324bf3839ca1f62653a83deb736932adcfbd9
2026-07-14 10:08:15 +02:00

1.6 KiB

Debugging

Disasmer exposes the distributed workflow as one virtual process with virtual threads for tasks. The VS Code extension launches or attaches through the DAP adapter and reads the same live process registry used by the CLI.

Supported controls

  • Launch and attach to a real coordinator process.
  • Inspect processes, tasks, logs, artifacts, nodes, scopes, and variables.
  • Set function/source breakpoints supported by the compiled Wasm mapping.
  • Continue and pause through participant-acknowledged debug epochs.
  • Rebuild and restart a terminal task from its captured clean VFS entry boundary under a fresh task-instance ID when the edited task ABI and boundary remain compatible. Incompatible edits require a whole-process restart without altering the running process.
  • Cooperatively cancel or explicitly abort the whole virtual process.

Source-level stepping is not in the MVP. Step requests fail explicitly instead of returning a synthetic success. All-stop succeeds only after every active participant acknowledges the requested epoch; a missing participant is reported as a freeze failure.

When F5 finds an existing process in the same Coordinator Project, the extension offers attach, restart, cancel, or abort. If the process came from another local workspace, it does not silently attach with the wrong source mapping. Processes remain visible independent of whether they currently contain active tasks.

The DAP demo backend is an isolated adapter test fixture. Product launches use the coordinator/node runtime path and do not fall back to the demo model.