Skip to content

train-guard 0.4.0

Latest

Choose a tag to compare

@fus3r fus3r released this 12 Aug 19:37
· 6 commits to main since this release

train-guard 0.4.0

Train Guard supervises one named long-running job on a laptop. It selects
full, gentle or stop from power source, charge and available battery
temperature, while tracking the process changes it owns.

Version 0.4.0 adds bounded-adversarial analysis for recorded traces:

  • replay reports exact marginal objective envelopes for user-supplied
    temperature and charge intervals;
  • replay reports the minimum normalized binary64 distance to an action-sequence
    change, with the first critical divergence context;
  • sweep reports a conservative outer enclosure of policies that cannot be
    certainly dominated from their objective boxes;
  • the optional TGS 1 native path accelerates bounded sweep analysis and is
    accepted only after comparison with the Python reference.

Install

pipx install "train-guard==0.4.0"
train-guard doctor

Start with the
Getting Started
guide and a disposable job.

Verification

Release commit: 80c2665358a2643b6818fb3b402a68e6898d4dcb

The CI matrix covers Ubuntu, macOS and Windows on Python 3.9 and 3.13. These
checks raise confidence; they do not prove the absence of bugs.

Limits

Train Guard is a workload policy, not a hardware safety controller. Sensor
availability depends on the machine and driver. gentle is a scheduling hint,
not a power cap.

Replay and sweep hold the recorded observations fixed. Their metrics and
sensitivity boxes do not predict battery life, temperature, energy use or
throughput under another policy. The interval front is a conservative outer
enclosure, not an exact robust Pareto front. Action-change distance is exact
only on the declared finite binary64 representative domain for the current
stateful threshold policy.

Links