feat: sidemux log CLI + log/close guidance for agents - #45
Merged
Conversation
github#36: the per-job log file keeps raw terminal bytes — ANSI, OSC,
one spinner frame per CR repaint — so grepping a failed job's log
returned spinner frames instead of the error. New 'sidemux log
<job_id|path>' prints the log as display-ready text (escapes stripped,
CR overwrites collapsed to the final frame), and the run tool
description now points agents at read {since:job, grep} or the CLI
instead of raw grep.
github#34: close: true destroys a failed pane before diagnostics can
be read. The close field description and README now say to leave it
off for first runs of checks likely to fail. Also updates the stale
guard-suggestion example in setup-delegation.md (description, not
close, is what the guard suggests today).
Closes #36
Closes #34
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #36. Closes #34.
#36 — raw log unusable for grep
The per-job log holds raw terminal bytes: ANSI colors, OSC titles, and one spinner frame per
\rrepaint, so grepping a failed job's log returns spinner frames instead of the error.sidemux log <job_id|log-file>prints the log as display-ready text — escapes stripped, CR overwrites collapsed to their final frame (exactly whatread since=\"job\"already does internally). Greps like plain output.runtool description now steers agents toread {since: \"job\", grep}or the CLI instead of raw grep; README and how-it-works.md updated to match.Unit tests cover the github#36 shape directly: colored spinner-redraw log in,
ERROR …greppable text out; plus path/missing-file/usage paths.#34 — close: true destroys failure diagnostics
closefield description now warns: a failed pane is gone, follow-upreaderrors, only the tail + log_file survive — leave it off for first runs of checks likely to fail.description, notclose: true, since the description requirement landed).Full gate green (typecheck, lint, test, build).