Skip to content

Commit 4009920

Browse files
committed
wip
Signed-off-by: Joe Isaacs <[email protected]>
1 parent 2e1c1e9 commit 4009920

File tree

1 file changed

+17
-9
lines changed

1 file changed

+17
-9
lines changed

.github/workflows/fuzz.yml

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ jobs:
2020
crashes_found: ${{ steps.check.outputs.crashes_found }}
2121
crash_count: ${{ steps.check.outputs.crash_count }}
2222
first_crash_name: ${{ steps.check.outputs.first_crash_name }}
23+
artifact_url: ${{ steps.upload_artifacts.outputs.artifact-url }}
2324
steps:
2425
- uses: runs-on/action@v2
2526
with:
@@ -75,6 +76,7 @@ jobs:
7576
echo "No crashes found"
7677
fi
7778
- name: Archive crash artifacts
79+
id: upload_artifacts
7880
if: steps.check.outputs.crashes_found == 'true'
7981
uses: actions/upload-artifact@v4
8082
with:
@@ -131,6 +133,7 @@ jobs:
131133
CRASH_FILE: ${{ needs.io_fuzz.outputs.first_crash_name }}
132134
CRASH_COUNT: ${{ needs.io_fuzz.outputs.crash_count }}
133135
WORKFLOW_RUN: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}
136+
ARTIFACT_URL: ${{ needs.io_fuzz.outputs.artifact_url }}
134137
BRANCH: ${{ github.ref_name }}
135138
COMMIT: ${{ github.sha }}
136139
uses: anthropics/claude-code-action@v1
@@ -150,6 +153,7 @@ jobs:
150153
- Stack trace (lines with `#0`, `#1`, etc.)
151154
- Error message ("panicked at" or "ERROR:")
152155
- Crash location (top user code frame, not std/core/libfuzzer)
156+
- Debug output (look for "Output of `std::fmt::Debug`:" section before the crash)
153157
3. Read the source code at the crash location to understand root cause
154158
155159
## Step 2: Check for Duplicates
@@ -224,32 +228,35 @@ jobs:
224228
225229
**Root Cause**: [Your analysis]
226230
231+
**Debug Output** (if available):
232+
```
233+
[Include any Debug: output or structured debug information from the fuzzer log]
234+
```
235+
227236
### Summary
228237
229238
- **Target**: `file_io`
230239
- **Crash File**: `$CRASH_FILE`
231-
- **Total Crashes**: $CRASH_COUNT
232240
- **Branch**: $BRANCH
233241
- **Commit**: $COMMIT
234-
- **Timestamp**: [current UTC time]
235-
- **Workflow**: $WORKFLOW_RUN
242+
- **Crash Artifact**: $ARTIFACT_URL
236243
237244
### Reproduction
238245
239-
1. Download the crash artifact from the workflow run:
240-
- **Workflow run**: $WORKFLOW_RUN
241-
- Look for the artifact named `io-fuzzing-crash-artifacts` at the bottom of the workflow run page
242-
- Download and extract the zip file
246+
1. Download the crash artifact:
247+
- **Direct download**: $ARTIFACT_URL
248+
- Or find `io-fuzzing-crash-artifacts` at: $WORKFLOW_RUN
249+
- Extract the zip file
243250
244251
2. Reproduce locally:
245252
```bash
246253
# The artifact contains file_io/$CRASH_FILE
247-
cargo +nightly fuzz run file_io file_io/$CRASH_FILE
254+
cargo +nightly fuzz run --sanitizer=none file_io file_io/$CRASH_FILE
248255
```
249256
250257
3. Get full backtrace:
251258
```bash
252-
RUST_BACKTRACE=full cargo +nightly fuzz run file_io file_io/$CRASH_FILE
259+
RUST_BACKTRACE=full cargo +nightly fuzz run --sanitizer=none file_io file_io/$CRASH_FILE
253260
```
254261
255262
---
@@ -268,6 +275,7 @@ jobs:
268275
- CRASH_FILE: $CRASH_FILE
269276
- CRASH_COUNT: $CRASH_COUNT
270277
- WORKFLOW_RUN: $WORKFLOW_RUN
278+
- ARTIFACT_URL: $ARTIFACT_URL (direct link to crash artifact)
271279
- BRANCH: $BRANCH
272280
- COMMIT: $COMMIT
273281

0 commit comments

Comments
 (0)