Skip to content

feat(top): the Queue view as a tree, and --wraps - #26

Merged
SpoBo merged 5 commits into
masterfrom
vincent/top-tree
Oct 12, 2026
Merged

SpoBo merged 5 commits into
masterfrom
vincent/top-tree

Conversation

@SpoBo

@SpoBo SpoBo commented Oct 12, 2026

Copy link
Copy Markdown
Owner

Follow-up to #24 / #25.

Queue view as a tree

  • The jobs of one task-runner run (turbo run) sit under one row, named by the command that started it: the first bun|npm|pnpm|yarn run <script> above turbo (a node …/turbo shim is skipped), else turbo's own command line. The row shows its running and waiting counts, CPU and memory; its Why panel says what its waiting jobs wait for.
  • The taskguard calls running inside a job (no queue entry; for example a dev stack's start-up builds) show under that job with their own CPU and memory, from the nested/ notes of fix: wrapper commands run straight through, and a smaller memory boost #25. A note now holds the call's job key, so the row has a name.
  • Tree lines (├ └ │). ← folds a row (on a row inside one, folds that), → unfolds it. Running jobs are sorted by start, so rows keep their place between loads (directory order could change).
  • New sys::proc_args (macOS KERN_PROCARGS2, Linux /proc/<pid>/cmdline) for the run names.
WAIT  web/dapp:oxlint_--deny-warnings_.                   dalp         24m59s   1.9c 9.5 GB   MEMORY
      ▾ bun run lint                                      turbo:42507  26m45s                 0 run  2 wait
WAIT  ├ infra/secrets-azure:oxlint_--deny-warning…        dalp         17s      1.2c 146 MB   starting
WAIT  └ port/db:oxlint_--deny-warnings_.                  dalp         17s      1.2c 223 MB   ORDER

--wraps

taskguard --wraps bun run ci:local runs straight through from the first run; the taskguard jobs inside it queue on their own. A queued run that had jobs inside it prints advice to pass it, with the command to paste.

Docs

Tests

  • tree:: unit tests: grouping, nested calls, folding, tree lines, run names.
  • Screen test queue_shows_task_runner_runs_and_nested_calls_as_a_tree (real processes, folding with ←/→).
  • CLI: wraps_runs_straight_through_from_the_first_run; the wrapper test also checks the advice.

Mixed versions

No change to queue entries, the machine file, the database or job keys. A note file now holds text instead of nothing; older readers only count the files.

🤖 Generated with Claude Code

SpoBo and others added 5 commits October 12, 2026 11:10
The Queue view groups the jobs of one task-runner run under one row,
named by the command that started it (read from the process table:
`bun run ci:local` around `turbo run ...`). The taskguard calls running
inside a job, which have no queue entry, show under that job with their
CPU and memory, from the notes of #24 (which now hold the call's key).
← folds a row, → unfolds it. Running jobs are ordered by start, so rows
keep their place between loads.

`--wraps` says up front that a command runs other taskguard jobs: it runs
straight through from its first run. A queued run that had jobs inside it
prints advice to pass it.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…in the Config view

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@SpoBo
SpoBo merged commit 6ad6848 into master Oct 12, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant