F-2025-0023·selector-registration

Selectors for Bera_Module::bera_kodiakv2_swap and bera_kodiakv3_swap need to be separately added

Fixedvaultetfstrategyd2-contracts
TL;DR

Strategy::constructor registers most facet selectors in bulk, but two Kodiak swap selectors must be added through a separate Strategy::setSelector call from DEFAULT_ADMIN_ROLE. Folding them into the constructor saves two admin calls and prevents the deployment-time gap.

Severity
INFO
Impact
LOW
Likelihood
LOW
Method
MManual review
CAT.
Complexity
LOW
Exploitability
LOW
02Section · Description

Description

In Strategy::constructor almost all existing facet selectors are added to the s.selectors mapping, which is then used by the fallback function to direct the call to the correct facet.

Almost all, the Bera_Module::bera_kodiakv2_swap and bera_kodiakv3_swap are not present here and need to be added separately using the Strategy::setSelector call limited to role 0x00 (DEFAULT_ADMIN_ROLE).

Consider including these in the general selector assignment in Strategy::constructor instead. Thus saving two calls.

03Section · Resolution

Resolution

D2: Added in 5e22afc.

Cyfrin: Verified.

Status
Fixed
Fix commit
5e22afc
F-2025-0023