Skip to content

taskguard v0.7.0

Choose a tag to compare

@github-actions github-actions released this 06 Oct 12:34
· 61 commits to master since this release

Added

  • One run that takes far more memory than the job's other runs no longer sets
    its memory need at once. A peak more than outlier_ratio (2) times the next
    peak below it, and at least outlier_min (1 GB) above it, is an outlier.
    It counts by outlier_weights: the first time not at all, the second time
    half, the third time in full. A run that failed never counts. Jobs whose
    usual peak is under outlier_min have no outliers. The job prints a warning
    after an outlier run, with the reason, and the reason is kept in the history.
  • taskguard outliers [PATTERN] [--ratio R] [--min SIZE] lists the outliers,
    and how much each one counts.
  • taskguard prune drops runs from the history: of the keys that match a
    pattern, older than an age (--older-than 30d), or the outliers
    (--outliers). Without --apply it only shows what it would do. Pruned
    runs are kept aside, and prune --undo puts them back.
  • A job short of memory by at most noise_mem (2%) of RAM, or of CPU by at
    most noise_cpu (0.5) cores, starts anyway. So does a job that only
    programs outside taskguard keep out (outside_admit, on by default), while
    memory stays under pause_at. Each such start prints a warning with what
    the job lacks.
  • Help for each command: taskguard help COMMAND, or COMMAND --help.
    taskguard help --all prints every command in full in one text, for LLM
    agents.
  • doctor --explain shows a command's outliers.
  • taskguard top has a Tasks view (tab 4): every task taskguard knows, with
    its namespace, runs, last run and learned needs. Filter by namespace (n),
    text (/) and age (a: not run for 1, 7, 30 or 90 days). x prunes every
    run of the selected task, X every task the filters leave. In a job's view,
    x prunes the selected run. Both ask first, and taskguard prune --undo
    puts the runs back.

Changed

  • In taskguard top, ? lists every key of the view you are in, and the keys
    of every view. The bottom line starts with ? keys and shows only the keys
    of the view that fit, so it no longer runs off the screen.
  • The tabs of taskguard top after Runs move one up: Trends is 5, Warnings 6,
    Namespaces 7, Config 8, Help 9.
  • A memory need never passes mem_max, as a CPU need never passes cpu_max.
    A job that once took more is capped there, and says so. Before, it could
    only start on an empty machine.

Prebuilt binaries for macOS (Apple silicon, Intel) and Linux (x86_64, ARM, static musl). Each archive holds the taskguard binary; a .sha256 file sits next to it.