[Unitaryhack] Implement Consistent Logging Across the Codebase
Summary: Introduce structured and consistent logging throughout the Quantify codebase to improve observability, debuggability, and maintainability of the project.
Why this matters: As Quantify evolves, understanding how the system behaves during execution becomes critical. Logs help identify bugs, trace data flow, and make collaboration easier across contributors. Right now, we lack a consistent logging strategy. By solving this issue, you'll not only improve the developer experience but also help solidify the codebase for larger-scale use and production deployments.
Scope of the bounty:
- Use Python’s built-in logging module to unify our current strategy (converting
print
andwarn
statements to logging) - Add logging to major modules (e.g., core execution logic, pipeline steps, validation, error handling)
- Configure log levels (INFO, WARNING, ERROR, DEBUG) appropriately
- Ensure logs include useful context (e.g., step names, node identifiers, exceptions)
- Add a basic logging configuration (file and console output, readable format)
- Document how logging is set up and how to customize it (README section or docs/)
Deliverables:
Merge Request including
- Logging setup and configuration
- Instrumented logging across key modules
- Documentation on logging usage and config
Reference the issue in your MR and include Closes #[issue-number]
in your MR description
How to Win:
We’ll prioritize clarity, consistency, and usefulness of the logs
Bonus Points:
- Color-coded log output for terminal
- Configurable verbosity level (e.g., via environment variable or CLI arg)
- Logging exceptions with tracebacks where applicable