Skip to content

feat(tui): typed step chips for tests, git, lint, warnings, http, hits - #54

Merged
jkyberneees merged 1 commit into
mainfrom
feat/step-chips
Aug 31, 2026
Merged

feat(tui): typed step chips for tests, git, lint, warnings, http, hits#54
jkyberneees merged 1 commit into
mainfrom
feat/step-chips

Conversation

@jkyberneees

Copy link
Copy Markdown
Contributor

Summary

Step lines earn at most one typed chip, matched from structured output only:

  • Test verdicts with counts, skips, and go coverage (go test, pytest, jest, vitest, cargo, TAP) — replaces the loose substring matcher (\nok , " passed", testsuite) that green-lit prose like "Build passed" and even misreported failing cargo runs as green
  • Git⎇ a1b2c3d fix: subject for commits, ↑ main / ↑ up to date for pushes (arg-gated)
  • Lint✓ lint clean / red N issues incl. golangci-lint's colon form (word-gated)
  • Warnings — amber ⚠ N warnings from compiler summary lines only
  • HTTP● 200 green/amber/red for curl/wget/httpie (client-gated, final status wins)
  • Search hitsN hits on grep/glob/search steps only

Hardening (2-judge review): SGR color residue stripped before matching, counted verdicts fire only on summary-shaped lines (incl. default pytest ==== padding), doubled runner summaries dedupe, cargo per-package repeats preserved.

Review

2 expert judges ran on this diff; all MUST-FIX findings (ANSI residue, prose verdicts, default-pytest summary shape) are fixed with fixture rows.

Test plan

  • make fmt / make vet / make lint — 0 issues
  • make test — full race suite green
  • chip table in renderers_test.go covers every chip family incl. colored output, prose noise, and gating negatives

Step lines earn at most one typed chip, matched from structured output
only and gated on the command words where prose could leak in:

- test verdicts with counts, skips, and go coverage (go test, pytest,
  jest, vitest, cargo, TAP) — loose substring matching ("ok ", " passed",
  "testsuite") is gone, prose never goes green, and failing cargo runs
  no longer render as passing
- git commits (⎇ hash + subject) and pushes (↑ branch)
- linter results (✓ lint clean / N issues)
- compiler warning summaries (⚠ N warnings, amber)
- HTTP statuses for curl/wget/httpie (● code, green/amber/red)
- search hit counts on grep/glob/search steps

SGR color residue is stripped before matching, counted verdicts fire
only on summary-shaped lines, and doubled runner summaries dedupe.
@jkyberneees
jkyberneees merged commit 9a8ed0e into main Aug 31, 2026
7 checks passed
@jkyberneees
jkyberneees deleted the feat/step-chips branch August 31, 2026 13:14
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