A critical architectural flaw exists in the QuantAMMWeightedPoolFactory's weight initialization system that could compromise the core functionality of deployed pools. The factory attempts to bridge standard Balancer V3 weighted pool mechanics with QuantAMM's specialized automated weight management, but creates a dangerous disconnect in how these systems interact.
The root of the vulnerability lies in the dual weight system design where the factory accepts both normalizedWeights (standard Balancer) and _initialWeights (QuantAMM) but silently ignores the standard weights during initialization. This creates a serious risk because QuantAMM pools, while built on Balancer's architecture, implement sophisticated automated weight adjustment mechanisms that need to properly interface with the base Balancer functionality. The current implementation could allow pools to be deployed with mismatched weight configurations between the two systems, potentially leading to catastrophic failures in the pool's automated market making capabilities when weight adjustments are triggered.
Validate that both weight sets match
Update the initialization flow to acknowledge both weight systems:
Please read the CodeHawks documentation to know which submissions are valid. If you disagree, provide a coded PoC and explain the real likelyhood and the detailed impact on the mainnet without any supposition (if, it could, etc) to prove your point.
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.