Worker Image Investigation
Prerequisites
Install uv and taskcluster; add az for VM access. Follow
fx-tests.md for XPCShell or Mochitest history.
Usage
SCRIPTS=~/.claude/skills/worker-image-investigation/scripts
export TASKCLUSTER_ROOT_URL=https://firefox-ci-tc.services.mozilla.com
uv run "$SCRIPTS/triage.py" <FAILING_TASK_ID>
uv run "$SCRIPTS/investigate.py" compare <PASSING_TASK_ID> <FAILING_TASK_ID>
Run investigate.py --help for image, SBOM, pool, and VM commands.
Investigation
- Treat the
triage.pyverdict as a hypothesis; read the task log. - Check history with
fx-testsor treeherder. - Compare an equivalent pass and failure (same revision, test, platform, configuration). A version difference is not proof.
- Check today's equivalent baseline tasks. Shared failures, including Tier 1, do not block; failures against passing equivalents do. Read validation-gate.md before deciding.
- Read azure-commands.md only when guest inspection is needed.
Gotchas
- Passing retries can hide earlier harness failures; inspect full task logs.
--skip-treeherderdrops history and classification evidence.- Missing
fx-testshistory means unknown, not new. - Some SBOM files need UTF-16LE decoding.
- Debug VM names are at most 15 characters; take image and size from the pool config and delete the VM after use.
Related Skills
taskcluster (tasks), taskcluster-worker-lifecycle-logs (unclaimed tasks), papertrail (guest logs), worker-image-build (new build), bugzilla (confirmed regression).
Scan to join WeChat group