Troupeby AliveDocsSign in

Reference

runs

Cloud test runs: a troupe test run split into sandboxed shards, each driving its own device. Index · shared schemas · errors.

ProcedureSummaryRESTMCP toolStability
runs.createStart a sharded cloud run of a suite: each shard runs troupe test --shard=i/n in a sandbox with its own device budgetPOST—experimental
runs.cancelCancel a run: unfinished shards end canceled, their sandboxes stop and their devices are releasedPOST—experimental
runs.waitWait until the run ends or timeoutMs passes; a timeout is a normal result (done: false)GET—experimental
runs.shardsA cloud run's shards, in index order, with their status, devices and outcomeGET—experimental

runs.create

Start a sharded cloud run of a suite: each shard runs troupe test --shard=i/n in a sandbox with its own device budget

RESTPOST /v1/runs/create (input as a JSON body)
RPC/rpc/v2/runs/create
MCPnot a tool (a cloud platform procedure; the cloud MCP surface is the curated device tools); hints: none
Authdevices:acquire and runs:report
Tenancyproject
Troupe Cloudanswered by the control plane
Stabilityexperimental, since 1.0

Input:

TypeScript
{
  projectId: ProjectId
  suite: RunSuiteSource
  device: DeviceSpec
  shards?: integer  // 1–16
  workers?: integer  // 1–4
  projects?: string[]  // ≤ 16 items; each 1–128 chars
  grep?: string  // 1–512 chars
  timeoutMs?: integer  // 10000–10800000
  install?: { artifactId: ArtifactId }[]  // ≤ 5 items
}

Output:

TypeScript
{ run: CloudRun; suiteUpload?: SignedRequestOut }

Errors: U, NOT_FOUND, ORG_SUSPENDED, PROJECT_SUSPENDED, QUOTA_EXCEEDED, CAPACITY_UNAVAILABLE, DEVICE_SPEC_INVALID.

Named types: ArtifactId, CloudRun, DeviceSpec, ProjectId, RunSuiteSource, SignedRequestOut.

runs.cancel

Cancel a run: unfinished shards end canceled, their sandboxes stop and their devices are released

RESTPOST /v1/runs/cancel (input as a JSON body)
RPC/rpc/v2/runs/cancel
MCPnot a tool (a cloud platform procedure; the cloud MCP surface is the curated device tools); hints: idempotent, destructive
Authdevices:acquire
Tenancyproject
Troupe Cloudanswered by the control plane
Stabilityexperimental, since 1.0

Input:

TypeScript
{ projectId: ProjectId; runId: RunId }

Output:

TypeScript
{ run: CloudRun }

Errors: U, NOT_FOUND, CONFLICT.

Named types: CloudRun, ProjectId, RunId.

runs.wait

Wait until the run ends or timeoutMs passes; a timeout is a normal result (done: false)

RESTGET /v1/runs/wait (input as query parameters)
RPC/rpc/v2/runs/wait
MCPnot a tool (a cloud platform procedure; the cloud MCP surface is the curated device tools); hints: read-only, idempotent
Authruns:read
Tenancyproject
Troupe Cloudanswered by the control plane
Stabilityexperimental, since 1.0

Input:

TypeScript
{ projectId: ProjectId; runId: RunId; timeoutMs?: TimeoutMs }

Output:

TypeScript
{ done: boolean; run: CloudRun }

Errors: U, NOT_FOUND.

Named types: CloudRun, ProjectId, RunId, TimeoutMs.

runs.shards

A cloud run's shards, in index order, with their status, devices and outcome

RESTGET /v1/runs/shards (input as query parameters)
RPC/rpc/v2/runs/shards
MCPnot a tool (a cloud platform procedure; the cloud MCP surface is the curated device tools); hints: read-only, idempotent
Authruns:read
Tenancyproject
Troupe Cloudanswered by the control plane
Stabilityexperimental, since 1.0

Input:

TypeScript
{ projectId: ProjectId; runId: RunId }

Output:

TypeScript
{ shards: CloudShard[] }

Errors: U, NOT_FOUND.

Named types: CloudShard, ProjectId, RunId.

esc

    Type to search every page, the protocol reference and the cloud API.