Validate and debug procedures from the CLI
Writing and debugging a procedure no longer needs a full station run to find a typo, a wrong plug call or a flaky phase.
- Added
tofupilot validate, which checks a procedure the way Studio and a run do, with error codes, fix hints and a watch mode that re-checks on every save. It catches misspelled phases and plug methods, missing imports and Python syntax errors in the files a phase imports. - Added
tofupilot plugto list a procedure's plugs, read their methods without opening the instrument, and call them during bench bring-up. - Added troubleshooting flags to
tofupilot run: run only some phases, skip or force a phase result, swap in a simulated instrument, and repeat a run until it fails or passes, with pass rate and measurement statistics. - Improved stops: Ctrl-C and signals always run the teardown, a stop during start-up never lets the first phase run, and phases that a stop did not cut keep their result.
- Improved plugs and phases: async drivers keep their connection and background tasks between calls, measurements can be set and read by name in a loop, and timeouts below one second are kept.
