Conversation
a-shannon
force-pushed
the
fix/strict-transaction-bytes-parser
branch
from
September 4, 2026 19:03
324cb59 to
b270775
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
/transactions/bytesand/transactions/checkBytes.Invariant
Each endpoint accepts exactly one canonical serialized
ErgoTransaction. Valid transaction bytes followed by any suffix must not be accepted as the same transaction.Review and prerequisites
Head
8a74e9a9f946e708cd4e11198f9d3c9f044ed880preserves both owning files fromb2707758f8f8bf8ac27b1d12a37404cb2fb5fb79unchanged.The branch reuses convergence helper H
0f9f75c1, selected-header observer Ubcfcd611, settled-seed/isolation fixture D71f33c6e, and synchronizer reader fixture R76e5ec4b, owned by #2535. Continuation/download correction Gd62c945aremains owned by #2511; header/body cache wake-up Xa772a5cbremains owned by #2549.Integrate the required shared/production increments before this REST correction; H precedes U/D and R precedes G. The whole #2535 branch is not a prerequisite of #2511. GitHub's upstream-master diff includes the cumulative prerequisites until they merge. The observer checks each node's selected header instead of combining retained alternatives; existing convergence assertions, mining targets and deadlines remain intact.
Validation
Normal Test and IntegrationTest compilation passed on the final tree, with 82/82 focused cases: 49 synchronization/history/cache cases and 33 convergence/isolation cases.
Historical validation of the unchanged owning correction:
TransactionApiRouteSpecpassed 24/25; the tailed payload returned200instead of400.00with the exact400 / bad.requestresponse.git diff --checkpassed.Those owner checks are reused; they were not rerun as part of the new 82-case gate. The shared liveness composition passed native CI at pinned #2535 head
efbd1e917fe74f0f680a2e3c9e4d93595a59b06a(run 34734047921). This supports the prerequisite composition without proving an exclusive cause for historical integration failures.The local gate did not run Docker. Exact-head native CI for this updated PR is pending; follow the integration tracker.