Skip to content

bor: fall back to eligible producers when veblop candidate set is empty#618

Open
pratikspatil024 wants to merge 3 commits into
developfrom
ppatil/veblop-producer-selection-fallback
Open

bor: fall back to eligible producers when veblop candidate set is empty#618
pratikspatil024 wants to merge 3 commits into
developfrom
ppatil/veblop-producer-selection-fallback

bor: fall back to eligible producers when veblop candidate set is empty

59e03d6
Select commit
Loading
Failed to load commit list.
Claude / Claude Code Review completed Jun 30, 2026 in 16m 26s

Code review found 1 important issue

Found 5 candidates, confirmed 1. See review comments for details.

Details

Severity Count
🔴 Important 1
🟡 Nit 0
🟣 Pre-existing 0
Severity File:Line Issue
🔴 Important x/bor/keeper/veblop_producer_fallback.go:23-39 Rotation fallback can reinstall failed producers

Annotations

Check failure on line 39 in x/bor/keeper/veblop_producer_fallback.go

See this annotation in the file changed.

@claude claude / Claude Code Review

Rotation fallback can reinstall failed producers

The rotation caller `checkAndRotateCurrentSpan` (app/abci.go:1066-1072) only deletes failed producers from the local `latestActiveProducer` map and then passes `excludedProducerIDs=nil` to `AddNewVeBlopSpan`. Post-Ithaca, when that map empties and `CalculateProducerSet` is also empty/singleton, the new `eligibleProducerFallback` validator-set branch (x/bor/keeper/veblop_producer_fallback.go:28-38) has no visibility into the implicit pre-filtering and can reinstall a known-failed producer — direc