- Replace hardcoded 300s (5 min) timeout that was killing taint-analyze and detect-patterns
- Add COMMAND_TIMEOUTS dictionary with appropriate timeouts per command type:
* taint-analyze, detect-patterns: 2 hours (can take 10-60 min on large codebases)
* lint: 15 minutes (ESLint/ruff on monorepos)
* fce: 30 minutes (correlation analysis)
* graph operations: 10 minutes
* Quick operations (deps, docs, workset): 5 minutes
- Add get_command_timeout() function to determine timeout based on command name
- Support environment variable overrides:
* Global: THEAUDITOR_TIMEOUT_SECONDS (default 30 min)
* Per-command: THEAUDITOR_TIMEOUT_TAINT_ANALYZE_SECONDS, etc.
- Update all 3 run_subprocess_with_interrupt calls to use adaptive timeouts
- Add automatic detection of package.json in common monorepo patterns (backend/, frontend/, packages/*/, apps/*/,
services/*/)
- Fix pipeline deps.json path mismatch - deps writes to .pf/raw/deps.json but docs fetch was looking in
.pf/deps.json
- Add _parse_standalone_package_json() to handle subdirectory packages without workspace detection
- Properly track workspace_package field with relative paths for all discovered package.json files
Fixes PlantPro and similar monorepos where deps were not being detected (only finding 1 Docker dep instead of 100+
npm deps)