# RQM Compare Controller Responses

> RQM Compare Controller Responses is a paid API for AI agents from jobs.rqmtechnologies.com, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-15).

Compares two bounded controller response traces (baseline vs candidate) on identical inputs using caller-specified numeric error rules (RMSE, MAE, max absolute error).

## Facts

- Endpoint: POST https://jobs.rqmtechnologies.com/x402/buyer-jobs/robotics.compare-controller-responses.v1
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/rqm-compare-controller-responses-fd0f9fc0
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_FdTVeb4u9Ugn3b_lE154K

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability rqm-compare-controller-responses-fd0f9fc0 -d '<json body>'
```

Example prompt: Compare my baseline controller trace (trace ID 'ctrl-baseline-001', with 500 timestamped samples) against my candidate trace (trace ID 'ctrl-candidate-002', same 500 samples) and check whether the RMSE stays below 0.05 and the maximum absolute error stays below 0.2.

## When to prefer this

Use this endpoint when you need deterministic, rule-based comparison of two controller response traces on identical test inputs with caller-defined numeric error thresholds (RMSE, MAE, max absolute error). Prefer this over general analytics tools when working in robotics or control systems contexts where structured pass/fail verdicts against declared error limits are required. Do not use for universal controller ranking, undeclared safety decisions, or comparisons requiring more than 3 metric rules simultaneously.

## Known failure modes

- Mismatched sample counts or timestamps between baseline and candidate traces causing interpolation or alignment errors
- Trace IDs that do not match the required alphanumeric pattern (^[A-Za-z0-9._-]{1,64}$) returning validation errors
- Rules array empty or exceeding 3 items causing request rejection
- Sample arrays below minimum of 2 or exceeding 4096 entries causing schema validation failure
- Maximum threshold values outside [0, 1e12] range causing rejection
- Values vectors of differing dimensions between baseline and candidate samples
- Payment failure or insufficient USDC balance blocking execution

## How this service works

Problem: Compare these bounded controller responses on identical traces using the supplied objective rules. Input: JSON with baseline, candidate, rules. Result: metric values, threshold verdicts, difference series. Limits: Software/model evidence only; 65536 request bytes; 5 s execution.

## Output

Returns a structured comparison result indicating whether the candidate controller trace passes or fails each supplied metric rule (RMSE, mean absolute error, maximum absolute error), along with the computed numeric error values for each metric and trace metadata.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "request": {
   "type": "object",
   "title": "ControllerComparisonRequest",
   "required": [
    "baseline",
    "candidate",
    "rules"
   ],
   "properties": {
    "rules": {
     "type": "array",
     "items": {
      "type": "object",
      "title": "MetricRule",
      "required": [
       "metric",
       "maximum"
      ],
      "properties": {
       "metric": {
        "enum": [
         "rmse",
         "maximum_absolute_error",
         "mean_absolute_error"
        ],
        "type": "string",
        "title": "Metric"
       },
       "maximum": {
        "type": "number",
        "title": "Maximum",
        "maximum": 1000000000000,
        "minimum": 0
       }
      },
      "additionalProperties": false
     },
     "title": "Rules",
     "maxItems": 3,
     "minItems": 1
    },
    "baseline": {
     "type": "object",
     "title": "ResponseTrace",
     "required": [
      "trace_id",
      "samples"
     ],
     "properties": {
      "samples": {
       "type": "array",
       "items": {
        "type": "object",
        "title": "TimedVector",
        "required": [
         "timestamp_s",
         "values"
        ],
        "properties": {
         "values": {
          "type": "array",
          "items": {
           "type": "number"
          },
          "title": "Values",
          "maxItems": 12,
          "minItems": 1
         },
         "timestamp_s": {
          "type": "number",
          "title": "Timestamp S",
          "maximum": 86400,
          "minimum": 0
         }
        },
        "additionalProperties": false
       },
       "title": "Samples",
       "maxItems": 4096,
       "minItems": 2
      },
      "trace_id": {
       "type": "string",
       "title": "Trace Id",
       "pattern": "^[A-Za-z0-9._-]{1,64}$"
      }
     },
     "additionalProperties": false
    },
    "candidate": {
     "type": "object",
     "title": "ResponseTrace",
     "required": [
      "trace_id",
      "samples"
     ],
     "properties": {
      "samples": {
       "type": "array",
       "items": {
        "type": "object",
        "title": "TimedVector",
        "required": [
         "timestamp_s",
         "values"
        ],
        "properties": {
         "values": {
          "type": "array",
          "items": {
           "type": "number"
          },
          "title": "Values",
          "maxItems": 12,
          "minItems": 1
         },
         "timestamp_s": {
          "typ
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/rqm-compare-controller-responses-fd0f9fc0/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from jobs.rqmtechnologies.com](https://www.zero.xyz/host/jobs.rqmtechnologies.com/llms.txt)
