• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

umputun / revdiff / 33944965331
92%

Build:
DEFAULT BRANCH: master
Ran 05 Sep 2026 04:37AM UTC
Jobs 1
Files 79
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

05 Sep 2026 04:35AM UTC coverage: 91.501%. Remained the same
33944965331

push

github

umputun
feat(launcher): herdr pane-scoped overlay (REVDIFF_HERDR_PANE=1)

under herdr a review replaces the whole tab view, so the agent pane that asked for it disappears for as long as the review lasts. herdr's working layout is an agent in one pane and you beside it, but the backend only ever calls `herdr tab create` + `pane run`, and the agent's pane holds the context the diff has to be judged against. `REVDIFF_AGTERM_PANE=1` already exists for the same reason on agterm, which has the same layout model.

`REVDIFF_HERDR_PANE=1` splits the caller's own pane and zooms it, so the review still gets the full tab area but the agent pane is one keypress away. it copies the shape agterm settled on: env-var opt-in, capability probe before passing a new flag, quiet degradation to the existing overlay. unset, the `tab create` block is reached byte-identical, because pane mode is a self-contained block ahead of it rather than a flag threaded through the shared path.

owning a pane means owning its teardown, and the rules are recorded in CLAUDE.md because none of them are guessable from the code alone:

- never guess which pane to close. a split that returns no usable pane id warns and exits rather than diffing `pane list`, since a recovered id may belong to another herdr client.
- `pane_not_found` is authoritative death; any other error is transient, so the wait loop keeps polling with a backoff rather than treating an unreachable control plane as a dead review.
- cleanup is decided by evidence from the pane, not by `pane run` returning. the dispatched script touches a marker, ownership is claimed before the call, and unknown state is preserved rather than destroyed -- a launcher killed on timeout leaves a live review open with nothing lost.
- a trapped signal is deferred until the in-flight command returns and then runs before the next statement, so the windows where a pane exists but is not yet named record the signal instead of exiting on it, and pay it once ownersh... (continued)

11821 of 12919 relevant lines covered (91.5%)

3457.68 hits per line

Jobs
ID Job ID Ran Files Coverage
1 33944965331.1 05 Sep 2026 04:37AM UTC 79
91.5
GitHub Action Run
Source Files on build 33944965331
  • Tree
  • List 79
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • dc5ed666 on github
  • Prev Build on master (#33943616859)
  • Next Build on master (#33945073964)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc