Skip to content

refactor(processor): remove global DebugLog and thread logger through call chains#100

Merged
flexiondotorg merged 1 commit into
mainfrom
unsafe
Jun 2, 2026
Merged

refactor(processor): remove global DebugLog and thread logger through call chains#100
flexiondotorg merged 1 commit into
mainfrom
unsafe

Conversation

@flexiondotorg
Copy link
Copy Markdown
Contributor

Replace the package-level processor.DebugLog global and debugLog() free function with a threaded debugLogger field on BaseFilterConfig and nil-guarded Logf method. Thread the logger as a final parameter through all 5 call chains (room-tone, speech, LA-2A, output-region, loudnorm). Update main.go to call config.SetLogger() instead of setting the global.

Precursor groundwork for parallel multi-file processing: de-globalises the logger without unblocking concurrency (Pass 3/4 serialisation remains on lifecycleMu; log-routing redesign deferred to parallel-design phase).

  • Add debugLogger type with nil-guarded Logf method
  • Add logger field and SetLogger() method to BaseFilterConfig
  • Thread logger through adaptive.go, adaptive_la2a.go, analyzer.go, analyzer_candidates_*, analyzer_output.go, normalise.go call chains
  • Update main.go to use config.SetLogger() instead of setting global
  • Add loudnormLogCapture parallelism blocker documentation note
  • Byte-identical debug log and processed audio output; build/test/lint green

… call chains

Replace the package-level processor.DebugLog global and debugLog() free
function with a threaded debugLogger field on BaseFilterConfig and
nil-guarded Logf method. Thread the logger as a final parameter through
all 5 call chains (room-tone, speech, LA-2A, output-region, loudnorm).
Update main.go to call config.SetLogger() instead of setting the global.

Precursor groundwork for parallel multi-file processing: de-globalises
the logger without unblocking concurrency (Pass 3/4 serialisation
remains on lifecycleMu; log-routing redesign deferred to parallel-design
phase).

- Add debugLogger type with nil-guarded Logf method
- Add logger field and SetLogger() method to BaseFilterConfig
- Thread logger through adaptive.go, adaptive_la2a.go, analyzer.go,
  analyzer_candidates_*, analyzer_output.go, normalise.go call chains
- Update main.go to use config.SetLogger() instead of setting global
- Add loudnormLogCapture parallelism blocker documentation note
- Byte-identical debug log and processed audio output; build/test/lint
  green

Signed-off-by: Martin Wimpress <code@wimpress.io>
Copy link
Copy Markdown
Contributor

@cubic-dev-ai cubic-dev-ai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 16 files

Confidence score: 5/5

  • Automated review surfaced no issues in the provided summaries.
  • No files require special attention.

Auto-approved: This refactor replaces a global debug logger with an injected field threaded through function calls, keeping all debug output identical and tests passing, with no changes to business logic or risk to production behavior.

Re-trigger cubic

@flexiondotorg flexiondotorg merged commit 21578a6 into main Jun 2, 2026
16 checks passed
@flexiondotorg flexiondotorg deleted the unsafe branch June 2, 2026 13:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant