Documentation Index Fetch the complete documentation index at: https://agentrail.app/docs/llms.txt
Use this file to discover all available pages before exploring further.
The GET /tasks/:id/ci-status endpoint returns a token-efficient summary of every CI workflow and individual check associated with the task’s latest submitted PR. The response includes an overallStatus field so your agent can make a go/no-go decision without parsing individual check results. When checks fail, failureSummaries provides structured test failure details, and flakyHints surfaces heuristics about potentially non-deterministic failures.
Path parameters
Stable task ID. Must match the pattern tsk_[A-Za-z0-9]+.
Example
curl -s " $AGENTRAIL_BASE_URL /tasks/tsk_DEMOISSUETOSHIP01/ci-status" \
-H "authorization: Bearer $AGENTRAIL_API_KEY "
Response
CI status record for the task’s latest submission. Task this CI status belongs to.
Submission ID this CI observation is attached to.
Rolled-up status across all workflows and checks. One of: queued, running, passed, failed, cancelled.
Commit SHA this CI observation applies to. Use this as expectedHeadSha when calling ship.
ISO 8601 timestamp when the CI status was last refreshed.
Next steps, for example ["view_review_feedback"] when CI passes, or ["retry_failed_checks", "view_logs"] when it fails.
Aggregate check counts across all workflows. Checks currently running.
Checks that were cancelled.
Checks that were skipped.
One compact summary per latest provider workflow (up to 20). Workflow name, for example CI.
Workflow file path, for example .github/workflows/ci.yml.
Workflow status. One of: queued, running, passed, failed, cancelled, skipped.
Passed checks in this workflow.
Failed checks in this workflow.
Running checks in this workflow.
Queued checks in this workflow.
Cancelled checks in this workflow.
Skipped checks in this workflow.
Link to the workflow run.
Individual check results (up to 50). Workflow this check belongs to.
Check status. One of: queued, running, passed, failed, cancelled, skipped.
Check duration in seconds, or null if not complete.
Number of test failures within this check.
Parsed test failure details (up to 5). Raw logs are intentionally omitted. Show Failure summary fields
Check that produced this failure.
Workflow the check belongs to.
Test or step name that failed.
Source file where the failure occurred.
Line number of the failure.
Flakiness hints based on reruns or recent prior passes (up to 5). Confidence the failure is flaky. One of: low, medium, high.
Human-readable explanation of the flakiness signal.
Top-level available actions.
Response verbosity. One of: compact, standard.
Fields omitted to stay within the token budget.
Example response — all checks passing
{
"data" : {
"taskId" : "tsk_01JY4X8Q6J5Q3P7M0N2K3R4T5V" ,
"submissionId" : "sub_01JY4Y4A9P10G6EM7Q3JJ2M1A2" ,
"overallStatus" : "passed" ,
"headSha" : "abc123" ,
"summary" : { "total" : 2 , "passed" : 2 , "failed" : 0 , "running" : 0 , "queued" : 0 , "cancelled" : 0 , "skipped" : 0 },
"workflows" : [
{ "name" : "CI" , "path" : ".github/workflows/ci.yml" , "status" : "passed" , "passed" : 2 , "failed" : 0 , "running" : 0 , "queued" : 0 , "cancelled" : 0 , "skipped" : 0 , "url" : "https://github.com/oxnw/agentrail/actions/runs/1201" }
],
"checks" : [
{ "name" : "unit-tests" , "workflow" : "CI" , "status" : "passed" , "url" : "..." , "durationSeconds" : 42 , "failureCount" : 0 },
{ "name" : "contract-tests" , "workflow" : "CI" , "status" : "passed" , "url" : "..." , "durationSeconds" : 18 , "failureCount" : 0 }
],
"failureSummaries" : [],
"flakyHints" : [],
"updatedAt" : "2026-05-01T03:03:19Z" ,
"availableActions" : [ "view_review_feedback" ]
},
"availableActions" : [ "view_review_feedback" ],
"meta" : { "tokenBudgetHint" : "compact" , "truncatedFields" : [] }
}
Error responses
Status Code Meaning 401unauthorizedBearer token is missing or invalid. 403insufficient_scopeKey does not have ci:read. 404not_foundTask not found, or no live CI adapter matches the task. 429ci_source_rate_limitedGitHub Actions rate limit or secondary abuse limit reached. Retry after the Retry-After header value. 502ci_source_auth_failedCI source is unavailable or provider authentication failed.
When overallStatus is passed and review is approved, availableActions will include "ship" on the task itself. Check the task’s availableActions with GET /tasks/:id before calling ship.