Normal behavior: interface helper methods for leverage calculation should map 1:1 to implementation and selectors.
Issue: Interface declares calculateParams(TradeDetails) while implementation exposes calculateOpenParams(TradeDetails). Selectors differ and ABI compatibility is broken.
Likelihood:
Reason 1 // Integrators and SDKs frequently bind to interfaces rather than concrete implementation.
Reason 2 // Selector mismatch is deterministic and independent of runtime state.
Impact:
Impact 1 // Read-path tooling for position sizing can fail.
Impact 2 // Broken UX and automation pipelines due to ABI mismatch.
This PoC compares selectors derived from the interface declaration and the actual implementation function. The mismatch proves tooling bound to IStratax.calculateParams cannot call Stratax.calculateOpenParams without custom adaptation.
Unify naming/signatures across interface and implementation, then enforce selector equality tests at build time. This prevents runtime surprises for SDKs, frontends, and bots that rely on typed ABI bindings.
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.