Deprecate legacy vote instructions
- Idea
- Draft
- Review
- Accept
- Implement
- Active
Decision brief
Why this proposal matters
Disables the legacy Vote, UpdateVoteState and CompactUpdateVoteState instruction variants.
Proposal at a glance
What changes
- deprecate legacy vote instructions, with key depVvnQ2UysGrhwdiwU42tCadZL8GcBb1i2GYhMopQv
- enable tower sync vote instruction, with key tSynMCspg4xFiCj1v3TDb4c7crMR5tSBhLz4sF7rrNA
- UpdateVoteState
Stakeholder map
Who is affected
Builders & client teams Impact unknown
No proposal-specific evidence was found for this group.
Action requirement unknownValidators & operators Medium impact
deprecate legacy vote instructions, with key depVvnQ2UysGrhwdiwU42tCadZL8GcBb1i2GYhMopQv
Action requirement unknownUsers & stakers Medium impact
Sending transactions that include the mentioned instructions will fail.
Action requirement unknownGovernance & ecosystem Impact unknown
No proposal-specific evidence was found for this group.
Action requirement unknownExact source revision
Full proposal document
0616093b2952Summary
Disables the legacy Vote, UpdateVoteState and CompactUpdateVoteState
instruction variants.
Motivation
These instructions are no longer sent by validator clients. It is cumbersome to support these old vote instructions and ensure parity.
Alternatives Considered
None
New Terminology
None
Detailed Design
When the features:
deprecate legacy vote instructions, with keydepVvnQ2UysGrhwdiwU42tCadZL8GcBb1i2GYhMopQvenable tower sync vote instruction, with keytSynMCspg4xFiCj1v3TDb4c7crMR5tSBhLz4sF7rrNA
are activated, the following instructions will result in an
InvalidInstructionData error:
VoteVoteSwitchUpdateVoteStateUpdateVoteStateSwitchCompactUpdateVoteStateCompactUpdateVoteStateSwitch
Enabling deprecate legacy vote instructions without
enable tower sync vote instruction should have no effect.
Impact
Sending transactions that include the mentioned instructions will fail.
Security Considerations
None
Backwards Compatibility
Incompatible
Evidence graph
Related proposals and rollout
One or more sources are unavailable.
Upstream review record
Upstream discussion & review
GitHub review is editorial context, not evidence of on-chain support, voting, or outcome.
PR #138 · merged SIMD-0138: Deprecate legacy vote instructions 6 comments and reviews · Feb 2, 2026Do you mind specifying which feature gate the TowerSync instruction is gated by?
GitHub ↗Minor nit: this isn't really down to the implementation, as feature activations are cluster-wide. If you do mean that each client implementation should explicitly do this check, could you explicitly state that, and specify what happens if this check fails? If not, could you re-word to make it clear that this is the responsibility of the feature activator? Thanks! 🙇
GitHub ↗updated to be clear on the interaction of these 2 features
GitHub ↗@jacobcreech @0xSol We have consensus on the Anza & Firedancer side. Suggest we give this SIMD 1 week time for community comments and then merge.
GitHub ↗We have consensus on the Anza & Firedancer side. Suggest we give this SIMD 1 week time for community comments and then merge. Alright, we'll merge on April 18th, 2024 if no other comments against this come up.
GitHub ↗Merging, no new comments.
GitHub ↗Provenance
Evidence & technical details
Rollout or chain data, source revisions, freshness and integrity. 2
Provenance
Evidence & technical details
Rollout or chain data, source revisions, freshness and integrity.SIMD
Deployment Status
6Uf8S75PVh91MYgPQSHnjRAPQq6an5BDv9vomrCwDqLeExact source revision
Sources & integrity
- Proposal document pinned_commit_blob
0616093b2952ed6de52c4a27d66aadd11d48d4f9 - simd-document document · stale · Sep 10, 2026
0616093b2952ed6de52c4a27d66aadd11d48d4f9
One or more sources are unavailable.
simd.watch community discussion · SIMD-0138
Powered by Giscus · Sign in with GitHub to comment
Community comments load when this section approaches the viewport.