Skip to content

[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 and warn 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
Edited by Gabriel Chatelain