diff --git a/genesis/builder/builder.go b/genesis/builder/builder.go index a6df655c35..98d4ce00c8 100644 --- a/genesis/builder/builder.go +++ b/genesis/builder/builder.go @@ -58,6 +58,9 @@ var ( ZChainAliases = AliasesFor("Z") GChainAliases = AliasesFor("G") KChainAliases = AliasesFor("K") + IChainAliases = AliasesFor("I") + OChainAliases = AliasesFor("O") + RChainAliases = AliasesFor("R") // Network-specific genesis messages (Latin for mainnet, descriptive for others) // Mainnet: "Lux et Libertas" - Light and Liberty @@ -861,6 +864,36 @@ func Aliases(genesisBytes []byte) (map[string][]string, map[ids.ID][]string, err path.Join(constants.ChainAliasPrefix, "kms"), } chainAliases[chainID] = KChainAliases + case constants.IdentityVMID: + apiAliases[endpoint] = []string{ + "I", + "identity", + "identityvm", + "id", + path.Join(constants.ChainAliasPrefix, "I"), + path.Join(constants.ChainAliasPrefix, "identity"), + } + chainAliases[chainID] = IChainAliases + case constants.OracleVMID: + apiAliases[endpoint] = []string{ + "O", + "oracle", + "oraclevm", + "feed", + path.Join(constants.ChainAliasPrefix, "O"), + path.Join(constants.ChainAliasPrefix, "oracle"), + } + chainAliases[chainID] = OChainAliases + case constants.RelayVMID: + apiAliases[endpoint] = []string{ + "R", + "relay", + "relayvm", + "msg", + path.Join(constants.ChainAliasPrefix, "R"), + path.Join(constants.ChainAliasPrefix, "relay"), + } + chainAliases[chainID] = RChainAliases } } return apiAliases, chainAliases, nil diff --git a/genesis/builder/registry.go b/genesis/builder/registry.go index 4717ca144b..20027e3e11 100644 --- a/genesis/builder/registry.go +++ b/genesis/builder/registry.go @@ -66,6 +66,9 @@ var Registry = []ChainSpec{ {Letter: "Z", VMID: constants.ZKVMID, Aliases: []string{"zk", "zkvm"}, Name: "Z-Chain"}, {Letter: "G", VMID: constants.GraphVMID, Aliases: []string{"graph", "graphvm", "dgraph"}, Name: "G-Chain"}, {Letter: "K", VMID: constants.KeyVMID, Aliases: []string{"key", "keyvm"}, Name: "K-Chain"}, + {Letter: "I", VMID: constants.IdentityVMID, Aliases: []string{"identity", "identityvm", "id"}, Name: "I-Chain"}, + {Letter: "O", VMID: constants.OracleVMID, Aliases: []string{"oracle", "oraclevm", "feed"}, Name: "O-Chain"}, + {Letter: "R", VMID: constants.RelayVMID, Aliases: []string{"relay", "relayvm", "msg"}, Name: "R-Chain"}, } // specsByLetter is an O(1) lookup built once at package init. diff --git a/genesis/builder/registry_test.go b/genesis/builder/registry_test.go index 370bc13f69..036d8d7c8f 100644 --- a/genesis/builder/registry_test.go +++ b/genesis/builder/registry_test.go @@ -45,6 +45,9 @@ func TestChainAliasesRegistryParity(t *testing.T) { {"Z", ZChainAliases, []string{"Z", "zk", "zkvm"}}, {"G", GChainAliases, []string{"G", "graph", "graphvm", "dgraph"}}, {"K", KChainAliases, []string{"K", "key", "keyvm"}}, + {"I", IChainAliases, []string{"I", "identity", "identityvm", "id"}}, + {"O", OChainAliases, []string{"O", "oracle", "oraclevm", "feed"}}, + {"R", RChainAliases, []string{"R", "relay", "relayvm", "msg"}}, } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { @@ -73,6 +76,9 @@ func TestVMAliasesRegistryParity(t *testing.T) { constants.ZKVMID: {"zkvm", "zk"}, constants.GraphVMID: {"graphvm", "graph", "dgraph"}, constants.KeyVMID: {"keyvm", "key"}, + constants.IdentityVMID: {"identity", "identityvm", "id"}, + constants.OracleVMID: {"oracle", "oraclevm", "feed"}, + constants.RelayVMID: {"relay", "relayvm", "msg"}, secp256k1fx.ID: {"secp256k1fx"}, nftfx.ID: {"nftfx"}, propertyfx.ID: {"propertyfx"},