docs: explain what debug inspection is for
validate / validate (pull_request) Successful in 58m43s
validate / test (pull_request) Successful in 58m50s
validate / markdownlint (pull_request) Successful in 58m42s

The dataflow turned on `enable_debug_inspection` without the README saying why
anyone would want it, which made it a line of configuration nobody could act on.

Documents the three commands it buys — topic list, topic echo, topic hz — and
that they need a coordinator rather than `dora run`. hz is the one that checks
the timings this node promises, so it names the measurement to expect.
This commit is contained in:
2026-09-15 17:21:49 -05:00
parent fb14545850
commit ac2540629e
+26
View File
@@ -201,6 +201,32 @@ is printed and forgotten. It closes the loop so this node's behaviour can be wat
the lease changing hands, the deadman firing when you let go — not so the arm can be
pretended at.
### Watching the wire
`dataflow.yml` sets `debug: enable_debug_inspection: true`, so dora will let you read what
is actually on the wire without the bench printing anything. Run it under a coordinator
rather than `dora run`:
```bash
dora up
dora start dataflow.yml --uv --name teleop-bench
```
Then, in another terminal:
```bash
dora topic list -d teleop-bench # every edge in the graph
dora topic echo -d teleop-bench teleop/jog # every velocity, live
dora topic echo -d teleop-bench teleop/ui_state # what the console would draw
dora topic hz -d teleop-bench teleop/jog --duration 10 # the re-send cadence
```
`hz` is the one that checks the timings this node promises. The `get_state` poll measures
at 1.88 Hz against a configured `STATE_POLL_S` of 0.5, and with a pad held over the
deadzone `teleop/jog` should sit near the 50 ms tick.
Tear it down with `dora stop --name teleop-bench && dora down`.
## Development
```bash