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

ruby-grape / grape / 30218032275 / 17
97%
master: 97%

Build:
Build:
LAST BUILD BRANCH: fix/adversarial-sweep-2026-08
DEFAULT BRANCH: master
Ran 26 Jul 2026 08:01PM UTC
Files 167
Run time 4s
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

26 Jul 2026 08:00PM UTC coverage: 95.533% (+0.008%) from 95.525%
30218032275.17

push

github

ericproulx
Let a cascading route hand over to every remaining route

Router#transaction sent a cascading match straight to the greedy
neighbour — the last route registered for the path — and returned its
answer, so any route registered between the first match and that last
one was unreachable. With three mounted API versions plus a catch-all
`route :any, '*path'`, v1 and v3 were served while v2 answered 406; the
shortcut only ever looked correct with exactly two versions, where "the
last route" happens to be the sibling.

Try the method's remaining routes (#rotation) as soon as a match
cascades, before the ANY routes and the greedy neighbour, and keep the
priority order otherwise intact. A consequence, and what cascade: true
means: with a catch-all present, an unmatched version now falls through
to it rather than surfacing the versioner's 406. cascade: false still
answers 406 immediately and never consults the catch-all.

Also close the body of every superseded cascading response — Rack
requires it, and rotation previously leaked them (Rack::Lint flagged
this as soon as a third sibling made the path reachable).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

1150 of 1266 branches covered (90.84%)

Branch coverage included in aggregate %.

3747 of 3860 relevant lines covered (97.07%)

1077.44 hits per line

Source Files on job run-3.3-Gemfile - 30218032275.17
  • Tree
  • List 167
  • Changed 1
  • Source Changed 1
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Build 30218032275
  • ce310879 on github
  • Prev Job for on fix-router-cascade-sibling-routes (#30216088388.5)
  • Next Job for on fix-router-cascade-sibling-routes (#30218047118.8)
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