Skip to content

Commit

Permalink
update feature gates
Browse files Browse the repository at this point in the history
  • Loading branch information
ngundotra committed Jan 21, 2025
1 parent eff70df commit 5eca299
Showing 1 changed file with 40 additions and 5 deletions.
45 changes: 40 additions & 5 deletions app/utils/feature-gate/featureGate.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,15 @@ export type FeatureInfoType = {
simd: { number: number; link: string } | null;
devnetActivationEpoch: number | null;
testnetActivationEpoch: number | null;
mainnetActivationEpoch: number | null;
};

export const FEATURES: FeatureInfoType[] = [
{
description: 'Two new instructions for moving value between stake accounts without holding Withdrawer',
devnetActivationEpoch: 798,
key: '7bTK6Jis8Xpfrs8ZoUfiMDPazTcdPcTWheZFJTA5Z6X4',
mainnetActivationEpoch: 727,
simd: {
link: 'https://github.com/solana-foundation/solana-improvement-documents/blob/main/proposals/0148-stake-program-move-instructions.md',
number: 148,
Expand All @@ -32,6 +34,7 @@ export const FEATURES: FeatureInfoType[] = [
description: 'Enable confidential token transfers',
devnetActivationEpoch: 801,
key: 'zkhiy5oLowR7HY4zogXjCjeMXyruLqBwSWH21qcFtnv',
mainnetActivationEpoch: null,
simd: {
link: 'https://github.com/solana-foundation/solana-improvement-documents/blob/main/proposals/0153-elgamal-proof-program.md',
number: 153,
Expand All @@ -43,6 +46,7 @@ export const FEATURES: FeatureInfoType[] = [
description: 'Passes on 100% of priority fee to validators',
devnetActivationEpoch: 805,
key: '3opE3EzAKnUftUDURkzMgwpNgimBAypW1mNDYH4x4Zg7',
mainnetActivationEpoch: null,
simd: {
link: 'https://github.com/solana-foundation/solana-improvement-documents/blob/main/proposals/0096-reward-collected-priority-fee-in-entirety.md',
number: 96,
Expand All @@ -54,6 +58,7 @@ export const FEATURES: FeatureInfoType[] = [
description: 'Simplify account loading',
devnetActivationEpoch: 800,
key: 'EQUMpNFr7Nacb1sva56xn1aLfBxppEoSBH8RRVdkcD1x',
mainnetActivationEpoch: null,
simd: null,
testnetActivationEpoch: 713,
title: 'Disable account loader special case',
Expand All @@ -62,6 +67,7 @@ export const FEATURES: FeatureInfoType[] = [
description: 'Removing legacy floating number arithmetic operation in fee calculation, make it integer-based',
devnetActivationEpoch: 802,
key: 'BtVN7YjDzNE6Dk7kTT7YTDgMNUZTNgiSJgsdzAeTg2jF',
mainnetActivationEpoch: null,
simd: null,
testnetActivationEpoch: 715,
title: 'Removing unwanted rounding in fee calculation',
Expand All @@ -71,6 +77,7 @@ export const FEATURES: FeatureInfoType[] = [
'Unified syscall interface for all sysvars, without needing to include sysvar address in transactions',
devnetActivationEpoch: 806,
key: 'CLCoTADvV64PSrnR6QXty6Fwrt9Xc6EdxSJE4wLRePjq',
mainnetActivationEpoch: null,
simd: {
link: 'https://github.com/solana-foundation/solana-improvement-documents/blob/main/proposals/0127-get-sysvar-syscall.md',
number: 127,
Expand All @@ -82,6 +89,7 @@ export const FEATURES: FeatureInfoType[] = [
description: 'Enable new voting instruction',
devnetActivationEpoch: 813,
key: 'tSynMCspg4xFiCj1v3TDb4c7crMR5tSBhLz4sF7rrNA',
mainnetActivationEpoch: null,
simd: {
link: 'https://github.com/solana-foundation/solana-improvement-documents/blob/main/proposals/0138-deprecate-legacy-vote-instructions.md',
number: 138,
Expand All @@ -93,6 +101,7 @@ export const FEATURES: FeatureInfoType[] = [
description: 'Turn feature gate syscall into a BPF program, enabling revocation of pending features.',
devnetActivationEpoch: 816,
key: '4eohviozzEeivk1y9UbrnekbAFMDQyJz5JjA9Y6gyvky',
mainnetActivationEpoch: null,
simd: {
link: 'https://github.com/solana-foundation/solana-improvement-documents/blob/main/proposals/0089-programify-feature-gate-program.md',
number: 89,
Expand All @@ -103,8 +112,9 @@ export const FEATURES: FeatureInfoType[] = [
// Upcoming Devnet features
{
description: 'Migrate the config program to a BPF program',
devnetActivationEpoch: null,
devnetActivationEpoch: 817,
key: '2Fr57nzzkLYXW695UdDxDeR5fhnZWSttZeZYemrnpGFV',
mainnetActivationEpoch: null,
simd: {
link: 'https://github.com/solana-foundation/solana-improvement-documents/blob/main/proposals/0140-migrate-config-to-core-bpf.md',
number: 140,
Expand All @@ -114,8 +124,9 @@ export const FEATURES: FeatureInfoType[] = [
},
{
description: 'Allow core developers to exclude system programs from write-locking transactions',
devnetActivationEpoch: null,
devnetActivationEpoch: 819,
key: '8U4skmMVnF6k2kMvrWbQuRUT3qQSiTYpSjqmhmgfthZu',
mainnetActivationEpoch: null,
simd: {
link: 'https://github.com/solana-foundation/solana-improvement-documents/blob/main/proposals/0105-dynamic-reserved-accounts-set.md',
number: 105,
Expand All @@ -125,8 +136,9 @@ export const FEATURES: FeatureInfoType[] = [
},
{
description: 'Improve performance of validator performance at epoch boundary by skipping rent collection',
devnetActivationEpoch: null,
devnetActivationEpoch: 824,
key: 'CGB2jM8pwZkeeiXQ66kBMyBR6Np61mggL7XUsmLjVcrw',
mainnetActivationEpoch: null,
simd: {
link: 'https://github.com/solana-foundation/solana-improvement-documents/blob/main/proposals/0183-skip-rent-rewrites.md',
number: 183,
Expand All @@ -139,6 +151,7 @@ export const FEATURES: FeatureInfoType[] = [
description: 'Disables rent collection for accounts, to be activated when all rent-paying accounts are gone',
devnetActivationEpoch: null,
key: 'CJzY83ggJHqPGDq8VisV3U91jDJLuEaALZooBrXtnnLU',
mainnetActivationEpoch: null,
simd: {
link: 'https://github.com/solana-foundation/solana-improvement-documents/blob/main/proposals/0084-disable-rent-fees-collection.md',
number: 84,
Expand All @@ -150,6 +163,7 @@ export const FEATURES: FeatureInfoType[] = [
description: 'Enable on-chain verification of Passkeys and the WebAuthn Standard (secp256r1) signatures',
devnetActivationEpoch: null,
key: 'sr11RdZWgbHTHxSroPALe6zgaT5A1K9LcE4nfsZS4gi',
mainnetActivationEpoch: null,
simd: {
link: 'https://github.com/solana-foundation/solana-improvement-documents/blob/main/proposals/0075-precompile-for-secp256r1-sigverify.md',
number: 75,
Expand All @@ -161,6 +175,7 @@ export const FEATURES: FeatureInfoType[] = [
description: 'Migrate the Address Lookup Table to a BPF program',
devnetActivationEpoch: null,
key: 'C97eKZygrkU4JxJsZdjgbUY7iQR7rKTr4NyDWo2E5pRm',
mainnetActivationEpoch: null,
simd: {
link: 'https://github.com/solana-foundation/solana-improvement-documents/blob/main/proposals/0128-migrate-address-lookup-table-to-core-bpf.md',
number: 128,
Expand All @@ -172,6 +187,7 @@ export const FEATURES: FeatureInfoType[] = [
description: 'Add a new syscall to get the epoch stake',
devnetActivationEpoch: null,
key: 'FKe75t4LXxGaQnVHdUKM6DSFifVVraGZ8LyNo7oPwy1Z',
mainnetActivationEpoch: null,
simd: {
link: 'https://github.com/solana-foundation/solana-improvement-documents/blob/main/proposals/0133-syscall-get-epoch-stake.md',
number: 133,
Expand All @@ -184,6 +200,7 @@ export const FEATURES: FeatureInfoType[] = [
'Removes pitfalls and foot-guns from the virtual machine and syscalls by enabling account data direct mapping',
devnetActivationEpoch: null,
key: 'GJVDwRkUPNdk9QaK4VsU4g1N41QNxhy1hevjf8kz45Mq',
mainnetActivationEpoch: null,
simd: {
link: 'https://github.com/solana-foundation/solana-improvement-documents/pull/219',
number: 219,
Expand All @@ -195,6 +212,7 @@ export const FEATURES: FeatureInfoType[] = [
description: 'Only vote for blocks with sufficiently sized fec sets',
devnetActivationEpoch: null,
key: 'ffecLRhhakKSGhMuc6Fz2Lnfq4uT9q3iu9ZsNaPLxPc',
mainnetActivationEpoch: null,
simd: null,
testnetActivationEpoch: null,
title: 'Vote only on full fec sets',
Expand All @@ -203,6 +221,7 @@ export const FEATURES: FeatureInfoType[] = [
description: 'Faster homomorphic hashing of accounts, enabling account state to be hashed in every block',
devnetActivationEpoch: null,
key: 'LtHaSHHsUge7EWTPVrmpuexKz6uVHZXZL6cgJa7W7Zn',
mainnetActivationEpoch: null,
simd: {
link: 'https://github.com/solana-foundation/solana-improvement-documents/blob/main/proposals/0215-accounts-lattice-hash.md',
number: 215,
Expand Down Expand Up @@ -256,6 +275,14 @@ export function UpcomingFeatures() {
<div className="card-body d-flex flex-column">
<div className="d-flex align-items-center mb-3">
<h4 className="card-title mb-0 text-decoration-underline">{feature.title}</h4>
</div>

<p className="card-text flex-grow-1">{feature.description}</p>

<div className="ms-n2 mb-2">
{cluster === Cluster.MainnetBeta && feature.mainnetActivationEpoch && (
<span className="badge bg-success ms-2">Active on Mainnet</span>
)}
{cluster === Cluster.Devnet && feature.devnetActivationEpoch && (
<span className="badge bg-success ms-2">Active on Devnet</span>
)}
Expand All @@ -264,10 +291,18 @@ export function UpcomingFeatures() {
)}
</div>

<p className="card-text flex-grow-1">{feature.description}</p>

<div className="activation-info mb-3">
<div className="mb-1">Cluster Activations</div>
{feature.mainnetActivationEpoch && (
<div className="mb-1">
<Link
href={`/epoch/${feature.mainnetActivationEpoch}?cluster=mainnet`}
className="epoch-link"
>
Mainnet Epoch {feature.mainnetActivationEpoch}
</Link>
</div>
)}
{feature.devnetActivationEpoch && (
<div className="mb-1">
<Link
Expand Down

0 comments on commit 5eca299

Please sign in to comment.