Summary
src/services/billing.ts, src/services/revenueSettlementService.ts, src/services/rateLimiter.ts, src/routes/billing.ts, src/controllers/depositController.ts and src/app.ts still use console.error/console.warn, bypassing the pino logger and its redaction rules.
Why this matters
Console output lacks requestId and redaction, so secrets could leak and log aggregation cannot correlate errors.
Scope
Replace console.* with logger calls carrying context objects, and enable the no-console ESLint rule for src/ (excluding scripts/).
Relevant code in CalloraOrg/Callora-Backend:
src/services/billing.ts
src/services/revenueSettlementService.ts
src/services/rateLimiter.ts
eslint.config.js
Priority
Low
Acceptance criteria
- No console.* calls remain in the listed source files
- ESLint no-console is enabled for src
- Log entries include requestId where available
- Redaction tests in src/logger.test.ts still pass
Validation
Run npm run lint and npm test -- src/logger.test.ts.
Non-goals
- Typo-only, formatting-only, or cosmetic changes.
- Unrelated refactors, dependency upgrades, or broad rewrites.
- Removing safeguards or weakening validation to make tests pass.
Contributor application
Before coding, describe the affected modules, proposed state/invariant changes, test strategy, compatibility considerations, and an estimate. Wait for assignment before starting implementation.
PR requirements
Use a feature branch and include Closes #<issue-number>. Address every criterion, map criteria to code and tests, explain security and failure-mode handling, and ensure CI passes.
Quality review
A maintainer will assess correctness, completeness, test depth, compatibility, observability, and adverse-case handling. A substantive implementation is required; merge or CI status alone does not guarantee reward eligibility.
Generated by Claude Code
Summary
src/services/billing.ts, src/services/revenueSettlementService.ts, src/services/rateLimiter.ts, src/routes/billing.ts, src/controllers/depositController.ts and src/app.ts still use console.error/console.warn, bypassing the pino logger and its redaction rules.
Why this matters
Console output lacks requestId and redaction, so secrets could leak and log aggregation cannot correlate errors.
Scope
Replace console.* with logger calls carrying context objects, and enable the no-console ESLint rule for src/ (excluding scripts/).
Relevant code in CalloraOrg/Callora-Backend:
src/services/billing.tssrc/services/revenueSettlementService.tssrc/services/rateLimiter.tseslint.config.jsPriority
Low
Acceptance criteria
Validation
Run
npm run lintandnpm test -- src/logger.test.ts.Non-goals
Contributor application
Before coding, describe the affected modules, proposed state/invariant changes, test strategy, compatibility considerations, and an estimate. Wait for assignment before starting implementation.
PR requirements
Use a feature branch and include
Closes #<issue-number>. Address every criterion, map criteria to code and tests, explain security and failure-mode handling, and ensure CI passes.Quality review
A maintainer will assess correctness, completeness, test depth, compatibility, observability, and adverse-case handling. A substantive implementation is required; merge or CI status alone does not guarantee reward eligibility.
Generated by Claude Code