Pass compression settings through the pipeline default context#673
Draft
rtibbles wants to merge 1 commit into
Draft
Pass compression settings through the pipeline default context#673rtibbles wants to merge 1 commit into
rtibbles wants to merge 1 commit into
Conversation
FilePipeline now accepts a default_context merged into every execute() call. SushiChef.run builds explicit video/audio compression settings from the --compress flag and passes them via the pipeline context. Both the standalone media handlers and the archive handlers now compress only when explicit settings are provided, instead of consulting the config.COMPRESS global, which is removed since nothing reads it anymore. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.
Summary
Compression was driven by the
config.COMPRESSglobal, which handlers consulted at processing time. NowFilePipelineaccepts adefault_contextmerged into everyexecute()call, andSushiChef.runbuilds explicit video/audio settings from the--compressflag and passes them through it. All handlers — standalone media and archive — compress only when explicit settings are provided.config.COMPRESSis removed since nothing reads it anymore. Breaking for any external chef script that readconfig.COMPRESSdirectly; the--compressCLI flag itself behaves as before.References
Extracted from in-progress spreadsheet chef work; no linked issue.
Reviewer guidance
uv run --group test pytest tests/pipeline/ tests/test_files.pyAreas worth a careful look:
--compress, standalone media previously compressed with ffmpeg defaults; nowrun()suppliescrf: 32/max_height/bit_rate: 96explicitly — check those defaults are the ones we wantArchiveProcessingBaseHandler.get_cache_keynow keys on settings presence rather thanconfig.COMPRESS— affects which cached results get reused across runs with different flagsAI usage
I used Claude Code to extract this change from a larger working branch and add the tests; tests were verified to fail against the old
config.COMPRESSgating, and I reviewed the final diff.