بنقرة واحدة
fix-build
Apply minimal evidence-driven build fixes in fuzz scaffold files for next build attempt.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Apply minimal evidence-driven build fixes in fuzz scaffold files for next build attempt.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Classify reproduced crashes into harness bug, upstream bug, or inconclusive using evidence only.
Generate complete fuzz scaffold artifacts aligned to selected targets and execution plan.
Discover, update, and rank vulnerability candidates before execution planning.
Repair fuzz scaffold after build failures with strategy change and mapping consistency.
Repair scaffold for coverage replan cycles using seed and harness feedback as primary signals.
Re-plan targets and scaffold strategy after build-stage failures using diagnostic-first reasoning.
| name | fix_build |
| description | Apply minimal evidence-driven build fixes in fuzz scaffold files for next build attempt. |
| compatibility | opencode |
| metadata | {"stage":"fix-build","owner":"tianheng"} |
Repairs fuzz/ build glue and related scaffold metadata after build failures.
Use this skill when build diagnostics exist and coordinator requests targeted build recovery.
fuzz/build_full.log or coordinator context)fuzz/build.py and harness filesfuzz/fuzz/execution_plan.json (if present)previous_failed_attempts from context (if provided)fuzz/fuzz/build.py)DEFAULT_CMAKE_ARGS = ["-DENABLE_TEST=OFF", "-DENABLE_INSTALL=OFF"]cmake binary (for example ["cmake", "-S", ...] and ["cmake", "--build", ...]); do not use sys.executable, "-m", "cmake" or python -m cmakedef find_static_lib(repo_root):
import subprocess
result = subprocess.run(
["find", str(repo_root), "-name", "*.a", "-type", "f"],
capture_output=True, text=True, timeout=60
)
if result.returncode != 0:
return None
for p in result.stdout.strip().split("\n"):
p = Path(p)
if "test" not in p.name.lower() and p.exists():
return p
return None
.c with clang.cc/.cpp/.cxx with clang++clang++ by defaultundefined reference errors point at internal library symbols, prefer adding the entire owning source directory (e.g. apps/lib/*.c) to the build SOURCES list in one edit, rather than chasing one symbol at a time.fuzz/system_packages.txt. Do not declare ports speculatively or for libraries the repo vendors/builds itself — a self-contained make/single-file project needs no entries, and spurious ports trigger an unnecessary vcpkg bootstrap.zlib, bzip2, liblzma, lz4, zstd, openssl, expat, libxml2 (never z, bz2, lzma).fuzz/repo_understanding.json, keep:
chosen_target_api as API identifier (not fuzz/*.cc path)build_system != unknownevidence as non-empty string arraynon_public_api_usage, replace offending symbols first.api_surface_exception with non-empty reason and evidence../done without fresh diff is invalid.fuzz/ except ./done.repo_understanding semantics.Read and fix <path>[:line].fuzz/ as the sole text of ./done (a relative path string like fuzz/foo.c; do not copy file contents).