https://github.com/code-423n4/2024-08-axelar-network/blob/69c4f2c3fcefb1b8eb2129af9c3685a44ae5b6fe/axelar-amplifier/contracts/gateway/src/contract/execute.rs#L32-L48
The current implementation of route_outgoing_messages can lead to a Denial of Service (DoS) scenario. If any single message in the verified vector fails to save (due to Error::SaveOutgoingMessage), the entire function will return an error, preventing all other valid messages from being processed, which blocks the routing of numerous valid messages due to a single problematic entry.
QA, per the information here. The messages should be verified, however, this causes for any other valid message to not be routed.
By implementing these changes, the contract will be more resilient to individual message failures and provide better visibility into the success rate of message routing operations.
