Output polish: nine paper cuts across formatters and CLI - #163
Merged
Conversation
- fmtDur renders hours as hours ('2h30m', was '150m')
- pipes escaped in markdown/LLM table names (a job named 'a|b' broke
the table)
- JSON emits "diagnostics": [] and "findings": [] instead of null
(fixed at the formatter boundary so directly-built results are
covered too) — null broke jq '.diagnostics[]'
- Diagnostic.String() shows the wrapped cause ('failed to cache: disk
full', was 'failed to cache')
- percentile displays floor: p99.8 rendered as 'p100 — slower than
100% of runs', which includes the run itself
- -q/--quiet silences all stderr (progress, diagnostics, timing)
- --format gets shell completion values
- --since 0d and future dates rejected before any API call
- compactResult comment matches what the code filters
(ROADMAP U7)
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.
Fixes ROADMAP U7 — the output-polish batch, each pinned by a test written red-first (except the comment fix and completion, which are glue):
fmtDurhours150mfor a 2.5h durationbuild|testbroke the table row"diagnostics": nulljq '.diagnostics[]'errors; now[](fixed at the formatter boundary — the engine-init approach missed directly-constructed results, which the test caught)Diagnostic.String()dropped the causefailed to cache 5 runswith no why; now appends: disk fullp99.8→ "p100 — slower than 100% of runs" (includes the run itself); floors to p99--since 0d/future-q/--quiet--formatcompletioncobra.FixedCompletionscompactResultcommentLive-verified: quiet JSON run produces 0 stderr bytes and
.diagnosticsis an array;--since 0derrors instantly withmust be in the past.