# Head Ambassador Seeding Vote These are the steps necessary to start a referendum to be included into the intitial seeding list of the Ambassador Program as Head Ambassador. ## 1. Prepare the Preimage on the Collectives Chain - Go to PolkadotJS and decode [this](https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Frpc-collectives-polkadot.luckyfriday.io#/extrinsics/decode/0x28041049046c9e3102dd2c24274667d416e07570ebce6f20ab80ee3fc9917bf4a7568b8fd249056c9e3102dd2c24274667d416e07570ebce6f20ab80ee3fc9917bf4a7568b8fd2010049056c9e3102dd2c24274667d416e07570ebce6f20ab80ee3fc9917bf4a7568b8fd2020049056c9e3102dd2c24274667d416e07570ebce6f20ab80ee3fc9917bf4a7568b8fd20300) extrinsic. - Click on `Submission` to modify the parameters: - ![Screenshot 2024-06-11 at 10.17.50](https://hackmd.io/_uploads/rytE_tBSR.png) - Replace the addess in both fields with your address. - Copy the `encoded call data` (not the hash!) - ![Screenshot 2024-06-11 at 10.18.45](https://hackmd.io/_uploads/B1f__tSH0.png) - This will look different for everyone. ## 2. Prepare the Preimage on the Relay chain - Go to the Relay chain with [this](https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Frockx-dot.w3node.com%2Fpolka-public-dot%2Fws#/extrinsics/decode/0x630004000100a50f04082f000006030300286bee42420f00b47265706c616365206d6520776974682074686520636f6c6c6563746976657320707265696d6167652064617461) link. - Click on `Submission` again and paste the preimage from above in the `call: XcmDoubleEncoded` field in the bottom: - ![Screenshot 2024-06-11 at 10.24.33](https://hackmd.io/_uploads/ByiattrBC.png) - You can add more applications by adding more `Transact` items to the `XCM` here: - ![Screenshot 2024-06-11 at 10.25.30](https://hackmd.io/_uploads/Syr-cYSSR.png) - Once you are done, again copy the `encoded call data`. ## 3. Place the preimage on the Relay Chain - Go to `Developer->Extrinsic` - Create a `Preimage::notePreimage(bytes)` extrinsic. - The bytes are pasted from the relay preimage that we created above. - ![Screenshot 2024-06-11 at 10.39.09](https://hackmd.io/_uploads/rkOV6KrrA.png) - Click on `Submit Transaction`. Note that it will reserve a deposit for the preimage; having about 50 DOT on the address is a good idea. - Go to `Governance->Preimages` and find youre preimage there: - It should look something like this: - ![Screenshot 2024-06-11 at 10.44.59](https://hackmd.io/_uploads/rJIcAFrB0.png) - Copy the `Hash` and `Length` for later. - If you want to double-check these values, you can go to `Developer->Storage` and query `Preimage::preimageFor` with these details. It should print the Relay Preimage that was pasted in there earlier: - ![Screenshot 2024-06-11 at 10.47.03](https://hackmd.io/_uploads/r1MMJ9HSC.png) ## 4. Create Referendum - Go to Subsquare track 13: https://polkadot.subsquare.io/referenda/tracks/13 - Click on `New Proposal` - Paste in the preimage hash and length from above. This must be correct, otherwise it won't work! ## 5. Testing - Clone the [moonbeam-tools](https://github.com/Moonsong-Labs/moonbeam-tools) repo. - Run a local chopstick fork of the Polkadot Relay and Collectives parachain with: `npx @acala-network/chopsticks@latest xcm -r polkadot -p polkadot-collectives` - Run the proposal with: `npx ts-node src/tools/fast-execute-chopstick-proposal.ts --url ws://localhost:8001 --proposal-index NUMBER` Be sure to replace`NUMBER` with your referendum index. - If you get a weird Javascript error, then try `npm install` first inside the repo. - Now go to the local chopstick collectives chain [here](https://polkadot.js.org/apps/?rpc=ws%3A%2F%2F127.0.0.1%3A8000#/chainstate) and check for `Developer->Chain State` and query `AmbassadorCollective->members` and uncheck the checkbox. Then you should see your account in the list: - ![Screenshot 2024-06-11 at 18.31.29](https://hackmd.io/_uploads/ByRJnxUBR.png)