The KittyBridge::bridgeNftWithData function is missing an approve call to authorize spending of the given feeToken on behalf of the router client, preventing the transfer of the fees required to send the CCIP message to the destination chain.
Without the approve call, the contract is unable to authorize the router client to spend the feeToken, thus preventing the transfer of fees required for the CCIP message. As a result, the intended cross-chain message will fail to be sent, leading to severe disruption of the contract's functionality.
Make an approval to the router client for the fees amount, before sending the CCIP message.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.