User feedback: Time-based cleanup (6 hours) too aggressive for legitimate long-running positions.
Drift API is the authoritative source of truth.
Changes:
- Removed cleanupStalePositions() method entirely
- Removed age-based Layer 1 from validatePositions()
- Updated Layer 2: Now verifies with Drift API before removing position
- All ghost detection now uses Drift blockchain as source of truth
Ghost detection methods:
- Layer 2: Queries Drift after 20 failed close attempts
- Layer 3: Queries Drift every 40 seconds during monitoring
- Periodic validation: Queries Drift every 5 minutes
Result: No premature closures, more reliable ghost detection.