To receive ERC721 tokens which is called upon a safe transfer, the contract must implement the onERC721Received function.
The onERC721Received function is called when the contract receives an ERC721 token by invoking safeTransferFrom function.
However, the FjordStaking contract doesn't have the onERC721Received function.
The FjordStaking contract receives ERC721 tokens from the Sablier contract, so it must implement the onERC721Received function.
https://github.com/Cyfrin/2024-08-fjord/blob/main/src/FjordStaking.sol#L435
The unimplemented onERC721Received function can cause the contract to not receive ERC721 tokens from the Sablier contract.
Manual review
It's recommended to implement the onERC721Received function in the FjordStaking contract.
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.