fix(build): exclude raw poster images from silo binary and docker image - #701
fix(build): exclude raw poster images from silo binary and docker image#701tomislav wants to merge 1 commit into
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: ⛔ Files ignored due to path filters (106)
📒 Files selected for processing (3)
Included review availability: Your plan provides up to 2 included reviews per hour; 1 remains after this review. 📝 WalkthroughWalkthroughRaw collection-template poster plates now use ChangesCollection template asset relocation
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This PR removes raw poster source files from runtime packaging while preserving finalized poster assets and URLs. No actionable merge-blocking risk remains after normal checks and review. Suggested reviewers: 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Problem
Related issue: N/A — narrow fix
The 106 raw collection-template PNG source plates lived under
web/public, so Vite copied them intoweb/distand Go embedded them in the Silo executable. They added 241,172,968 bytes to the arm64 binary even though only the finalized JPEG posters are served at runtime.Approach
Move the raw PNG plates to
web/assets-source/collection-templates/raw, exclude that source directory from the Docker build context, and keep the finalized JPEGs at their existing public paths. Update the asset test to require one source plate per built-in template while rejecting a publicrawdirectory, and update the poster-generation documentation.No API, client, or jellycompat contract changes.
Validation
Passed:
go test ./internal/collections/templates/... -count=1go build ./...gofmt -l .go vet ./...golangci-lint run --new-from-merge-base=origin/main ./...— 0 issuespnpm install --frozen-lockfilepnpm run lint— 0 errors, 154 existing warningspnpm run format:checkpnpm run buildmake verify-settings-bindings-allmake verify-playback-fixturesmake verify-local-pathsCOPY web/assets-source /rawfailed because the directory was excluded by.dockerignoredistpathMeasured arm64 change:
make test-gowas also run but did not pass. Unrelated failures occurred in two process-lock tests, four sandbox-killed NVENC probe tests, and one transcode timing test. The timing test passed in isolation. The process-lock and NVENC failures reproduced unchanged from base commit78b5d395in a clean exported source tree.Risks
The move could break poster regeneration if tooling or documentation retained the old path. The source-plate test and updated documentation now use the new path. Runtime poster URLs and finalized JPEG assets are unchanged.
AI Disclosure
78b5d395with head452990e4, checked every moved PNG's blob identity, verified all finalized JPEG URLs remain unchanged, inspected the Vite/Go/Docker packaging boundaries, and ran the focused tests. It found no critical, important, or minor issues.Checklist
Summary by CodeRabbit
Documentation
Quality Improvements