Conversation
🛡️ Jit Security Scan Results✅ No security findings were detected in this PR
Security scan by Jit
|
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.
| return null; | ||
| } | ||
|
|
||
| List<Long> list = (List<Long>) data; |
There was a problem hiding this comment.
Response builder uses fragile List cast
Low Severity
The GCRA_RESPONSE_BUILDER casts data to List<Long>, which is unique among all response builders in this package — others consistently use List<Object> and convert elements individually. Due to type erasure, this unchecked cast always succeeds at runtime, but individual element access will throw ClassCastException if any value is a non-Long type (e.g., a Double returned under RESP3). Since retryAfter and fullBurstAfter represent fractional seconds and period is a double, this is a plausible concern.


resolves #4474
Note
Medium Risk
Adds a new Redis command surface (
GCRA) acrossJedis,UnifiedJedis, and pipelining plus new request/response types, which could affect command routing/serialization and API compatibility. CI/test matrix is also expanded to Redis 8.8, potentially surfacing version-specific behavior changes.Overview
Adds first-class support for Redis
GCRArate limiting, including newGCRAParamsfor argument building (with optionalNUM_REQUESTS) andGCRAResponseparsing, and wires the command throughProtocol,CommandObjects,Jedis,UnifiedJedis, and pipeline interfaces.Extends integration/unit coverage with new
GCRAtests (string + binary, unified + jedis) and updates the test environment to include Redis8.8(workflow matrix,Makefilesupported versions, and new.env.v8.8). Also simplifies RediSearch drop-index assertions to useassertThrows.Written by Cursor Bugbot for commit d3fed3b. This will update automatically on new commits. Configure here.