MsgUpdateGatewayMetadata sets a staked gateway's card.
Deliberately separate from MsgStakeGateway, which enforces a strictly-positive stake delta on every call -- folding metadata into it would mean escrowing real POKT to fix a typo. A freshly staked gateway starts with no card and becomes descriptor-complete via a follow-up call.
Full replace: the supplied metadata replaces whatever is stored. Omitting it (nil) leaves the stored card untouched, matching MsgAddService's behaviour for services.
The Bech32 address of the gateway. Must already be staked.
Metadata is a generic container for an onchain actor's descriptor, or "card". The raw bytes are stored onchain and will be base64 encoded in JSON representations.
Next free index: 2
A successful response.