You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: tooling/sparta/packages/discord/src/slashCommands/operators/register.ts
+10-5Lines changed: 10 additions & 5 deletions
Original file line number
Diff line number
Diff line change
@@ -20,28 +20,33 @@ export async function showRegistrationHelp(
20
20
constregistrationEmbed=newEmbedBuilder()
21
21
.setTitle("📝 How to Get the Apprentice Role")
22
22
.setDescription(
23
-
"Follow these steps to generate a sync proof and register your validator node on the discord server"
23
+
"Follow these simple steps to generate a sync proof and register your validator node on the Discord server"
24
24
)
25
25
.setColor(0x4bb543)// Green color
26
26
.addFields([
27
27
{
28
28
name: "📋 Step 1: Get the latest proven block number",
29
-
value: '```bash\ncurl -s -X POST -H \'Content-Type: application/json\' \\\n-d \'{"jsonrpc":"2.0","method":"node_getL2Tips","params":[],"id":67}\' \\\n<your-node-url> | jq ".result.proven.number"\n```\n• Save this block number for the next steps\n• Example output: `12345`',
29
+
value: '```bash\ncurl -s -X POST -H \'Content-Type: application/json\' \\\n-d \'{"jsonrpc":"2.0","method":"node_getL2Tips","params":[],"id":67}\' \\\n<your-node>:<your-port> | jq -r ".result.proven.number"\n```\n• Replace `<your-node>:<your-port>` with your node\'s URL, for example `http://localhost:8545` or `https://mynode.example.com:8545`\n• Save this block number for the next steps\n• Example output: `12345`',
30
30
inline: false,
31
31
},
32
32
{
33
33
name: "🔍 Step 2: Generate your sync proof",
34
-
value: '```bash\ncurl -s -X POST -H \'Content-Type: application/json\' \\\n-d \'{"jsonrpc":"2.0","method":"node_getArchiveSiblingPath","params":["<block-number>","<block-number>"],"id":67}\' \\\n<your-node-url> | jq ".result"\n```\n• Replace `<block-number>` with the number from Step 1\n• This will output a long base64-encoded string - save it for registration',
34
+
value: '```bash\ncurl -s -X POST -H \'Content-Type: application/json\' \\\n-d \'{"jsonrpc":"2.0","method":"node_getArchiveSiblingPath","params":["<block-number>","<block-number>"],"id":67}\' \\\n<your-node>:<your-port> | jq -r ".result"\n```\n• Replace `<your-node>:<your-port>` with the same URL you used in Step 1\n• Replace both instances of `<block-number>` with the number from Step 1 (example: 12345)\n• This will output a long base64-encoded string - copy it completely\n• Example command with values filled in:\n```bash\ncurl -s -X POST -H \'Content-Type: application/json\' \\\n-d \'{"jsonrpc":"2.0","method":"node_getArchiveSiblingPath","params":["12345","12345"],"id":67}\' \\\nhttp://localhost:8545 | jq -r ".result"\n```',
35
35
inline: false,
36
36
},
37
37
{
38
38
name: "✅ Step 3: Register with Discord",
39
-
value: "Run the following command in this Discord server:\n```\n/operator register <node-address> <block-number> <proof>\n```\n• `<node-address>`: Your Ethereum validator address\n• `<block-number>`: The block number from Step 1\n• `<proof>`: The base64 string from Step 2",
39
+
value: "Type the following command in this Discord server:\n```\n/operator register\n```\n**IMPORTANT**: After typing the command, Discord will display option fields that look like this:\n```\nOPTIONS\naddress Your validator address\nblock-number Block number for verification\nproof Your sync proof\n```\nClick on each option to fill in your information:\n• `address`: Your Ethereum validator address (must start with 0x, example: 0x1234567890abcdef1234567890abcdef12345678)\n• `block-number`: The block number from Step 1 (example: 12345)\n• `proof`: The complete base64 string from Step 2\n\n❗ **Common mistake**: Do not type all parameters in a single line. You must click on each option field separately to input your data.",
40
40
inline: false,
41
41
},
42
42
{
43
43
name: "💡 Tips for Success",
44
-
value: "• Ensure your node is fully synced before attempting registration\n• Double-check your validator address format (must begin with 0x)\n• Make sure to copy the entire proof string without missing any characters\n• If registration fails, try generating a new proof with a more recent block",
44
+
value: "• Ensure your node is fully synced before attempting registration\n• Double-check your validator Ethereum address format (must begin with 0x followed by 40 hex characters)\n• Make sure to copy the entire proof string without missing any characters\n• If you don't have jq installed, you can omit the `| jq` part and extract the needed values manually\n• If registration fails, try generating a new proof with a more recent block\n• Common errors: incorrect URL format, node not synced, or incomplete proof string",
45
+
inline: false,
46
+
},
47
+
{
48
+
name: "🛠️ Troubleshooting",
49
+
value: "• If you get `Connection refused`: Check that your node is running and the URL is correct\n• If your proof is invalid: Ensure your node is fully synced and try again with a newer block\n• If you can't format the commands properly: Ask for help in the support channel",
0 commit comments