feat(audience): per-platform build size check in CI#803
Open
nattb8 wants to merge 1 commit into
Open
Conversation
ad6aa85 to
1171057
Compare
Every Audience PR now gets a comment showing the build size for Android, iOS, Windows, and macOS, with a delta against a committed baseline. Android and Windows build on ubuntu via GameCI (Windows added to the existing mobile-build matrix). iOS and macOS build on the self-hosted macOS ARM64 runner: iOS via Unity batch mode then xcodebuild with CODE_SIGNING_ALLOWED=NO (no Apple certs needed), macOS via Unity batch mode directly. Size limits are absolute (not delta-based) and configured per-platform in .github/audience-build-budget.json. Limits default to 0 (disabled) until set after the first real run on main. The comment always posts regardless — the sizes are visible even before limits are configured. After merging: run workflow_dispatch on main, record the four byte counts, then set baselineBytes and maxBytes in the budget file and commit to main. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1171057 to
43d1306
Compare
Audience SDK — Build Size
No size limits set yet. Run workflow_dispatch on main, measure the output, then set maxBytes in |
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
Before this PR, we had no way to tell customers how large the Audience SDK is, and no guardrail to catch it accidentally growing. After merging and setting up baselines, every Audience PR will show a comment like this:
The comment always posts — sizes are visible even before limits are configured. The check only blocks merge once you set a
maxByteslimit per platform in.github/audience-build-budget.json. Limits are absolute (not delta-based), so a PR that intentionally grows the SDK by 500 KB is fine as long as the total stays under the ceiling.How each platform builds:
mobile-buildmatrix — no new runners)xcodebuild CODE_SIGNING_ALLOWED=NO— no Apple signing certs needed.appWhere sizes are recorded:
.github/audience-build-budget.json—baselineBytesis the measured size from main (for the delta column),maxBytesis the hard limit. Both start at0(disabled) until set after the first real run.Test plan
workflow_dispatchonmainto get real numbersbaselineBytesandmaxBytesper platform in.github/audience-build-budget.jsonand commit tomainmaxBytesis blockedCloses SDK-540
🤖 Generated with Claude Code