- Add cleanup-chromium.sh script for manual zombie process cleanup
- Add docker-entrypoint.sh with signal handlers for graceful shutdown
- Add lib/process-cleanup.ts for automatic cleanup on app termination
- Enhanced forceCleanup() method in tradingview-automation.ts:
- Individual page closing before browser termination
- Force kill remaining processes with SIGKILL
- Reset operation locks after cleanup
- Improved browser launch args to prevent zombie processes:
- Better crash reporter handling
- Enhanced background process management
- Removed problematic --single-process flag
- Updated Dockerfile to use new entrypoint with cleanup handlers
- Set DOCKER_ENV environment variable for container detection
- Add proper signal handling (SIGINT, SIGTERM, SIGQUIT)
- Automatic cleanup of temporary Puppeteer profiles
Resolves zombie Chromium process accumulation issue