Add forward-compatibilty test and fix for using old client on new node#3281
Conversation
PR SummaryMedium Risk Overview On the GraphQL server, On the client, decoding of consensus parameters is changed so Reviewed by Cursor Bugbot for commit 8b93a69. Bugbot is set up for automated code reviews on this repo. Configure here. |
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, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 469766f. Configure here.
## Version v0.48.1 ### Changed - [3243](#3243): Migrating from standard Debian slim base Docker images to GCR Distroless images. - [3255](#3255): Adds client & server support for the existing protobuf HTTP-based remote RPC block accessor. - [3259](#3259): Bump wasmtime to 0.43.1 ### Fixed - [3258](#3258): Fix backward-compatiblity of GraphQL queries for pre-0.48.0 versions - [3261](#3261): Fix PoA leader deadlock after reconciliation import where `ensure_synced()` blocked forever because `execute_and_commit` marked reconciliation blocks as `Source::Network`, causing the SyncTask to transition to `NotSynced`. - [3264](#3264): Rollback stale preconfirmations in the mempool when the canonical block at that height omits the preconfirmed transactions, restoring spent inputs and removing dependent transactions. - [3269](#3269): Fix PoA reconciliation deadlock when the same block exists on all Redis nodes but with different epochs. `unreconciled_blocks` now groups votes by `block_id` only (tracking max epoch as tiebreaker), so identical blocks written during re-promotion storms count toward quorum. - [3272](#3272): Improve performance of redis block publish by making more parallel and optimizing the lua code - [3278](#3278): Fix mainnet block-production hang when a single ElastiCache leader-lock node enters a half-alive state. Bumps `redis` to 1.2 (the older 0.27 client did not apply the connect timeout to the post-connect handshake pipeline) and short-circuits `publish_block_on_all_nodes` on quorum so a stuck per-node thread can no longer wedge the publish path. - [3281](#3281): Add forward-compatibility for old clients and new fuel-core --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>

Linked Issues/PRs
Description
We are addressing a problem with forward-compatibility in our fuel-core client. We have recently added new consensus parameter versions and if users haven't updated their client to support the new parameters, it is just going to error. We want to prevent this from happening with the following changes:
This PR does two things
Checklist
Before requesting review
After merging, notify other teams
[Add or remove entries as needed]