Stratax emits events for user-facing operations (LeveragePositionCreated, PositionUnwound) but does not emit events for administrative state changes.
The four admin functions that modify critical protocol state—transferOwnership, setStrataxOracle, setFlashLoanFee, and recoverTokens—do not emit events. Off-chain indexers, monitoring, and governance tooling cannot track these changes without parsing transaction logs for non-standard patterns.
Likelihood (low):
Admin state changes occur infrequently; the lack of events is a design oversight rather than an active attack vector.
Impact (low):
Indexers and governance dashboards cannot reliably detect oracle changes, fee changes, ownership transfers, or token recoveries without custom transaction parsing.
Incident response and audit trails are degraded; reconstructing protocol state history requires manual transaction inspection.
Severity: Low
Owner changes the oracle address via setStrataxOracle(newOracle). Off-chain monitoring expects an OracleUpdated or similar event to update cached state. No such event exists; the indexer continues to show the old oracle address until the next transaction is manually inspected.
Locations: src/Stratax.sol — setStrataxOracle, setFlashLoanFee, recoverTokens, transferOwnership
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.
The contest is complete and the rewards are being distributed.