curl --request GET \
--url https://api.example.com/api/v1/job-device-statuses/{id}/ \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.example.com/api/v1/job-device-statuses/{id}/"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.example.com/api/v1/job-device-statuses/{id}/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/api/v1/job-device-statuses/{id}/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/api/v1/job-device-statuses/{id}/"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.example.com/api/v1/job-device-statuses/{id}/")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/v1/job-device-statuses/{id}/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"device": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"nvswitch_rack_slot": "ST0",
"nvswitch_switch_role": "",
"nvswitch_nvos_hostname": "<string>",
"enrollment_validated_ref": "<string>",
"current_instance_uuid": "<string>",
"device_type_kind": "<string>",
"device_type_vendor": "<string>",
"device_type_model": "<string>",
"device_type_resource_class": "<string>",
"role_name": "<string>",
"role_slug": "<string>",
"device_class": "gpu_compute",
"rack_name": "<string>",
"rack_serial_number": "",
"location_name": "<string>",
"site_name": "<string>",
"site_slug": "<string>",
"organisation_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"organisation_slug": "<string>",
"links": {
"self": "<string>",
"collection": "<string>",
"device_type": "<string>",
"role": "<string>",
"rack": "<string>",
"location": "<string>",
"site": "<string>",
"jobs": "<string>",
"job_device_statuses": "<string>",
"netbox": "<string>"
},
"customer_ready": true,
"topology": {},
"topology_group_types": {},
"short_name": "<string>",
"current_tenant_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"current_tenant_name": "<string>",
"current_allocation_annotations": {},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"name": "<string>",
"nvswitch_ztp_completed_at": "2023-11-07T05:31:56Z",
"nvswitch_ztp_evidence_source": "<string>",
"position": "<string>",
"enrollment_proof_source": "enrolled",
"entered_triage_at": "2023-11-07T05:31:56Z",
"inventory_only": true,
"device_type": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"role": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"rack": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"location": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"site": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"annotations": {},
"tags": [
"<string>"
],
"serial_number": "<string>",
"infrastructure_ref": "<string>",
"ironic_provision_state": "enroll",
"placement_traits": [
"<string>"
],
"slurm_states": [
"ALLOCATED"
],
"slurm_state_updated_at": "2023-11-07T05:31:56Z",
"slurm_state_reason": "<string>",
"operational_failure_reason": "<string>",
"operational_failure_details": "<string>",
"ironic_maintenance": true,
"ironic_maintenance_reason": "<string>",
"ironic_fault": "<string>",
"ironic_last_error": "<string>",
"triage_ticket_url": "<string>",
"parent_ticket_url": "<string>",
"netbox_id": 1073741823,
"interfaces": [
{
"name": "<string>",
"type": "<string>",
"type_display": "<string>",
"ip_addresses": [
"<string>"
],
"mac_address": "<string>",
"ib_device_guid": "<string>"
}
],
"inventory_status": "planned",
"operational_status": "unknown",
"health_status": "unknown",
"platform_class": "<string>",
"entered_service_at": "2023-11-07T05:31:56Z",
"in_triage": true,
"chad_ignore": true
},
"job": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"workflow": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"temporal_workflow_name": "EnrollmentWorkflow",
"organisation": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"category": "enrolment"
},
"created_by": "<string>",
"ai_failure_summary": {
"headline": "<string>",
"explanation": "<string>",
"failure_categories": {}
},
"test_slugs": [
"multi-node.hello-world"
],
"hostlist": "<string>",
"chad_sop": {
"id": "<string>",
"name": "<string>",
"version": 1073741824
},
"links": {
"self": "<string>",
"collection": "<string>",
"workflow": "<string>",
"devices": "<string>",
"job_device_statuses": "<string>",
"temporal": "<string>",
"logs": "<string>"
},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"parameters": "<unknown>",
"max_attempts_override": 123,
"source_test_execution": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"devices": [
{
"name": "<string>",
"rack_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"rack_name": "<string>",
"position": 123,
"pod": "<string>"
}
],
"device_count": 123,
"failed_device_count": 123,
"unevaluated_device_count": 123,
"name": "<string>",
"status": "pending",
"started_at": "2023-11-07T05:31:56Z",
"completed_at": "2023-11-07T05:31:56Z",
"temporal_workflow_id": "<string>"
},
"failure_code": "UNMAPPED_APPLICATION_ERROR",
"ai_diagnosis": {
"headline": "<string>",
"explanation": "<string>"
},
"node_diagnostics": {
"schema_version": 123,
"failure_signature": "clean_failed.neutron_ports",
"findings": [
{
"domain": "openstack_baremetal",
"code": "clean_failed.neutron_ports",
"collector": "ironic-node"
}
],
"collectors": [
{
"slug": "ironic-node",
"status": "completed"
}
],
"artifact": {
"bucket": "<string>",
"key_prefix": "<string>"
}
},
"responsible_team": "fleet_manager",
"links": {
"self": "<string>",
"collection": "<string>",
"job": "<string>",
"device": "<string>",
"temporal": "<string>",
"logs": "<string>"
},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"status": "running",
"started_at": "2023-11-07T05:31:56Z",
"completed_at": "2023-11-07T05:31:56Z",
"temporal_workflow_id": "<string>",
"phase": "<string>",
"failure_message": "<string>"
}{
"detail": "<string>",
"code": "error",
"field_errors": [
{
"field": "<string>",
"messages": [
"<string>"
]
}
]
}{
"detail": "<string>",
"code": "error",
"field_errors": [
{
"field": "<string>",
"messages": [
"<string>"
]
}
]
}{
"detail": "<string>",
"code": "error",
"field_errors": [
{
"field": "<string>",
"messages": [
"<string>"
]
}
]
}Get job device status
List, retrieve and partially update the statuses of a device in a job.
Writes go through PATCH only. PUT is deliberately disabled: the sole
writer (the workflow agent’s SDK job_executions manager) uses PATCH, and
the organic fm.device.validation-requested producer lives on
partial_update — leaving a full-replace PUT open would be a status
write path that bypasses that enqueue chokepoint.
curl --request GET \
--url https://api.example.com/api/v1/job-device-statuses/{id}/ \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.example.com/api/v1/job-device-statuses/{id}/"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.example.com/api/v1/job-device-statuses/{id}/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/api/v1/job-device-statuses/{id}/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/api/v1/job-device-statuses/{id}/"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.example.com/api/v1/job-device-statuses/{id}/")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/v1/job-device-statuses/{id}/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"device": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"nvswitch_rack_slot": "ST0",
"nvswitch_switch_role": "",
"nvswitch_nvos_hostname": "<string>",
"enrollment_validated_ref": "<string>",
"current_instance_uuid": "<string>",
"device_type_kind": "<string>",
"device_type_vendor": "<string>",
"device_type_model": "<string>",
"device_type_resource_class": "<string>",
"role_name": "<string>",
"role_slug": "<string>",
"device_class": "gpu_compute",
"rack_name": "<string>",
"rack_serial_number": "",
"location_name": "<string>",
"site_name": "<string>",
"site_slug": "<string>",
"organisation_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"organisation_slug": "<string>",
"links": {
"self": "<string>",
"collection": "<string>",
"device_type": "<string>",
"role": "<string>",
"rack": "<string>",
"location": "<string>",
"site": "<string>",
"jobs": "<string>",
"job_device_statuses": "<string>",
"netbox": "<string>"
},
"customer_ready": true,
"topology": {},
"topology_group_types": {},
"short_name": "<string>",
"current_tenant_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"current_tenant_name": "<string>",
"current_allocation_annotations": {},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"name": "<string>",
"nvswitch_ztp_completed_at": "2023-11-07T05:31:56Z",
"nvswitch_ztp_evidence_source": "<string>",
"position": "<string>",
"enrollment_proof_source": "enrolled",
"entered_triage_at": "2023-11-07T05:31:56Z",
"inventory_only": true,
"device_type": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"role": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"rack": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"location": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"site": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"annotations": {},
"tags": [
"<string>"
],
"serial_number": "<string>",
"infrastructure_ref": "<string>",
"ironic_provision_state": "enroll",
"placement_traits": [
"<string>"
],
"slurm_states": [
"ALLOCATED"
],
"slurm_state_updated_at": "2023-11-07T05:31:56Z",
"slurm_state_reason": "<string>",
"operational_failure_reason": "<string>",
"operational_failure_details": "<string>",
"ironic_maintenance": true,
"ironic_maintenance_reason": "<string>",
"ironic_fault": "<string>",
"ironic_last_error": "<string>",
"triage_ticket_url": "<string>",
"parent_ticket_url": "<string>",
"netbox_id": 1073741823,
"interfaces": [
{
"name": "<string>",
"type": "<string>",
"type_display": "<string>",
"ip_addresses": [
"<string>"
],
"mac_address": "<string>",
"ib_device_guid": "<string>"
}
],
"inventory_status": "planned",
"operational_status": "unknown",
"health_status": "unknown",
"platform_class": "<string>",
"entered_service_at": "2023-11-07T05:31:56Z",
"in_triage": true,
"chad_ignore": true
},
"job": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"workflow": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"temporal_workflow_name": "EnrollmentWorkflow",
"organisation": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"category": "enrolment"
},
"created_by": "<string>",
"ai_failure_summary": {
"headline": "<string>",
"explanation": "<string>",
"failure_categories": {}
},
"test_slugs": [
"multi-node.hello-world"
],
"hostlist": "<string>",
"chad_sop": {
"id": "<string>",
"name": "<string>",
"version": 1073741824
},
"links": {
"self": "<string>",
"collection": "<string>",
"workflow": "<string>",
"devices": "<string>",
"job_device_statuses": "<string>",
"temporal": "<string>",
"logs": "<string>"
},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"parameters": "<unknown>",
"max_attempts_override": 123,
"source_test_execution": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"devices": [
{
"name": "<string>",
"rack_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"rack_name": "<string>",
"position": 123,
"pod": "<string>"
}
],
"device_count": 123,
"failed_device_count": 123,
"unevaluated_device_count": 123,
"name": "<string>",
"status": "pending",
"started_at": "2023-11-07T05:31:56Z",
"completed_at": "2023-11-07T05:31:56Z",
"temporal_workflow_id": "<string>"
},
"failure_code": "UNMAPPED_APPLICATION_ERROR",
"ai_diagnosis": {
"headline": "<string>",
"explanation": "<string>"
},
"node_diagnostics": {
"schema_version": 123,
"failure_signature": "clean_failed.neutron_ports",
"findings": [
{
"domain": "openstack_baremetal",
"code": "clean_failed.neutron_ports",
"collector": "ironic-node"
}
],
"collectors": [
{
"slug": "ironic-node",
"status": "completed"
}
],
"artifact": {
"bucket": "<string>",
"key_prefix": "<string>"
}
},
"responsible_team": "fleet_manager",
"links": {
"self": "<string>",
"collection": "<string>",
"job": "<string>",
"device": "<string>",
"temporal": "<string>",
"logs": "<string>"
},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"status": "running",
"started_at": "2023-11-07T05:31:56Z",
"completed_at": "2023-11-07T05:31:56Z",
"temporal_workflow_id": "<string>",
"phase": "<string>",
"failure_message": "<string>"
}{
"detail": "<string>",
"code": "error",
"field_errors": [
{
"field": "<string>",
"messages": [
"<string>"
]
}
]
}{
"detail": "<string>",
"code": "error",
"field_errors": [
{
"field": "<string>",
"messages": [
"<string>"
]
}
]
}{
"detail": "<string>",
"code": "error",
"field_errors": [
{
"field": "<string>",
"messages": [
"<string>"
]
}
]
}Authorizations
The access token received from the authorization server in the OAuth 2.0 flow.
Path Parameters
A UUID string identifying this job device status.
Response
Serializer for the JobDeviceStatus model.
Serializer for Device model.
Show child attributes
Show child attributes
The one job response shape, served everywhere a job is returned.
workflow is the slim reference rather than the full workflow: the only workflow
fields a job's consumers read are id, name and temporal_workflow_name, while the full
row carries a parameters_schema measuring several KB — a cost every row of the jobs
table and the job-device-status list would pay for nothing.
The four projection fields below are the jobs list's own: they are populated only when the queryset carries the row projection, and dropped from the payload otherwise. That keeps the per-device summary off the job-device-status embed, where one copy per row of the job's whole device array is quadratic in the job's device count.
Show child attributes
Show child attributes
UNMAPPED_APPLICATION_ERROR- UNMAPPED_APPLICATION_ERRORACTIVITY_EXECUTION_FAILURE- ACTIVITY_EXECUTION_FAILUREUNEXPECTED_WORKFLOW_EXCEPTION- UNEXPECTED_WORKFLOW_EXCEPTIONWORKFLOW_TIMEOUT- WORKFLOW_TIMEOUTWORKFLOW_CANCELLED- WORKFLOW_CANCELLEDWORKFLOW_TERMINATED- WORKFLOW_TERMINATEDUNKNOWN_WORKFLOW_FAILURE- UNKNOWN_WORKFLOW_FAILUREJOB_PARAMETERS_INVALID- JOB_PARAMETERS_INVALIDJOB_SUBMISSION_FAILED- JOB_SUBMISSION_FAILEDIRONIC_NODE_CLEAN_FAILED- IRONIC_NODE_CLEAN_FAILEDIRONIC_NODE_CLEAN_INVALID_ACTION- IRONIC_NODE_CLEAN_INVALID_ACTIONIRONIC_NODE_CLEAN_UNEXPECTED_PROVISION_STATE- IRONIC_NODE_CLEAN_UNEXPECTED_PROVISION_STATEQUARANTINE_TRAIT_REMOVAL_FAILED- QUARANTINE_TRAIT_REMOVAL_FAILEDRELEASE_TRAIT_ADDITION_FAILED- RELEASE_TRAIT_ADDITION_FAILEDRELEASE_PARTITION_LATCH_REFUSED- RELEASE_PARTITION_LATCH_REFUSEDRELEASE_BACKEND_VRF_LATCH_REFUSED- RELEASE_BACKEND_VRF_LATCH_REFUSEDMETAL_HANDOFF_FAILED- METAL_HANDOFF_FAILEDMETAL_RECLAIM_FAILED- METAL_RECLAIM_FAILEDCUSTODY_STATUS_UPDATE_FAILED- CUSTODY_STATUS_UPDATE_FAILEDSLURM_ADOPT_FAILED- SLURM_ADOPT_FAILEDSLURM_RELEASE_FAILED- SLURM_RELEASE_FAILEDSLURM_REGISTRATION_TIMEOUT- SLURM_REGISTRATION_TIMEOUTIMAGE_NODE_FAILED- IMAGE_NODE_FAILEDUNIMAGE_NODE_FAILED- UNIMAGE_NODE_FAILEDREPORT_SITE_NOT_FOUND- REPORT_SITE_NOT_FOUNDREPORT_NO_DATA_FOUND- REPORT_NO_DATA_FOUNDREPORT_INVALID_BUNDLE_INPUT- REPORT_INVALID_BUNDLE_INPUTREPORT_INVALID_SECTION- REPORT_INVALID_SECTIONBURN_IN_DEVICE_STATUS_INVALID- BURN_IN_DEVICE_STATUS_INVALIDBURN_IN_SLURM_NODE_VALIDATION_FAILED- BURN_IN_SLURM_NODE_VALIDATION_FAILEDBURN_IN_SLURM_RESERVATION_FAILED- BURN_IN_SLURM_RESERVATION_FAILEDBURN_IN_RESERVATION_WAIT_TIMEOUT- BURN_IN_RESERVATION_WAIT_TIMEOUTBURN_IN_RESERVATION_QUEUE_UNAVAILABLE- BURN_IN_RESERVATION_QUEUE_UNAVAILABLEBURN_IN_TEST_PREPARATION_FAILED- BURN_IN_TEST_PREPARATION_FAILEDBURN_IN_TEST_TIME_LIMIT_EXCEEDS_CEILING- BURN_IN_TEST_TIME_LIMIT_EXCEEDS_CEILINGHARDWARE_TEST_IMAGE_PREPARATION_FAILED- HARDWARE_TEST_IMAGE_PREPARATION_FAILEDBURN_IN_TEST_EXECUTION_FAILED- BURN_IN_TEST_EXECUTION_FAILEDBURN_IN_INSUFFICIENT_DEVICES- BURN_IN_INSUFFICIENT_DEVICESBURN_IN_UNKNOWN_TEST_SLUG- BURN_IN_UNKNOWN_TEST_SLUGBURN_IN_INVALID_WORKFLOW_STAGE- BURN_IN_INVALID_WORKFLOW_STAGEBURN_IN_MISSING_RESOURCE_CLASS- BURN_IN_MISSING_RESOURCE_CLASSBURN_IN_MIXED_RESOURCE_CLASS- BURN_IN_MIXED_RESOURCE_CLASSBURN_IN_WORKFLOW_STATE_INVALID- BURN_IN_WORKFLOW_STATE_INVALIDBURN_IN_MISSING_PAIR_METRICS- BURN_IN_MISSING_PAIR_METRICSBURN_IN_DUPLICATE_SLURM_SUBMISSION- BURN_IN_DUPLICATE_SLURM_SUBMISSIONBMC_HTTP_SERVICE_UNAVAILABLE- BMC_HTTP_SERVICE_UNAVAILABLEBMC_HTTP_BAD_REQUEST- BMC_HTTP_BAD_REQUESTBMC_HTTP_UNAUTHORIZED- BMC_HTTP_UNAUTHORIZEDBMC_HTTP_FORBIDDEN- BMC_HTTP_FORBIDDENBMC_REDFISH_DISCONNECT- BMC_REDFISH_DISCONNECTBMC_REDFISH_FD_EXHAUSTION- BMC_REDFISH_FD_EXHAUSTIONBMC_HTTP_GENERIC_ERROR- BMC_HTTP_GENERIC_ERRORBMC_COLD_RESET_TIMEOUT- BMC_COLD_RESET_TIMEOUTBMC_IPMI_UNREACHABLE- BMC_IPMI_UNREACHABLEBMC_IPMI_COMMAND_ERROR- BMC_IPMI_COMMAND_ERRORNVSWITCH_CREDENTIAL_MISSING- NVSWITCH_CREDENTIAL_MISSINGNVSWITCH_CREDENTIAL_ERROR- NVSWITCH_CREDENTIAL_ERRORNVSWITCH_ADDRESS_INVALID- NVSWITCH_ADDRESS_INVALIDNVSWITCH_ADDRESS_MISSING- NVSWITCH_ADDRESS_MISSINGNVSWITCH_PRECONDITION_FAILED- NVSWITCH_PRECONDITION_FAILEDIRONIC_HTTP_INTERNAL_SERVER_ERROR- IRONIC_HTTP_INTERNAL_SERVER_ERRORIRONIC_SSL_VERSION_ERROR- IRONIC_SSL_VERSION_ERRORIRONIC_VIRTUAL_MEDIA_INSPECTION_ERROR- IRONIC_VIRTUAL_MEDIA_INSPECTION_ERRORIRONIC_NODE_POWER_STATE_ERROR- IRONIC_NODE_POWER_STATE_ERRORIRONIC_DRIVER_MISMATCH- IRONIC_DRIVER_MISMATCHIRONIC_NODE_CUSTOMER_INSTANCE_ATTACHED- IRONIC_NODE_CUSTOMER_INSTANCE_ATTACHEDIRONIC_NODE_STUCK_IN_ENROLL- IRONIC_NODE_STUCK_IN_ENROLLIRONIC_INSPECTFAIL- IRONIC_INSPECTFAILIRONIC_CLEANFAIL- IRONIC_CLEANFAILIRONIC_NODE_LOCKED- IRONIC_NODE_LOCKEDIRONIC_UEFI_BOOT_MODE_TIMEOUT- IRONIC_UEFI_BOOT_MODE_TIMEOUTIRONIC_ENROLLMENT_ACTIVITY_TIMEOUT- IRONIC_ENROLLMENT_ACTIVITY_TIMEOUTIRONIC_INSPECTION_HARDWARE_VALIDATION_FAILED- IRONIC_INSPECTION_HARDWARE_VALIDATION_FAILEDIRONIC_INSPECTION_TIMEOUT- IRONIC_INSPECTION_TIMEOUTIRONIC_INSPECTION_DID_NOT_RUN- IRONIC_INSPECTION_DID_NOT_RUNIRONIC_INSPECTION_IPA_IMAGE_NOT_FOUND- IRONIC_INSPECTION_IPA_IMAGE_NOT_FOUNDIRONIC_NODE_POWER_ON_TIMEOUT- IRONIC_NODE_POWER_ON_TIMEOUTIRONIC_NODE_UNEXPECTED_PROVISION_STATE- IRONIC_NODE_UNEXPECTED_PROVISION_STATEIRONIC_ROUTING_UNRESOLVED- IRONIC_ROUTING_UNRESOLVEDNETBOX_DEVICE_STATUS_INVALID- NETBOX_DEVICE_STATUS_INVALIDNETBOX_STATUS_UPDATE_FAILED- NETBOX_STATUS_UPDATE_FAILEDNETBOX_INSPECTION_VALIDATION_CONFIG_MALFORMED- NETBOX_INSPECTION_VALIDATION_CONFIG_MALFORMEDNETBOX_LAG_PARENT_MISSING- NETBOX_LAG_PARENT_MISSINGNETBOX_CABLE_TOPOLOGY_INVALID- NETBOX_CABLE_TOPOLOGY_INVALIDNETBOX_INTERFACE_CABLE_MISSING- NETBOX_INTERFACE_CABLE_MISSINGNETBOX_INTERFACE_MAC_ADDRESS_MISSING- NETBOX_INTERFACE_MAC_ADDRESS_MISSINGPLATFORM_CLASS_UNRESOLVABLE- PLATFORM_CLASS_UNRESOLVABLEPLATFORM_CLASS_RECORD_FAILED- PLATFORM_CLASS_RECORD_FAILEDDHCP_CONFIGURATION_FAILED- DHCP_CONFIGURATION_FAILEDDHCP_TIMEOUT- DHCP_TIMEOUTDHCP_SERVICE_NOT_ACTIVE- DHCP_SERVICE_NOT_ACTIVECABLE_LLDP_VERIFICATION_FAILED- CABLE_LLDP_VERIFICATION_FAILEDFRONTEND_LINK_DOWN- FRONTEND_LINK_DOWNONEPASSWORD_VAULT_DATA_CONFLICT- ONEPASSWORD_VAULT_DATA_CONFLICTCONNECTIVITY_VERIFICATION_ACTIVITY_FAILED- CONNECTIVITY_VERIFICATION_ACTIVITY_FAILEDENROLLMENT_FINALIZATION_IDENTITY_UNAVAILABLE- ENROLLMENT_FINALIZATION_IDENTITY_UNAVAILABLEENROLLMENT_COMPLETION_PROOF_REJECTED- ENROLLMENT_COMPLETION_PROOF_REJECTEDENROLLMENT_PROOF_MISSING- ENROLLMENT_PROOF_MISSINGENROLLMENT_PROOF_UNAVAILABLE- ENROLLMENT_PROOF_UNAVAILABLEUNENROLLMENT_RUNTIME_STATE_INVALID- UNENROLLMENT_RUNTIME_STATE_INVALIDUNENROLLMENT_NODE_DEPLOYED_IN_NOVA- UNENROLLMENT_NODE_DEPLOYED_IN_NOVAUNENROLLMENT_IRONIC_TEARDOWN_FAILED- UNENROLLMENT_IRONIC_TEARDOWN_FAILEDUNENROLLMENT_PLACEMENT_RP_DELETE_FAILED- UNENROLLMENT_PLACEMENT_RP_DELETE_FAILEDUNENROLLMENT_NETBOX_STATUS_UPDATE_FAILED- UNENROLLMENT_NETBOX_STATUS_UPDATE_FAILEDUNENROLLMENT_BMC_FACTORY_RESET_FAILED- UNENROLLMENT_BMC_FACTORY_RESET_FAILEDFIRMWARE_INVENTORY_INVALID_SCOPE- FIRMWARE_INVENTORY_INVALID_SCOPEFIRMWARE_INVENTORY_COLLECTION_FAILED- FIRMWARE_INVENTORY_COLLECTION_FAILEDFIRMWARE_VERIFICATION_INVALID_SCOPE- FIRMWARE_VERIFICATION_INVALID_SCOPEFIRMWARE_VERIFICATION_NON_COMPLIANT- FIRMWARE_VERIFICATION_NON_COMPLIANTFIRMWARE_VERIFICATION_EVIDENCE_UNAVAILABLE- FIRMWARE_VERIFICATION_EVIDENCE_UNAVAILABLEFIRMWARE_VERIFICATION_REPORT_UPLOAD_FAILED- FIRMWARE_VERIFICATION_REPORT_UPLOAD_FAILEDFIRMWARE_VERIFICATION_EVIDENCE_PERSISTENCE_CONFLICT- FIRMWARE_VERIFICATION_EVIDENCE_PERSISTENCE_CONFLICTNODE_DIAGNOSTICS_UNEXPECTED_PROVISION_STATE- NODE_DIAGNOSTICS_UNEXPECTED_PROVISION_STATENODE_DIAGNOSTICS_STATE_CHANGED- NODE_DIAGNOSTICS_STATE_CHANGEDNODE_DIAGNOSTICS_CLASSIFICATION_FAILED- NODE_DIAGNOSTICS_CLASSIFICATION_FAILEDNODE_DIAGNOSTICS_ARTIFACT_UPLOAD_FAILED- NODE_DIAGNOSTICS_ARTIFACT_UPLOAD_FAILEDNODE_DIAGNOSTICS_SUMMARY_WRITE_FAILED- NODE_DIAGNOSTICS_SUMMARY_WRITE_FAILEDPOWER_CYCLE_BMC_FAILED- POWER_CYCLE_BMC_FAILEDMAINTENANCE_MODE_FAILED- MAINTENANCE_MODE_FAILEDSWITCH_VRF_FLIP_FAILED- SWITCH_VRF_FLIP_FAILEDSWITCH_VRF_LATCH_WRITE_FAILED- SWITCH_VRF_LATCH_WRITE_FAILEDSWITCH_VRF_PREFLIGHT_REFUSED- SWITCH_VRF_PREFLIGHT_REFUSEDNVLINK_PARTITION_FAILED- NVLINK_PARTITION_FAILEDNVLINK_PARTITION_CONTRACT_FAILED- NVLINK_PARTITION_CONTRACT_FAILEDNVLINK_PARTITION_INVALID_REQUEST- NVLINK_PARTITION_INVALID_REQUESTNVLINK_PARTITION_PREFLIGHT_REFUSED- NVLINK_PARTITION_PREFLIGHT_REFUSEDNVLINK_LATCH_WRITE_FAILED- NVLINK_LATCH_WRITE_FAILEDBACKEND_VRF_PREFLIGHT_REFUSED- BACKEND_VRF_PREFLIGHT_REFUSEDBACKEND_VRF_APPLY_REFUSED- BACKEND_VRF_APPLY_REFUSEDBACKEND_VRF_FLIP_FAILED- BACKEND_VRF_FLIP_FAILEDBACKEND_VRF_LATCH_WRITE_FAILED- BACKEND_VRF_LATCH_WRITE_FAILEDSWITCH_LOCK_TIMEOUT- SWITCH_LOCK_TIMEOUTSWITCH_LOCK_LOST- SWITCH_LOCK_LOSTSWITCH_WRITE_UNCONFIRMED- SWITCH_WRITE_UNCONFIRMEDSLURM_HTTP_BAD_REQUEST- SLURM_HTTP_BAD_REQUESTSLURM_HTTP_UNAUTHORIZED- SLURM_HTTP_UNAUTHORIZEDSLURM_HTTP_FORBIDDEN- SLURM_HTTP_FORBIDDENSLURM_HTTP_SERVICE_UNAVAILABLE- SLURM_HTTP_SERVICE_UNAVAILABLESLURM_NODE_STATE_FAILED- SLURM_NODE_STATE_FAILEDNODE_SWAP_VALIDATION_FAILED- NODE_SWAP_VALIDATION_FAILEDTOPOLOGY_SYNC_INTENT_FAILED- TOPOLOGY_SYNC_INTENT_FAILED
UNMAPPED_APPLICATION_ERROR, ACTIVITY_EXECUTION_FAILURE, UNEXPECTED_WORKFLOW_EXCEPTION, WORKFLOW_TIMEOUT, WORKFLOW_CANCELLED, WORKFLOW_TERMINATED, UNKNOWN_WORKFLOW_FAILURE, JOB_PARAMETERS_INVALID, JOB_SUBMISSION_FAILED, IRONIC_NODE_CLEAN_FAILED, IRONIC_NODE_CLEAN_INVALID_ACTION, IRONIC_NODE_CLEAN_UNEXPECTED_PROVISION_STATE, QUARANTINE_TRAIT_REMOVAL_FAILED, RELEASE_TRAIT_ADDITION_FAILED, RELEASE_PARTITION_LATCH_REFUSED, RELEASE_BACKEND_VRF_LATCH_REFUSED, METAL_HANDOFF_FAILED, METAL_RECLAIM_FAILED, CUSTODY_STATUS_UPDATE_FAILED, SLURM_ADOPT_FAILED, SLURM_RELEASE_FAILED, SLURM_REGISTRATION_TIMEOUT, IMAGE_NODE_FAILED, UNIMAGE_NODE_FAILED, REPORT_SITE_NOT_FOUND, REPORT_NO_DATA_FOUND, REPORT_INVALID_BUNDLE_INPUT, REPORT_INVALID_SECTION, BURN_IN_DEVICE_STATUS_INVALID, BURN_IN_SLURM_NODE_VALIDATION_FAILED, BURN_IN_SLURM_RESERVATION_FAILED, BURN_IN_RESERVATION_WAIT_TIMEOUT, BURN_IN_RESERVATION_QUEUE_UNAVAILABLE, BURN_IN_TEST_PREPARATION_FAILED, BURN_IN_TEST_TIME_LIMIT_EXCEEDS_CEILING, HARDWARE_TEST_IMAGE_PREPARATION_FAILED, BURN_IN_TEST_EXECUTION_FAILED, BURN_IN_INSUFFICIENT_DEVICES, BURN_IN_UNKNOWN_TEST_SLUG, BURN_IN_INVALID_WORKFLOW_STAGE, BURN_IN_MISSING_RESOURCE_CLASS, BURN_IN_MIXED_RESOURCE_CLASS, BURN_IN_WORKFLOW_STATE_INVALID, BURN_IN_MISSING_PAIR_METRICS, BURN_IN_DUPLICATE_SLURM_SUBMISSION, BMC_HTTP_SERVICE_UNAVAILABLE, BMC_HTTP_BAD_REQUEST, BMC_HTTP_UNAUTHORIZED, BMC_HTTP_FORBIDDEN, BMC_REDFISH_DISCONNECT, BMC_REDFISH_FD_EXHAUSTION, BMC_HTTP_GENERIC_ERROR, BMC_COLD_RESET_TIMEOUT, BMC_IPMI_UNREACHABLE, BMC_IPMI_COMMAND_ERROR, NVSWITCH_CREDENTIAL_MISSING, NVSWITCH_CREDENTIAL_ERROR, NVSWITCH_ADDRESS_INVALID, NVSWITCH_ADDRESS_MISSING, NVSWITCH_PRECONDITION_FAILED, IRONIC_HTTP_INTERNAL_SERVER_ERROR, IRONIC_SSL_VERSION_ERROR, IRONIC_VIRTUAL_MEDIA_INSPECTION_ERROR, IRONIC_NODE_POWER_STATE_ERROR, IRONIC_DRIVER_MISMATCH, IRONIC_NODE_CUSTOMER_INSTANCE_ATTACHED, IRONIC_NODE_STUCK_IN_ENROLL, IRONIC_INSPECTFAIL, IRONIC_CLEANFAIL, IRONIC_NODE_LOCKED, IRONIC_UEFI_BOOT_MODE_TIMEOUT, IRONIC_ENROLLMENT_ACTIVITY_TIMEOUT, IRONIC_INSPECTION_HARDWARE_VALIDATION_FAILED, IRONIC_INSPECTION_TIMEOUT, IRONIC_INSPECTION_DID_NOT_RUN, IRONIC_INSPECTION_IPA_IMAGE_NOT_FOUND, IRONIC_NODE_POWER_ON_TIMEOUT, IRONIC_NODE_UNEXPECTED_PROVISION_STATE, IRONIC_ROUTING_UNRESOLVED, NETBOX_DEVICE_STATUS_INVALID, NETBOX_STATUS_UPDATE_FAILED, NETBOX_INSPECTION_VALIDATION_CONFIG_MALFORMED, NETBOX_LAG_PARENT_MISSING, NETBOX_CABLE_TOPOLOGY_INVALID, NETBOX_INTERFACE_CABLE_MISSING, NETBOX_INTERFACE_MAC_ADDRESS_MISSING, PLATFORM_CLASS_UNRESOLVABLE, PLATFORM_CLASS_RECORD_FAILED, DHCP_CONFIGURATION_FAILED, DHCP_TIMEOUT, DHCP_SERVICE_NOT_ACTIVE, CABLE_LLDP_VERIFICATION_FAILED, FRONTEND_LINK_DOWN, ONEPASSWORD_VAULT_DATA_CONFLICT, CONNECTIVITY_VERIFICATION_ACTIVITY_FAILED, ENROLLMENT_FINALIZATION_IDENTITY_UNAVAILABLE, ENROLLMENT_COMPLETION_PROOF_REJECTED, ENROLLMENT_PROOF_MISSING, ENROLLMENT_PROOF_UNAVAILABLE, UNENROLLMENT_RUNTIME_STATE_INVALID, UNENROLLMENT_NODE_DEPLOYED_IN_NOVA, UNENROLLMENT_IRONIC_TEARDOWN_FAILED, UNENROLLMENT_PLACEMENT_RP_DELETE_FAILED, UNENROLLMENT_NETBOX_STATUS_UPDATE_FAILED, UNENROLLMENT_BMC_FACTORY_RESET_FAILED, FIRMWARE_INVENTORY_INVALID_SCOPE, FIRMWARE_INVENTORY_COLLECTION_FAILED, FIRMWARE_VERIFICATION_INVALID_SCOPE, FIRMWARE_VERIFICATION_NON_COMPLIANT, FIRMWARE_VERIFICATION_EVIDENCE_UNAVAILABLE, FIRMWARE_VERIFICATION_REPORT_UPLOAD_FAILED, FIRMWARE_VERIFICATION_EVIDENCE_PERSISTENCE_CONFLICT, NODE_DIAGNOSTICS_UNEXPECTED_PROVISION_STATE, NODE_DIAGNOSTICS_STATE_CHANGED, NODE_DIAGNOSTICS_CLASSIFICATION_FAILED, NODE_DIAGNOSTICS_ARTIFACT_UPLOAD_FAILED, NODE_DIAGNOSTICS_SUMMARY_WRITE_FAILED, POWER_CYCLE_BMC_FAILED, MAINTENANCE_MODE_FAILED, SWITCH_VRF_FLIP_FAILED, SWITCH_VRF_LATCH_WRITE_FAILED, SWITCH_VRF_PREFLIGHT_REFUSED, NVLINK_PARTITION_FAILED, NVLINK_PARTITION_CONTRACT_FAILED, NVLINK_PARTITION_INVALID_REQUEST, NVLINK_PARTITION_PREFLIGHT_REFUSED, NVLINK_LATCH_WRITE_FAILED, BACKEND_VRF_PREFLIGHT_REFUSED, BACKEND_VRF_APPLY_REFUSED, BACKEND_VRF_FLIP_FAILED, BACKEND_VRF_LATCH_WRITE_FAILED, SWITCH_LOCK_TIMEOUT, SWITCH_LOCK_LOST, SWITCH_WRITE_UNCONFIRMED, SLURM_HTTP_BAD_REQUEST, SLURM_HTTP_UNAUTHORIZED, SLURM_HTTP_FORBIDDEN, SLURM_HTTP_SERVICE_UNAVAILABLE, SLURM_NODE_STATE_FAILED, NODE_SWAP_VALIDATION_FAILED, TOPOLOGY_SYNC_INTENT_FAILED AI-generated diagnosis for device executions that failed
Show child attributes
Show child attributes
Summary of a Node Diagnostics run: the failure signature, findings, per-collector outcomes and a pointer to the evidence bundle. Null for every other workflow.
Show child attributes
Show child attributes
Team responsible for triaging this failure, derived from failure_code. Null when failure_code is null (uninstrumented workflow).
fleet_manager, infra_eng, dc_eng, unknown Serializer for job device status links.
Show child attributes
Show child attributes
running- Runningcompleted- Completedfailed- Failedcancelled- Cancelledterminated- Terminatedsuperseded- Supersededtimed_out- Timed Out
running, completed, failed, cancelled, terminated, superseded, timed_out 255120