Compare recorded batches
curl --request POST \
--url https://api.firedrill.run/v1/comparisons \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"baselineBatchId": "<string>",
"candidateBatchId": "<string>"
}
'import requests
url = "https://api.firedrill.run/v1/comparisons"
payload = {
"baselineBatchId": "<string>",
"candidateBatchId": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({baselineBatchId: '<string>', candidateBatchId: '<string>'})
};
fetch('https://api.firedrill.run/v1/comparisons', 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.firedrill.run/v1/comparisons",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'baselineBatchId' => '<string>',
'candidateBatchId' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.firedrill.run/v1/comparisons"
payload := strings.NewReader("{\n \"baselineBatchId\": \"<string>\",\n \"candidateBatchId\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.firedrill.run/v1/comparisons")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"baselineBatchId\": \"<string>\",\n \"candidateBatchId\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.firedrill.run/v1/comparisons")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"baselineBatchId\": \"<string>\",\n \"candidateBatchId\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"schemaVersion": "2026-10-15-comparison.4",
"snapshotAt": "<string>",
"baseline": {
"schemaVersion": "2026-10-15-comparison.4",
"batchId": "<string>",
"scope": {
"organizationId": "<string>",
"projectId": "<string>",
"environmentId": "<string>"
},
"snapshotAt": "<string>",
"targetDigest": "<string>",
"serviceBindingsDigest": "<string>",
"counts": {
"planned": 123,
"retained": 123,
"started": 123,
"runnerStartObserved": 123,
"completed": 123,
"interrupted": 123,
"assessed": 123,
"notAssessable": 123,
"notApplicable": 123,
"evaluationAttempts": 123,
"execution": {
"error": 123,
"queued": 123,
"running": 123,
"completed": 123,
"interrupted": 123,
"cancelled": 123
},
"assessment": {
"error": 123,
"completed": 123,
"not_requested": 123,
"pending": 123,
"partial": 123,
"unavailable": 123
}
},
"groups": [
{
"scenarioId": "<string>",
"scenarioRevision": "<string>",
"inputDigest": "<string>",
"configurationId": "<string>",
"configurationDigest": "<string>",
"rubric": {
"id": "<string>",
"version": "<string>",
"digest": "<string>"
},
"counts": {
"planned": 123,
"retained": 123,
"started": 123,
"runnerStartObserved": 123,
"completed": 123,
"interrupted": 123,
"assessed": 123,
"notAssessable": 123,
"notApplicable": 123,
"evaluationAttempts": 123,
"execution": {
"error": 123,
"queued": 123,
"running": 123,
"completed": 123,
"interrupted": 123,
"cancelled": 123
},
"assessment": {
"error": 123,
"completed": 123,
"not_requested": 123,
"pending": 123,
"partial": 123,
"unavailable": 123
}
},
"dimensions": [
{
"dimensionId": "<string>",
"evaluator": {
"provider": "<string>",
"model": "<string>",
"version": "<string>",
"configurationDigest": "<string>"
},
"requested": 123,
"assessed": 123,
"notAssessable": 123,
"notApplicable": 123,
"missing": 123,
"invalid": 123,
"levels": {
"count": 123,
"distribution": {
"0": 123,
"1": 123,
"2": 123,
"3": 123,
"4": 123
},
"median": {
"lower": 123,
"upper": 123
},
"range": {
"minimum": 123,
"maximum": 123
}
},
"samples": [
{
"run": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"level": 123,
"state": "<string>",
"evidenceIds": [
"<string>"
],
"providerScore": 123
}
],
"samplesTruncated": true,
"providerScores": {
"provider": "jev",
"scale": [
0,
4
],
"ordinalConversion": "none",
"count": 123,
"mean": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
}
}
}
],
"exactChecks": [
{
"checkId": "<string>",
"checkDigest": "<string>",
"required": true,
"plannedDenominator": 123,
"assessedDenominator": 123,
"satisfied": 123,
"violated": 123,
"unknown": 123,
"missing": 123,
"violationSamples": [
{
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
}
],
"violationSamplesTruncated": true,
"comparator": "equals",
"numeric": {
"schemaVersion": "2026-10-16-numeric-check.1",
"unit": "<string>",
"absoluteTolerance": 123
}
}
],
"measurements": [
{
"name": "serviceClaimToFinishMs",
"unit": "ms",
"provenance": "service_clock_claim_to_finish",
"count": 123,
"missing": 123,
"invalid": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
}
}
],
"sampleRuns": [
{
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
}
],
"sampleRunsTruncated": true,
"taskMetrics": [
{
"schemaVersion": "2026-10-16-task-metric.1",
"definition": {
"schemaVersion": "2026-10-16-task-metric.1",
"id": "<string>",
"label": "<string>",
"path": "<string>",
"unit": "<string>",
"direction": "higher_is_better",
"source": {
"kind": "service_state",
"namespace": "<string>",
"rowId": "<string>",
"schemaVersion": "2026-10-15-effect-check.1",
"service": "<string>"
}
},
"definitionDigest": "<string>",
"requested": 123,
"measured": 123,
"notAssessable": 123,
"missing": 123,
"invalid": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
},
"samples": [
{
"run": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"value": 123,
"state": "not_assessable"
}
],
"samplesTruncated": true
}
],
"composites": [
{
"schemaVersion": "2026-10-16-composite.1",
"policy": {
"schemaVersion": "2026-10-16-composite.1",
"method": "weighted_mean_ordinal",
"weights": [
{
"dimensionId": "<string>",
"weight": 123
}
]
},
"policyDigest": "<string>",
"evaluator": {
"provider": "<string>",
"model": "<string>",
"version": "<string>",
"configurationDigest": "<string>"
},
"coverage": {
"requested": 123,
"computed": 123,
"notAssessable": 123,
"constraintViolation": 123,
"missingDimensionRuns": 123,
"notApplicableDimensionRuns": 123,
"invalidDimensionRuns": 123,
"requiredChecksUnknownRuns": 123,
"reasons": {
"assessment_unavailable": 123,
"complete": 123,
"missing_dimension": 123,
"excluded_dimension": 123,
"invalid_dimension": 123,
"required_check_violated": 123,
"required_check_unknown": 123
}
},
"indices": {
"count": 123,
"mean": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
}
},
"samples": [
{
"run": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"state": "not_assessable",
"value": 123,
"reason": "assessment_unavailable"
}
],
"samplesTruncated": true
}
]
}
],
"notes": [
"<string>"
],
"targetDisclosure": {
"schemaVersion": "2026-10-15-target-metadata.1",
"source": {
"state": "unknown",
"revision": "<string>",
"contentDigest": "<string>",
"dirty": "clean",
"verification": "required_at_isolated_execution"
},
"resetCoverage": {
"applicationDatabase": "unknown",
"cache": "unknown",
"filesystem": "unknown",
"conversationMemory": "unknown",
"outstandingJobs": "unknown",
"browserProfile": "unknown",
"externalState": "unknown"
},
"automaticTargetReset": false,
"replay": "reexecution_not_identical_output"
},
"populationDisclosure": {
"schemaVersion": "2026-10-16-population-disclosure.1",
"purpose": {
"state": "declared",
"declaration": {
"schemaVersion": "2026-10-16-population-purpose.1",
"kind": "exploration",
"rationale": "<string>"
}
},
"materialization": {
"state": "recorded",
"provenance": {
"schemaVersion": "2026-10-15-population.1",
"method": "matrix",
"seed": "<string>",
"candidateCount": 123,
"selectedIndices": [
123
],
"sourceRecipeDigest": "<string>",
"axesDigest": "<string>"
}
},
"verification": "not_independently_verified",
"notes": [
"<string>"
]
}
},
"candidate": {
"schemaVersion": "2026-10-15-comparison.4",
"batchId": "<string>",
"scope": {
"organizationId": "<string>",
"projectId": "<string>",
"environmentId": "<string>"
},
"snapshotAt": "<string>",
"targetDigest": "<string>",
"serviceBindingsDigest": "<string>",
"counts": {
"planned": 123,
"retained": 123,
"started": 123,
"runnerStartObserved": 123,
"completed": 123,
"interrupted": 123,
"assessed": 123,
"notAssessable": 123,
"notApplicable": 123,
"evaluationAttempts": 123,
"execution": {
"error": 123,
"queued": 123,
"running": 123,
"completed": 123,
"interrupted": 123,
"cancelled": 123
},
"assessment": {
"error": 123,
"completed": 123,
"not_requested": 123,
"pending": 123,
"partial": 123,
"unavailable": 123
}
},
"groups": [
{
"scenarioId": "<string>",
"scenarioRevision": "<string>",
"inputDigest": "<string>",
"configurationId": "<string>",
"configurationDigest": "<string>",
"rubric": {
"id": "<string>",
"version": "<string>",
"digest": "<string>"
},
"counts": {
"planned": 123,
"retained": 123,
"started": 123,
"runnerStartObserved": 123,
"completed": 123,
"interrupted": 123,
"assessed": 123,
"notAssessable": 123,
"notApplicable": 123,
"evaluationAttempts": 123,
"execution": {
"error": 123,
"queued": 123,
"running": 123,
"completed": 123,
"interrupted": 123,
"cancelled": 123
},
"assessment": {
"error": 123,
"completed": 123,
"not_requested": 123,
"pending": 123,
"partial": 123,
"unavailable": 123
}
},
"dimensions": [
{
"dimensionId": "<string>",
"evaluator": {
"provider": "<string>",
"model": "<string>",
"version": "<string>",
"configurationDigest": "<string>"
},
"requested": 123,
"assessed": 123,
"notAssessable": 123,
"notApplicable": 123,
"missing": 123,
"invalid": 123,
"levels": {
"count": 123,
"distribution": {
"0": 123,
"1": 123,
"2": 123,
"3": 123,
"4": 123
},
"median": {
"lower": 123,
"upper": 123
},
"range": {
"minimum": 123,
"maximum": 123
}
},
"samples": [
{
"run": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"level": 123,
"state": "<string>",
"evidenceIds": [
"<string>"
],
"providerScore": 123
}
],
"samplesTruncated": true,
"providerScores": {
"provider": "jev",
"scale": [
0,
4
],
"ordinalConversion": "none",
"count": 123,
"mean": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
}
}
}
],
"exactChecks": [
{
"checkId": "<string>",
"checkDigest": "<string>",
"required": true,
"plannedDenominator": 123,
"assessedDenominator": 123,
"satisfied": 123,
"violated": 123,
"unknown": 123,
"missing": 123,
"violationSamples": [
{
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
}
],
"violationSamplesTruncated": true,
"comparator": "equals",
"numeric": {
"schemaVersion": "2026-10-16-numeric-check.1",
"unit": "<string>",
"absoluteTolerance": 123
}
}
],
"measurements": [
{
"name": "serviceClaimToFinishMs",
"unit": "ms",
"provenance": "service_clock_claim_to_finish",
"count": 123,
"missing": 123,
"invalid": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
}
}
],
"sampleRuns": [
{
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
}
],
"sampleRunsTruncated": true,
"taskMetrics": [
{
"schemaVersion": "2026-10-16-task-metric.1",
"definition": {
"schemaVersion": "2026-10-16-task-metric.1",
"id": "<string>",
"label": "<string>",
"path": "<string>",
"unit": "<string>",
"direction": "higher_is_better",
"source": {
"kind": "service_state",
"namespace": "<string>",
"rowId": "<string>",
"schemaVersion": "2026-10-15-effect-check.1",
"service": "<string>"
}
},
"definitionDigest": "<string>",
"requested": 123,
"measured": 123,
"notAssessable": 123,
"missing": 123,
"invalid": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
},
"samples": [
{
"run": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"value": 123,
"state": "not_assessable"
}
],
"samplesTruncated": true
}
],
"composites": [
{
"schemaVersion": "2026-10-16-composite.1",
"policy": {
"schemaVersion": "2026-10-16-composite.1",
"method": "weighted_mean_ordinal",
"weights": [
{
"dimensionId": "<string>",
"weight": 123
}
]
},
"policyDigest": "<string>",
"evaluator": {
"provider": "<string>",
"model": "<string>",
"version": "<string>",
"configurationDigest": "<string>"
},
"coverage": {
"requested": 123,
"computed": 123,
"notAssessable": 123,
"constraintViolation": 123,
"missingDimensionRuns": 123,
"notApplicableDimensionRuns": 123,
"invalidDimensionRuns": 123,
"requiredChecksUnknownRuns": 123,
"reasons": {
"assessment_unavailable": 123,
"complete": 123,
"missing_dimension": 123,
"excluded_dimension": 123,
"invalid_dimension": 123,
"required_check_violated": 123,
"required_check_unknown": 123
}
},
"indices": {
"count": 123,
"mean": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
}
},
"samples": [
{
"run": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"state": "not_assessable",
"value": 123,
"reason": "assessment_unavailable"
}
],
"samplesTruncated": true
}
]
}
],
"notes": [
"<string>"
],
"targetDisclosure": {
"schemaVersion": "2026-10-15-target-metadata.1",
"source": {
"state": "unknown",
"revision": "<string>",
"contentDigest": "<string>",
"dirty": "clean",
"verification": "required_at_isolated_execution"
},
"resetCoverage": {
"applicationDatabase": "unknown",
"cache": "unknown",
"filesystem": "unknown",
"conversationMemory": "unknown",
"outstandingJobs": "unknown",
"browserProfile": "unknown",
"externalState": "unknown"
},
"automaticTargetReset": false,
"replay": "reexecution_not_identical_output"
},
"populationDisclosure": {
"schemaVersion": "2026-10-16-population-disclosure.1",
"purpose": {
"state": "declared",
"declaration": {
"schemaVersion": "2026-10-16-population-purpose.1",
"kind": "exploration",
"rationale": "<string>"
}
},
"materialization": {
"state": "recorded",
"provenance": {
"schemaVersion": "2026-10-15-population.1",
"method": "matrix",
"seed": "<string>",
"candidateCount": 123,
"selectedIndices": [
123
],
"sourceRecipeDigest": "<string>",
"axesDigest": "<string>"
}
},
"verification": "not_independently_verified",
"notes": [
"<string>"
]
}
},
"pairing": {
"rule": "scenario-id/configuration-id/repetition; exact scenario revision and input required",
"slots": 123,
"matched": 123,
"missingBaseline": 123,
"missingCandidate": 123,
"scenarioMismatch": 123,
"differences": {
"input": 123,
"target": 123,
"rubric": 123,
"scenario_revision": 123,
"configuration_parameters": 123,
"evaluator": 123,
"evaluator_configuration": 123,
"evaluator_configuration_unavailable": 123,
"scope": 123,
"service_bindings": 123
},
"samples": [
{
"scenarioId": "<string>",
"configurationId": "<string>",
"repetition": 123,
"baseline": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"candidate": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"status": "missing_baseline",
"differences": [
"input"
]
}
],
"samplesTruncated": true
},
"dimensions": [
{
"scenarioId": "<string>",
"scenarioRevision": "<string>",
"inputDigest": "<string>",
"configurationId": "<string>",
"baselineConfigurationDigest": "<string>",
"candidateConfigurationDigest": "<string>",
"serviceBindingsDigest": "<string>",
"rubric": {
"id": "<string>",
"version": "<string>",
"digest": "<string>"
},
"dimensionId": "<string>",
"evaluator": {
"provider": "<string>",
"model": "<string>",
"version": "<string>",
"configurationDigest": "<string>"
},
"matchedPairs": 123,
"assessedPairs": 123,
"notApplicablePairs": 123,
"missingOrNotAssessablePairs": 123,
"baseline": {
"count": 123,
"distribution": {
"0": 123,
"1": 123,
"2": 123,
"3": 123,
"4": 123
},
"median": {
"lower": 123,
"upper": 123
},
"range": {
"minimum": 123,
"maximum": 123
}
},
"candidate": {
"count": 123,
"distribution": {
"0": 123,
"1": 123,
"2": 123,
"3": 123,
"4": 123
},
"median": {
"lower": 123,
"upper": 123
},
"range": {
"minimum": 123,
"maximum": 123
}
},
"samples": [
{
"baseline": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"candidate": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"baselineLevel": 123,
"candidateLevel": 123,
"baselineProviderScore": 123,
"candidateProviderScore": 123
}
],
"samplesTruncated": true,
"providerScores": {
"provider": "jev",
"scale": [
0,
4
],
"ordinalConversion": "none",
"assessedPairs": 123,
"baseline": {
"provider": "jev",
"scale": [
0,
4
],
"ordinalConversion": "none",
"count": 123,
"mean": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
}
},
"candidate": {
"provider": "jev",
"scale": [
0,
4
],
"ordinalConversion": "none",
"count": 123,
"mean": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
}
}
}
}
],
"notes": [
"<string>"
],
"composites": [
{
"schemaVersion": "2026-10-16-composite.1",
"scenarioId": "<string>",
"scenarioRevision": "<string>",
"inputDigest": "<string>",
"configurationId": "<string>",
"baselineConfigurationDigest": "<string>",
"candidateConfigurationDigest": "<string>",
"serviceBindingsDigest": "<string>",
"rubric": {
"id": "<string>",
"version": "<string>",
"digest": "<string>"
},
"evaluator": {
"provider": "<string>",
"model": "<string>",
"version": "<string>",
"configurationDigest": "<string>"
},
"policy": {
"schemaVersion": "2026-10-16-composite.1",
"method": "weighted_mean_ordinal",
"weights": [
{
"dimensionId": "<string>",
"weight": 123
}
]
},
"policyDigest": "<string>",
"matchedPairs": 123,
"computedPairs": 123,
"constraintViolationPairs": 123,
"notAssessablePairs": 123,
"baselineCoverage": {
"requested": 123,
"computed": 123,
"notAssessable": 123,
"constraintViolation": 123,
"missingDimensionRuns": 123,
"notApplicableDimensionRuns": 123,
"invalidDimensionRuns": 123,
"requiredChecksUnknownRuns": 123,
"reasons": {
"assessment_unavailable": 123,
"complete": 123,
"missing_dimension": 123,
"excluded_dimension": 123,
"invalid_dimension": 123,
"required_check_violated": 123,
"required_check_unknown": 123
}
},
"candidateCoverage": {
"requested": 123,
"computed": 123,
"notAssessable": 123,
"constraintViolation": 123,
"missingDimensionRuns": 123,
"notApplicableDimensionRuns": 123,
"invalidDimensionRuns": 123,
"requiredChecksUnknownRuns": 123,
"reasons": {
"assessment_unavailable": 123,
"complete": 123,
"missing_dimension": 123,
"excluded_dimension": 123,
"invalid_dimension": 123,
"required_check_violated": 123,
"required_check_unknown": 123
}
},
"baseline": {
"count": 123,
"mean": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
}
},
"candidate": {
"count": 123,
"mean": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
}
},
"samples": [
{
"baseline": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"candidate": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"baselineValue": 123,
"candidateValue": 123,
"baselineState": "not_assessable",
"candidateState": "not_assessable",
"baselineReason": "assessment_unavailable",
"candidateReason": "assessment_unavailable"
}
],
"samplesTruncated": true
}
],
"compositePairing": {
"schemaVersion": "2026-10-16-composite.1",
"authoredSlots": 123,
"compatiblePairs": 123,
"excluded": {
"evaluator_configuration_unavailable": 123,
"missing_baseline": 123,
"missing_candidate": 123,
"policy_not_authored_on_both": 123,
"scenario_or_input_mismatch": 123,
"rubric_or_policy_mismatch": 123,
"service_bindings_mismatch": 123,
"evaluator_mismatch": 123,
"evaluator_configuration_mismatch": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}Compare recorded batches
Requires read. Supply selectedScope to enforce your project/environment selection. Returns descriptive matched-case differences and explicit missing/incompatible pairs. Does not execute, reassess or change a gate.
Compare recorded batches
curl --request POST \
--url https://api.firedrill.run/v1/comparisons \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"baselineBatchId": "<string>",
"candidateBatchId": "<string>"
}
'import requests
url = "https://api.firedrill.run/v1/comparisons"
payload = {
"baselineBatchId": "<string>",
"candidateBatchId": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({baselineBatchId: '<string>', candidateBatchId: '<string>'})
};
fetch('https://api.firedrill.run/v1/comparisons', 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.firedrill.run/v1/comparisons",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'baselineBatchId' => '<string>',
'candidateBatchId' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.firedrill.run/v1/comparisons"
payload := strings.NewReader("{\n \"baselineBatchId\": \"<string>\",\n \"candidateBatchId\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.firedrill.run/v1/comparisons")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"baselineBatchId\": \"<string>\",\n \"candidateBatchId\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.firedrill.run/v1/comparisons")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"baselineBatchId\": \"<string>\",\n \"candidateBatchId\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"schemaVersion": "2026-10-15-comparison.4",
"snapshotAt": "<string>",
"baseline": {
"schemaVersion": "2026-10-15-comparison.4",
"batchId": "<string>",
"scope": {
"organizationId": "<string>",
"projectId": "<string>",
"environmentId": "<string>"
},
"snapshotAt": "<string>",
"targetDigest": "<string>",
"serviceBindingsDigest": "<string>",
"counts": {
"planned": 123,
"retained": 123,
"started": 123,
"runnerStartObserved": 123,
"completed": 123,
"interrupted": 123,
"assessed": 123,
"notAssessable": 123,
"notApplicable": 123,
"evaluationAttempts": 123,
"execution": {
"error": 123,
"queued": 123,
"running": 123,
"completed": 123,
"interrupted": 123,
"cancelled": 123
},
"assessment": {
"error": 123,
"completed": 123,
"not_requested": 123,
"pending": 123,
"partial": 123,
"unavailable": 123
}
},
"groups": [
{
"scenarioId": "<string>",
"scenarioRevision": "<string>",
"inputDigest": "<string>",
"configurationId": "<string>",
"configurationDigest": "<string>",
"rubric": {
"id": "<string>",
"version": "<string>",
"digest": "<string>"
},
"counts": {
"planned": 123,
"retained": 123,
"started": 123,
"runnerStartObserved": 123,
"completed": 123,
"interrupted": 123,
"assessed": 123,
"notAssessable": 123,
"notApplicable": 123,
"evaluationAttempts": 123,
"execution": {
"error": 123,
"queued": 123,
"running": 123,
"completed": 123,
"interrupted": 123,
"cancelled": 123
},
"assessment": {
"error": 123,
"completed": 123,
"not_requested": 123,
"pending": 123,
"partial": 123,
"unavailable": 123
}
},
"dimensions": [
{
"dimensionId": "<string>",
"evaluator": {
"provider": "<string>",
"model": "<string>",
"version": "<string>",
"configurationDigest": "<string>"
},
"requested": 123,
"assessed": 123,
"notAssessable": 123,
"notApplicable": 123,
"missing": 123,
"invalid": 123,
"levels": {
"count": 123,
"distribution": {
"0": 123,
"1": 123,
"2": 123,
"3": 123,
"4": 123
},
"median": {
"lower": 123,
"upper": 123
},
"range": {
"minimum": 123,
"maximum": 123
}
},
"samples": [
{
"run": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"level": 123,
"state": "<string>",
"evidenceIds": [
"<string>"
],
"providerScore": 123
}
],
"samplesTruncated": true,
"providerScores": {
"provider": "jev",
"scale": [
0,
4
],
"ordinalConversion": "none",
"count": 123,
"mean": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
}
}
}
],
"exactChecks": [
{
"checkId": "<string>",
"checkDigest": "<string>",
"required": true,
"plannedDenominator": 123,
"assessedDenominator": 123,
"satisfied": 123,
"violated": 123,
"unknown": 123,
"missing": 123,
"violationSamples": [
{
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
}
],
"violationSamplesTruncated": true,
"comparator": "equals",
"numeric": {
"schemaVersion": "2026-10-16-numeric-check.1",
"unit": "<string>",
"absoluteTolerance": 123
}
}
],
"measurements": [
{
"name": "serviceClaimToFinishMs",
"unit": "ms",
"provenance": "service_clock_claim_to_finish",
"count": 123,
"missing": 123,
"invalid": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
}
}
],
"sampleRuns": [
{
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
}
],
"sampleRunsTruncated": true,
"taskMetrics": [
{
"schemaVersion": "2026-10-16-task-metric.1",
"definition": {
"schemaVersion": "2026-10-16-task-metric.1",
"id": "<string>",
"label": "<string>",
"path": "<string>",
"unit": "<string>",
"direction": "higher_is_better",
"source": {
"kind": "service_state",
"namespace": "<string>",
"rowId": "<string>",
"schemaVersion": "2026-10-15-effect-check.1",
"service": "<string>"
}
},
"definitionDigest": "<string>",
"requested": 123,
"measured": 123,
"notAssessable": 123,
"missing": 123,
"invalid": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
},
"samples": [
{
"run": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"value": 123,
"state": "not_assessable"
}
],
"samplesTruncated": true
}
],
"composites": [
{
"schemaVersion": "2026-10-16-composite.1",
"policy": {
"schemaVersion": "2026-10-16-composite.1",
"method": "weighted_mean_ordinal",
"weights": [
{
"dimensionId": "<string>",
"weight": 123
}
]
},
"policyDigest": "<string>",
"evaluator": {
"provider": "<string>",
"model": "<string>",
"version": "<string>",
"configurationDigest": "<string>"
},
"coverage": {
"requested": 123,
"computed": 123,
"notAssessable": 123,
"constraintViolation": 123,
"missingDimensionRuns": 123,
"notApplicableDimensionRuns": 123,
"invalidDimensionRuns": 123,
"requiredChecksUnknownRuns": 123,
"reasons": {
"assessment_unavailable": 123,
"complete": 123,
"missing_dimension": 123,
"excluded_dimension": 123,
"invalid_dimension": 123,
"required_check_violated": 123,
"required_check_unknown": 123
}
},
"indices": {
"count": 123,
"mean": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
}
},
"samples": [
{
"run": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"state": "not_assessable",
"value": 123,
"reason": "assessment_unavailable"
}
],
"samplesTruncated": true
}
]
}
],
"notes": [
"<string>"
],
"targetDisclosure": {
"schemaVersion": "2026-10-15-target-metadata.1",
"source": {
"state": "unknown",
"revision": "<string>",
"contentDigest": "<string>",
"dirty": "clean",
"verification": "required_at_isolated_execution"
},
"resetCoverage": {
"applicationDatabase": "unknown",
"cache": "unknown",
"filesystem": "unknown",
"conversationMemory": "unknown",
"outstandingJobs": "unknown",
"browserProfile": "unknown",
"externalState": "unknown"
},
"automaticTargetReset": false,
"replay": "reexecution_not_identical_output"
},
"populationDisclosure": {
"schemaVersion": "2026-10-16-population-disclosure.1",
"purpose": {
"state": "declared",
"declaration": {
"schemaVersion": "2026-10-16-population-purpose.1",
"kind": "exploration",
"rationale": "<string>"
}
},
"materialization": {
"state": "recorded",
"provenance": {
"schemaVersion": "2026-10-15-population.1",
"method": "matrix",
"seed": "<string>",
"candidateCount": 123,
"selectedIndices": [
123
],
"sourceRecipeDigest": "<string>",
"axesDigest": "<string>"
}
},
"verification": "not_independently_verified",
"notes": [
"<string>"
]
}
},
"candidate": {
"schemaVersion": "2026-10-15-comparison.4",
"batchId": "<string>",
"scope": {
"organizationId": "<string>",
"projectId": "<string>",
"environmentId": "<string>"
},
"snapshotAt": "<string>",
"targetDigest": "<string>",
"serviceBindingsDigest": "<string>",
"counts": {
"planned": 123,
"retained": 123,
"started": 123,
"runnerStartObserved": 123,
"completed": 123,
"interrupted": 123,
"assessed": 123,
"notAssessable": 123,
"notApplicable": 123,
"evaluationAttempts": 123,
"execution": {
"error": 123,
"queued": 123,
"running": 123,
"completed": 123,
"interrupted": 123,
"cancelled": 123
},
"assessment": {
"error": 123,
"completed": 123,
"not_requested": 123,
"pending": 123,
"partial": 123,
"unavailable": 123
}
},
"groups": [
{
"scenarioId": "<string>",
"scenarioRevision": "<string>",
"inputDigest": "<string>",
"configurationId": "<string>",
"configurationDigest": "<string>",
"rubric": {
"id": "<string>",
"version": "<string>",
"digest": "<string>"
},
"counts": {
"planned": 123,
"retained": 123,
"started": 123,
"runnerStartObserved": 123,
"completed": 123,
"interrupted": 123,
"assessed": 123,
"notAssessable": 123,
"notApplicable": 123,
"evaluationAttempts": 123,
"execution": {
"error": 123,
"queued": 123,
"running": 123,
"completed": 123,
"interrupted": 123,
"cancelled": 123
},
"assessment": {
"error": 123,
"completed": 123,
"not_requested": 123,
"pending": 123,
"partial": 123,
"unavailable": 123
}
},
"dimensions": [
{
"dimensionId": "<string>",
"evaluator": {
"provider": "<string>",
"model": "<string>",
"version": "<string>",
"configurationDigest": "<string>"
},
"requested": 123,
"assessed": 123,
"notAssessable": 123,
"notApplicable": 123,
"missing": 123,
"invalid": 123,
"levels": {
"count": 123,
"distribution": {
"0": 123,
"1": 123,
"2": 123,
"3": 123,
"4": 123
},
"median": {
"lower": 123,
"upper": 123
},
"range": {
"minimum": 123,
"maximum": 123
}
},
"samples": [
{
"run": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"level": 123,
"state": "<string>",
"evidenceIds": [
"<string>"
],
"providerScore": 123
}
],
"samplesTruncated": true,
"providerScores": {
"provider": "jev",
"scale": [
0,
4
],
"ordinalConversion": "none",
"count": 123,
"mean": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
}
}
}
],
"exactChecks": [
{
"checkId": "<string>",
"checkDigest": "<string>",
"required": true,
"plannedDenominator": 123,
"assessedDenominator": 123,
"satisfied": 123,
"violated": 123,
"unknown": 123,
"missing": 123,
"violationSamples": [
{
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
}
],
"violationSamplesTruncated": true,
"comparator": "equals",
"numeric": {
"schemaVersion": "2026-10-16-numeric-check.1",
"unit": "<string>",
"absoluteTolerance": 123
}
}
],
"measurements": [
{
"name": "serviceClaimToFinishMs",
"unit": "ms",
"provenance": "service_clock_claim_to_finish",
"count": 123,
"missing": 123,
"invalid": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
}
}
],
"sampleRuns": [
{
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
}
],
"sampleRunsTruncated": true,
"taskMetrics": [
{
"schemaVersion": "2026-10-16-task-metric.1",
"definition": {
"schemaVersion": "2026-10-16-task-metric.1",
"id": "<string>",
"label": "<string>",
"path": "<string>",
"unit": "<string>",
"direction": "higher_is_better",
"source": {
"kind": "service_state",
"namespace": "<string>",
"rowId": "<string>",
"schemaVersion": "2026-10-15-effect-check.1",
"service": "<string>"
}
},
"definitionDigest": "<string>",
"requested": 123,
"measured": 123,
"notAssessable": 123,
"missing": 123,
"invalid": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
},
"samples": [
{
"run": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"value": 123,
"state": "not_assessable"
}
],
"samplesTruncated": true
}
],
"composites": [
{
"schemaVersion": "2026-10-16-composite.1",
"policy": {
"schemaVersion": "2026-10-16-composite.1",
"method": "weighted_mean_ordinal",
"weights": [
{
"dimensionId": "<string>",
"weight": 123
}
]
},
"policyDigest": "<string>",
"evaluator": {
"provider": "<string>",
"model": "<string>",
"version": "<string>",
"configurationDigest": "<string>"
},
"coverage": {
"requested": 123,
"computed": 123,
"notAssessable": 123,
"constraintViolation": 123,
"missingDimensionRuns": 123,
"notApplicableDimensionRuns": 123,
"invalidDimensionRuns": 123,
"requiredChecksUnknownRuns": 123,
"reasons": {
"assessment_unavailable": 123,
"complete": 123,
"missing_dimension": 123,
"excluded_dimension": 123,
"invalid_dimension": 123,
"required_check_violated": 123,
"required_check_unknown": 123
}
},
"indices": {
"count": 123,
"mean": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
}
},
"samples": [
{
"run": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"state": "not_assessable",
"value": 123,
"reason": "assessment_unavailable"
}
],
"samplesTruncated": true
}
]
}
],
"notes": [
"<string>"
],
"targetDisclosure": {
"schemaVersion": "2026-10-15-target-metadata.1",
"source": {
"state": "unknown",
"revision": "<string>",
"contentDigest": "<string>",
"dirty": "clean",
"verification": "required_at_isolated_execution"
},
"resetCoverage": {
"applicationDatabase": "unknown",
"cache": "unknown",
"filesystem": "unknown",
"conversationMemory": "unknown",
"outstandingJobs": "unknown",
"browserProfile": "unknown",
"externalState": "unknown"
},
"automaticTargetReset": false,
"replay": "reexecution_not_identical_output"
},
"populationDisclosure": {
"schemaVersion": "2026-10-16-population-disclosure.1",
"purpose": {
"state": "declared",
"declaration": {
"schemaVersion": "2026-10-16-population-purpose.1",
"kind": "exploration",
"rationale": "<string>"
}
},
"materialization": {
"state": "recorded",
"provenance": {
"schemaVersion": "2026-10-15-population.1",
"method": "matrix",
"seed": "<string>",
"candidateCount": 123,
"selectedIndices": [
123
],
"sourceRecipeDigest": "<string>",
"axesDigest": "<string>"
}
},
"verification": "not_independently_verified",
"notes": [
"<string>"
]
}
},
"pairing": {
"rule": "scenario-id/configuration-id/repetition; exact scenario revision and input required",
"slots": 123,
"matched": 123,
"missingBaseline": 123,
"missingCandidate": 123,
"scenarioMismatch": 123,
"differences": {
"input": 123,
"target": 123,
"rubric": 123,
"scenario_revision": 123,
"configuration_parameters": 123,
"evaluator": 123,
"evaluator_configuration": 123,
"evaluator_configuration_unavailable": 123,
"scope": 123,
"service_bindings": 123
},
"samples": [
{
"scenarioId": "<string>",
"configurationId": "<string>",
"repetition": 123,
"baseline": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"candidate": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"status": "missing_baseline",
"differences": [
"input"
]
}
],
"samplesTruncated": true
},
"dimensions": [
{
"scenarioId": "<string>",
"scenarioRevision": "<string>",
"inputDigest": "<string>",
"configurationId": "<string>",
"baselineConfigurationDigest": "<string>",
"candidateConfigurationDigest": "<string>",
"serviceBindingsDigest": "<string>",
"rubric": {
"id": "<string>",
"version": "<string>",
"digest": "<string>"
},
"dimensionId": "<string>",
"evaluator": {
"provider": "<string>",
"model": "<string>",
"version": "<string>",
"configurationDigest": "<string>"
},
"matchedPairs": 123,
"assessedPairs": 123,
"notApplicablePairs": 123,
"missingOrNotAssessablePairs": 123,
"baseline": {
"count": 123,
"distribution": {
"0": 123,
"1": 123,
"2": 123,
"3": 123,
"4": 123
},
"median": {
"lower": 123,
"upper": 123
},
"range": {
"minimum": 123,
"maximum": 123
}
},
"candidate": {
"count": 123,
"distribution": {
"0": 123,
"1": 123,
"2": 123,
"3": 123,
"4": 123
},
"median": {
"lower": 123,
"upper": 123
},
"range": {
"minimum": 123,
"maximum": 123
}
},
"samples": [
{
"baseline": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"candidate": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"baselineLevel": 123,
"candidateLevel": 123,
"baselineProviderScore": 123,
"candidateProviderScore": 123
}
],
"samplesTruncated": true,
"providerScores": {
"provider": "jev",
"scale": [
0,
4
],
"ordinalConversion": "none",
"assessedPairs": 123,
"baseline": {
"provider": "jev",
"scale": [
0,
4
],
"ordinalConversion": "none",
"count": 123,
"mean": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
}
},
"candidate": {
"provider": "jev",
"scale": [
0,
4
],
"ordinalConversion": "none",
"count": 123,
"mean": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
}
}
}
}
],
"notes": [
"<string>"
],
"composites": [
{
"schemaVersion": "2026-10-16-composite.1",
"scenarioId": "<string>",
"scenarioRevision": "<string>",
"inputDigest": "<string>",
"configurationId": "<string>",
"baselineConfigurationDigest": "<string>",
"candidateConfigurationDigest": "<string>",
"serviceBindingsDigest": "<string>",
"rubric": {
"id": "<string>",
"version": "<string>",
"digest": "<string>"
},
"evaluator": {
"provider": "<string>",
"model": "<string>",
"version": "<string>",
"configurationDigest": "<string>"
},
"policy": {
"schemaVersion": "2026-10-16-composite.1",
"method": "weighted_mean_ordinal",
"weights": [
{
"dimensionId": "<string>",
"weight": 123
}
]
},
"policyDigest": "<string>",
"matchedPairs": 123,
"computedPairs": 123,
"constraintViolationPairs": 123,
"notAssessablePairs": 123,
"baselineCoverage": {
"requested": 123,
"computed": 123,
"notAssessable": 123,
"constraintViolation": 123,
"missingDimensionRuns": 123,
"notApplicableDimensionRuns": 123,
"invalidDimensionRuns": 123,
"requiredChecksUnknownRuns": 123,
"reasons": {
"assessment_unavailable": 123,
"complete": 123,
"missing_dimension": 123,
"excluded_dimension": 123,
"invalid_dimension": 123,
"required_check_violated": 123,
"required_check_unknown": 123
}
},
"candidateCoverage": {
"requested": 123,
"computed": 123,
"notAssessable": 123,
"constraintViolation": 123,
"missingDimensionRuns": 123,
"notApplicableDimensionRuns": 123,
"invalidDimensionRuns": 123,
"requiredChecksUnknownRuns": 123,
"reasons": {
"assessment_unavailable": 123,
"complete": 123,
"missing_dimension": 123,
"excluded_dimension": 123,
"invalid_dimension": 123,
"required_check_violated": 123,
"required_check_unknown": 123
}
},
"baseline": {
"count": 123,
"mean": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
}
},
"candidate": {
"count": 123,
"mean": 123,
"median": 123,
"range": {
"minimum": 123,
"maximum": 123
}
},
"samples": [
{
"baseline": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"candidate": {
"runId": "<string>",
"attemptId": "<string>",
"repetition": 123,
"execution": "error",
"assessment": "error",
"assessmentId": "<string>",
"reportPath": "<string>"
},
"baselineValue": 123,
"candidateValue": 123,
"baselineState": "not_assessable",
"candidateState": "not_assessable",
"baselineReason": "assessment_unavailable",
"candidateReason": "assessment_unavailable"
}
],
"samplesTruncated": true
}
],
"compositePairing": {
"schemaVersion": "2026-10-16-composite.1",
"authoredSlots": 123,
"compatiblePairs": 123,
"excluded": {
"evaluator_configuration_unavailable": 123,
"missing_baseline": 123,
"missing_candidate": 123,
"policy_not_authored_on_both": 123,
"scenario_or_input_mismatch": 123,
"rubric_or_policy_mismatch": 123,
"service_bindings_mismatch": 123,
"evaluator_mismatch": 123,
"evaluator_configuration_mismatch": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}{
"error": {
"code": "<string>",
"message": "<string>",
"repair": "<string>",
"requestId": "<string>",
"details": "<string>",
"validation": {
"issues": [
{
"path": [
"<string>"
],
"code": "<string>",
"message": "<string>",
"pathTruncated": true
}
],
"totalIssues": 123,
"omittedIssues": 123
}
}
}Authorizations
Opaque Firedrill interactive or scoped machine credential. The CLI handles human-approved login; CI stores its scoped credential as FIREDRILL_TOKEN. Capabilities and project/environment ownership are rechecked at use.
Body
application/json
Response
The retained resource or operation response.
Allowed value:
"2026-10-15-comparison.4"Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes