Files
trading_bot_v4/.github
mindesbunister 413b34dcee docs: Add Common Pitfalls #76, #77, #78 - The $1,000 Loss Bugs (Dec 8, 2025)
CRITICAL DOCUMENTATION (Dec 8, 2025):

Three bugs discovered that caused $1,000+ losses:

**Bug #76: Silent SL Placement Failure**
- placeExitOrders() returns SUCCESS with only 2/3 orders
- TP1+TP2 placed but SL missing (NULL in database)
- No error logs, no indication of failure
- Position completely unprotected from downside
- Real incident: cmix773hk019gn307fjjhbikx (SOL $138.45, $2,003 size)

**Bug #77: Position Manager Never Monitors**
- Logs: " Trade added to position manager for monitoring"
- Reality: isMonitoring=false, no price checks whatsoever
- configSnapshot.positionManagerState = NULL
- No Pyth monitor startup, no price updates
- $1,000+ losses because positions had ZERO protection

**Bug #78: Orphan Cleanup Removes Active Orders**
- Old orphaned position triggers cleanup
- cancelAllOrders() affects ALL positions on symbol
- User's NEW position loses TP/SL protection
- Orders initially placed, then removed by system
- Position left open with NO protection

SOLUTION: Position Manager Health Monitoring System
- File: lib/health/position-manager-health.ts (177 lines)
- Runs every 30 seconds automatically
- Detects all three bugs within 30 seconds
- CRITICAL alerts logged immediately
- Started via lib/startup/init-position-manager.ts

TEST SUITE: monitoring-verification.test.ts
- 8 test cases validating PM actually monitors
- Validates Pyth monitor starts
- Validates isMonitoring flag
- Validates price updates trigger checks

User quote: "we have lost 1000$...... i hope with the new test system this is an issue of the past"

This documentation ensures these bugs NEVER happen again.
2025-12-08 15:52:54 +01:00
..