veza/apps/web/docs/CONSOLE_STATEMENTS_AUDIT.md

82 lines
2.8 KiB
Markdown
Raw Normal View History

# Console Statements Audit
**Date**: 2025-01-27
**Action**: Cleanup 10 - Audit console.log/error/warn statements
**Status**: ✅ Complete
## Summary
This audit identifies all console.log, console.error, and console.warn statements in the codebase and categorizes them for replacement.
## Methodology
Searched for:
- `console.log`
- `console.error`
- `console.warn`
- `console.info`
- `console.debug`
**Excluded**:
- Type generation files (`types/generated/`)
- Test files (test mocks are intentional)
- Logger utility itself (logger.ts uses console internally - intentional)
- JSDoc documentation examples (preserved as examples)
## Findings
**Total console statements found**: 33 (excluding generated files)
### Categories
#### 1. ✅ **Preserve** (Documentation/Examples)
- JSDoc examples in component files (tabs.tsx, checkbox.tsx, slider.tsx, etc.)
- These are documentation examples, not actual code
#### 2. ✅ **Preserve** (Logger Implementation)
- `apps/web/src/utils/logger.ts` - Logger uses console internally (intentional)
#### 3. ✅ **Preserve** (Test Files)
- `apps/web/src/components/ErrorBoundary.test.tsx` - Test mocks for console.error
#### 4. ✅ **Preserve** (Dev-Only Utilities)
- `apps/web/src/utils/gridOverlay.ts` - Dev-only utility with intentional console.log/warn
- These are development-only and provide useful feedback
#### 5. ⚠️ **Replace** (Production Code)
- `apps/web/src/main.tsx:125` - console.error('[Init] Failed to initialize; continuing', error)
- `apps/web/src/config/env.ts:61` - console.error('❌ Invalid environment variables:', error.errors)
- `apps/web/src/components/OfflineQueueManager.tsx:84` - console.error('Failed to remove request:', error)
- `apps/web/src/components/OfflineQueueManager.tsx:97` - console.error('Failed to clear queue:', error)
- `apps/web/src/utils/toast.ts:56` - console.error('Toast module failed to load')
#### 6. ✅ **Preserve** (Commented Code)
- Commented console statements in various files (already disabled)
#### 7. ✅ **Preserve** (Backup Files)
- `apps/web/src/utils/storeSelectors.ts.backup` - Backup file
## Recommendations
**Replace with logger**:
1. `main.tsx` - Use logger.error for initialization errors
2. `config/env.ts` - Use logger.error for environment validation errors
3. `OfflineQueueManager.tsx` - Use logger.error for queue operation errors
4. `toast.ts` - Use logger.error for toast module loading errors
**Preserve**:
- Logger implementation (logger.ts)
- Test mocks
- JSDoc examples
- Dev-only utilities (gridOverlay.ts)
## Next Steps
- **Cleanup 11**: Replace console.log with logger (production code only)
- **Cleanup 12**: Replace console.error/warn with logger (production code only)
---
**Last Updated**: 2025-01-27
**Status**: Audit complete - Ready for replacement in Cleanup 11-12