Skip to content

v1.3.0

Choose a tag to compare

@Lazy-Beee Lazy-Beee released this 04 Jul 23:01
· 7 commits to main since this release

What's new

Telegram

  • Notifications can now be tagged with a machine name. Set the new telegram.machine_name config key and every message from that host is prefixed with a #machine_name hashtag, so a shared chat receiving batches from several machines stays sortable and filterable.
  • Notifications are now sent on a background thread, off the log-reader loop, so a slow or unreachable Telegram API can no longer stall reading the simulator's output.
  • A failed post no longer kills the sender thread; delivery keeps working for the rest of the run.
  • Backtick and backslash are escaped inside code blocks and the monospace ordering is fixed, so case names with special characters render correctly.
  • Failed cases now show - for their cost in the batch report instead of a misleading number.

Fixes

  • A case that is force-stopped exactly as the dispatcher sweeps the queue now has its process reliably killed instead of being left running.
  • Cases are dispatched by identity and claimed on the UI thread, so reordering or removing a case mid-batch can no longer skip or double-run one.
  • The per-case log buffer is bounded, capping memory on long-running batches.
  • Subprocess output is decoded as UTF-8 (with replacement) rather than the OS default, and TUI log lines render as plain text, so odd bytes or markup in the simulator's output can't corrupt the display.
  • Missing 7-Zip in zip_case_output is handled gracefully instead of crashing.
  • The CLI is hardened against a bad exe path or a failed spawn, and skips spawning on a pre-spawn stop.
  • cleanup_exe now refuses to delete anything but the .batch copies it made, guarding against removing the wrong file.

Config

  • New key telegram.machine_name (default "" — no prefix). See config.example.json.
  • upload.eta_step_percent is now documented in the config reference.

Copy config.example.json to config.json next to the exe and edit it before first run (config.json is never bundled into the exe).