Add graymatter fuzz source for turbojam (1M blocks)#17
Conversation
Add proper long-running fuzz job using graymatter-fuzz-source with 10 runs x 100k blocks (1M total). Also adds daily schedule at 18:00 UTC. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughAdded top-level workflow permissions and standardized reusable-workflow inputs across many fuzzing workflows; turbojam also gains a daily cron trigger and a new Changes
Sequence Diagram(s)sequenceDiagram
participant Scheduler as Scheduler (cron)
participant GH as GitHub Actions
participant Reusable as graymatter-fuzz-source (reusable workflow)
participant Runner as Actions Runner
participant Docker as Docker container / Fuzzer
Scheduler->>GH: trigger turbojam-fuzz (daily)
GH->>Reusable: invoke graymatter-fuzz-source (with turbojam inputs)
GH->>Runner: schedule job
Runner->>Docker: start image (docker_image) and run docker_cmd
Docker->>Reusable: run fuzzer against {TARGET_SOCK}
Docker-->>Runner: report results / exit
Runner-->>GH: upload logs / create issue (if configured)
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
📝 Coding Plan
Comment |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
.github/workflows/turbojam-fuzz.yml (1)
12-21: Consider pinning the Docker image to a specific version for reproducibility in fuzz testing.Using
:latest(line 16) means the image can change between runs without any workflow modification, potentially affecting the consistency of fuzz test results. For fuzzing workflows, reproducibility is important to meaningfully compare runs and track regressions.The reusable workflow correctly configures the self-hosted runner with
runs-on: [self-hosted, "${{ inputs.target_name }}"], which resolves to[self-hosted, "turbojam"]as intended.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.github/workflows/turbojam-fuzz.yml around lines 12 - 21, The Docker image for the graymatter-source step is currently pinned to 'r2rationality/turbojam-fuzz:latest' which harms reproducibility; update the docker_image input (the docker_image key in the graymatter-source block) to a specific version tag or, better, an immutable digest (e.g. r2rationality/turbojam-fuzz:vX.Y.Z or r2rationality/turbojam-fuzz@sha256:...) so runs of the reusable workflow with target_name and docker_cmd remain deterministic and comparable across fuzz test runs; ensure the updated value replaces the current 'latest' string used by the graymatter-source block.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In @.github/workflows/turbojam-fuzz.yml:
- Around line 12-21: The Docker image for the graymatter-source step is
currently pinned to 'r2rationality/turbojam-fuzz:latest' which harms
reproducibility; update the docker_image input (the docker_image key in the
graymatter-source block) to a specific version tag or, better, an immutable
digest (e.g. r2rationality/turbojam-fuzz:vX.Y.Z or
r2rationality/turbojam-fuzz@sha256:...) so runs of the reusable workflow with
target_name and docker_cmd remain deterministic and comparable across fuzz test
runs; ensure the updated value replaces the current 'latest' string used by the
graymatter-source block.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: a9e40f77-3837-4191-8365-6e51c1cb6f14
📒 Files selected for processing (1)
.github/workflows/turbojam-fuzz.yml
Change repo default from write to read-only (done via API). Add explicit permissions (contents: read, issues: write) to all fuzz workflows — issues: write is needed for failure notifications. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Summary
Notes
turbojamlabel for thegraymatter-sourcejobTest plan
graymatter-sourcejob runs successfully viaworkflow_dispatchdemojob still works as before🤖 Generated with Claude Code
Summary by CodeRabbit