CHANGELOG

Small changes. Better testing.

Stay up to date with new features and improvements.

June 11, 2026Docs 2.3.26

Match procedure docs to actual CLI behavior

The procedure documentation now reflects what the CLI actually enforces, removing constraints that never existed.

  • Updated CLI and framework pages to say procedure files can use any .yaml name; procedure.yaml is only the default lookup when running a directory
  • Fixed the procedures page: names are not uniqueness-enforced and semantic versioning is a recommendation, not a requirement
  • Added the distinction between the version field you bump yourself and deployments built automatically from every commit
June 11, 2026Dashboard 2.36.13

Improve scheduled workflow reliability

Scheduled workflows and background maintenance now run on dedicated platform schedules instead of inside request servers, removing a class of intermittent failures.

  • Fixed intermittent connection errors that could disrupt scheduled workflow runs
  • Fixed slow responses on station event ingestion caused by background work competing with requests
  • Improved sign-in cookie handling and pinned strict database connection security
June 11, 2026Dashboard 2.36.14

Speed up procedure list initial load

The procedure list now appears immediately when opening the dashboard, instead of after a blank loading spinner.

  • Improved initial load by rendering procedure cards, yield circles, and run sparklines directly in the first page response, removing a full client roundtrip
  • Added skeleton placeholders and kept previous results visible while searching, so the page never flashes empty
  • Added a "/" keyboard shortcut to focus the search bar on list pages, and create buttons no longer pop in after loading
June 11, 2026Dashboard 2.36.12

Control station auto-updates from dashboard

Stations previously installed CLI updates automatically with no way to opt out, which made update timing unpredictable on production lines.

  • Added the ability to turn automatic CLI updates on or off per station from the Setup panel
  • Fixed stations without a saved setting showing auto-update as off while updates were actually running
June 10, 2026Dashboard 2.36.10

Improve database performance monitoring

TofuPilot now tracks database query performance, so slow pages and API responses get found and fixed faster.

  • Added query performance tracking to the TofuPilot cloud database
  • Updated self-hosted installations to enable the same tracking automatically at the next upgrade
June 10, 2026Dashboard

Speed up the measurement control page

The measurement control page could freeze or take a long time to open for procedures with very large numbers of measurements.

  • Made control charts open instantly, even for measurements with millions of data points, while pass rate and Cpk stay accurate across every point
  • Made the value filter appear right away instead of waiting on heavy data
  • Added loading previews and smoother chart hover and selection
June 10, 2026CLI 0.24.0

Add full JSON output and clear command feedback

Scripts and agents driving the CLI needed every command to speak JSON, and several commands used to succeed without printing anything.

  • Added --json output to whoami, link, unlink and service status, and made API command errors return structured JSON instead of plain text
  • Added success messages to all create, update and delete commands (Created part <id>) so they no longer succeed silently
  • Fixed environment bootstrap output corrupting the --json event stream during runs
June 10, 2026Docs 2.3.25

Expand CLI docs with new command references

Every code example in the CLI and framework docs is now verified to run as written, and the CLI's automation surface is fully documented.

  • Added reference pages for the imports, logs, phases, measurements and deployments commands
  • Added a complete run --json event-stream reference covering the protocol, every event type, stdin commands and headless CI recipes
  • Updated every YAML and Python example to the current procedure schema so copy-pasted snippets work out of the box
June 10, 2026CLI 0.23.0

Catch YAML typos and fix concurrent run crashes

Running several CLI processes on one machine is now reliable, and mistakes in procedure YAML surface immediately instead of being silently ignored.

  • Fixed concurrent runs and station commands interfering with each other through the shared state database: the lock is now held only while in use and contention waits politely instead of interrupting other processes
  • Added strict procedure YAML validation: unknown fields like phases: or value: now fail with a clear error naming the field instead of being silently ignored
  • Fixed orphaned Python worker processes surviving after runs, tofupilot run file.yml ignoring the given file, and timeout phases reporting zero duration
June 10, 2026CLI 0.23.0

Fix CLI setup for stations in China

Test stations in China could not complete first-time CLI setup because a required Python tooling download came from a host that is unreachable there.

  • Fixed station setup in China by serving the Python environment manager from TofuPilot's own download infrastructure
  • Added a configurable download source for self-hosted and air-gapped deployments

Try these features today