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

umputun / agterm / 33194348513
97%

Build:
DEFAULT BRANCH: master
Ran 28 Aug 2026 05:27PM UTC
Jobs 1
Files 96
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

28 Aug 2026 05:22PM UTC coverage: 97.954% (+0.002%) from 97.952%
33194348513

push

github

web-flow
fix(agent-status): refuse a hooks value the merge cannot read, and silence a regex compile error (#500)

follow-ups from the #461 review.

`mergeClaudeSettings` read `hooks`, and each of the four events it writes, with `as?` and an empty
default, so a wrong-TYPED value was indistinguishable from an absent one and the merge wrote over it.
A hand-edited `"hooks": "nope"` lost the whole key; a `"Stop"` holding anything but an array of
objects lost that event. The `.bak` made this recoverable, not safe. Both shapes now throw
`malformedExistingSettings`, which the installer already handles by leaving the file alone and
showing the manual instructions. Only the four written events are checked, so an unrelated event of
any shape still round-trips untouched. The install alert said "isn't valid JSON", which that file is,
so it now names all three causes instead of sending the user after a syntax error that isn't there.

an AGTERM_AGENT_RE override authored as PCRE, which fish and zsh under RE_MATCH_PCRE both accept, is
invalid as the ERE integration.sh matches with. Bash returns 2 quietly, zsh prints `failed to compile
regex` from a preexec hook, so the line appears before every prompt. The redirect goes on the match
rather than the whole hook, so an error from the status wrapper still reaches the user, and the exit
status is unchanged: 2 for an invalid expression, 1 for no match. The Claude adapter already
suppressed the identical construct.

two invariants had no test that could fail. The fish export test asserted only that the re-export
line was present, so flipping `if set -q` to `if not set -q` kept it green while swapping the two
branches, which drops a user's override and exports the default in its place; it now pins the block's
shape and order. Nothing bound the adapter's `is_agent` literals to integration.sh's default regex
either, though the script's own comment states the invariant and #461 shipped it broken once. That
one asserts a subset rather th... (continued)

11 of 11 new or added lines in 1 file covered. (100.0%)

8233 of 8405 relevant lines covered (97.95%)

4854866.98 hits per line

Jobs
ID Job ID Ran Files Coverage
1 33194348513.1 28 Aug 2026 05:27PM UTC 96
97.95
GitHub Action Run
Source Files on build 33194348513
  • Tree
  • List 96
  • Changed 1
  • Source Changed 1
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #33194348513
  • 88965330 on github
  • Prev Build on master (#33191513899)
  • Next Build on master (#33195546705)
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