@francescop
Not a critical vulnerability but considered a minor issue that can lead to inefficiencies and potential edge case behaviors:
- The `stake` function does not verify that the `amount` to stake is greater than zero. Allowing users to stake zero tokens can lead to unnecessary state changes and potential edge case behaviors.
- Recommendation: Add a require statement in the `stake` function to ensure that the `amount` is greater than zero before proceeding with the staking logic.