Skip to content
Proud to collaborate with Microsoft for Startups

runner.drift_repair_task_definition ​

Repair drift: register new ECS task definition

Repair the ECS task definition for a Fargate runner group.

Runs in L3 (after cluster and log group are repaired in L2). Reads log group ARN and cluster ARN from RunnerCloudResource records (written by L2 if they ran, or already present if those resources were healthy).

Overview ​

PropertyValue
Workflow typeAtomic
LibraryApp-runners
Version1.0

Input Schema ​

FieldTypeRequiredDefaultDescription
runner_group_uuiduuidYes—UUID of the RunnerGroup this repair step operates on, picked from the organization's list of runner groups.
organization_uuiduuidNo—UUID of the caller's organization, injected server-side from the authenticated request; scopes the operation to the correct tenant.
cloud_connection_uuiduuidNo—UUID of the CloudConnection backing this runner group's cloud backend, picked from the organization's connections. Optional: omitted when the group has no connection.
backend_typestringNo——
actions_neededlistYes——

Output Schema ​

FieldTypeRequiredDefaultDescription
runner_group_uuiduuidNo—UUID of the RunnerGroup this action operates on, picked from the organization's list of runner groups; echoed on output alongside terminal/error payloads.
organization_uuiduuidNo—UUID of the caller's organization, injected server-side from the authenticated request; scopes the operation to the correct tenant. Echoed on output alongside terminal/error payloads.
runner_execution_uuiduuidNo—UUID of the RunnerExecution this action operates on, picked from the organization's (optionally group-scoped) list of executions; echoed on output alongside terminal/error payloads.
workflow_uuidstringNo—Engine workflow-run identifier (or, for GitHub-Actions-triggered flows, an external GitHub Actions run id) associated with this record; not a platform entity foreign key despite the name. No source is attached since there is no list/query workflow for an internal run id.
statusstringNo——
outcomestringNo——
initiated_atstringNo——
completed_atstringNo——
failed_atstringNo——
failure_reasonstringNo——
errorstringNo——
error_typestringNo——
actor_uuiduuidNo—UUID of the user or service actor who triggered this action, injected server-side from the authenticated request when available; used for audit/attribution only. Optional — omitted for system or service-triggered actions with no human actor.
reasonstringNo——
workflow_run_uuidstringNo—Engine-stamped correlation/run id for this DAG execution (ADR-015/E1 plumbing), written into state_data by action_start; not a foreign key to any business entity. No source is attached since there is no list/query workflow for an internal run id.
retry_countintegerNo——
retried_fromstringNo——
failed_stepjsonNo——
failed_layerjsonNo——
failed_at_statejsonNo——
compensation_triggerjsonNo——
comp_current_layerjsonNo——
comp_queuejsonNo——
comp_retry_countjsonNo——
cloud_connection_uuiduuidNo—UUID of the CloudConnection backing this runner group's cloud backend, picked from the organization's connections. Optional: omitted when the group has no connection.
backend_typestringNo——
actions_neededlistNo——
resource_typestringNo——
skippedbooleanNo——
applied_actionstringNo——
sub_workflow_uuidstringNo—Engine run id of a child workflow this repair step chained while applying its fix (e.g. token-resolve or re-provision). An internal engine correlation/run identifier, not a user-facing entity reference; no source picker applies.

States ​

StateInitialTerminalSuccessAuto-advanceDescription
pendingYesNo—execute—
completedNoYesYes——
failedNoYesNo——

State Diagram ​

Transitions ​

FromActionToDescription
pendingexecutecompleted—
* (any state)failfailed—

API Usage ​

bash
POST /api/workflows/start
Content-Type: application/json

{
  "workflow_type": "runner.drift_repair_task_definition",
  "initial_data": {
    "runner_group_uuid": "value",
    "actions_needed": "value"
  }
}