setPoolImplementation only affects pools deployed after the change is not documented at the call leading to operational confusioncreatePool uses Clones.cloneDeterministic(poolImplementation, salt) to deploy each pool as an EIP-1167 minimal proxy pointed permanently at whatever poolImplementation was at creation time. This is correct and expected clone-factory behavior — updating poolImplementation has no effect on already-deployed pools, since each clone's DELEGATECALL target is baked into its immutable bytecode
The behavior itself is fine; the only gap is that nothing in the natspec or event states this explicitly, so an operator reading PoolImplementationUpdated in isolation (e.g. from a block explorer or monitoring dashboard) could mistakenly believe the update is a live, retroactive upgrade for all existing pools — which would be a reasonable assumption coming from UUPS-style upgradeable systems (which this factory itself uses for its own logic, per UUPSUpgradeable). That mismatch in upgrade model between the factory (upgradeable) and its pools (immutable per-clone) is worth calling out explicitly so operators don't misjudge the blast radius of a bad poolImplementation value — a buggy implementation set via this function only affects pools created going forward, not the ones already live.
Likelihood:
Not exploitable condition, purely a documentation/operational-clarity gap.
Impact:
Informational. Could lead to operator confusion (e.g. believing a hotfix has propagated to existing pools when it hasn't), but has no direct fund-safety or correctness consequence.
Not applicable — this is a documentation gap, not an exploitable code path. Illustrative behavior check:
setPoolImplementation (and ideally on PoolImplementationUpdated) stating that the change applies prospectively only, e.g.: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.