skills/worker-ready-tracing/SKILL.md
Use when tracing Taskcluster Azure VM startup from worker-manager request through in-VM boot scripts to generic-worker `workerReady` with tc-logview, paperctl, Splunk Web, and Yardstick Prometheus. Applies to Windows worker provisioning latency. DO NOT USE FOR task failure triage (use worker-image-investigation).
npx skillsauth add jwmossmoz/agent-skills worker-ready-tracingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Trace the time from Taskcluster worker-manager provisioning a Windows Azure VM to generic-worker being ready to accept tasks. Keep the output anchored to timestamps and split cloud/platform time from guest-controlled startup work.
tc-logview on PATH for worker-manager and queue events.paperctl v2.0 configured with SWO_API_TOKEN or
~/.config/paperctl/config.toml for in-VM logs.browser-harness on PATH.--splunk:
https://security-mozilla.splunkcloud.com.--yardstick:
https://yardstick.mozilla.org.| Tool | Scope | Source |
|---|---|---|
| tc-logview | worker-manager request/registration and queue task-claimed events | GCP Cloud Logging |
| papertrail | In-VM Windows Application events and worker-runner-service logs | SolarWinds Observability |
| splunk | Azure activity log for VM/NIC create/delete/status | index=azure_audit |
| Yardstick | Pool-level Prometheus histograms and gauges | Grafana datasource gcp-v2-prod |
| taskcluster | Live task logs/artifacts/retriggers | Taskcluster API |
For a single VM timeline, use tc-logview + Papertrail, and add Splunk when
you need Azure VM/NIC lifecycle markers. Use Yardstick to compare one trace
against pool-level trends.
Set a local variable to the installed helper:
TRACE=~/.claude/skills/worker-ready-tracing/scripts/trace_worker_ready.py
Trace a recent worker:
$TRACE vm-abc123 --since 6h --papertrail-limit 500
Trace a tight absolute window and include Azure activity log markers:
$TRACE vm-abc123 \
--since 2026-05-15T17:20:00Z \
--until 2026-05-15T17:30:00Z \
--papertrail-limit 200 \
--splunk
Trace post-task reboot cycles and include Yardstick pool trend metrics:
$TRACE vm-abc123 \
--since 2026-05-15T17:50:00Z \
--until 2026-05-15T19:30:00Z \
--papertrail-limit 1000 \
--worker-pool-id gecko-t/win11-64-25h2 \
--yardstick
workerId and a tight UTC window from Treeherder, task logs,
tc-logview, worker-manager output, or the Taskcluster task run.tc-logview have enough data.--splunk when you need Azure VM/NIC create markers. The helper uses
the raw Azure Activity Log time field rather than Splunk _time.--yardstick with --worker-pool-id to compare the single worker
against pool-level p50/p95 registration, provision, and startup durations.Puppet-Run is usually the largest controllable guest-side cost.Start-WorkerRunner should be short.Start-WorkerRunner end -> workerReady is generic-worker startup through
first queue.claimWork.Primary single-VM timeline markers:
worker-requested: worker-manager created/requested the worker.azure-vm-write-*: Azure VM write lifecycle, if --splunk.worker-running: worker registered with worker-manager.instanceBoot: observability-only WORKER_METRICS log event with OS boot
time reported by generic-worker host info.maintain:*: Windows MaintainSystem begin/end markers.workerReady: observability-only WORKER_METRICS log event emitted when
generic-worker is about to call queue.claimWork.task-claimed: queue observed a task claim from that worker.The best "ready to accept tasks" marker is workerReady, not
worker-running. worker-running means worker-manager registration; it can
precede generic-worker readiness by minutes.
Mostly controllable inside the VM: Windows boot health, maintain_system,
Puppet-Run, LinkZY2D, Start-WorkerRunner, and generic-worker startup.
Mostly outside the VM: Azure allocation/VM writes and worker-manager loop
timing.
inmutable=false Puppet gotcha._time can lag raw Azure Activity Log time by several minutes. Use
raw time for lifecycle math.--papertrail-limit for multi-hour windows.workerReady -> task-claimed can be zero when pending work exists. If the
queue is empty, workerReady still proves the worker was ready even without a
claim.browser-harness jobs in parallel; they fight over
the active browser tab.No events found: widen --since/--until and confirm the worker ID exactly
matches the Azure VM name.Splunk query failed: open Splunk in Chrome and confirm SSO before rerunning
with --splunk.Yardstick query failed: open Yardstick in Chrome and confirm the dashboard
loads before rerunning with --yardstick.papertrail for ad-hoc in-VM log searches once the worker is known.splunk for broader Azure activity log analysis or provisioning failure
patterns.taskcluster for live task logs, artifacts, and worker pool API calls.worker-image-investigation when a task failure looks image-caused rather
than a worker startup timing issue.development
Download Azure Cost Management exports and query local Parquet/CSV in DuckDB. Use when refreshing local Azure cost caches or writing DuckDB SQL over exports. DO NOT USE FOR live Cost Management API diagnosis; use azure-cost-analysis.
data-ai
Use when creating performance self-reviews from local notes, prior reviews, review prompts, and verified evidence. Helps draft H1/H2, annual, and promotion self evaluations, example answers, and rich review-form paste output. Do not use for routine status or 1:1 summaries; use one-on-one.
tools
Prepare one-on-one/status bullets from ~/moz_artifacts using qmd and copy a topic-organized HTML/RTF list with embedded links to the macOS clipboard. Use when summarizing recent Mozilla work for a manager, 1:1, or status update. DO NOT USE FOR generating raw daily logs; use daily-log.
testing
Use when validating, auditing, grading, or checking an agent skill, SKILL.md, validator report, eval coverage, or production-readiness claim against agentskills.io and repo conventions. Checks spec, style, links, references, and eval evidence. DO NOT USE FOR creating or iterating skills; use skill-creator.