Skip to content

Commit 2009c77

Browse files
ret2libcclaude
andauthored
fix(docker-compose): point patcher task storage at tasks_storage (#551)
BUTTERCUP_PATCHER_TASK_STORAGE_DIR was /node_data/crs_scratch. The patcher's get_clean_task() resolves <task_storage>/<task_id>; under crs_scratch that path is already the fuzzer/scheduler per-task scratch dir (corpus/crashes/build subdirs, no task_meta.json). remote_archive_ to_dir() early-returns because the dir exists, so the pristine task is never materialized and TaskMeta.load() raises FileNotFoundError on task_meta.json during the patcher 'find_tests' node. Point it at /node_data/tasks_storage (same as BUTTERCUP_DOWNLOADER_DOWNLOAD_DIR / BUTTERCUP_SCHEDULER_TASKS_STORAGE_DIR), where the downloaded task with task_meta.json actually lives. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent f3e9934 commit 2009c77

1 file changed

Lines changed: 5 additions & 1 deletion

File tree

dev/docker-compose/env.dev.compose

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,11 @@ BUTTERCUP_SCHEDULER_SCRATCH_DIR=/node_data/crs_scratch
3737
BUTTERCUP_PATCHER_SERVE__REDIS_URL=redis://redis:6379
3838
BUTTERCUP_PATCHER_SERVE__SLEEP_TIME=5
3939
BUTTERCUP_PATCHER_LOG_LEVEL=debug
40-
BUTTERCUP_PATCHER_TASK_STORAGE_DIR=/node_data/crs_scratch
40+
# Where the downloaded challenge task lives (matches downloader/scheduler).
41+
# Must NOT be crs_scratch: get_clean_task() resolves <task_storage>/<task_id>,
42+
# which under crs_scratch collides with the fuzzer's per-task scratch dir
43+
# (no task_meta.json there) and crashes TaskMeta.load().
44+
BUTTERCUP_PATCHER_TASK_STORAGE_DIR=/node_data/tasks_storage
4145
BUTTERCUP_PATCHER_SCRATCH_DIR=/node_data/crs_scratch
4246

4347
BUTTERCUP_PROGRAM_MODEL_SERVE__REDIS_URL=redis://redis:6379

0 commit comments

Comments
 (0)