-
Notifications
You must be signed in to change notification settings - Fork 224
Open
Description
Problem
The codebase contains many raw print / debugPrint calls in production paths. This can:
- create noisy logs that make real errors harder to triage
- leak internal state or sensitive runtime details in logs
- make logging behavior inconsistent across modules
Example locations
lib/app/utils/system_ringtone_service.dart:75lib/app/data/providers/push_notifications.dart:8lib/app/modules/timer/views/timer_animation.dart:35
Why this is important
Logging should follow a structured policy with controllable verbosity and redaction. Ad-hoc prints increase operational risk and reduce observability quality.
Proposed fix
- Introduce a centralized logging utility (e.g., wrapper with levels: debug/info/warn/error)
- Gate debug-level logs behind build mode / config
- Redact sensitive fields (tokens, user IDs, emails, device-specific identifiers)
- Replace raw
print/debugPrintcalls incrementally, starting with app logic and providers - Add lint or CI check to prevent new raw print statements in production code
Acceptance criteria
- Raw
printcalls removed from production paths (or explicitly justified) debugPrintusage follows centralized logger policy- Sensitive values are redacted in logs
- Developer docs include logging guidelines
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels