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

umputun / ralphex / 25141096770
83%

Build:
DEFAULT BRANCH: master
Ran 30 Apr 2026 12:33AM UTC
Jobs 1
Files 42
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

30 Apr 2026 12:31AM UTC coverage: 82.575% (+0.1%) from 82.426%
25141096770

push

github

web-flow
fix: trigger --wait retry on codex stderr-only quota errors (#311)

Codex's OpenAI/ChatGPT plan-quota error ("ERROR: You've hit your usage
limit") is emitted on stderr while stdout is empty on failure. Previously
pattern matching scanned stdout only, so --wait could never retry on it
and the process exited with a generic error.

Fix:
- processStderr now scans each incoming line live for limit/error
  patterns before tail truncation, so detection is eviction- and
  truncation-resistant (the 5-line / 256-rune error-context buffer
  remains for human-readable error messages only).
- The stderr scan is gated by isCodexErrorLine (matches error/fatal/
  panic prefix, case-insensitive) so progress chatter — header banners,
  bold summaries, model thinking that may legitimately mention "rate
  limit" while reviewing code — cannot trigger false positives.
- checkPatterns priority is limit-class first across both sources:
  stdout limit -> stderr limit -> stdout error -> stderr error. A real
  prefix-gated stderr quota diagnostic cannot be downgraded to a
  non-retryable PatternMatchError when partial stdout matches an
  ErrorPattern. Within a class, stdout wins over stderr.
- "You've hit your usage limit" added to default codex_limit_patterns
  and codex_error_patterns. Users who customized the previous default
  (Rate limit,quota exceeded) need to append the new wording manually
  or comment the line out to inherit embedded defaults; README.md and
  llms.txt include the upgrade note.

Tests cover stderr-only matches (limit and error), eviction resistance
with >5 trailing lines, 256-rune truncation resistance, prefix-gate
suppression of non-error chatter, stdout-vs-stderr precedence within
and across classes, cancellation handling, the clean-exit guard, and
the isCodexErrorLine helper directly.

Related to #308

88 of 88 new or added lines in 2 files covered. (100.0%)

6786 of 8218 relevant lines covered (82.57%)

221.41 hits per line

Jobs
ID Job ID Ran Files Coverage
1 25141096770.1 30 Apr 2026 12:33AM UTC 42
82.57
GitHub Action Run
Source Files on build 25141096770
  • Tree
  • List 42
  • Changed 3
  • Source Changed 0
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 0f5afcc9 on github
  • Prev Build on master (#25035377090)
  • Next Build on master (#25155441847)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc