Skip to content

Claude Sonnet 5.5 on Diagnose why GitHub Actions stopped running

AClaude Sonnet 5.5 · Claude Code 2.1.299 (headless -p) · cloud · 2026-10-14 · by @bobsiopener

Trust 80%Fully autonomoussuccess · first try
Estimated cost
$0.04
Wall time
11s
Human step-ins
0
Outcome
Pass

Compare with other models on this task →

Summary

Exact prompt

Our GitHub Actions CI stopped running (no runs at all, no errors). The repo is in ./repo (see repo/NOTES.md and repo/.github/workflows/ci.yml). Find the root cause and fix the workflow file in place so CI runs again for pushes and PRs to the default branch. Then write DIAGNOSIS.md in the current directory with the root cause in 3-5 sentences. Do not use the network.

Task prompt given to the agent (headless, offline, synthetic fixture inputs): Our GitHub Actions CI stopped running (no runs at all, no errors). The repo is in ./repo (see repo/NOTES.md and repo/.github/workflows/ci.yml). Find the root cause and fix the workflow file in place so CI runs again for pushes and PRs to the default branch. Then write DIAGNOSIS.md in the current directory with the root cause in 3-5 sentences. Do not use the network. Inspired by https://x.com/kunchenguid/status/2098814897354137710 (unverified; not checked with the author). This is an independent re-run on a reproducible synthetic task; it does not report or reproduce the original post's numbers. Cost shown is a list-price API-equivalent estimate (run on a Claude Pro subscription, not billed).

Success criteria: All automated rubric checks pass: push trigger includes trunk (or unfiltered); pull_request trigger includes trunk (or unfiltered); push paths filter does not exclude src/ changes; DIAGNOSIS.md names branch rename main->trunk as root cause; workflow is valid YAML with jobs.test.

Setup notes: Cost is an ESTIMATE: Claude Code's list-price API-equivalent figure. The run used a Claude Pro subscription, so nothing was billed. input_tokens = all input incl. cache-creation and cache-read tokens; cached_tokens = cache reads (subset of input). Claude Code's cost bills cache writes at the 1h cache-write premium, so it can differ from a flat input-price recompute. Web disabled; tools Read/Write/Edit/Glob/Grep/Bash; single run; scored automatically (5/5 checks).

Estimated cost List-price estimate; not actually billed.

Metrics

Estimated cost
$0.04
Wall time
11s
Human step-ins
0
Turns
3
Model usage
ModelInput tokOutput tokCost
AClaude Sonnet 5.5anthropic/claude-sonnet-5.555,6741,005$0.04

Reproduce this run

  1. Use the use case prompt on the use case page.
  2. Same setup: Claude Sonnet 5.5 (anthropic/claude-sonnet-5.5) via Claude Code 2.1.299 (headless -p), cloud.
  3. It counts as a success only if it meets every success criterion: All automated rubric checks pass: push trigger includes trunk (or unfiltered); pull_request trigger includes trunk (or unfiltered); push paths filter does not exclude src/ changes; DIAGNOSIS.md names branch rename main->trunk as root cause; workflow is valid YAML with jobs.test.
  4. Log model, tokens, wall time, human step-ins and the evidence log, then submit it as a reproduction. A different model? Submit a head-to-head rerun.

How runs are scored: Methodology.

Was this useful?

⇄ Rerun on another model

Automated checks

Trust 80% comes from these checks (how Trust % works).

Evidence log
{
 "duration_api_ms": 9927,
 "stop_reason": "end_turn",
 "session_id": "[REDACTED]",
 "total_cost_usd": 0.0416574,
 "usage": {
  "input_tokens": 6,
  "cache_creation_input_tokens": 6674,
  "cache_read_input_tokens": 48994,
  "output_tokens": 1005,
  "output_tokens_details": {
   "thinking_tokens": 198
  },
  "server_tool_use": {
   "web_search_requests": 0,
   "web_fetch_requests": 0
  },
  "service_tier": "standard",
  "cache_creation": {
   "ephemeral_1h_input_tokens": 6674,
   "ephemeral_5m_input_tokens": 0
  },
  "inference_geo": "global",
  "iterations": [
   {
    "input_tokens": 2,
    "output_tokens": 277,
    "cache_read_input_tokens": 18480,
    "cache_creation_input_tokens": 733,
    "cache_creation": {
     "ephemeral_5m_input_tokens": 0,
     "ephemeral_1h_input_tokens": 733
    },
    "type": "message"
   }
  ],
  "speed": "standard",
  "fallback_credit": null
 },
 "modelUsage": {
  "claude-sonnet-5-5": {
   "inputTokens": 6,
   "outputTokens": 1005,
   "cacheReadInputTokens": 48994,
   "cacheCreationInputTokens": 6674,
   "webSearchRequests": 0,
   "costUSD": 0.0416574,
   "contextWindow": 1000000,
   "maxOutputTokens": 128000,
   "thinkingTokens": 198,
   "canonicalModel": "claude-sonnet-5-5",
   "provider": "firstParty",
   "costBasis": "list"
  }
 },
 "permission_denials": [],
 "terminal_reason": "completed",
 "fast_mode_state": "off",
 "fast_mode_disabled_reason": "sdk_opt_in_required",
 "subagent_stats": {
  "spawned": 0,
  "requested": {
   "background": 0,
   "foreground": 0,
   "unset": 0
  },
  "started_in_background": 0,
  "max_depth": 0,
  "spawned_by_subagents": 0,
  "completed": 0,
  "failed": 0,
  "killed": {
   "parent": 0,
   "user": 0,
   "system": 0
  },
  "refused": {
   "depth_limit": 0,
   "concurrency_limit": 0,
   "budget": 0
  },
  "by_type": {}
 },
 "safety_stops": 0,
 "is_error": false,
 "num_turns": 3,
 "subtype": "success",
 "api_error_status": null,
 "result": "The root cause was the branch filters in `repo/.github/workflows/ci.yml`. Both the `push` and `pull_request` triggers were limited to `main`. After the 2026-10-01 rename to `trunk`, nothing pushes or opens PRs against `main` any more. GitHub skips a workflow with no matching branch without logging an error, which fits what you saw. I haven't run the workflow, since there's no network access here.\n\nI made two changes to the workflow:\n- **Branch filters:** both triggers now point at `trunk`.\n- **Path filter:** I removed `paths: ['src/**']` from `push`. It would have skipped pushes that only touch `tests/` or the workflow file. If you want it back, add `tests/**` and `.github/workflows/**` to it.\n\n`DIAGNOSIS.md` is in the current directory.",
 "ttft_ms": 2569,
 "type": "result",
 "duration_ms": 10391,
 "uuid": "[REDACTED]",
 "ttft_stream_ms": 1767,
 "time_to_request_ms": 331,
 "first_content_frame_ms": 1768,
 "queued_turn_count": 0,
 "result_index": 0
}

Get new runs and ranking changes weekly