Fix main CI: bound the fuzz smoke job, auto-enable Pages for Docs deploy#10
Merged
Merged
Conversation
The fuzz job was flaky-cancelled: libFuzzer's per-input timeout defaults to 1200s, so one large structurally-valid mutation (~500 KiB inputs at ~33 exec/s under Debug+ASan) could run for many minutes, sail past -max_total_time=180, and hit the job's 20-minute kill with no reproducer. Split the step in two: replay every seed unmodified (full-size valid file included, -timeout=60), then explore with mutations capped at -max_len=65536 and -timeout=30 — locally that's ~8300 exec/s, 100k runs in 12s. Reproducer artifacts (crash-*/timeout-*/slow-unit-*/oom-*) now upload on failure. The Docs deploy job 404'd because GitHub Pages was never enabled on the repo; actions/configure-pages with enablement:true creates the site (Source: GitHub Actions) before deploy-pages runs, using the existing pages:write permission. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012VeadvCRUHJdneFNwRbFAM
Discovered during local bounded runs of fuzz_sofa_reader; minimized with -merge=1 against the existing 5 seeds (adds 1685 features / 577 coverage edges, replays in under 2s). Six are small mutations of valid.sofa, so they pack tightly via git delta compression. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012VeadvCRUHJdneFNwRbFAM
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
Fixes the two failures on main's latest run (both infrastructure — the ROADMAP merge commit changed no code):
CI / fuzz (sofa reader smoke) — cancelled at the 20-minute job kill.
libFuzzer's per-input timeout defaults to 1200s, so a single large structurally-valid mutation (inputs run up to ~500 KiB, ~33 exec/s under Debug+ASan) can execute for many minutes and sail past
-max_total_time=180; the job then dies attimeout-minutes: 20with no reproducer. Now two bounded stages:-timeout=60) — the full-size valid file still exercises the whole parse path.-max_len=65536and-timeout=30— measured locally at ~8,300 exec/s, 100k runs in 12s, so the 3-minute budget actually binds.crash-*/timeout-*/slow-unit-*/oom-*) upload as artifacts on failure.Docs / deploy to Pages — 404 "Ensure GitHub Pages has been enabled".
Pages was never enabled on the repo.
actions/configure-pages@v5withenablement: truenow creates the site (Source: GitHub Actions) beforedeploy-pagesruns, using the workflow's existingpages: writepermission. If token permissions turn out not to allow enablement, the fallback is one click: Settings → Pages → Source: GitHub Actions.Test plan
-max_len=65536🤖 Generated with Claude Code
https://claude.ai/code/session_012VeadvCRUHJdneFNwRbFAM
Generated by Claude Code