The staticcall may revert because cachePeriodEarned() is not marked as view or pure. The EVM enforces that only read-only functions can be called via staticcall. 
As per docs the staticcall is only suitable for read-only functions. But the function cachePeriodEarned is declared as external which is not advisable as per docs:
https://github.com/code-423n4/2024-10-ramses-exchange/blob/4a40eba36bc47eba8179d4f6203a4b84561a4415/contracts/CL/gauge/GaugeV3.sol#L262-L267
Use regular call.
