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

ruby-grape / grape / 30170997140
97%
master: 97%

Build:
Build:
LAST BUILD BRANCH: fix/adversarial-sweep-2026-08
DEFAULT BRANCH: master
Ran 25 Jul 2026 07:08PM UTC
Jobs 32
Files 168
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

25 Jul 2026 07:07PM UTC coverage: 96.889% (+0.06%) from 96.829%
30170997140

push

github

ericproulx
Add fuzz test for adversarial nesting depth

Several validation-runtime paths recurse on the shape of incoming params:
AttributesIterator#do_each recurses into nested arrays, and coercion/oneof
walk nested hashes and arrays. A deeply nested payload is a resource-
exhaustion surface.

This fuzzes random shapes (nested arrays, hashes, mixed) and depths across
every recursive path — Array/Hash scopes, type: JSON, oneof, Set coercion —
sending real request bytes, and asserts the request is never answered with a
5xx / uncaught exception. It documents that the upstream parsers
(Rack param_depth_limit, JSON max_nesting) cap depth well below Grape's own
recursion ceiling, so the reachable surface degrades to a controlled 4xx.

The generator is seeded from RSpec's seed, so a failure reproduces with
--seed <n> and prints the offending endpoint/shape/depth.

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

1140 of 1230 branches covered (92.68%)

Branch coverage included in aggregate %.

3749 of 3816 relevant lines covered (98.24%)

25555.21 hits per line

Jobs
ID Job ID Ran Files Coverage
1 run-4.0-gemfiles/grape_entity.gemfile - 30170997140.1 25 Jul 2026 07:08PM UTC 167
51.05
GitHub Action Run
2 run-4.0-Gemfile - 30170997140.2 25 Jul 2026 07:08PM UTC 167
95.46
GitHub Action Run
3 run-4.0-gemfiles/dry_validation.gemfile - 30170997140.3 25 Jul 2026 07:08PM UTC 167
58.79
GitHub Action Run
4 run-3.3-gemfiles/rails_8_1.gemfile - 30170997140.4 25 Jul 2026 07:08PM UTC 168
95.46
GitHub Action Run
5 run-3.4-gemfiles/rack_3_0.gemfile - 30170997140.5 25 Jul 2026 07:08PM UTC 167
95.46
GitHub Action Run
6 run-4.0-gemfiles/multi_json_1_20.gemfile - 30170997140.6 25 Jul 2026 07:08PM UTC 167
48.35
GitHub Action Run
7 run-4.0-gemfiles/multi_xml.gemfile - 30170997140.7 25 Jul 2026 07:08PM UTC 167
47.74
GitHub Action Run
8 run-4.0-gemfiles/multi_json.gemfile - 30170997140.8 25 Jul 2026 07:08PM UTC 167
48.31
GitHub Action Run
9 run-3.3-gemfiles/rack_3_2.gemfile - 30170997140.9 25 Jul 2026 07:08PM UTC 167
95.46
GitHub Action Run
10 run-4.0-gemfiles/grape_swagger.gemfile - 30170997140.10 25 Jul 2026 07:08PM UTC 167
55.75
GitHub Action Run
11 run-3.4-gemfiles/rails_7_2.gemfile - 30170997140.11 25 Jul 2026 07:08PM UTC 168
95.46
GitHub Action Run
12 run-4.0-gemfiles/rack_3_0.gemfile - 30170997140.12 25 Jul 2026 07:08PM UTC 167
95.46
GitHub Action Run
13 run-4.0-gemfiles/rails_8_1.gemfile - 30170997140.13 25 Jul 2026 07:08PM UTC 168
95.46
GitHub Action Run
14 run-3.3-gemfiles/rails_8_0.gemfile - 30170997140.14 25 Jul 2026 07:08PM UTC 168
95.46
GitHub Action Run
15 run-3.4-gemfiles/rack_3_2.gemfile - 30170997140.15 25 Jul 2026 07:08PM UTC 167
95.46
GitHub Action Run
16 run-4.0-gemfiles/rack_2_2.gemfile - 30170997140.16 25 Jul 2026 07:08PM UTC 167
95.42
GitHub Action Run
17 run-3.3-gemfiles/rack_3_1.gemfile - 30170997140.17 25 Jul 2026 07:08PM UTC 167
95.46
GitHub Action Run
18 run-4.0-gemfiles/rails_7_2.gemfile - 30170997140.18 25 Jul 2026 07:08PM UTC 168
95.46
GitHub Action Run
19 run-3.4-gemfiles/rack_2_2.gemfile - 30170997140.19 25 Jul 2026 07:08PM UTC 167
95.42
GitHub Action Run
20 run-3.3-gemfiles/rack_3_0.gemfile - 30170997140.20 25 Jul 2026 07:08PM UTC 167
95.46
GitHub Action Run
21 run-3.4-Gemfile - 30170997140.21 25 Jul 2026 07:08PM UTC 167
95.46
GitHub Action Run
22 run-4.0-gemfiles/rack_3_2.gemfile - 30170997140.22 25 Jul 2026 07:08PM UTC 167
95.46
GitHub Action Run
23 run-4.0-gemfiles/multi_xml_0_8.gemfile - 30170997140.23 25 Jul 2026 07:08PM UTC 167
47.78
GitHub Action Run
24 run-4.0-gemfiles/hashie.gemfile - 30170997140.24 25 Jul 2026 07:08PM UTC 167
62.78
GitHub Action Run
25 run-3.4-gemfiles/rack_3_1.gemfile - 30170997140.25 25 Jul 2026 07:08PM UTC 167
95.46
GitHub Action Run
26 run-3.3-Gemfile - 30170997140.26 25 Jul 2026 07:08PM UTC 167
95.46
GitHub Action Run
27 run-3.4-gemfiles/rails_8_0.gemfile - 30170997140.27 25 Jul 2026 07:08PM UTC 168
95.46
GitHub Action Run
28 run-4.0-gemfiles/rails_8_0.gemfile - 30170997140.28 25 Jul 2026 07:08PM UTC 168
95.46
GitHub Action Run
29 run-4.0-gemfiles/rack_3_1.gemfile - 30170997140.29 25 Jul 2026 07:08PM UTC 167
95.46
GitHub Action Run
30 run-3.4-gemfiles/rails_8_1.gemfile - 30170997140.30 25 Jul 2026 07:08PM UTC 168
95.46
GitHub Action Run
31 run-3.3-gemfiles/rack_2_2.gemfile - 30170997140.31 25 Jul 2026 07:08PM UTC 167
95.42
GitHub Action Run
32 run-3.3-gemfiles/rails_7_2.gemfile - 30170997140.32 25 Jul 2026 07:08PM UTC 168
95.46
GitHub Action Run
Source Files on build 30170997140
  • Tree
  • List 168
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #30170997140
  • 688a835b on github
  • Prev Build on master (#30166451855)
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