-
Notifications
You must be signed in to change notification settings - Fork 4.5k
Feature Gate Activation Process
Follow these steps to activate a feature gate. This process is to ensure communication and coordination happens, so node operators/developer/engineers are not blindsided. The specific CLI commands and args are mostly left out on purpose, as learning how to use the CLI is not the goal of this doc; if you are unsure of the commands, seek help before proceeding. Note the precursor to these steps can be found at Feature Gate Setup Process
Please check back here before each activation, as this checklist will be updated.
The timeline for an activation varies and requires weighing the urgency of the gated feature against the inconvenience of forking validators and RPC nodes. When possible avoid forking validators and RPC nodes and avoid activating feature gates on the weekend. If you're unsure ask for guidance in #releng
.
Here's a sample schedule. Adjust it based on the urgency of the feature, feedback from operators
Time until epoch boundary | Action |
---|---|
24 hrs | Post intent in releng |
23 hrs | Post intent in cluster channel |
12 hrs | Schedule feature gate for activation and post Discord reminders that the activation is scheduled. |
0 hrs | The cluster will automatically enable your feature gate. Do Post activation tasks. |
Run solana feature status -u[tdm]
to see if feature gate activation is allowed for the required version. Note, this does not consider --yolo
.
Refer to the Feature Gate Activation Schedule to make sure this feature gate is next to be activated. If not, do not proceed without further coordination in #releng
on the Solana Discord.
3. Message intent-to-activate in #releng
Message that you intend to activate a feature gate. Specify the cluster (i.e. Testnet, Devnet, Mainnet-beta), and the feature gate name/description. For example:
🚨 Feature Gate Activation 🚨 Any objections to activating this feature gate on Testnet for epoch 400, beginning approximately 1 day 2 hours from now?
Ftok4njE8b7tDffYkC5bAbCaQv5sL6jispYrprzatUwN | SPL Token Program version 3.4.0 release #24740
Template:
🚨 **Feature Gate Activation** 🚨 Any objections to activating this feature gate on *<cluster>* for epoch <next epoch>, beginning approximately <days> day(s) <hours> hour(s) from now?
<feature pubkey> | <feature description>
Channels:
#mb-announcements
#testnet-announcements
#devnet-announcements
Template:
🚨 **Feature Gate Activation** 🚨 I am planning to activate this feature gate on *<cluster>* for epoch <next epoch>, beginning in approximately <days> day(s) <hours> hour(s). This will fork nodes not running at least <minimum version(s)>. Please see #releng for discussion.
<feature pubkey> | <feature description>
Double check you are specifying the correct cluster!
Perform the feature gate activation. Plan to be available and around at the next epoch boundary to ensure the activation goes smoothly.
solana feature activate my-feature-key.json -ut
Message in #releng
and the appropriate #<cluster>-announcements
that the feature gate has been activated
- Update the Feature Gate Activation Schedule
- Update the feature Gate's PR for the activation epoch
- General
- Feature Gates
- Technical
- Schedule
- Testnet