Skip to content

Changelog

Stay up to date with new features and improvements.

May 8, 2026Dashboard 2.22.17

Detect pytest repos without a main.py

Pytest-only repos with no sentinel main.py now show up in the New Procedure picker on their own. The audit treats a leaf test_*.py next to pyproject.toml as enough signal to commit to the pytest framework.

  • Added test_*.py / *_test.py as a procedure signal in the repo audit
  • Defaulted detected pytest procedures to entry point "." (the package directory)
  • Dropped the sentinel main.py from the Pytest Starter template
May 8, 2026CLI 0.21.17Dashboard 2.22.15

Override the entry point per procedure

Procedures can now declare which file or directory the station hands to the framework runner. Useful when your repo doesn't follow the default layout, or when you want pytest to scan a specific subdirectory.

  • Added an Entry point field to the Build configuration section on every procedure page
  • Forwarded the value through the deployment manifest so the station picks it up on the next pull
  • Defaulted to the framework convention when left blank: main.py for OpenHTF and plain Python, the package directory for pytest, procedure.yaml for the TofuPilot Framework
May 7, 2026Dashboard 2.22.8

Fix template clone auto-deploy

Fixed an issue when cloning a template: auto-push now picks up the seed commit so the procedure deploys to your stations immediately.

May 7, 2026CLI 0.21.6Dashboard 2.22.7

Deploy OpenHTF procedures from GitHub

OpenHTF is a first-class framework alongside the TofuPilot Framework for stations: clone a starter from /new, push to GitHub, the station picks up your test on the next deploy.

  • Added a one-click OpenHTF Starter template in /new -- single procedure showing plugs, prompts, hard + marginal limits, regex validators, voltage-vs-time chart, attachments, and skip flow control
  • Streamed live phase events (phase started/ended, measurements, prompts, attachments) so the operator UI mirrors what is happening on the station in real time
  • Routed native user_input prompts to the web operator UI, with timeouts and operator-typed responses flowing back to OpenHTF without leaving the dashboard
  • Rendered marginal limits, multi-dim charts, and validator expressions natively in the dashboard from the connector's structured payloads
May 6, 2026CLI 0.21.0

Fix measurement outcome rollup

Measurements with a recorded value but no validators were reaching the dashboard as UNSET instead of PASS, mostly affecting string measurements used for traceability.

  • Fixed outcome rollup to match OpenHTF semantics: null value stays UNSET, any failing validator forces FAIL, otherwise PASS.
  • Added unit tests covering the parity rules.
May 6, 2026Dashboard 2.22.1CLI 0.21.0

Deploy from uv-workspace monorepos

Procedures living inside a uv-workspace monorepo can now be deployed without restructuring the repo, by pointing the CLI at the package directory.

  • Added a package_directory setting on procedures so deployments resolve dependencies from a sub-package instead of the repo root.
  • Updated the CLI and deployer to walk up from the package directory to find the workspace venv and lockfile.
  • Consolidated the deploy pipeline behind a typed v1 manifest, with framework auto-detected from disk at runtime.
May 5, 2026Dashboard 2.21.11

Fix SPC sidebar filters with multiple values

Fixed a bug that could cause SPC sidebar filters to silently ignore selections when more than one value was picked. Multi-value filters now narrow the chart as expected.

May 4, 2026CLI 0.20.0Dashboard 2.21.5

Stations v2.0

A headless-first rewrite of TofuPilot Stations: more hardware architectures supported, real-time control from the web, isolated artifacts, and push-to-deploy with environments.

  • Rebuilt on a headless core that runs on Raspberry Pi (arm64), Linux (amd64/arm64), Windows, and macOS: pick a kiosk UI, terminal UI for SSH and edge boxes, or no UI at all
  • Streamed every station live to the web for remote control and telemetry, with the offline queue and full Framework UI components carried over from v1
  • Replaced repo-pull with a managed artifact system so stations never touch your Git provider directly
  • Auto-deployed on merge to your configured environments, with skippable preview environments matched by branch pattern
  • Run TofuPilot Framework procedures end-to-end from your repo to your stations
April 20, 2026Dashboard 2.20.29

Fix deployment commit filters

  • Fixed commit list filters on the deployments page that weren't connected to commit data, causing confusing empty results.
  • Laid the server, worker, and UI foundations for the upcoming Station v2 release.
April 17, 2026Dashboard 2.20.23

Fix part validation blocking unit creation

Creating a unit from a part with ., :, or + in its number used to fail with a raw validation blob. Validation now matches what part creation allows, and errors are readable.

  • Fixed unit creation rejecting valid parts whose numbers contain ., :, or +
  • Improved error messages in modals to show a clear one-line reason instead of a raw JSON payload
  • Added a Copy action on error toasts so you can share the exact message with support

Try these features today