Conversation
|
Claude finished @flcl42's task in 8m 12s —— View job PR Review: Improve eth/70 checks
SummaryThe PR substantially revises the eth/70 receipt handler to: (1) serve receipts in batches up to a soft limit, (2) allow the response to grow past the soft limit to deliver a complete single block (capped at a hard limit), and (3) split oversized single blocks across multiple requests. The implementation is well-structured, test coverage is comprehensive (~24 new test cases), and the validation logic in Two medium-severity bugs were identified; everything else is low/informational. FindingsMedium
Low
Correctness walk-through highlights
|
|
@claude review again |
|
Claude finished @flcl42's task in 7m 21s —— View job PR Review: Improve eth/70 checks
SummaryAll Medium findings from the previous review have been addressed in the "Review" commit ( Previous findings — status
Fresh analysisCorrectness walk-through (re-verified):
No new bugs found. Remaining low-priority itemL3 ( Overall: the PR is ready to merge. All blocking issues are resolved; the only open item (L3) is a minor efficiency improvement that can be addressed in a follow-up. |
|
@claude review again |
|
Claude finished @flcl42's task in 7m 3s —— View job PR Review: Improve eth/70 checks
SummaryThis revision addresses all remaining items from the previous review, including the previously-open L3 (O(N²) hash copies in Previous findings — final status
L3 fix walk-throughThe O(N²) fix is clean:
New findingsInformational
Correctness re-verification
No new bugs found. The PR is ready to merge. |
3e5d354 to
c81d0fa
Compare
|
@claude review once more |
|
Claude finished @flcl42's task in 5m 37s —— View job PR Review: Improve eth/70 checks
SummaryThis is the fourth pass over the PR. All Medium and Low findings from the previous three rounds have been addressed, including the previously-open informational about Previous findings — final status
Fresh analysisCorrectness re-verification (all clean):
No new bugs found. One minor observation (not a blocker)Line 415 of When Overall: the PR is ready to merge. All blocking issues are resolved and the implementation is correct, well-tested, and clean. |
|
Claude finished @flcl42's task in 6m 33s —— View job PR Review: Improve eth/70 checks
SummaryThis revision introduces accurate RLP-based size computation ( Previous findings — final status
New changes — correctness walkthroughAccurate RLP size accounting (
Hard-limit enforcement on receive side (line 266) if (size > HardOutgoingReceiptsMessageSizeLimit)
throw new SubprotocolException($"Received eth/70 receipts response above hard limit …");Closes the adversarial amplification gap. Correct. Per-receipt log-gas validation
Traced through all page-boundary combinations: fresh block → partial → complete, multi-page partial, continuation-within-batch. No stale-reads or reset-ordering bugs found. Line 296 reads
Test assertion Informational (no action required)
Allowing
New test coverage
No new bugs found. The PR is ready to merge. |
LukaszRozmej
left a comment
There was a problem hiding this comment.
This code feels complicated, can it be simplified?
| list.Dispose(); | ||
| } | ||
|
|
||
| private sealed class SlicedOwnedReadOnlyList<T>(IOwnedReadOnlyList<T> list, int start, int count) |
There was a problem hiding this comment.
maybe this should be a struct? (then returned by it's type from Slice to avoid boxing)
Changes
Types of changes
What types of changes does your code introduce?
Testing
Requires testing
If yes, did you write tests?