LUCI Build Triage & Analysis
This skill provides access to specialized triage tools maintained within the
depot_tools repository. These tools are used to inspect Buildbucket results
and ResultDB test failures.
Environment & Auth Discovery
- Environment: Always execute these scripts using
vpython3instead ofpython3to ensure all hermetic dependencies (likehttplib2) are satisfied. - Authentication: Use
bb auth-infoto proactively check if you are logged into Buildbucket. If not, inform the user they must runbb auth-login.
Locating the Tools
The triage scripts and their detailed documentation are located relative to
the depot_tools installation:
- Locate Depot Tools: Run
which gerrit_client.pyto find your localdepot_toolsroot. - Navigation:
- Buildbucket (
bb_wrapper.py): Found in<DEPOT_TOOLS_ROOT>/agents/skills/buildbucket/- Strengths: High-level Build info (is it failing? what steps failed?), compile errors, and infra issues.
- Test Results (
luci_triage.py): Found in<DEPOT_TOOLS_ROOT>/agents/skills/luci-test-results/- Strengths: Detailed Test info (specific test case failures in ResultDB).
- Buildbucket (
Troubleshooting
- "No Artifacts Found": This usually occurs if:
- The build failed so early (e.g., bot setup) that no artifacts were produced.
- The build is too old and logs have been purged.
- There is an authentication issue.
- Fallback: Try
bb log <build_id> <step_name>to see the raw output for the failed step.
Available Skills in Depot Tools
Once you have located the depot_tools directory, read the following files
to understand how to use each tool:
buildbucket: Used for high-level builder status and compile failures.- Read:
<DEPOT_TOOLS_ROOT>/agents/skills/buildbucket/SKILL.md
- Read:
luci-test-results: Used for detailed ResultDB test failure analysis.- Read:
<DEPOT_TOOLS_ROOT>/agents/skills/luci-test-results/SKILL.md
- Read:
Usage at Runtime
When you need to triage a build:
- Locate
depot_toolsas described above. - Read the relevant
SKILL.mdfile fromdepot_tools. - Follow the instructions in that file to execute the Python scripts (e.g.,
bb_wrapper.pyorluci_triage.py) using their absolute paths.