refactor(processor): remove global DebugLog and thread logger through call chains#100
Merged
Conversation
… 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>
Contributor
There was a problem hiding this comment.
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
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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).