{
  "openapi": "3.1.0",
  "info": {
    "title": "CalculatorX Calculation API (Core Capabilities)",
    "version": "1.0.0",
    "description": "Deterministic calculation API for humans and AI agents. Computational verification is defined by CVP; Review-policy tiers (engine_tested / expert_verified) are supplemental. Prefer CVP Verified capabilities with CURRENT production attestation. Rate limits: REST POST /api/v1/calc/* ≈60/min/IP; MCP RPC ≈120/min; execute_calculation ≈30/min. Exceeded → 429 + Retry-After.",
    "contact": {
      "url": "https://www.calculatorx.com"
    }
  },
  "servers": [
    {
      "url": "https://www.calculatorx.com"
    }
  ],
  "tags": [
    {
      "name": "Catalog"
    },
    {
      "name": "CoreCapabilities",
      "description": "Core capability templates. Computational verification: CVP. Supplemental Review-policy tiers: candidate, engine_tested, internally_reviewed, expert_verified. Catalog token verified is L3 (expert_verified) only."
    },
    {
      "name": "MCP",
      "description": "Remote MCP JSON-RPC at /mcp"
    }
  ],
  "paths": {
    "/api/v1/calc": {
      "get": {
        "operationId": "listCalculationEngines",
        "summary": "List calculation engines",
        "tags": [
          "Catalog"
        ],
        "responses": {
          "200": {
            "description": "Engine catalog",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          }
        }
      }
    },
    "/mcp": {
      "get": {
        "operationId": "mcpDiscoverHttp",
        "summary": "MCP discovery (CalculatorX custom GET)",
        "tags": [
          "MCP"
        ],
        "responses": {
          "200": {
            "description": "Server info and tool names",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      },
      "post": {
        "operationId": "mcpJsonRpc",
        "summary": "MCP JSON-RPC (search / inspect / execute)",
        "description": "Dual-track: `2024-11-05` (optional initialize) and `2026-07-28` (require `Mcp-Method` / `Mcp-Name`). Tools: search_capabilities, inspect_capability, execute_calculation (free), compute_paid (Stage 0.5 opt-in, not live charging).",
        "tags": [
          "MCP"
        ],
        "parameters": [
          {
            "name": "MCP-Protocol-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "2026-07-28",
                "2024-11-05"
              ]
            },
            "description": "Defaults to 2024-11-05 when omitted (legacy). Prefer 2026-07-28."
          },
          {
            "name": "Mcp-Method",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Required for 2026-07-28; must match JSON-RPC method"
          },
          {
            "name": "Mcp-Name",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Required for tools/call under 2026-07-28; must match params.name"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "additionalProperties": true
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "JSON-RPC response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/units/convert": {
      "post": {
        "operationId": "convert_units",
        "summary": "UUCE unit conversion",
        "description": "Preview conversion between registered units with compatible quantity kinds and roles.",
        "parameters": [
          {
            "in": "header",
            "name": "CalculatorX-Spec-Version",
            "schema": {
              "type": "string",
              "const": "0.1.1"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "additionalProperties": false,
                "properties": {
                  "inputs": {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "value",
                      "from_unit_id",
                      "to_unit_id",
                      "quantity_kind",
                      "role",
                      "snapshot"
                    ],
                    "properties": {
                      "value": {
                        "type": "string",
                        "maxLength": 128,
                        "pattern": "^([+-]?)(\\d+)(?:\\.(\\d+))?(?:[eE]([+-]?(?:[0-2]?\\d{1,2}|30[0-8])))?(?![\\s\\S])",
                        "description": "Exact decimal text with up to three exponent digits and exponent magnitude at most 308."
                      },
                      "from_unit_id": {
                        "type": "string",
                        "maxLength": 128,
                        "pattern": "^cx:.+",
                        "description": "Stable unit ID in the pinned registry."
                      },
                      "to_unit_id": {
                        "type": "string",
                        "maxLength": 128,
                        "pattern": "^cx:.+",
                        "description": "Stable unit ID in the pinned registry."
                      },
                      "quantity_kind": {
                        "type": "string",
                        "enum": [
                          "length",
                          "mass",
                          "duration",
                          "temperature",
                          "volume",
                          "plane_angle",
                          "solid_angle",
                          "ratio",
                          "area",
                          "frequency",
                          "angular_velocity",
                          "speed",
                          "acceleration",
                          "force",
                          "pressure",
                          "energy",
                          "torque",
                          "power",
                          "electric_current",
                          "electric_potential",
                          "electric_charge",
                          "resistance",
                          "capacitance",
                          "inductance",
                          "magnetic_flux",
                          "magnetic_flux_density",
                          "amount_of_substance",
                          "luminous_intensity",
                          "luminous_flux",
                          "illuminance",
                          "volume_flow_rate",
                          "mass_flow_rate",
                          "mass_density",
                          "mass_concentration",
                          "amount_concentration",
                          "molar_mass",
                          "dynamic_viscosity",
                          "kinematic_viscosity",
                          "surface_tension",
                          "thermal_conductivity",
                          "heat_transfer_coefficient",
                          "thermal_resistance",
                          "specific_heat_capacity",
                          "heat_capacity",
                          "specific_energy",
                          "temperature_coefficient",
                          "electrical_conductance",
                          "electrical_resistivity",
                          "electrical_conductivity",
                          "apparent_power",
                          "reactive_power",
                          "area_moment",
                          "section_modulus",
                          "momentum",
                          "areal_mass_density",
                          "irradiance",
                          "luminance",
                          "radioactivity",
                          "absorbed_dose",
                          "dose_equivalent",
                          "catalytic_activity",
                          "information",
                          "information_rate",
                          "inverse_time",
                          "voltage_temperature_coefficient",
                          "transconductance_parameter",
                          "resistance_per_length",
                          "luminous_efficacy"
                        ]
                      },
                      "role": {
                        "type": "string",
                        "enum": [
                          "scalar",
                          "point",
                          "interval"
                        ]
                      },
                      "snapshot": {
                        "const": "0.3.0-preview.3",
                        "type": "string"
                      }
                    }
                  },
                  "calculation_version": {
                    "type": "string",
                    "const": "0.1.1"
                  },
                  "calculationVersion": {
                    "type": "string",
                    "const": "0.1.1"
                  }
                }
              },
              "example": {
                "inputs": {
                  "value": "1",
                  "from_unit_id": "cx:m",
                  "to_unit_id": "cx:ft_i",
                  "quantity_kind": "length",
                  "role": "scalar",
                  "snapshot": "0.3.0-preview.3"
                },
                "calculation_version": "0.1.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Exact expression, rounded decimal and binary64 representations, and snapshot bindings.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "status": {
                      "const": "success"
                    },
                    "capability_id": {
                      "const": "units.convert"
                    },
                    "tool_id": {
                      "const": "convert-units"
                    },
                    "calculation_version": {
                      "const": "0.1.1"
                    },
                    "availability": {
                      "const": "preview"
                    },
                    "verification": {
                      "oneOf": [
                        {
                          "type": "object",
                          "properties": {
                            "cvp": {
                              "const": "not_assessed"
                            },
                            "production_binding": {
                              "const": "unbound"
                            }
                          },
                          "required": [
                            "cvp",
                            "production_binding"
                          ],
                          "additionalProperties": false
                        },
                        {
                          "type": "object",
                          "properties": {
                            "cvp": {
                              "const": "verified"
                            },
                            "production_binding": {
                              "const": "check_attestation"
                            },
                            "calculation_version": {
                              "const": "0.1.1"
                            },
                            "execution_projection_sha256": {
                              "type": "string",
                              "pattern": "^[a-f0-9]{64}$"
                            },
                            "evidence_digest": {
                              "type": "string",
                              "pattern": "^[a-f0-9]{64}$"
                            },
                            "verification_revision": {
                              "type": "string"
                            },
                            "manifest": {
                              "type": "string"
                            },
                            "attestation": {
                              "type": "string"
                            }
                          },
                          "required": [
                            "cvp",
                            "production_binding",
                            "calculation_version",
                            "execution_projection_sha256",
                            "evidence_digest",
                            "verification_revision",
                            "manifest",
                            "attestation"
                          ],
                          "additionalProperties": false
                        }
                      ]
                    },
                    "result": {
                      "type": "object",
                      "properties": {
                        "exact": {
                          "type": "object",
                          "properties": {
                            "numerator": {
                              "type": "string",
                              "pattern": "^-?[0-9]+$"
                            },
                            "denominator": {
                              "type": "string",
                              "pattern": "^[1-9][0-9]*$"
                            },
                            "pi_power": {
                              "type": "integer"
                            }
                          },
                          "required": [
                            "numerator",
                            "denominator",
                            "pi_power"
                          ],
                          "additionalProperties": false
                        },
                        "decimal": {
                          "type": "string",
                          "description": "Decimal approximation to 34 significant digits, nearest ties to even."
                        },
                        "binary64": {
                          "type": [
                            "number",
                            "null"
                          ]
                        },
                        "binary64_status": {
                          "enum": [
                            "finite",
                            "overflow",
                            "underflow"
                          ]
                        },
                        "numerical_policy": {
                          "const": "uuce-rational-pi-decimal34-v1"
                        },
                        "rounding": {
                          "type": "object",
                          "properties": {
                            "decimal_significant_digits": {
                              "const": 34
                            },
                            "mode": {
                              "const": "nearest_ties_to_even"
                            },
                            "pi_approximation": {
                              "type": "boolean"
                            }
                          },
                          "required": [
                            "decimal_significant_digits",
                            "mode",
                            "pi_approximation"
                          ],
                          "additionalProperties": false
                        },
                        "input": {
                          "type": "object",
                          "properties": {
                            "value": {
                              "type": "string",
                              "maxLength": 128,
                              "pattern": "^([+-]?)(\\d+)(?:\\.(\\d+))?(?:[eE]([+-]?(?:[0-2]?\\d{1,2}|30[0-8])))?(?![\\s\\S])",
                              "description": "Exact decimal text with up to three exponent digits and exponent magnitude at most 308."
                            },
                            "quantity_kind": {
                              "type": "string",
                              "enum": [
                                "length",
                                "mass",
                                "duration",
                                "temperature",
                                "volume",
                                "plane_angle",
                                "solid_angle",
                                "ratio",
                                "area",
                                "frequency",
                                "angular_velocity",
                                "speed",
                                "acceleration",
                                "force",
                                "pressure",
                                "energy",
                                "torque",
                                "power",
                                "electric_current",
                                "electric_potential",
                                "electric_charge",
                                "resistance",
                                "capacitance",
                                "inductance",
                                "magnetic_flux",
                                "magnetic_flux_density",
                                "amount_of_substance",
                                "luminous_intensity",
                                "luminous_flux",
                                "illuminance",
                                "volume_flow_rate",
                                "mass_flow_rate",
                                "mass_density",
                                "mass_concentration",
                                "amount_concentration",
                                "molar_mass",
                                "dynamic_viscosity",
                                "kinematic_viscosity",
                                "surface_tension",
                                "thermal_conductivity",
                                "heat_transfer_coefficient",
                                "thermal_resistance",
                                "specific_heat_capacity",
                                "heat_capacity",
                                "specific_energy",
                                "temperature_coefficient",
                                "electrical_conductance",
                                "electrical_resistivity",
                                "electrical_conductivity",
                                "apparent_power",
                                "reactive_power",
                                "area_moment",
                                "section_modulus",
                                "momentum",
                                "areal_mass_density",
                                "irradiance",
                                "luminance",
                                "radioactivity",
                                "absorbed_dose",
                                "dose_equivalent",
                                "catalytic_activity",
                                "information",
                                "information_rate",
                                "inverse_time",
                                "voltage_temperature_coefficient",
                                "transconductance_parameter",
                                "resistance_per_length",
                                "luminous_efficacy"
                              ]
                            },
                            "role": {
                              "type": "string",
                              "enum": [
                                "scalar",
                                "point",
                                "interval"
                              ]
                            }
                          },
                          "required": [
                            "value",
                            "quantity_kind",
                            "role"
                          ],
                          "additionalProperties": false
                        },
                        "from": {
                          "type": "object",
                          "properties": {
                            "unit_id": {
                              "type": "string"
                            },
                            "revision": {
                              "type": "string"
                            },
                            "content_digest": {
                              "type": "string",
                              "pattern": "^[a-f0-9]{64}$"
                            },
                            "dependency_digest": {
                              "type": "string",
                              "pattern": "^[a-f0-9]{64}$"
                            }
                          },
                          "required": [
                            "unit_id",
                            "revision",
                            "content_digest",
                            "dependency_digest"
                          ],
                          "additionalProperties": false
                        },
                        "to": {
                          "type": "object",
                          "properties": {
                            "unit_id": {
                              "type": "string"
                            },
                            "revision": {
                              "type": "string"
                            },
                            "content_digest": {
                              "type": "string",
                              "pattern": "^[a-f0-9]{64}$"
                            },
                            "dependency_digest": {
                              "type": "string",
                              "pattern": "^[a-f0-9]{64}$"
                            }
                          },
                          "required": [
                            "unit_id",
                            "revision",
                            "content_digest",
                            "dependency_digest"
                          ],
                          "additionalProperties": false
                        },
                        "snapshot": {
                          "type": "object",
                          "properties": {
                            "version": {
                              "const": "0.3.0-preview.3"
                            },
                            "content_digest": {
                              "type": "string",
                              "pattern": "^[a-f0-9]{64}$"
                            },
                            "execution_projection_sha256": {
                              "type": "string",
                              "pattern": "^[a-f0-9]{64}$"
                            },
                            "integrity_manifest_sha256": {
                              "type": "string",
                              "pattern": "^[a-f0-9]{64}$"
                            }
                          },
                          "required": [
                            "version",
                            "content_digest",
                            "execution_projection_sha256",
                            "integrity_manifest_sha256"
                          ],
                          "additionalProperties": false
                        }
                      },
                      "required": [
                        "exact",
                        "decimal",
                        "binary64",
                        "binary64_status",
                        "numerical_policy",
                        "rounding",
                        "input",
                        "from",
                        "to",
                        "snapshot"
                      ],
                      "additionalProperties": false,
                      "if": {
                        "properties": {
                          "binary64_status": {
                            "const": "finite"
                          }
                        }
                      },
                      "then": {
                        "properties": {
                          "binary64": {
                            "type": "number"
                          }
                        }
                      },
                      "else": {
                        "properties": {
                          "binary64": {
                            "type": "null"
                          }
                        }
                      }
                    },
                    "result_detail": {
                      "type": "object",
                      "properties": {
                        "value": {
                          "type": "object",
                          "properties": {
                            "exact": {
                              "type": "object",
                              "properties": {
                                "numerator": {
                                  "type": "string",
                                  "pattern": "^-?[0-9]+$"
                                },
                                "denominator": {
                                  "type": "string",
                                  "pattern": "^[1-9][0-9]*$"
                                },
                                "pi_power": {
                                  "type": "integer"
                                }
                              },
                              "required": [
                                "numerator",
                                "denominator",
                                "pi_power"
                              ],
                              "additionalProperties": false
                            },
                            "decimal": {
                              "type": "string",
                              "description": "Decimal approximation to 34 significant digits, nearest ties to even."
                            },
                            "binary64": {
                              "type": [
                                "number",
                                "null"
                              ]
                            },
                            "binary64_status": {
                              "enum": [
                                "finite",
                                "overflow",
                                "underflow"
                              ]
                            },
                            "numerical_policy": {
                              "const": "uuce-rational-pi-decimal34-v1"
                            },
                            "rounding": {
                              "type": "object",
                              "properties": {
                                "decimal_significant_digits": {
                                  "const": 34
                                },
                                "mode": {
                                  "const": "nearest_ties_to_even"
                                },
                                "pi_approximation": {
                                  "type": "boolean"
                                }
                              },
                              "required": [
                                "decimal_significant_digits",
                                "mode",
                                "pi_approximation"
                              ],
                              "additionalProperties": false
                            },
                            "input": {
                              "type": "object",
                              "properties": {
                                "value": {
                                  "type": "string",
                                  "maxLength": 128,
                                  "pattern": "^([+-]?)(\\d+)(?:\\.(\\d+))?(?:[eE]([+-]?(?:[0-2]?\\d{1,2}|30[0-8])))?(?![\\s\\S])",
                                  "description": "Exact decimal text with up to three exponent digits and exponent magnitude at most 308."
                                },
                                "quantity_kind": {
                                  "type": "string",
                                  "enum": [
                                    "length",
                                    "mass",
                                    "duration",
                                    "temperature",
                                    "volume",
                                    "plane_angle",
                                    "solid_angle",
                                    "ratio",
                                    "area",
                                    "frequency",
                                    "angular_velocity",
                                    "speed",
                                    "acceleration",
                                    "force",
                                    "pressure",
                                    "energy",
                                    "torque",
                                    "power",
                                    "electric_current",
                                    "electric_potential",
                                    "electric_charge",
                                    "resistance",
                                    "capacitance",
                                    "inductance",
                                    "magnetic_flux",
                                    "magnetic_flux_density",
                                    "amount_of_substance",
                                    "luminous_intensity",
                                    "luminous_flux",
                                    "illuminance",
                                    "volume_flow_rate",
                                    "mass_flow_rate",
                                    "mass_density",
                                    "mass_concentration",
                                    "amount_concentration",
                                    "molar_mass",
                                    "dynamic_viscosity",
                                    "kinematic_viscosity",
                                    "surface_tension",
                                    "thermal_conductivity",
                                    "heat_transfer_coefficient",
                                    "thermal_resistance",
                                    "specific_heat_capacity",
                                    "heat_capacity",
                                    "specific_energy",
                                    "temperature_coefficient",
                                    "electrical_conductance",
                                    "electrical_resistivity",
                                    "electrical_conductivity",
                                    "apparent_power",
                                    "reactive_power",
                                    "area_moment",
                                    "section_modulus",
                                    "momentum",
                                    "areal_mass_density",
                                    "irradiance",
                                    "luminance",
                                    "radioactivity",
                                    "absorbed_dose",
                                    "dose_equivalent",
                                    "catalytic_activity",
                                    "information",
                                    "information_rate",
                                    "inverse_time",
                                    "voltage_temperature_coefficient",
                                    "transconductance_parameter",
                                    "resistance_per_length",
                                    "luminous_efficacy"
                                  ]
                                },
                                "role": {
                                  "type": "string",
                                  "enum": [
                                    "scalar",
                                    "point",
                                    "interval"
                                  ]
                                }
                              },
                              "required": [
                                "value",
                                "quantity_kind",
                                "role"
                              ],
                              "additionalProperties": false
                            },
                            "from": {
                              "type": "object",
                              "properties": {
                                "unit_id": {
                                  "type": "string"
                                },
                                "revision": {
                                  "type": "string"
                                },
                                "content_digest": {
                                  "type": "string",
                                  "pattern": "^[a-f0-9]{64}$"
                                },
                                "dependency_digest": {
                                  "type": "string",
                                  "pattern": "^[a-f0-9]{64}$"
                                }
                              },
                              "required": [
                                "unit_id",
                                "revision",
                                "content_digest",
                                "dependency_digest"
                              ],
                              "additionalProperties": false
                            },
                            "to": {
                              "type": "object",
                              "properties": {
                                "unit_id": {
                                  "type": "string"
                                },
                                "revision": {
                                  "type": "string"
                                },
                                "content_digest": {
                                  "type": "string",
                                  "pattern": "^[a-f0-9]{64}$"
                                },
                                "dependency_digest": {
                                  "type": "string",
                                  "pattern": "^[a-f0-9]{64}$"
                                }
                              },
                              "required": [
                                "unit_id",
                                "revision",
                                "content_digest",
                                "dependency_digest"
                              ],
                              "additionalProperties": false
                            },
                            "snapshot": {
                              "type": "object",
                              "properties": {
                                "version": {
                                  "const": "0.3.0-preview.3"
                                },
                                "content_digest": {
                                  "type": "string",
                                  "pattern": "^[a-f0-9]{64}$"
                                },
                                "execution_projection_sha256": {
                                  "type": "string",
                                  "pattern": "^[a-f0-9]{64}$"
                                },
                                "integrity_manifest_sha256": {
                                  "type": "string",
                                  "pattern": "^[a-f0-9]{64}$"
                                }
                              },
                              "required": [
                                "version",
                                "content_digest",
                                "execution_projection_sha256",
                                "integrity_manifest_sha256"
                              ],
                              "additionalProperties": false
                            }
                          },
                          "required": [
                            "exact",
                            "decimal",
                            "binary64",
                            "binary64_status",
                            "numerical_policy",
                            "rounding",
                            "input",
                            "from",
                            "to",
                            "snapshot"
                          ],
                          "additionalProperties": false,
                          "if": {
                            "properties": {
                              "binary64_status": {
                                "const": "finite"
                              }
                            }
                          },
                          "then": {
                            "properties": {
                              "binary64": {
                                "type": "number"
                              }
                            }
                          },
                          "else": {
                            "properties": {
                              "binary64": {
                                "type": "null"
                              }
                            }
                          }
                        },
                        "unit": {
                          "type": "string"
                        },
                        "formatted": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "value",
                        "unit",
                        "formatted"
                      ],
                      "additionalProperties": false
                    }
                  },
                  "required": [
                    "status",
                    "capability_id",
                    "tool_id",
                    "calculation_version",
                    "availability",
                    "verification",
                    "result",
                    "result_detail"
                  ],
                  "additionalProperties": false
                }
              }
            }
          },
          "400": {
            "description": "Invalid input, ambiguous unit, or incompatible quantity kind or role.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "code"
                  ],
                  "properties": {
                    "status": {
                      "const": "error"
                    },
                    "code": {
                      "type": "string"
                    },
                    "message": {
                      "type": "string"
                    },
                    "field": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "http_status": {
                      "type": "integer"
                    },
                    "recoverable": {
                      "type": "boolean"
                    },
                    "capability_id": {
                      "const": "units.convert"
                    },
                    "calculation_version": {
                      "const": "0.1.1"
                    },
                    "candidates": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "supported_snapshot": {
                      "type": "string"
                    },
                    "published_version": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "405": {
            "description": "Method not allowed.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "code"
                  ],
                  "properties": {
                    "status": {
                      "const": "error"
                    },
                    "code": {
                      "type": "string"
                    },
                    "message": {
                      "type": "string"
                    },
                    "field": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "http_status": {
                      "type": "integer"
                    },
                    "recoverable": {
                      "type": "boolean"
                    },
                    "capability_id": {
                      "const": "units.convert"
                    },
                    "calculation_version": {
                      "const": "0.1.1"
                    },
                    "candidates": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "supported_snapshot": {
                      "type": "string"
                    },
                    "published_version": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "409": {
            "description": "Calculation version or registry snapshot mismatch.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "code"
                  ],
                  "properties": {
                    "status": {
                      "const": "error"
                    },
                    "code": {
                      "type": "string"
                    },
                    "message": {
                      "type": "string"
                    },
                    "field": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "http_status": {
                      "type": "integer"
                    },
                    "recoverable": {
                      "type": "boolean"
                    },
                    "capability_id": {
                      "const": "units.convert"
                    },
                    "calculation_version": {
                      "const": "0.1.1"
                    },
                    "candidates": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "supported_snapshot": {
                      "type": "string"
                    },
                    "published_version": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "413": {
            "description": "Request exceeds the Preview body limit.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "status",
                    "code"
                  ],
                  "properties": {
                    "status": {
                      "const": "error"
                    },
                    "code": {
                      "type": "string"
                    },
                    "message": {
                      "type": "string"
                    },
                    "field": {
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "http_status": {
                      "type": "integer"
                    },
                    "recoverable": {
                      "type": "boolean"
                    },
                    "capability_id": {
                      "const": "units.convert"
                    },
                    "calculation_version": {
                      "const": "0.1.1"
                    },
                    "candidates": {
                      "type": "array",
                      "items": {
                        "type": "string"
                      }
                    },
                    "supported_snapshot": {
                      "type": "string"
                    },
                    "published_version": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/cvp/receipt": {
      "get": {
        "operationId": "get_cvp_production_receipt",
        "summary": "Read a current production receipt for a capability version",
        "description": "The initial supported capability is units.convert. Check the returned binding against trusted release pins and use it before expires_at.",
        "parameters": [
          {
            "in": "query",
            "name": "capability_id",
            "required": true,
            "schema": {
              "type": "string",
              "const": "units.convert"
            }
          },
          {
            "in": "query",
            "name": "calculation_version",
            "required": true,
            "schema": {
              "type": "string",
              "const": "0.1.1"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Current production binding, probe time, expiry and audit links."
          },
          "400": {
            "description": "Both query parameters are required."
          },
          "404": {
            "description": "Unsupported capability or calculation version."
          },
          "503": {
            "description": "A current receipt is unavailable on this origin."
          }
        }
      }
    },
    "/api/v1/units/preflight": {
      "get": {
        "operationId": "get_unit_conversion_agent_policy",
        "summary": "Read the active UUCE preflight policy and allowed scope",
        "responses": {
          "200": {
            "description": "Policy version, supported unit pairs, required context and exact decimal limits."
          }
        }
      },
      "post": {
        "operationId": "preflight_unit_conversion",
        "summary": "Check an automatic UUCE conversion against policy and production binding",
        "description": "Supply a policy and calculation version, conversion inputs and trusted release pins in trust. Request a new decision before each automatic use.",
        "externalDocs": {
          "url": "https://www.calculatorx.com/developers/units#agent-preflight"
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "policy_version",
                  "calculation_version",
                  "trust",
                  "inputs"
                ],
                "additionalProperties": false,
                "properties": {
                  "policy_version": {
                    "type": "string"
                  },
                  "calculation_version": {
                    "type": "string"
                  },
                  "trust": {
                    "type": "object",
                    "description": "Independently pinned values in the production receipt binding format."
                  },
                  "context": {
                    "type": "object",
                    "properties": {
                      "use_case": {
                        "type": "string",
                        "const": "standalone_low_risk"
                      }
                    }
                  },
                  "inputs": {
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "snapshot"
                    ],
                    "properties": {
                      "value": {
                        "type": "string",
                        "maxLength": 128,
                        "pattern": "^([+-]?)(\\d+)(?:\\.(\\d+))?(?:[eE]([+-]?(?:[0-2]?\\d{1,2}|30[0-8])))?(?![\\s\\S])",
                        "description": "Exact decimal text with up to three exponent digits and exponent magnitude at most 308."
                      },
                      "from_unit_id": {
                        "type": "string",
                        "maxLength": 128,
                        "pattern": "^cx:.+",
                        "description": "Stable unit ID in the pinned registry."
                      },
                      "to_unit_id": {
                        "type": "string",
                        "maxLength": 128,
                        "pattern": "^cx:.+",
                        "description": "Stable unit ID in the pinned registry."
                      },
                      "quantity_kind": {
                        "type": "string",
                        "enum": [
                          "length",
                          "mass",
                          "duration",
                          "temperature",
                          "volume",
                          "plane_angle",
                          "solid_angle",
                          "ratio",
                          "area",
                          "frequency",
                          "angular_velocity",
                          "speed",
                          "acceleration",
                          "force",
                          "pressure",
                          "energy",
                          "torque",
                          "power",
                          "electric_current",
                          "electric_potential",
                          "electric_charge",
                          "resistance",
                          "capacitance",
                          "inductance",
                          "magnetic_flux",
                          "magnetic_flux_density",
                          "amount_of_substance",
                          "luminous_intensity",
                          "luminous_flux",
                          "illuminance",
                          "volume_flow_rate",
                          "mass_flow_rate",
                          "mass_density",
                          "mass_concentration",
                          "amount_concentration",
                          "molar_mass",
                          "dynamic_viscosity",
                          "kinematic_viscosity",
                          "surface_tension",
                          "thermal_conductivity",
                          "heat_transfer_coefficient",
                          "thermal_resistance",
                          "specific_heat_capacity",
                          "heat_capacity",
                          "specific_energy",
                          "temperature_coefficient",
                          "electrical_conductance",
                          "electrical_resistivity",
                          "electrical_conductivity",
                          "apparent_power",
                          "reactive_power",
                          "area_moment",
                          "section_modulus",
                          "momentum",
                          "areal_mass_density",
                          "irradiance",
                          "luminance",
                          "radioactivity",
                          "absorbed_dose",
                          "dose_equivalent",
                          "catalytic_activity",
                          "information",
                          "information_rate",
                          "inverse_time",
                          "voltage_temperature_coefficient",
                          "transconductance_parameter",
                          "resistance_per_length",
                          "luminous_efficacy"
                        ]
                      },
                      "role": {
                        "type": "string",
                        "enum": [
                          "scalar",
                          "point",
                          "interval"
                        ]
                      },
                      "snapshot": {
                        "const": "0.3.0-preview.3",
                        "type": "string"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Policy decision. ALLOW includes the receipt and the approved execution request.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "contract",
                    "policy_version",
                    "decision",
                    "code"
                  ],
                  "properties": {
                    "decision": {
                      "enum": [
                        "ALLOW",
                        "DENY",
                        "NEED_CONTEXT"
                      ]
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "Invalid JSON."
          },
          "413": {
            "description": "Request exceeds the preflight body limit."
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/amps-to-va": {
      "post": {
        "operationId": "calculate_electrical_apparent_power",
        "summary": "Electrical apparent power",
        "description": "Single-phase or balanced sinusoidal three-phase (L-L) AC apparent power: amps↔VA and amps→kVA. (calculation_version 1.4.3)\n\nSemantic capability: `electrical.apparent_power`.\n\nCalculation version: `1.4.3`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not for DC systems\n\nLimitation: Not for unbalanced or nonsinusoidal three-phase; √3 formula assumes balanced sinusoidal V_LL = √3 V_LN and equal line currents\n\nLimitation: Not for line-to-neutral three-phase mode\n\nLimitation: Not for equipment protection or conductor sizing\n\nLimitation: When power_factor is supplied, REST/MCP include derived.estimated_real_power; omitted when λ is absent",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.4.3"
              ]
            },
            "description": "Pin calculation_version (published: 1.4.3); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.apparent_power.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.4.3",
                    "examples": [
                      "1.4.3"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.4.3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.apparent_power.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/ohms-law": {
      "post": {
        "operationId": "calculate_electrical_ohms_law",
        "summary": "Ohm's law",
        "description": "Solve any two of V, I, R, P for resistive DC / AC RMS circuits. (calculation_version 1.5.1)\n\nSemantic capability: `electrical.ohms_law`.\n\nCalculation version: `1.5.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Resistive model only\n\nLimitation: Not for reactive impedance networks\n\nLimitation: Fewer than two inputs → NEEDS_TWO_INPUTS; non-finite → INVALID_NUMBER\n\nLimitation: Zero divisors yield 0 for dependents (soft boundary)",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.5.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.5.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.ohms_law.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.5.1",
                    "examples": [
                      "1.5.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.5.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.ohms_law.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/watts-to-amps": {
      "post": {
        "operationId": "calculate_electrical_watts_amps",
        "summary": "Watts ↔ amps",
        "description": "Convert real power and current for DC, single-phase, or three-phase with power factor. (calculation_version 1.4.1)\n\nSemantic capability: `electrical.watts_amps`.\n\nCalculation version: `1.4.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not for unbalanced three-phase\n\nLimitation: Not for line-to-neutral three-phase as a separate mode\n\nLimitation: Not a substitute for breaker or conductor sizing",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.4.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.4.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.watts_amps.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.4.1",
                    "examples": [
                      "1.4.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.4.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.watts_amps.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/power-factor": {
      "post": {
        "operationId": "calculate_electrical_power_factor",
        "summary": "Power factor",
        "description": "Compute apparent power S, power factor λ, and reactive power Q from RMS V, I, and real power P for 1φ or balanced 3φ. (calculation_version 1.5.1)\n\nSemantic capability: `electrical.power_factor`.\n\nCalculation version: `1.5.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Correction capacitor estimate is UI-only (not part of the API result)\n\nLimitation: Not for harmonic-rich or engineered bank design\n\nLimitation: When P > S, PF is capped at 1 and Q = 0 (soft clamp)\n\nLimitation: Voltage must be > 0 (VOLTAGE_MUST_BE_POSITIVE); zero volts is not a valid S=0 shortcut",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.5.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.5.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.power_factor.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.5.1",
                    "examples": [
                      "1.5.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.5.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.power_factor.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/voltage-drop": {
      "post": {
        "operationId": "calculate_electrical_voltage_drop",
        "summary": "Voltage drop",
        "description": "Estimate conductor voltage drop from current, one-way length, and Ω/km for DC / resistive 1φ or balanced 3φ (resistance-only, PF≈1). Always returns conductor I²R loss P_loss. Optional V_system adds percent drop and estimated load voltage; optional u_* compose expanded uncertainty on V_drop via Uncertainty Engine. (calculation_version 1.5.2)\n\nSemantic capability: `electrical.voltage_drop`.\n\nCalculation version: `1.5.2`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Resistance-only estimate — AC reactance neglected; AC modes assume PF ≈ 1\n\nLimitation: Not a substitute for code-compliant cable sizing or ampacity\n\nLimitation: 3φ V_system is line-to-line; percent_drop and V_load use that same basis\n\nLimitation: Zero I/length/R → 0 V (valid); negatives → VALUE_MUST_BE_NON_NEGATIVE\n\nLimitation: mode must be dc or three (INVALID_MODE otherwise); REST/UI default dc if omitted\n\nLimitation: V_system if set must be > 0 (VALUE_MUST_BE_POSITIVE); omit it to return volts only\n\nLimitation: Optional u_* use GUM sensitivity only; empty u_* still returns { V_drop, R_one_way, P_loss, … } without uncertainty\n\nLimitation: Engine tested, source checked, evidence published (L1). Named expert review is a higher assurance tier (L3), not required for engine-tested status. Not a code-compliance certification.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.5.2"
              ]
            },
            "description": "Pin calculation_version (published: 1.5.2); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.voltage_drop.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.5.2",
                    "examples": [
                      "1.5.2"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.5.2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.voltage_drop.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/voltage-divider": {
      "post": {
        "operationId": "calculate_electrical_voltage_divider",
        "summary": "Voltage divider",
        "description": "Solve unloaded two-resistor divider networks from exactly three of Vin, R1, R2, Vout; also returns series current, resistor power, divider ratio, and Thevenin output resistance Rth. (calculation_version 1.5.1)\n\nSemantic capability: `electrical.voltage_divider`.\n\nCalculation version: `1.5.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Unloaded two-resistor divider only\n\nLimitation: Canonical input is exactly three of Vin, R1, R2, Vout\n\nLimitation: Fewer than three inputs → NEEDS_THREE_INPUTS\n\nLimitation: All four inputs → TOO_MANY_INPUTS (not a consistency check)\n\nLimitation: Solving R1/R2 requires Vin > Vout > 0 (INVALID_DIVIDER_VOLTAGES otherwise)\n\nLimitation: R1+R2=0 when solving Vout → RESISTANCE_MUST_BE_POSITIVE\n\nLimitation: Not for loaded dividers, AC reactive dividers, or RF",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.5.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.5.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.voltage_divider.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.5.1",
                    "examples": [
                      "1.5.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.5.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.voltage_divider.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/energy-consumption": {
      "post": {
        "operationId": "calculate_electrical_energy_consumption",
        "summary": "Energy consumption",
        "description": "Convert watts and hours to kilowatt-hours. (calculation_version 1.4.2)\n\nSemantic capability: `electrical.energy_consumption`.\n\nCalculation version: `1.4.2`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Assumes constant power over the stated hours\n\nLimitation: W and hours must be ≥ 0 (VALUE_MUST_BE_NON_NEGATIVE)\n\nLimitation: UI daily month/year projections are presentation-only; engine returns period kWh",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.4.2"
              ]
            },
            "description": "Pin calculation_version (published: 1.4.2); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.energy_consumption.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.4.2",
                    "examples": [
                      "1.4.2"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.4.2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.energy_consumption.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/energy-cost": {
      "post": {
        "operationId": "calculate_electrical_energy_cost",
        "summary": "Energy cost",
        "description": "Estimate electricity cost from watts/hours or kWh and a unit rate. (calculation_version 1.4.2)\n\nSemantic capability: `electrical.energy_cost`.\n\nCalculation version: `1.4.2`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Usage cost only — standing charge and tax not included\n\nLimitation: W, hours, days, kWh, and rate must be ≥ 0\n\nLimitation: Hours per day must be ≤ 24 (HOURS_PER_DAY_OUT_OF_RANGE)\n\nLimitation: Zero W/hours/days/kWh/rate → 0",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.4.2"
              ]
            },
            "description": "Pin calculation_version (published: 1.4.2); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.energy_cost.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.4.2",
                    "examples": [
                      "1.4.2"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.4.2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.energy_cost.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/ev-to-volts": {
      "post": {
        "operationId": "calculate_electrical_ev_voltage",
        "summary": "eV to Volts",
        "description": "Relate electronvolt energy to electric potential difference through E = qV using charge magnitude and the exact SI elementary charge. (calculation_version 1.3.0)\n\nSemantic capability: `electrical.ev_voltage`.\n\nCalculation version: `1.3.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Charge is magnitude only — electron (−e) vs proton (+e) sign is not modeled\n\nLimitation: Q = 0 when solving for voltage → ZERO_CHARGE (not 0 V)\n\nLimitation: Uses exact SI e = 1.602176634×10⁻¹⁹ C\n\nLimitation: Not a pure eV↔V unit conversion; ΔE = qΔV",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.ev_voltage.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.0",
                    "examples": [
                      "1.3.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.3.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.ev_voltage.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/volts-to-ev": {
      "post": {
        "operationId": "calculate_electrical_ev_voltage_alias_volts_to_ev",
        "summary": "eV to Volts (volts-to-ev page alias)",
        "description": "Relate electronvolt energy to electric potential difference through E = qV using charge magnitude and the exact SI elementary charge. (calculation_version 1.3.0)\n\nSemantic capability: `electrical.ev_voltage`.\n\nCalculation version: `1.3.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Charge is magnitude only — electron (−e) vs proton (+e) sign is not modeled\n\nLimitation: Q = 0 when solving for voltage → ZERO_CHARGE (not 0 V)\n\nLimitation: Uses exact SI e = 1.602176634×10⁻¹⁹ C\n\nLimitation: Not a pure eV↔V unit conversion; ΔE = qΔV",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.ev_voltage.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.0",
                    "examples": [
                      "1.3.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.3.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.ev_voltage.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/watt-volt-amp": {
      "post": {
        "operationId": "calculate_electrical_watt_volt_amp",
        "summary": "Watt / volt / amp",
        "description": "Solve any two of P, V, I, R for simple resistive power relationships. (calculation_version 1.5.1)\n\nSemantic capability: `electrical.watt_volt_amp`.\n\nCalculation version: `1.5.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Resistive model only\n\nLimitation: Fewer than two inputs throws; zero divisors yield 0 for dependents",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.5.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.5.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.watt_volt_amp.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.5.1",
                    "examples": [
                      "1.5.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.5.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.watt_volt_amp.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/power": {
      "post": {
        "operationId": "calculate_electrical_power",
        "summary": "Electric power",
        "description": "Real power in watts from V×I×PF (DC / 1φ / balanced 3φ L-L), from I²R, or average power E/Δt. PF=0 is valid (P=0); blank PF defaults to 1. Δt=0 is INVALID_TIME_INTERVAL. (calculation_version 1.3.0)\n\nSemantic capability: `electrical.power`.\n\nCalculation version: `1.3.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: V×I path is real power P, not apparent power S (use amps-to-va)\n\nLimitation: Three-phase is balanced sinusoidal L-L only\n\nLimitation: I²R tab is I+R only; V²/R is Ohm’s law, not a third tab\n\nLimitation: PF blank → 1; PF=0 → P=0; PF outside [0,1] → INVALID_POWER_FACTOR\n\nLimitation: Δt ≤ 0 → INVALID_TIME_INTERVAL (not a soft 0 W)\n\nLimitation: Sinusoidal PF teaching model; true PF with harmonics is not computed",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.power.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.0",
                    "examples": [
                      "1.3.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.3.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.power.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/electricity": {
      "post": {
        "operationId": "calculate_electrical_electricity_bill",
        "summary": "Electricity bill",
        "description": "Estimate a simple electricity bill from kWh or meter readings plus rates and fees. (calculation_version 1.3.1)\n\nSemantic capability: `electrical.electricity_bill`.\n\nCalculation version: `1.3.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not for TOU / slab tariffs / export credits\n\nLimitation: Current meter reading must be ≥ previous reading; otherwise METER_READING_DECREASED is returned\n\nLimitation: Fee is a lump sum only; percentage and per-kWh taxes are not calculated",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.electricity_bill.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.1",
                    "examples": [
                      "1.3.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.3.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.electricity_bill.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/amps-to-kw": {
      "post": {
        "operationId": "calculate_electrical_amps_to_kw",
        "summary": "Amps to kW",
        "description": "Convert current and voltage to real power in kW (or reverse) for DC, single-phase AC, and balanced three-phase L-L. (calculation_version 1.4.3)\n\nSemantic capability: `electrical.amps_to_kw`.\n\nCalculation version: `1.4.3`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: DC, single-phase AC, or balanced three-phase L-L only\n\nLimitation: DC payloads must omit power_factor\n\nLimitation: Not for unbalanced three-phase\n\nLimitation: Not for line-to-neutral three-phase as a selectable mode\n\nLimitation: AC power_factor must be in (0, 1] — no soft coerce\n\nLimitation: V ≤ 0 → VOLTAGE_MUST_BE_POSITIVE\n\nLimitation: factor is an implementation constant (0.001) and is not an Agent input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.4.3"
              ]
            },
            "description": "Pin calculation_version (published: 1.4.3); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.amps_to_kw.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.4.3",
                    "examples": [
                      "1.4.3"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.4.3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.amps_to_kw.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/amps-to-volts": {
      "post": {
        "operationId": "calculate_electrical_amps_to_volts",
        "summary": "Amps to volts",
        "description": "Solve voltage from current plus resistance or power, and reverse to current. Watts paths cover DC, AC single-phase, and balanced three-phase L-L. (calculation_version 1.4.2)\n\nSemantic capability: `electrical.amps_to_volts`.\n\nCalculation version: `1.4.2`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Composite page: ohms path is V=IR; watts path is P/(I·PF) with optional √3\n\nLimitation: Not for converting amps to volts from current alone\n\nLimitation: JSON Schema is a callable-input envelope (types/required/enums). Zeros, negatives, and PF outside (0,1] may be schema-valid; the engine returns stable error codes\n\nLimitation: DC payloads must omit power_factor. REST may still send PF on DC: ignored with POWER_FACTOR_IGNORED\n\nLimitation: AC watts paths require power_factor in (0, 1]. UI initializes AC PF to 1.0; Agent/API clients must send it. Explicit PF=0 is POWER_FACTOR_OUT_OF_RANGE, not a silent 1\n\nLimitation: P>0 with I=0 → CURRENT_MUST_BE_NONZERO; V≠0 with R=0 → RESISTANCE_MUST_BE_NONZERO; 0/0 → UNDEFINED\n\nLimitation: IEEE-754 binary64; non-finite results → NON_FINITE_RESULT\n\nLimitation: Not for unbalanced three-phase",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.4.2"
              ]
            },
            "description": "Pin calculation_version (published: 1.4.2); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.amps_to_volts.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.4.2",
                    "examples": [
                      "1.4.2"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.4.2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.amps_to_volts.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/kva-to-amps": {
      "post": {
        "operationId": "calculate_electrical_kva_to_amps",
        "summary": "kVA to amps",
        "description": "Convert apparent power in kVA to line current for single- or three-phase systems. (calculation_version 1.4.1)\n\nSemantic capability: `electrical.kva_to_amps`.\n\nCalculation version: `1.4.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not for unbalanced three-phase\n\nLimitation: Not for line-to-neutral as a separate UI mode\n\nLimitation: No power factor on apparent path\n\nLimitation: V>0 hard — VOLTAGE_MUST_BE_POSITIVE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.4.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.4.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.kva_to_amps.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.4.1",
                    "examples": [
                      "1.4.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.4.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.kva_to_amps.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/va-to-kva": {
      "post": {
        "operationId": "calculate_electrical_va_to_kva",
        "summary": "VA to kVA",
        "description": "Scale volt-amperes to kilovolt-amperes (÷1000) or reverse (×1000). (calculation_version 1.3.1)\n\nSemantic capability: `electrical.va_to_kva`.\n\nCalculation version: `1.3.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not a watts/kW conversion — power factor is not used\n\nLimitation: Physical use assumes non-negative apparent power",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.va_to_kva.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.1",
                    "examples": [
                      "1.3.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.3.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.va_to_kva.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/kva-to-kw": {
      "post": {
        "operationId": "calculate_electrical_kva_to_kw",
        "summary": "kVA to kW",
        "description": "Convert apparent power to real power using power factor: kW = kVA × PF. (calculation_version 1.4.1)\n\nSemantic capability: `electrical.kva_to_kw`.\n\nCalculation version: `1.4.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: PF ∈ (0,1] hard\n\nLimitation: No voltage/phase required",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.4.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.4.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.kva_to_kw.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.4.1",
                    "examples": [
                      "1.4.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.4.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.kva_to_kw.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/kw-to-va": {
      "post": {
        "operationId": "calculate_electrical_kw_to_va",
        "summary": "kW to VA",
        "description": "Estimate apparent power in VA from real power and power factor. (calculation_version 1.3.1)\n\nSemantic capability: `electrical.kw_to_va`.\n\nCalculation version: `1.3.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: PF ∈ (0,1] hard\n\nLimitation: Built-in kW↔VA scale ×1000",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.kw_to_va.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.1",
                    "examples": [
                      "1.3.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.3.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.kw_to_va.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/watts-to-va": {
      "post": {
        "operationId": "calculate_electrical_watts_to_va",
        "summary": "Watts to VA",
        "description": "Convert real power (W) and apparent power (VA) using power factor — PF required (electrical.active_power_from_apparent_power / apparent_from_P_pf). (calculation_version 1.3.1)\n\nSemantic capability: `electrical.watts_to_va`.\n\nCalculation version: `1.3.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not for voltage/current→VA (use amps-to-va)\n\nLimitation: PF must be in (0, 1] — PF=0 → POWER_FACTOR_OUT_OF_RANGE (not a soft zero)\n\nLimitation: Roadmap model op: real_from_S_pf / apparent_from_P_pf",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.watts_to_va.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.1",
                    "examples": [
                      "1.3.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.3.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.watts_to_va.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/watts-to-kva": {
      "post": {
        "operationId": "calculate_electrical_watts_to_kva",
        "summary": "Watts to kVA",
        "description": "Convert real power in watts to apparent power in kVA using power factor: kVA = W ÷ (1000 × PF). Same PF rule as Watts to VA, scaled to kilovolt-amperes. (calculation_version 1.3.1)\n\nSemantic capability: `electrical.watts_to_kva`.\n\nCalculation version: `1.3.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: PF ∈ (0,1] hard\n\nLimitation: No voltage/phase required\n\nLimitation: Shares the scale-quotient helper with kWh→W; contracts are distinct (PF vs time)",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.watts_to_kva.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.1",
                    "examples": [
                      "1.3.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.3.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.watts_to_kva.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/kwh-to-watts": {
      "post": {
        "operationId": "calculate_electrical_kwh_to_watts",
        "summary": "kWh to Watts",
        "description": "Convert energy in kWh and a time period into average power in watts: W = 1000 × kWh ÷ h. Reverse: kWh = W × h ÷ 1000. (calculation_version 1.2.1)\n\nSemantic capability: `electrical.kwh_to_watts`.\n\nCalculation version: `1.2.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Average power over the interval — not instantaneous peak\n\nLimitation: Time must be in hours\n\nLimitation: Shares the scale-quotient helper with W→kVA; contracts are distinct (time vs PF)",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.kwh_to_watts.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.1",
                    "examples": [
                      "1.2.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.2.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.kwh_to_watts.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/kwh-to-kw": {
      "post": {
        "operationId": "calculate_electrical_kwh_to_kw",
        "summary": "kWh to kW",
        "description": "Convert energy in kWh and a time period into average power in kilowatts: kW = kWh ÷ h. Reverse: kWh = kW × h. (calculation_version 1.2.1)\n\nSemantic capability: `electrical.kwh_to_kw`.\n\nCalculation version: `1.2.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Average power over the interval — not instantaneous peak\n\nLimitation: Time must be in hours",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.kwh_to_kw.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.1",
                    "examples": [
                      "1.2.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.2.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.kwh_to_kw.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/watts-to-volts": {
      "post": {
        "operationId": "calculate_electrical_watts_to_volts",
        "summary": "Watts to Volts",
        "description": "Find voltage from power and current, or from power and resistance. Reverse: watts from volts and current. (calculation_version 1.3.1)\n\nSemantic capability: `electrical.watts_to_volts`.\n\nCalculation version: `1.3.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: RMS quantities for AC\n\nLimitation: Balanced three-phase when phase is three\n\nLimitation: Ohms path is resistive magnitude, V = √(P·R)",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.watts_to_volts.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.1",
                    "examples": [
                      "1.3.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.3.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.watts_to_volts.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/volts-to-joules": {
      "post": {
        "operationId": "calculate_electrical_volts_to_joules",
        "summary": "Volts to Joules",
        "description": "Relate voltage and charge to energy: E = V × Q (1 V = 1 J/C). Reverse: V = E ÷ Q. (calculation_version 1.2.0)\n\nSemantic capability: `electrical.volts_to_joules`.\n\nCalculation version: `1.2.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Cannot convert volts to joules without a charge (or equivalent)\n\nLimitation: Shares the product helper with W→J; contracts are distinct (Q vs t)",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.volts_to_joules.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.0",
                    "examples": [
                      "1.2.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.2.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.volts_to_joules.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/watts-to-joules": {
      "post": {
        "operationId": "calculate_electrical_watts_to_joules",
        "summary": "Watts to Joules",
        "description": "Convert power and time to energy: E(J) = P(W) × t(s). Reverse: P = E ÷ t. 1 W = 1 J/s. (calculation_version 1.2.1)\n\nSemantic capability: `electrical.watts_to_joules`.\n\nCalculation version: `1.2.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Cannot convert watts to joules without a duration\n\nLimitation: Shares the product helper with V→J; contracts are distinct (t vs Q)",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.watts_to_joules.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.1",
                    "examples": [
                      "1.2.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.2.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.watts_to_joules.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/volts-to-kw": {
      "post": {
        "operationId": "calculate_electrical_volts_to_kw",
        "summary": "Volts to kW",
        "description": "Estimate real power from voltage, current, phase, and power factor. (calculation_version 1.3.1)\n\nSemantic capability: `electrical.volts_to_kw`.\n\nCalculation version: `1.3.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: PF ∈ (0,1] hard — FRACTION_OUT_OF_RANGE\n\nLimitation: V>0 on forward; I>0 on reverse",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.volts_to_kw.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.1",
                    "examples": [
                      "1.3.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.3.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.volts_to_kw.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/awg-to-mm": {
      "post": {
        "operationId": "calculate_electrical_awg_to_mm",
        "summary": "AWG to mm / mm²",
        "description": "Look up American Wire Gauge geometry: unrounded ASTM B258 geometric progression (primary) plus Table 1 SI standard nominals for integer 4/0–56; copper resistance at 20 °C; educational NFPA 70–style ampacity reference (edition not pinned). Accepts 12, 1/0, 4/0, or legacy −3…0. (calculation_version 1.5.0)\n\nSemantic capability: `electrical.awg_to_mm`.\n\nCalculation version: `1.5.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Solid round conductor geometric model (ASTM B258-18(2026); 2026 reapproval of B258-18)\n\nLimitation: Primary geometry is unrounded geometric progression (formula_derived); ASTM Table 1 SI nominals are a separate standard_nominal track for integer 4/0–56\n\nLimitation: Not stranded equivalent area or insulated OD\n\nLimitation: Copper Ω/km is a 20 °C material model, not AWG geometry\n\nLimitation: Ampacity is an educational NFPA 70–style thermal reference (table-like 310.16, edition not pinned); copper 14–4/0 include 60/75/90 °C; 16 AWG and finer not tabulated; not jurisdiction-usable and not a branch-circuit rating\n\nLimitation: CVP numeric goldens cover AWG diameter/area geometry; resistance is a 20 °C IACS material model; ampacity is dataset-integrity only, not NEC compliance\n\nLimitation: Integer 4/0 (−3) through 56 = standard_range + formula_derived (+ standard_nominal); non-integer n in that span → AWG_NONSTANDARD_GAUGE + formula_interpolation; n outside the span → AWG_OUTSIDE_STANDARD_RANGE + formula_extrapolation\n\nLimitation: Missing/empty awg → MISSING_REQUIRED_INPUT (empty is not AWG 0 / 1/0)\n\nLimitation: Unparseable awg → INVALID_NUMBER; field not mm|mm2 → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.5.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.5.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.awg_to_mm.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.5.0",
                    "examples": [
                      "1.5.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.5.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.awg_to_mm.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/wire-gauge-chart": {
      "post": {
        "operationId": "calculate_electrical_awg_to_mm_alias_wire_gauge_chart",
        "summary": "AWG to mm / mm² (wire-gauge-chart page alias)",
        "description": "Look up American Wire Gauge geometry: unrounded ASTM B258 geometric progression (primary) plus Table 1 SI standard nominals for integer 4/0–56; copper resistance at 20 °C; educational NFPA 70–style ampacity reference (edition not pinned). Accepts 12, 1/0, 4/0, or legacy −3…0. (calculation_version 1.5.0)\n\nSemantic capability: `electrical.awg_to_mm`.\n\nCalculation version: `1.5.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Solid round conductor geometric model (ASTM B258-18(2026); 2026 reapproval of B258-18)\n\nLimitation: Primary geometry is unrounded geometric progression (formula_derived); ASTM Table 1 SI nominals are a separate standard_nominal track for integer 4/0–56\n\nLimitation: Not stranded equivalent area or insulated OD\n\nLimitation: Copper Ω/km is a 20 °C material model, not AWG geometry\n\nLimitation: Ampacity is an educational NFPA 70–style thermal reference (table-like 310.16, edition not pinned); copper 14–4/0 include 60/75/90 °C; 16 AWG and finer not tabulated; not jurisdiction-usable and not a branch-circuit rating\n\nLimitation: CVP numeric goldens cover AWG diameter/area geometry; resistance is a 20 °C IACS material model; ampacity is dataset-integrity only, not NEC compliance\n\nLimitation: Integer 4/0 (−3) through 56 = standard_range + formula_derived (+ standard_nominal); non-integer n in that span → AWG_NONSTANDARD_GAUGE + formula_interpolation; n outside the span → AWG_OUTSIDE_STANDARD_RANGE + formula_extrapolation\n\nLimitation: Missing/empty awg → MISSING_REQUIRED_INPUT (empty is not AWG 0 / 1/0)\n\nLimitation: Unparseable awg → INVALID_NUMBER; field not mm|mm2 → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.5.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.5.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.awg_to_mm.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.5.0",
                    "examples": [
                      "1.5.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.5.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.awg_to_mm.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/swg-to-mm": {
      "post": {
        "operationId": "calculate_electrical_swg_to_mm",
        "summary": "SWG to mm / mm²",
        "description": "Convert Standard Wire Gauge to diameter (mm) or cross-section (mm²). (calculation_version 1.3.1)\n\nSemantic capability: `electrical.swg_to_mm`.\n\nCalculation version: `1.3.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Lookup table only for integer SWG 7/0 (−6) through 50\n\nLimitation: Out-of-range → SWG_OUT_OF_RANGE (not 0 mm)\n\nLimitation: Non-integer → SWG_NOT_INTEGER (not Math.round)\n\nLimitation: Canonical diameter is inch; mm = inch × 25.4 (exact); area uses that mm\n\nLimitation: SWG ≠ AWG; same number different diameter",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.swg_to_mm.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.1",
                    "examples": [
                      "1.3.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.3.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.swg_to_mm.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/mah-to-wh": {
      "post": {
        "operationId": "calculate_electrical_mah_to_wh",
        "summary": "mAh to Wh",
        "description": "Convert battery capacity in milliamp-hours and voltage to watt-hours. (calculation_version 1.3.1)\n\nSemantic capability: `electrical.mah_to_wh`.\n\nCalculation version: `1.3.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Ignores charge/discharge efficiency and Peukert effects\n\nLimitation: V ≤ 0 → VOLTAGE_MUST_BE_POSITIVE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.mah_to_wh.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.1",
                    "examples": [
                      "1.3.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.3.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.mah_to_wh.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/battery-runtime": {
      "post": {
        "operationId": "calculate_electrical_battery_runtime",
        "summary": "Battery runtime",
        "description": "Estimate constant-load battery runtime from capacity, voltage, load (W load-side or A battery-side), DoD, and load-side efficiency (watts mode); optional u_* compose expanded uncertainty on t_h via Uncertainty Engine. (calculation_version 1.2.1)\n\nSemantic capability: `electrical.battery_runtime`.\n\nCalculation version: `1.2.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Constant-load idealization only — not Peukert, temperature, or BMS cutoffs\n\nLimitation: Not a substitute for manufacturer runtime curves or pack design\n\nLimitation: Amps mode = battery-side discharge current; η does not enter runtime\n\nLimitation: capacity_Ah XOR capacity_mAh; both → INVALID_INPUT\n\nLimitation: Missing capacity → MISSING_REQUIRED_INPUT; P_W/I_A ≤ 0 → LOAD_MUST_BE_POSITIVE\n\nLimitation: dod/eta outside (0,1] → FRACTION_OUT_OF_RANGE\n\nLimitation: mode=watts requires P_W; mode=amps requires I_A\n\nLimitation: Optional u_* use GUM sensitivity only (no MC/ρ/νeff UI); empty u_* preserves nominal-only result\n\nLimitation: Response inputs[] is mode-canonical (capacity_Ah only; amps omits eta)\n\nLimitation: Basic frozen at calculation_version 1.2.1 — Agent schema requires u_* when uncertainty_k/confidence is set; do not stack Peukert/temperature/duty-cycle into this capability",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.battery_runtime.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.1",
                    "examples": [
                      "1.2.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.2.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.battery_runtime.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/rc-time-constant": {
      "post": {
        "operationId": "calculate_electrical_rc_time_constant",
        "summary": "RC time constant",
        "description": "Solve series RC time constant τ = R·C from any two of R, C, tau; also returns −3 dB frequency and common timing multiples. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.rc_time_constant`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Series first-order RC only — not parallel networks or distributed RC\n\nLimitation: f_c is the ideal LPF −3 dB corner; not a filter design tool\n\nLimitation: Fewer than two inputs → NEEDS_TWO_INPUTS; non-positive → VALUE_MUST_BE_POSITIVE\n\nLimitation: When R and C are both provided, tau is recomputed from R·C",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.rc_time_constant.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.rc_time_constant.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/rlc-resonance": {
      "post": {
        "operationId": "calculate_electrical_rlc_resonance",
        "summary": "RLC resonance",
        "description": "Compute ideal series or parallel RLC resonant frequency, Q, bandwidth, and reactance at resonance from L, C, and R. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.rlc_resonance`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Ideal lumped RLC only — not coupled coils, transmission lines, or crystal models\n\nLimitation: Parallel mode assumes ideal parallel R with L and C (no ESR/ESL)\n\nLimitation: Missing/non-positive L/C/R → MISSING_REQUIRED_INPUT / VALUE_MUST_BE_POSITIVE\n\nLimitation: Unknown mode → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.rlc_resonance.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.rlc_resonance.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/mosfet-conduction-loss": {
      "post": {
        "operationId": "calculate_electrical_mosfet_conduction_loss",
        "summary": "MOSFET conduction loss",
        "description": "Compute MOSFET conduction loss from I, Rds(on), current_basis (dc / on-interval RMS / full-cycle MOSFET RMS), and optional Rds(Tj) via linear α or datasheet ratio. (calculation_version 1.2.2)\n\nSemantic capability: `electrical.mosfet.conduction_loss`.\n\nCalculation version: `1.2.2`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Conduction loss only — not switching, reverse recovery, or gate drive\n\nLimitation: Rds(Tj) is optional first-order linear or datasheet-ratio — not a physics compact model\n\nLimitation: Default α = 0.006 /°C is a Si MOSFET planning default, not manufacturer validated\n\nLimitation: current_basis selects the I definition; mixing full-cycle RMS with D double-counts duty\n\nLimitation: V_drop is I·Rds_Tj at the entered current, not a measured VDS(on) waveform point\n\nLimitation: Missing/non-positive I/Rds → MISSING_REQUIRED_INPUT / VALUE_MUST_BE_POSITIVE; D outside (0,1] → FRACTION_OUT_OF_RANGE; unknown current_basis or temperature_model → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.2"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.2); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.mosfet.conduction_loss.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.2",
                    "examples": [
                      "1.2.2"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.2.2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.mosfet.conduction_loss.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/uncertainty-propagate": {
      "post": {
        "operationId": "calculate_engineering_uncertainty_propagate",
        "summary": "Uncertainty propagation",
        "description": "Propagate standard uncertainties: GUM linear (binary/sensitivity/RSS/budget) or Monte Carlo (JCGM 101); optional correlations, contributions, νeff, Student-t/percentile coverage → U. (calculation_version 1.9.8)\n\nSemantic capability: `engineering.uncertainty.propagate`.\n\nCalculation version: `1.9.8`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Linear GUM (binary/sensitivity/RSS/budget) or Monte Carlo (JCGM 101) with normal/rectangular draws; not adaptive/MCMC\n\nLimitation: MC: N in 100…100000 (default 10000), deterministic Mulberry32 seed; confidence → empirical percentiles; k → U=k·u_c\n\nLimitation: budget/sensitivity Type A/B + distributions are metadata (except MC uses distribution for draws); u is standard uncertainty\n\nLimitation: contributions are diagonal (c·u)² fractions for linear modes; with correlations percents may not sum to 100%\n\nLimitation: Product/quotient use absolute first-order forms in linear mode; MC quotient rejects >5% near-zero denominator draws (MONTECARLO_UNSTABLE)\n\nLimitation: n×n correlation matrix not positive semidefinite → CORRELATION_MATRIX_NOT_PSD (singular PSD allowed); duplicate unordered pair → DUPLICATE_CORRELATION; conflicting ρ for the same pair → CONFLICTING_CORRELATION\n\nLimitation: Optional Quantity Engine v1.1: SI-prefix conversion + electrical derived rewrites (1000 mV + 2 V → 3 V; V/A → Ω; A·Ω → V; V×A → VA); different additive dimensions → UNIT_MISMATCH; not full SI algebra\n\nLimitation: Unknown mode → INVALID_MODE; k and confidence together → INVALID_INPUT\n\nLimitation: confidence with nonzero ρ/correlations → CORRELATED_DOF_NOT_SUPPORTED (use fixed k)\n\nLimitation: MC rectangular + correlation → CORRELATED_NON_NORMAL_MC_NOT_SUPPORTED (normal marginals only)\n\nLimitation: Public Agent schema uses canonical field names only (components.u/c/x; correlations i/j as index or name). Runtime still accepts legacy aliases (ua/uncertainty/sensitivity/value) for compatibility.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.9.8"
              ]
            },
            "description": "Pin calculation_version (published: 1.9.8); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.uncertainty.propagate.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.9.8",
                    "examples": [
                      "1.9.8"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.9.8"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.uncertainty.propagate.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/pcb-trace-width": {
      "post": {
        "operationId": "calculate_electrical_pcb_trace_width",
        "summary": "PCB trace width",
        "description": "Size PCB copper traces or check ampacity with the IPC-2221 I = k·ΔT^0.44·A^0.725 relation for external and internal layers; optional u_* compose expanded uncertainty on width or I via Uncertainty Engine. (calculation_version 1.1.1)\n\nSemantic capability: `electrical.pcb.trace_width`.\n\nCalculation version: `1.1.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: IPC-2221 closed form only — not IPC-2152 chart interpolation\n\nLimitation: 1 oz/ft² modeled as 1.378 mil thickness\n\nLimitation: Bad mode/layer → INVALID_MODE; non-positive → VALUE_MUST_BE_POSITIVE\n\nLimitation: Optional u_* use GUM sensitivity on the primary result only; uncertainty_k is coverage (not IPC k)",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.pcb.trace_width.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.1",
                    "examples": [
                      "1.1.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.pcb.trace_width.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/lpf": {
      "post": {
        "operationId": "calculate_electrical_lpf",
        "summary": "Low-pass filter",
        "description": "Solve first-order RC LPF cutoff fc = 1/(2πRC) from any two of R, C, fc; optional magnitude |H(f)| in linear and dB. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.lpf`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: First-order passive RC LPF only\n\nLimitation: Fewer than two of R/C/fc → NEEDS_TWO_INPUTS\n\nLimitation: When R and C both provided, fc is recomputed",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.lpf.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.lpf.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/fspl": {
      "post": {
        "operationId": "calculate_electrical_rf_fspl",
        "summary": "Free-space path loss",
        "description": "Compute Friis free-space path loss from distance and frequency, with optional antenna gains Gt/Gr in dBi. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.rf.fspl`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Ideal free-space only — no atmosphere, multipath, or cable loss\n\nLimitation: d_m/f_Hz ≤ 0 → VALUE_MUST_BE_POSITIVE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.rf.fspl.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.rf.fspl.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/mosfet-switching-loss": {
      "post": {
        "operationId": "calculate_electrical_mosfet_switching_loss",
        "summary": "MOSFET switching loss",
        "description": "First-order hard-switching overlap loss P_sw = ½·Vds·Id·(tr+tf)·f_sw and optional gate-drive power Qg·Vdrive·f_sw. Not a full MOSFET loss stack. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.mosfet.switching_loss`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Hard-switching linear transition only — not soft-switching or Eon/Eoff tables\n\nLimitation: Qg and Vdrive must both be present or both omitted (else NEEDS_TWO_INPUTS)\n\nLimitation: Conduction loss is a separate capability\n\nLimitation: P_gate is gate-drive power — not necessarily dissipated entirely in the MOSFET junction",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.mosfet.switching_loss.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.mosfet.switching_loss.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/mosfet-total-loss": {
      "post": {
        "operationId": "calculate_electrical_mosfet_total_loss",
        "summary": "MOSFET total loss",
        "description": "Compose MOSFET loss workspace: device dissipation (conduction + hard-switching + optional Coss/Eoss) plus optional gate-drive and Qrr commutation, with optional Tj = Ta + P_device·Rth. Omitted optional terms are not treated as 0 W. (calculation_version 1.1.2)\n\nSemantic capability: `electrical.mosfet.total_loss`.\n\nCalculation version: `1.1.2`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: First-order hard-switching workspace — not Eon/Eoff tables, Qoss(V) curves, or compact models\n\nLimitation: Conduction uses electrical.mosfet.conduction_loss; switching/gate use electrical.mosfet.switching_loss\n\nLimitation: Default α = 0.006 /°C is a Si planning default, not manufacturer validated\n\nLimitation: P_coss from ½·Coss·V²·f is a lumped equivalent — prefer datasheet Eoss at Vds\n\nLimitation: Overlap P_sw plus P_coss may overestimate due to double counting; first-order only — validate against measured Eon/Eoff\n\nLimitation: P_rr = Qrr·Vds·f is recovered-charge commutation loss, usually attributed to the complementary switch — not this die\n\nLimitation: P_gate is gate-drive power (driver + Rg + Rg,int) — not MOSFET junction dissipation; Tj_est uses P_device only\n\nLimitation: Tj_est is steady-state RthJA only — not Zth or CFD\n\nLimitation: Numeric 0 on omitted P_gate/P_coss/P_rr means not included (see terms_omitted), not a measured zero\n\nLimitation: Optional Qg/Coss/Eoss/Qrr if present must be > 0; explicit 0 is not yet a supported known-zero state\n\nLimitation: Qg and Vdrive must both be present or both omitted (else NEEDS_TWO_INPUTS)",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.2"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.2); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.mosfet.total_loss.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.2",
                    "examples": [
                      "1.1.2"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.mosfet.total_loss.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/battery-runtime-temp": {
      "post": {
        "operationId": "calculate_electrical_battery_runtime_temp",
        "summary": "Battery runtime with temperature",
        "description": "Constant-load battery runtime with a generic cold-derating temperature capacity factor about 25 °C (extends Battery Runtime base: watts load-side / amps battery-side). Planning model — not chemistry. (calculation_version 1.2.1)\n\nSemantic capability: `electrical.battery.runtime_temp`.\n\nCalculation version: `1.2.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Generic cold-derating planning model by default — not Peukert, Arrhenius, or manufacturer curves\n\nLimitation: Default k_T=0.006 is a planning default (parameter_validated=false), not a validated chemistry coefficient\n\nLimitation: Clamp is a numerical safeguard, not an operating-temperature envelope\n\nLimitation: T≥25 °C under generic_cold_derating does not increase capacity (no high-temp bonus)\n\nLimitation: custom_symmetric_linear is advanced opt-in and still a first-order heuristic\n\nLimitation: Amps mode = battery-side current; η does not enter runtime\n\nLimitation: capacity_Ah XOR capacity_mAh; both → INVALID_INPUT\n\nLimitation: k_T < 0 → VALUE_MUST_BE_NON_NEGATIVE\n\nLimitation: Intermediate layer toward chemistry/manufacturer profile runtime — not a Battery Simulator",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.battery.runtime_temp.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.1",
                    "examples": [
                      "1.2.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.2.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.battery.runtime_temp.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/parallel-resistor": {
      "post": {
        "operationId": "calculate_electrical_parallel_resistor",
        "summary": "Parallel resistor",
        "description": "Equivalent resistance of N≥2 parallel resistors: 1/Req = Σ 1/Ri. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.parallel_resistor`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Parallel only\n\nLimitation: N<2 → NEEDS_TWO_INPUTS",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.parallel_resistor.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.parallel_resistor.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/pcb-microstrip": {
      "post": {
        "operationId": "calculate_electrical_pcb_microstrip",
        "summary": "Microstrip impedance",
        "description": "IPC-2141 / Hammerstad zero-thickness microstrip Z0 or width synthesis. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.pcb.microstrip`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Zero thickness; no soldermask\n\nLimitation: er≤1 → ER_MUST_BE_GT_1",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.pcb.microstrip.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.pcb.microstrip.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/pcb-via-current": {
      "post": {
        "operationId": "calculate_electrical_pcb_via_current",
        "summary": "Via current capacity",
        "description": "IPC-2221 via ampacity from plating cross-section A=πt(d−t). (calculation_version 1.0.0)\n\nSemantic capability: `electrical.pcb.via_current`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: IPC-2221 closed form\n\nLimitation: t≥d/2 → PLATING_TOO_THICK",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.pcb.via_current.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.pcb.via_current.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/rf-link-budget": {
      "post": {
        "operationId": "calculate_electrical_rf_link_budget",
        "summary": "RF link budget",
        "description": "Friis FSPL link budget with gains, misc loss, received power, and optional margin; optional u_* compose expanded uncertainty on Pr_dBm via Uncertainty Engine. (calculation_version 1.1.1)\n\nSemantic capability: `electrical.rf.link_budget`.\n\nCalculation version: `1.1.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Ideal free space only\n\nLimitation: Extends electrical.rf.fspl\n\nLimitation: Optional u_* use GUM sensitivity on Pr only (no MC/ρ/νeff UI); empty u_* preserves 1.0.0 fields",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.rf.link_budget.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.1",
                    "examples": [
                      "1.1.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.rf.link_budget.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/battery-pack-sizing": {
      "post": {
        "operationId": "calculate_electrical_battery_pack_sizing",
        "summary": "Battery pack sizing",
        "description": "Invert BatteryRuntimeBaseInput constant-load model to size Ah from runtime/load (watts load-side / amps battery-side); optional nominal Ns/Np packing estimate. (calculation_version 1.2.0)\n\nSemantic capability: `electrical.battery.pack_sizing`.\n\nCalculation version: `1.2.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Constant-load inverse of BatteryRuntimeBaseInput / battery_runtime 1.2+\n\nLimitation: Amps mode = battery-side current; η does not enter Ah\n\nLimitation: Cell Ns/Np use ceil — nominal packing estimate only, not BMS / chemistry pack design\n\nLimitation: When V_pack ≠ V_target the result includes warning PACK_VOLTAGE_DIFFERS_FROM_TARGET\n\nLimitation: mode=watts requires P_W; mode=amps requires I_A\n\nLimitation: V_cell XOR incomplete pair → NEEDS_TWO_INPUTS (both or neither)",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.battery.pack_sizing.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.0",
                    "examples": [
                      "1.2.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.2.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.battery.pack_sizing.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/wheatstone-bridge": {
      "post": {
        "operationId": "calculate_electrical_wheatstone",
        "summary": "Wheatstone bridge",
        "description": "Four-arm Wheatstone bridge Vout and balance from Vin and R1…R4. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.wheatstone`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Unloaded ideal bridge only",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.wheatstone.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.wheatstone.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/kirchhoff": {
      "post": {
        "operationId": "calculate_electrical_kirchhoff",
        "summary": "Kirchhoff's laws",
        "description": "Series KVL loop or parallel KCL node with N resistors. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.kirchhoff`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Single loop/node demo only",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.kirchhoff.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.kirchhoff.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/led-resistor": {
      "post": {
        "operationId": "calculate_electrical_led_resistor",
        "summary": "LED resistor",
        "description": "Series LED current-limit resistor R=(Vs−n·Vf)/If. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.led_resistor`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Vs ≤ n·Vf → SUPPLY_TOO_LOW",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.led_resistor.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.led_resistor.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/mosfet-tj": {
      "post": {
        "operationId": "calculate_electrical_mosfet_tj",
        "summary": "MOSFET junction temperature",
        "description": "Steady-state Tj = Ta + P·Rth. Effective RθJA, or case/heatsink-dominant RθJC+RθCA (not equivalent models). Mixing both paths is CONFLICTING_INPUTS. (calculation_version 1.1.2)\n\nSemantic capability: `electrical.mosfet.tj`.\n\nCalculation version: `1.1.2`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Steady-state only; not Zth or CFD\n\nLimitation: Rth_JA is effective/application RθJA for the user's PCB and cooling environment, not a universal JEDEC package constant\n\nLimitation: JC+CA is a case/heatsink-dominant lumped single-path approximation; it is not a universal equivalent of RθJA and ignores parallel PCB/package heat flow\n\nLimitation: Rth_JA and Rth_JC or Rth_CA together is schema-invalid and CONFLICTING_INPUTS",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.2"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.2); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.mosfet.tj.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.2",
                    "examples": [
                      "1.1.2"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.mosfet.tj.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cascaded-nf": {
      "post": {
        "operationId": "calculate_electrical_rf_cascaded_nf",
        "summary": "Cascaded noise figure",
        "description": "Friis cascaded NF and total gain from stage NF/G in dB. (calculation_version 1.1.1)\n\nSemantic capability: `electrical.rf.cascaded_nf`.\n\nCalculation version: `1.1.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Mismatch effects are not modeled\n\nLimitation: Image-noise / special mixer sideband behavior is not modeled\n\nLimitation: REST/MCP arrays NF_dB[]/G_dB[] are limited to 64 stages (TOO_MANY_STAGES); field encoding NF1…NF8 is limited to 8\n\nLimitation: Field encoding and array encoding are mutually exclusive (MIXED_INPUT_ENCODING); field stages must be contiguous from stage 1 (NONCONTIGUOUS_STAGES)\n\nLimitation: When 10^(G_tot_dB/10) overflows IEEE-754 binary64, G_tot_lin is null and LINEAR_GAIN_OVERFLOW is returned; G_tot_dB remains finite",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.rf.cascaded_nf.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.1",
                    "examples": [
                      "1.1.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.rf.cascaded_nf.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/current-divider": {
      "post": {
        "operationId": "calculate_electrical_current_divider",
        "summary": "Current divider",
        "description": "Two-branch parallel current divider. Web UI: It, R1, R2 → I1, I2, V. API also solves selected inverse combinations (not arbitrary any-three; It+I1+I2 is underdetermined). (calculation_version 1.0.2)\n\nSemantic capability: `electrical.current_divider`.\n\nCalculation version: `1.0.2`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Exactly two ideal resistive parallel branches; no additional branch or load\n\nLimitation: Currents are non-negative magnitudes\n\nLimitation: Web UI is It+R1+R2 only\n\nLimitation: API supported combinations: It+R1+R2, R1+R2+I1, R1+R2+I2, It+I1+R1, It+I1+R2\n\nLimitation: It+I1+I2 is underdetermined → UNSUPPORTED_COMBINATION\n\nLimitation: Inverse It+I1+R1/R2 requires 0 < I1 < It for a finite R>0; I1=0 or I1=It → CURRENT_SPLIT_INVALID\n\nLimitation: It=0 and I1=0 with R1 or R2 is underdetermined → UNSUPPORTED_COMBINATION\n\nLimitation: <3 inputs → NEEDS_THREE_INPUTS",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.2"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.2); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.current_divider.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.2",
                    "examples": [
                      "1.0.2"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.current_divider.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/hpf": {
      "post": {
        "operationId": "calculate_electrical_hpf",
        "summary": "High-pass filter",
        "description": "First-order RC HPF cutoff and optional |H(f)|. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.hpf`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: First-order RC only",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.hpf.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.hpf.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/vswr": {
      "post": {
        "operationId": "calculate_electrical_rf_vswr",
        "summary": "VSWR",
        "description": "Convert |Γ|, VSWR, and return loss (plus mismatch loss). (calculation_version 1.0.0)\n\nSemantic capability: `electrical.rf.vswr`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Scalar |Γ| only\n\nLimitation: |Γ|≥1 → GAMMA_OUT_OF_RANGE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.rf.vswr.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.rf.vswr.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/tolerance-stackup": {
      "post": {
        "operationId": "calculate_engineering_tolerance_stackup",
        "summary": "Tolerance stack-up",
        "description": "1-D RSS or worst-case tolerance stack — Basic tol list or Engineering dimensions (nominal, ±tol, direction). (calculation_version 1.4.0)\n\nSemantic capability: `engineering.tolerance.stackup`.\n\nCalculation version: `1.4.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: 1-D linear stack only — not geometric GD&T or Monte Carlo\n\nLimitation: Basic inputs are treated as comparable tolerance magnitudes, not automatically as 1σ / 3σ / drawing limits\n\nLimitation: RSS is a statistical estimate under independence; it is not a guaranteed assembly limit\n\nLimitation: Engineering statistical_basis: magnitude (default, no coverage) and 1sigma use a; 3sigma uses a/3; uniform uses a/√3\n\nLimitation: Uniform asymmetric ±tol shifts statistical center to interval midpoint (NIST Type B rectangular); stack_nom stays drawing nominal\n\nLimitation: Legacy distribution=normal→1sigma, unknown→magnitude, uniform→uniform\n\nLimitation: stack_half_range is not a hard worst-case bound when +Tol/−Tol are asymmetric about nominal — use stack_worst_plus / stack_worst_minus",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.4.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.4.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.tolerance.stackup.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.4.0",
                    "examples": [
                      "1.4.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.4.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.tolerance.stackup.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/opamp-error-budget": {
      "post": {
        "operationId": "calculate_electrical_opamp_error_budget",
        "summary": "Op-amp error budget",
        "description": "DC Vos/Ib/Ios error budget with Rf/Rg (RSS or worst-case). (calculation_version 1.0.0)\n\nSemantic capability: `electrical.opamp.error_budget`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: DC Vos/Ib/Ios only — not noise/CMRR/PSRR",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.opamp.error_budget.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.opamp.error_budget.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/opamp-gain": {
      "post": {
        "operationId": "calculate_electrical_opamp_gain",
        "summary": "Op-amp gain",
        "description": "Closed-loop non-inverting / inverting gain from Rf and Rg. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.opamp_gain`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Ideal DC closed-loop only",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.opamp_gain.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.opamp_gain.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/antenna-length": {
      "post": {
        "operationId": "calculate_electrical_rf_antenna_length",
        "summary": "Antenna length",
        "description": "λ/2 dipole total length · λ/4 monopole radiator · corrected 1λ (k·λ₀) from frequency and empirical length factor k. (calculation_version 1.0.3)\n\nSemantic capability: `electrical.rf.antenna_length`.\n\nCalculation version: `1.0.3`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not a full antenna model — no ground, diameter, end-effect, loading coils, or NEC geometry.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.3"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.3); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.rf.antenna_length.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.3",
                    "examples": [
                      "1.0.3"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.rf.antenna_length.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/ac-dc-rectifier": {
      "post": {
        "operationId": "calculate_electrical_ac_dc_rectifier",
        "summary": "AC↔DC rectifier",
        "description": "Ideal half/full-wave rectified waveform (Vpeak/Vavg/Vrms) or capacitor-smoothed DC estimate — two circuit models. (calculation_version 1.1.2)\n\nSemantic capability: `electrical.ac_dc_rectifier`.\n\nCalculation version: `1.1.2`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Ideal diodes (0 V drop); not SCR/thyristor or active PFC\n\nLimitation: Vavg is the unfiltered rectified-sine average, not capacitor-smoothed DC bus voltage\n\nLimitation: Capacitor model uses continuous-discharge ΔV≈I/(f_ripple·C); when ΔV≥Vpeak, Vdc_est and Vmin are withheld (model_validity.valid=false)",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.2"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.2); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.ac_dc_rectifier.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.2",
                    "examples": [
                      "1.1.2"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.ac_dc_rectifier.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/adc-error-budget": {
      "post": {
        "operationId": "calculate_electrical_adc_error_budget",
        "summary": "ADC error budget",
        "description": "Combine gain/offset/INL/DNL into LSB, volts, and %FS. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.adc.error_budget`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Static DC errors only.\n\nLimitation: Quantization ±0.5 LSB is separate unless included in the INL/DNL terms you enter.\n\nLimitation: CalculatorX includes DNL as a separate RSS/worst-case contributor. Some ADC datasheets define TUE using gain, offset, and INL only.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.adc.error_budget.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.adc.error_budget.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/pcb-diff-impedance": {
      "post": {
        "operationId": "calculate_electrical_pcb_diff_impedance",
        "summary": "Differential impedance",
        "description": "Edge-coupled microstrip Zdiff from W, H, S, εr. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.pcb.diff_impedance`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Zero copper thickness (T=0); homogeneous dielectric; no soldermask\n\nLimitation: S_m is edge-to-edge gap, not center-to-center\n\nLimitation: Not a field solver; omits dielectric dispersion, copper roughness, and weave",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.pcb.diff_impedance.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.pcb.diff_impedance.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/capacitance": {
      "post": {
        "operationId": "calculate_electrical_capacitance",
        "summary": "Capacitance",
        "description": "Parallel-plate and series/parallel capacitance. (calculation_version 1.1.0)\n\nSemantic capability: `electrical.capacitance`.\n\nCalculation version: `1.1.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Ideal parallel plates; homogeneous isotropic dielectric fully filling the gap; fringing, frequency dependence, dielectric loss, leakage, ESR/ESL and parasitics neglected",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.capacitance.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.0",
                    "examples": [
                      "1.1.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.capacitance.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/transformer-sizing": {
      "post": {
        "operationId": "calculate_electrical_transformer_sizing",
        "summary": "Transformer sizing",
        "description": "Ideal transformer ratio, current, and VA. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.transformer_sizing`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Ideal lossless single-phase",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.transformer_sizing.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.transformer_sizing.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/diode-equation": {
      "post": {
        "operationId": "calculate_electrical_diode_equation",
        "summary": "Diode equation",
        "description": "Shockley diode Id↔Vd. Canonical T_K; UI/query alias T_C. Defaults: mode=id, n=1, T_K=300. Inverse domain Id > -Is. (calculation_version 1.1.0)\n\nSemantic capability: `electrical.diode.equation`.\n\nCalculation version: `1.1.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Ideal Shockley; no Rs/breakdown/high-injection\n\nLimitation: Is is specified at T; Is(T) is not derived\n\nLimitation: mode=vd requires Id > -Is\n\nLimitation: binary64 overflow → NUMERIC_OVERFLOW",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.diode.equation.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.0",
                    "examples": [
                      "1.1.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.diode.equation.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/adc-snr": {
      "post": {
        "operationId": "calculate_electrical_adc_snr",
        "summary": "ADC SNR / ENOB",
        "description": "Ideal quantization SNR and ENOB from measured SINAD. (calculation_version 1.1.0)\n\nSemantic capability: `electrical.adc.snr`.\n\nCalculation version: `1.1.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Ideal quantization only. ENOB from measured SINAD, not SNR.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.adc.snr.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.0",
                    "examples": [
                      "1.1.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "snr",
                  "n_bits": 12
                },
                "calculation_version": "1.1.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.adc.snr.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/pcb-stripline": {
      "post": {
        "operationId": "calculate_electrical_pcb_stripline",
        "summary": "Stripline impedance",
        "description": "Symmetric stripline Z0 from W, b, εr. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.pcb.stripline`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Zero thickness approximation",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.pcb.stripline.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.pcb.stripline.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/dbm-watt": {
      "post": {
        "operationId": "calculate_units_rf_dbm_watts",
        "summary": "dBm to Watts",
        "description": "Convert dBm ↔ watts / milliwatts using log power ratios. (calculation_version 1.3.1)\n\nSemantic capability: `units.rf.dbm_watts`.\n\nCalculation version: `1.3.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: W/mW must be >0 for reverse log\n\nLimitation: Hard INVALID_MODE\n\nLimitation: IEEE-754 binary64 overflow → NUMERIC_OVERFLOW\n\nLimitation: IEEE-754 binary64 underflow to 0 → NUMERIC_UNDERFLOW",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/units.rf.dbm_watts.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.1",
                    "examples": [
                      "1.3.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "dbm-w",
                  "value": 30
                },
                "calculation_version": "1.3.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/units.rf.dbm_watts.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/worst-case-analysis": {
      "post": {
        "operationId": "calculate_engineering_tolerance_worst_case",
        "summary": "Worst-Case Tolerance Analysis",
        "description": "1-D linear worst-case tolerance magnitude stack Σ|tol| with RSS comparison (|cᵢ|=1). (calculation_version 1.3.0)\n\nSemantic capability: `engineering.tolerance.worst_case`.\n\nCalculation version: `1.3.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: 1-D linear magnitude stack only — not a full nominal min/max dimensional chain\n\nLimitation: RSS comparison assumes consistent statistical basis and independence\n\nLimitation: MCP/agent input schema is canonical (tolerances[] ≥ 0); REST still accepts tol[] / tol1…tol8\n\nLimitation: Canonical/UI magnitudes must be ≥ 0 (NEGATIVE_TOLERANCE_MAGNITUDE). REST signed values ignore sign (SIGN_IGNORED_FOR_TOLERANCE_MAGNITUDE)\n\nLimitation: Unit is a shared label; all contributors must already use the same unit — no conversion",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.tolerance.worst_case.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.0",
                    "examples": [
                      "1.3.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "tolerances": [
                    0.1,
                    0.2,
                    0.1
                  ],
                  "unit": "mm"
                },
                "calculation_version": "1.3.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.tolerance.worst_case.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/series-capacitor": {
      "post": {
        "operationId": "calculate_electrical_series_capacitor",
        "summary": "Series Capacitor",
        "description": "Series equivalent capacitance 1/C=Σ1/Ci. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.series_capacitor`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Ideal capacitors",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.series_capacitor.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.series_capacitor.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/timer-555": {
      "post": {
        "operationId": "calculate_electrical_timer_555",
        "summary": "555 Timer",
        "description": "Astable frequency/duty/timing and monostable pulse width for the classic 555 using ln(2)-canonical NE555 timing (TI 0.693/1.44 are documented rounded aliases). (calculation_version 1.2.0)\n\nSemantic capability: `electrical.timer_555`.\n\nCalculation version: `1.2.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Classic NE555 ideal timing — astable uses ln(2) canonical model; TI 0.693/1.44 are rounded aliases\n\nLimitation: Device families differ in timing accuracy, leakage, output/discharge characteristics and usable frequency range; verify the selected device datasheet\n\nLimitation: Standard astable wiring always yields duty > 50%; diode-across-R2 <50% trick is not modeled\n\nLimitation: f > 100 kHz → NE555_HIGH_FREQUENCY warning (NE555 distortion guidance)\n\nLimitation: Monostable pulse_width < ~10 µs → MONOSTABLE_SHORT_PULSE warning\n\nLimitation: mode-discriminated oneOf: astable requires R1,R2,C; monostable requires R,C\n\nLimitation: Frozen at calculation_version 1.2.0 for forward timing — Designer / E-series / tolerance are separate surfaces",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.timer_555.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.0",
                    "examples": [
                      "1.2.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.2.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.timer_555.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/skin-depth": {
      "post": {
        "operationId": "calculate_electrical_rf_skin_depth",
        "summary": "Skin Depth",
        "description": "Electromagnetic skin depth δ=√(ρ/(πfμ)). (calculation_version 1.0.0)\n\nSemantic capability: `electrical.rf.skin_depth`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Good-conductor approximation",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.rf.skin_depth.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.rf.skin_depth.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/process-capability": {
      "post": {
        "operationId": "calculate_engineering_process_capability",
        "summary": "Process Capability (Cp/Cpk)",
        "description": "Design-stage Cp/Cpk from μ, σ, LSL, USL. Not in-control SPC and not Monte Carlo simulated indices. (calculation_version 1.0.0)\n\nSemantic capability: `engineering.process.capability`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Design-stage indices from μ and σ — not measured in-control SPC\n\nLimitation: Not Monte Carlo simulated Cp/Cpk\n\nLimitation: Two-sided LSL/USL required; USL must be greater than LSL",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.process.capability.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "lsl": 0,
                  "usl": 12,
                  "mu": 6,
                  "sigma": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.process.capability.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cpm": {
      "post": {
        "operationId": "calculate_engineering_process_cpm",
        "summary": "Process capability (Cpm)",
        "description": "Taguchi Cpm = (USL−LSL)/(6√(σ²+(μ−target)²)) from stated μ, σ, LSL, USL, and a target. Not Cp/Cpk, not Pp/Ppk, and not a Cpm≥1.33 verdict. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.process.cpm`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Design-stage from stated μ and σ — not measured in-control SPC\n\nLimitation: Not Cp/Cpk (those ignore the target in the denominator)\n\nLimitation: Not Pp/Ppk (those use sample s and have no target)\n\nLimitation: This page does not issue a Cpm≥1.33 verdict",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.process.cpm.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "lsl": 0,
                  "usl": 12,
                  "mu": 6,
                  "sigma": 1,
                  "target": 6
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.process.cpm.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cpm-performance": {
      "post": {
        "operationId": "calculate_engineering_process_cpm_performance",
        "summary": "Process performance (Ppm)",
        "description": "Overall Taguchi Ppm = (USL−LSL)/(6√(s²+(x̄−target)²)) from a sample. Not design-stage Cpm, not Pp/Ppk, and not a Ppm≥1.33 verdict. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.process.cpm_performance`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Overall sample s — not design-stage Cpm from a stated σ\n\nLimitation: Not Pp/Ppk (those have no target in the denominator)\n\nLimitation: This page does not issue a Ppm≥1.33 verdict",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.process.cpm_performance.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "values": [
                    4,
                    6,
                    8
                  ],
                  "lsl": 0,
                  "usl": 12,
                  "target": 6
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.process.cpm_performance.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cpmk": {
      "post": {
        "operationId": "calculate_engineering_process_cpmk",
        "summary": "Process capability (Cpmk)",
        "description": "Taguchi Cpmk = min(USL−μ, μ−LSL)/(3√(σ²+(μ−target)²)) from stated μ, σ, LSL, USL, and a target. Not Cpm, not Cpk, not Ppm, and not a Cpmk≥1.33 verdict. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.process.cpmk`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Design-stage from stated μ and σ — not measured in-control SPC\n\nLimitation: Not Cpm (that uses the two-sided span USL−LSL)\n\nLimitation: Not Cpk (Cpk has no target in the denominator)\n\nLimitation: Not Ppm (that uses sample s)\n\nLimitation: This page does not issue a Cpmk≥1.33 verdict",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.process.cpmk.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "lsl": 0,
                  "usl": 12,
                  "mu": 6,
                  "sigma": 1,
                  "target": 6
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.process.cpmk.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cpmk-performance": {
      "post": {
        "operationId": "calculate_engineering_process_cpmk_performance",
        "summary": "Process performance (Ppmk)",
        "description": "Overall Taguchi Ppmk = min(USL−x̄, x̄−LSL)/(3√(s²+(x̄−target)²)) from a sample. Not Cpmk, not Ppk, not Ppm, and not a Ppmk≥1.33 verdict. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.process.cpmk_performance`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Overall sample s — not design-stage Cpmk from a stated σ\n\nLimitation: Not Ppk (Ppk has no target in the denominator)\n\nLimitation: Not Ppm (that uses the two-sided span USL−LSL)\n\nLimitation: This page does not issue a Ppmk≥1.33 verdict",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.process.cpmk_performance.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "values": [
                    4,
                    6,
                    8
                  ],
                  "lsl": 0,
                  "usl": 12,
                  "target": 6
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.process.cpmk_performance.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/process-performance": {
      "post": {
        "operationId": "calculate_engineering_process_performance",
        "summary": "Process performance (Pp/Ppk)",
        "description": "Overall Pp/Ppk from a sample of process observations. σ is the overall sample s (ddof=1). Not design-stage Cp/Cpk, not Type A u_A, and not Monte Carlo simulated indices. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.process.performance`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Overall sample s — not a stated design σ and not within-subgroup SPC\n\nLimitation: Not design-stage Cp/Cpk and not Type A u_A = s/√n\n\nLimitation: Not Monte Carlo simulated indices\n\nLimitation: Two-sided LSL/USL required; USL must be greater than LSL",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.process.performance.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "values": [
                    4,
                    6,
                    8
                  ],
                  "lsl": 0,
                  "usl": 12
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.process.performance.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/guard-band": {
      "post": {
        "operationId": "calculate_engineering_process_guard_band",
        "summary": "Guard Band",
        "description": "Simple guard band GB=k·u with optional acceptance limits. Not ILAC G8 / JCGM 106 risk-based decision rules. (calculation_version 1.0.0)\n\nSemantic capability: `engineering.process.guard_band`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: GB = k·u with k default 2 — not ILAC G8 / JCGM 106 risk-based rules\n\nLimitation: USL and LSL optional; omitted limits skip that acceptance output\n\nLimitation: Not Cp/Cpk and not Monte Carlo",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.process.guard_band.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "u": 0.5,
                  "k": 2,
                  "lsl": 0,
                  "usl": 12
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.process.guard_band.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/type-a": {
      "post": {
        "operationId": "calculate_engineering_uncertainty_type_a",
        "summary": "Type A Uncertainty",
        "description": "Type A standard uncertainty u_A = s/√n from repeated observations. Not GUM combination and not Monte Carlo. (calculation_version 1.0.0)\n\nSemantic capability: `engineering.uncertainty.type_a`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Type A from a sample — not GUM RSS of several uᵢ\n\nLimitation: Not Monte Carlo\n\nLimitation: ddof=1 requires n≥2",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.uncertainty.type_a.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "values": [
                    1,
                    2,
                    3
                  ],
                  "ddof": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.uncertainty.type_a.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/type-b": {
      "post": {
        "operationId": "calculate_engineering_uncertainty_type_b",
        "summary": "Type B Uncertainty",
        "description": "Type B standard uncertainty from a half-width a. Rectangular u_B=a/√3, triangular u_B=a/√6. Not GUM combination and not Monte Carlo. (calculation_version 1.0.0)\n\nSemantic capability: `engineering.uncertainty.type_b`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: One Type B component from a half-width — not GUM RSS of several uᵢ\n\nLimitation: Not Monte Carlo\n\nLimitation: Seeded distributions: rectangular and triangular only",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.uncertainty.type_b.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "a": 3,
                  "distribution": "rectangular"
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.uncertainty.type_b.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/type-b-nu": {
      "post": {
        "operationId": "calculate_engineering_uncertainty_type_b_nu",
        "summary": "Type B degrees of freedom",
        "description": "GUM G.4.2 Type B degrees of freedom: ν = ½(u/σ(u))². σ(u)=0 → ν is infinite. Not Type B u_B from a half-width, not Welch ν_eff, and not U = k·u_c. (calculation_version 1.0.0)\n\nSemantic capability: `engineering.uncertainty.type_b_nu`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: GUM G.4.2 ν from stated u and σ(u) — not Type B u_B = a/√3\n\nLimitation: Not Welch–Satterthwaite ν_eff from several u_i, ν_i\n\nLimitation: Not expanded U = k·u_c\n\nLimitation: Does not take half-width a",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.uncertainty.type_b_nu.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "u": 2,
                  "sigma_u": 0.5
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.uncertainty.type_b_nu.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/welch-satterthwaite": {
      "post": {
        "operationId": "calculate_engineering_uncertainty_welch_satterthwaite",
        "summary": "Welch–Satterthwaite ν_eff",
        "description": "Effective degrees of freedom ν_eff = u_c⁴ / Σ (u_i⁴ / ν_i) (GUM G.4). If uc is omitted, u_c is the uncorrelated RSS of u_i. Not combined RSS as a product page and not expanded U = k·u_c. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.uncertainty.welch_satterthwaite`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Does not combine a measurement model (use Uncertainty propagate)\n\nLimitation: Does not look up coverage factor k from a t-table\n\nLimitation: Does not compute expanded U = k·u_c\n\nLimitation: Uncorrelated RSS only when uc is omitted",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.uncertainty.welch_satterthwaite.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "u": [
                    1,
                    1
                  ],
                  "nu": [
                    8,
                    8
                  ]
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.uncertainty.welch_satterthwaite.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/weighted-mean": {
      "post": {
        "operationId": "calculate_engineering_uncertainty_weighted_mean",
        "summary": "Inverse-variance weighted mean",
        "description": "GUM H.3 inverse-variance weighted mean of independent results of the same measurand: x_w = Σ(x_i/u_i²)/Σ(1/u_i²), u_w = 1/√Σ(1/u_i²). Not combined RSS, not Type A u_A = s/√n, and not GUM propagate. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.uncertainty.weighted_mean`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Independent uncorrelated results of the same measurand — not RSS of a measurement model\n\nLimitation: Does not compute Type A u_A = s/√n from repeats without individual u_i\n\nLimitation: Does not compute expanded U = k·u_w\n\nLimitation: χ² / Birge are diagnostics, not a pass/fail verdict",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.uncertainty.weighted_mean.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "x": [
                    2,
                    4,
                    6,
                    8
                  ],
                  "u": [
                    1,
                    1,
                    1,
                    1
                  ]
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.uncertainty.weighted_mean.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/coverage-factor": {
      "post": {
        "operationId": "calculate_engineering_uncertainty_coverage_factor",
        "summary": "Coverage factor k",
        "description": "Two-sided coverage factor k = t_{(1+p)/2}(ν) from degrees of freedom and confidence (GUM G.3 / G.4). Infinite ν uses the normal quantile. Not expanded U = k·u_c and not GUM propagate. (calculation_version 1.0.0)\n\nSemantic capability: `engineering.uncertainty.coverage_factor`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Does not compute expanded U = k·u_c (use Uncertainty propagate)\n\nLimitation: Does not combine a measurement model\n\nLimitation: Does not look up ν_eff (use Welch–Satterthwaite)",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.uncertainty.coverage_factor.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "nu": 8,
                  "confidence": 0.95
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.uncertainty.coverage_factor.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/tur": {
      "post": {
        "operationId": "calculate_engineering_uncertainty_tur",
        "summary": "Test uncertainty ratio TUR",
        "description": "Two-sided TUR = (USL−LSL)/(2U) from an already-expanded U (ANSI/NCSL Z540.3). Spec via lsl+usl, T, or half-width tol. Not pass/fail, not guard band, and not combined RSS. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.uncertainty.tur`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: U is already expanded — this page does not compute U = k·u_c\n\nLimitation: Does not combine a measurement model or RSS of u_i\n\nLimitation: Does not issue a TUR≥4 pass/fail or an ILAC G8 decision\n\nLimitation: Not a guard band and not Cp/Cpk",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.uncertainty.tur.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "U": 0.5,
                  "lsl": 0,
                  "usl": 4
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.uncertainty.tur.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/decision-rule": {
      "post": {
        "operationId": "calculate_engineering_conformity_decision_rule",
        "summary": "Conformity decision rule",
        "description": "Binary ILAC G8-style decision on a measured y: simple acceptance (w=0) or guarded acceptance (LSL+w ≤ y ≤ USL−w). The guard-band zone is fail, not conditional. Not JCGM 106 risk, not TUR, and not GB-only. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.conformity.decision_rule`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Binary pass/fail only — the guard-band zone is fail, not conditional\n\nLimitation: Does not compute ILAC G8 / JCGM 106 consumer or producer risk\n\nLimitation: Does not compute TUR or GB = k·u as a product (use those pages)\n\nLimitation: U or w is the already-stated band; this page does not expand u_c",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.conformity.decision_rule.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "y": 6,
                  "lsl": 0,
                  "usl": 12,
                  "rule": "simple"
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.conformity.decision_rule.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/mpe": {
      "post": {
        "operationId": "calculate_engineering_conformity_mpe",
        "summary": "Maximum permissible error MPE",
        "description": "VIM MPE: pass iff |ylab−xref| ≤ MPE. ratio = |ε|/MPE. Equality is pass. Not an ILAC G8 spec decision on y, not En (no U), and not ε without a limit. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.conformity.mpe`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Binary |ε| ≤ MPE — equality is pass\n\nLimitation: Does not compare y to LSL/USL (use the decision-rule page)\n\nLimitation: Does not divide by U (that is En) and does not report ε without a limit\n\nLimitation: U, Ulab, and T are not aliases for MPE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.conformity.mpe.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "ylab": 2.5,
                  "xref": 2,
                  "MPE": 1
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.conformity.mpe.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/normalized-error": {
      "post": {
        "operationId": "calculate_engineering_conformity_normalized_error",
        "summary": "Normalized error En",
        "description": "Proficiency-testing En = (ylab−xref)/√(Ulab²+Uref²). |En| ≤ 1 is pass (ISO 13528 / ISO/IEC 17043). Ulab and Uref are already expanded. Not zeta, not TUR, and not an ILAC G8 spec decision. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.conformity.normalized_error`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Ulab and Uref are already expanded — this page does not compute U = k·u\n\nLimitation: Not the zeta-score (that uses standard u, not U)\n\nLimitation: Not TUR and not an ILAC G8 specification decision on y\n\nLimitation: |En| ≤ 1 is pass; the test does not add a warning zone",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.conformity.normalized_error.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "ylab": 2.5,
                  "xref": 0,
                  "Ulab": 3,
                  "Uref": 4
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.conformity.normalized_error.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/zeta-score": {
      "post": {
        "operationId": "calculate_engineering_conformity_zeta_score",
        "summary": "Zeta-score",
        "description": "Proficiency-testing zeta-score ζ = (ylab−xref)/√(ulab²+uref²). ulab and uref are standard uncertainties (ISO 13528). |ζ| ≤ 2 pass, 2 < |ζ| < 3 warning, |ζ| ≥ 3 fail. Not En, not TUR, and not an ILAC G8 spec decision. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.conformity.zeta_score`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: ulab and uref are standard uncertainties — this page does not compute U = k·u or En\n\nLimitation: Not the normalized error En (that uses already-expanded U)\n\nLimitation: Not TUR and not an ILAC G8 specification decision on y\n\nLimitation: |ζ| ≤ 2 is pass; 2 < |ζ| < 3 is warning; |ζ| ≥ 3 is fail",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.conformity.zeta_score.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "ylab": 2.5,
                  "xref": 0,
                  "ulab": 3,
                  "uref": 4
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.conformity.zeta_score.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/z-score": {
      "post": {
        "operationId": "calculate_engineering_conformity_z_score",
        "summary": "Proficiency-testing z-score",
        "description": "ISO 13528 z-score z = (ylab−xref)/σ_pt. σ_pt is the scheme standard deviation for proficiency assessment (SDPA), not laboratory u and not expanded U. |z| ≤ 2 pass, 2 < |z| < 3 warning, |z| ≥ 3 fail. Not zeta, not En, and not an ILAC G8 spec decision. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.conformity.z_score`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: σ_pt is the scheme SDPA — this page does not compute lab u or U = k·u\n\nLimitation: Not the zeta-score (that uses √(ulab²+uref²))\n\nLimitation: Not the normalized error En (that uses already-expanded U)\n\nLimitation: Not TUR and not an ILAC G8 specification decision on y\n\nLimitation: |z| ≤ 2 is pass; 2 < |z| < 3 is warning; |z| ≥ 3 is fail",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.conformity.z_score.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "ylab": 2.5,
                  "xref": 0,
                  "sigma": 5
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.conformity.z_score.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/z-prime": {
      "post": {
        "operationId": "calculate_engineering_conformity_z_prime",
        "summary": "Proficiency-testing z′",
        "description": "ISO 13528 z′ = (ylab−xref)/√(σ_pt²+u(x_pt)²). σ_pt and u(x_pt) must both be > 0 so this cannot wrap z-score. |z′| ≤ 2 pass, 2 < |z′| < 3 warning, |z′| ≥ 3 fail. Not z-score, not zeta, and not En. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.conformity.z_prime`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Requires σ_pt > 0 and u(x_pt) > 0 — this page does not wrap z-score\n\nLimitation: Not the z-score (that divides by σ_pt alone)\n\nLimitation: Not the zeta-score (that uses √(ulab²+uref²))\n\nLimitation: Not the normalized error En (that uses already-expanded U)\n\nLimitation: Not TUR and not an ILAC G8 specification decision on y",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.conformity.z_prime.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "ylab": 5,
                  "xref": 0,
                  "sigma": 3,
                  "u_xref": 4
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.conformity.z_prime.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/measurement-error": {
      "post": {
        "operationId": "calculate_engineering_measurement_error",
        "summary": "Measurement error",
        "description": "VIM measurement error ε = ylab − xref (signed). Relative error is ε/xref when xref ≠ 0. Not percent error (×100), not En, not zeta, and not a z-score. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.measurement.error`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Signed error — this page does not multiply by 100 (that is percent error)\n\nLimitation: Not En, zeta, or z-score (those divide by U, u, or σ_pt)\n\nLimitation: Not an ILAC G8 specification decision\n\nLimitation: Relative error is undefined when xref = 0",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.measurement.error.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "ylab": 2.5,
                  "xref": 2
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.measurement.error.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/accuracy": {
      "post": {
        "operationId": "calculate_engineering_measurement_accuracy",
        "summary": "Measurement bias (trueness)",
        "description": "VIM trueness: signed bias = x̄ − xm from repeats on a master. s may be zero. Not a single-shot measurement error, not Type A u_A, and not Type-1 Cg (no T). (calculation_version 1.0.1)\n\nSemantic capability: `engineering.measurement.accuracy`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Signed bias from a sample mean — not a single-shot measurement error ε\n\nLimitation: Does not report Type A u_A = s/√n\n\nLimitation: Does not need a tolerance T (that is Type-1 Cg/Cgk)\n\nLimitation: s = 0 is valid; n = 1 with ddof = 1 is VALUE_OUT_OF_RANGE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.measurement.accuracy.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "values": [
                    6,
                    7,
                    8
                  ],
                  "xm": 8
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.measurement.accuracy.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/precision": {
      "post": {
        "operationId": "calculate_engineering_measurement_precision",
        "summary": "Measurement precision (repeatability)",
        "description": "ISO 5725 repeatability from a sample: s, CV = s/|x̄| when x̄ ≠ 0, and r = 2.8·s. Not Type A u_A, not Gauge R&R EV, and not percent CV (×100). (calculation_version 1.0.1)\n\nSemantic capability: `engineering.measurement.precision`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: r = 2.8·s is the ISO 5725 conventional repeatability limit, not coverage factor k\n\nLimitation: Does not report Type A u_A = s/√n\n\nLimitation: Not Gauge R&R repeatability (EV)\n\nLimitation: CV is not multiplied by 100; CV is undefined when x̄ = 0",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.measurement.precision.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "values": [
                    7,
                    8,
                    9
                  ]
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.measurement.precision.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/reproducibility": {
      "post": {
        "operationId": "calculate_engineering_measurement_reproducibility",
        "summary": "ISO 5725 reproducibility limit",
        "description": "ISO 5725 reproducibility from stated components: s_R = √(s_r²+s_L²), R = 2.8·s_R. Not r = 2.8·s from a sample, not AIAG GRR, and not combined RSS of a measurement model. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.measurement.reproducibility`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Takes stated s_r and s_L — not a sample and not a single s_R wrap\n\nLimitation: Not ISO 5725 r = 2.8·s from repeats\n\nLimitation: Not AIAG Gauge R&R AV / GRR\n\nLimitation: Not combined RSS of a measurement model",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.measurement.reproducibility.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "s_r": 3,
                  "s_L": 4
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.measurement.reproducibility.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/precision-uncertainty": {
      "post": {
        "operationId": "calculate_engineering_uncertainty_precision_mean",
        "summary": "Uncertainty of a mean from precision",
        "description": "ISO 21748 u = √(s_L²+s_r²/n) of a mean of n≥2 replicates from stated precision components. Not R = 2.8·s_R, not Type A from a sample, and not U = k·u. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.uncertainty.precision_mean`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Takes stated s_r, s_L, and n≥2 — not a sample of observations\n\nLimitation: n=1 is rejected so this cannot wrap s_R\n\nLimitation: Not ISO 5725 R = 2.8·s_R and not Type A u_A = s/√n from values\n\nLimitation: Does not compute expanded U = k·u",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.uncertainty.precision_mean.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "s_r": 8,
                  "s_L": 3,
                  "n": 4
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.uncertainty.precision_mean.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/pooled-sd": {
      "post": {
        "operationId": "calculate_engineering_uncertainty_pooled_sd",
        "summary": "Pooled standard deviation",
        "description": "Pooled s_p = √(Σ ν_i s_i² / Σ ν_i) from k≥2 stated sample standard deviations and their degrees of freedom. Not Type A from one sample, not Welch–Satterthwaite ν_eff, and not ISO 21748 u of a mean. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.uncertainty.pooled_sd`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Takes stated s_i and ν_i — not a single sample of observations\n\nLimitation: k=1 is rejected so this cannot wrap Type A / identity s\n\nLimitation: Does not compute Welch–Satterthwaite ν_eff\n\nLimitation: Does not compute ISO 21748 u of a mean",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.uncertainty.pooled_sd.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "s": [
                    1,
                    7
                  ],
                  "nu": [
                    1,
                    1
                  ]
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.uncertainty.pooled_sd.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/duplicate-sd": {
      "post": {
        "operationId": "calculate_engineering_measurement_duplicate_sd",
        "summary": "Repeatability from duplicates",
        "description": "ISO 5725 repeatability s_r = √(Σ d_i² / (2m)) from m≥2 duplicate differences. Not Type A from a sample of observations, not r = 2.8·s, and not AIAG GRR EV = R̄/d2. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.measurement.duplicate_sd`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Takes duplicate differences — not a sample of observations\n\nLimitation: m=1 is rejected so this cannot wrap |d|/√2\n\nLimitation: Does not report r = 2.8·s_r\n\nLimitation: Not AIAG GRR EV = R̄/d2",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.measurement.duplicate_sd.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "d": [
                    6,
                    8
                  ]
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.measurement.duplicate_sd.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cochran": {
      "post": {
        "operationId": "calculate_engineering_measurement_cochran",
        "summary": "Cochran's C",
        "description": "ISO 5725-2 Cochran C = s_max² / Σ s_i² from k≥2 stated laboratory sample standard deviations. Not pooled s_p, not Hartley's F_max, and not a tabulated Ccrit pass/fail. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.measurement.cochran`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Takes stated laboratory s_i — not a sample of observations\n\nLimitation: k=1 is rejected so this cannot wrap identity C=1\n\nLimitation: All-zero s is rejected (Σ s² must be > 0)\n\nLimitation: Does not compare C to a tabulated Ccrit(p, n, α)\n\nLimitation: Not pooled s_p and not Hartley's F_max",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.measurement.cochran.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "s": [
                    3,
                    4,
                    5
                  ]
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.measurement.cochran.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/gauge-capability": {
      "post": {
        "operationId": "calculate_engineering_msa_gauge_capability",
        "summary": "Gauge capability (Cg/Cgk)",
        "description": "Type-1 Cg/Cgk from repeats on a master: Cg=(frac·T)/(6s), Cgk=(frac·T/2−|x̄−xm|)/(3s). frac defaults to 0.2 (Bosch / VDA 5). Not AIAG GRR, not Cp/Cpk, and not a Cg≥1.33 verdict. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.msa.gauge_capability`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Type-1 study on a master — not AIAG GRR compose (EV/AV/PV)\n\nLimitation: Not process Cp/Cpk or Pp/Ppk\n\nLimitation: Does not issue a Cg≥1.33 pass/fail\n\nLimitation: frac is a tolerance fraction (default 0.2), not coverage factor k",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.msa.gauge_capability.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "values": [
                    7,
                    8,
                    9
                  ],
                  "xm": 8,
                  "T": 30
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.msa.gauge_capability.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/linearity": {
      "post": {
        "operationId": "calculate_engineering_msa_linearity",
        "summary": "MSA linearity",
        "description": "OLS of measurement error ε = ylab − xref versus xref: slope = dε/d(xref). n≥3 paired points. Not a single-master bias, not Type-1 Cg, and not a %Linearity pass/fail. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.msa.linearity`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Ordinary least squares of ε versus xref — not a %Linearity / process-variation verdict\n\nLimitation: Not a single-master bias (Accuracy) and not Type-1 Cg/Cgk\n\nLimitation: Does not take T and does not issue pass/fail\n\nLimitation: n≥3 paired points; xref must not all be equal",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.msa.linearity.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "xref": [
                    0,
                    2,
                    4
                  ],
                  "ylab": [
                    0,
                    3,
                    6
                  ]
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.msa.linearity.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/hysteresis": {
      "post": {
        "operationId": "calculate_engineering_msa_hysteresis",
        "summary": "MSA hysteresis",
        "description": "VIM / MSA hysteresis: H = max |y_up − y_down| at index-paired stations. n≥2. Not OLS linearity, not a %Hysteresis pass/fail, and not AIAG GRR. (calculation_version 1.0.1)\n\nSemantic capability: `engineering.msa.hysteresis`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Maximum paired |y_up − y_down| — not a %Hysteresis / process-variation verdict\n\nLimitation: Not OLS of ε versus xref (Linearity) and not a single-shot measurement error\n\nLimitation: Does not take T and does not issue pass/fail\n\nLimitation: n≥2 index-paired points; not AIAG GRR",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.msa.hysteresis.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "y_up": [
                    0,
                    2,
                    4
                  ],
                  "y_down": [
                    0,
                    1,
                    4
                  ]
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.msa.hysteresis.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/gauge-rr": {
      "post": {
        "operationId": "calculate_engineering_msa_gauge_rr",
        "summary": "Gauge R&R",
        "description": "AIAG Gauge R&R compose: GRR=√(EV²+AV²), TV=√(GRR²+PV²), %GRR, ndc. Optional range-method EV=R̄/d2. Not a full ANOVA study. (calculation_version 1.0.0)\n\nSemantic capability: `engineering.msa.gauge_rr`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: AIAG compose of stated EV, AV, PV — not a full ANOVA Gauge R&R\n\nLimitation: Range-method EV uses d2 default 1.128 (n=2)\n\nLimitation: GRR must be > 0 for ndc",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.msa.gauge_rr.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "ev": 3,
                  "av": 4,
                  "pv": 12
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.msa.gauge_rr.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/monte-carlo-tolerance": {
      "post": {
        "operationId": "calculate_engineering_tolerance_monte_carlo",
        "summary": "1-D Tolerance Analysis Workspace",
        "description": "1-D Tolerance Analysis Workspace — dimensional Monte Carlo with asymmetric ±tol, correlations (normal or NORTA), Spearman/Pearson/Sobol/Shapley sensitivity, σ convergence, LSL/USL yield, simulated capability, fingerprint, and snapshots. (calculation_version 1.12.0)\n\nSemantic capability: `engineering.tolerance.monte_carlo`.\n\nCalculation version: `1.12.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: 1-D stack; correlations use joint normal (all-normal) or Gaussian-copula NORTA (non-normal marginals)\n\nLimitation: Asymmetric normal uses two-piece scaling; uniform/triangular use [-tol_minus,+tol_plus]\n\nLimitation: Cp/Cpk/Ppk are simulated design-stage indices from overall MC mean/σ — not measured in-control SPC\n\nLimitation: Sobol requires independent inputs; for this linear stack Si=STi=analytic variance shares\n\nLimitation: Shapley variance attribution supports correlation; exact for d≤12, permutation estimate for d>12\n\nLimitation: Under NORTA, analytic σ uses Cov≈ρ·σi·σj (latent ρ); prefer Monte Carlo σ\n\nLimitation: Shared query must encode noms/sense; legacy tol1/tol2 alone is error-only (nominals 0)\n\nLimitation: Not full GD&T / 3-D geometry\n\nLimitation: MCP/agent input schema is canonical (no legacy field aliases); REST still accepts aliases\n\nLimitation: calculation_fingerprint is SHA-256; calculation_short_id is FNV-1a32 for UI only\n\nLimitation: MCP execute/inspect default detail_level=summary; pass full for histogram/Sobol/Shapley/contributors\n\nLimitation: Agent correlations use named pairs {a,b,rho} only (no i/j indexes)\n\nLimitation: Agent tolerances: half_tolerance OR both tol_plus+tol_minus (no single-sided agent form)",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.12.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.12.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/engineering.tolerance.monte_carlo.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.12.0",
                    "examples": [
                      "1.12.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "tolerances": [
                    {
                      "name": "A",
                      "nominal": 10,
                      "tol_plus": 0.1,
                      "tol_minus": 0.05,
                      "coefficient": 1,
                      "distribution": "normal"
                    },
                    {
                      "name": "B",
                      "nominal": 5,
                      "half_tolerance": 0.2,
                      "coefficient": -1,
                      "distribution": "normal"
                    }
                  ],
                  "sensitivity_method": "spearman",
                  "LSL": 4.8,
                  "USL": 5.2,
                  "unit": "mm",
                  "N": 20000,
                  "seed": 42,
                  "k_sigma": 3
                },
                "calculation_version": "1.12.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/engineering.tolerance.monte_carlo.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/opamp-noise": {
      "post": {
        "operationId": "calculate_electrical_opamp_noise",
        "summary": "Op-amp Noise",
        "description": "Flat-band op-amp output noise from en, gain, and bandwidth. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.opamp.noise`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Flat-band only; no 1/f",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.opamp.noise.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.opamp.noise.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/heatsink-rth": {
      "post": {
        "operationId": "calculate_electrical_thermal_heatsink_rth",
        "summary": "Heatsink Thermal Resistance",
        "description": "Junction temperature from effective θJA or θJC+θCS+θSA, or required heatsink θSA,max = (Tj,max−Ta)/P − θJC − θCS. (calculation_version 1.1.0)\n\nSemantic capability: `electrical.thermal.heatsink_rth`.\n\nCalculation version: `1.1.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Steady-state lumped Rθ only; not Zth(t) or CFD\n\nLimitation: θJA and θJC+θCS+θSA are exclusive models — mixing them is CONFLICTING_INPUTS\n\nLimitation: Required mode reports θSA,max, not total θJA\n\nLimitation: θCA / Rth_HS are rejected: θCA already includes the ambient-side path\n\nLimitation: Parallel PCB/package heat-flow paths are ignored on the explicit stack\n\nLimitation: P is device dissipation converted to heat, not load or output power\n\nLimitation: θSA,max ≤ 0 returns HEATSINK_INFEASIBLE and is not a purchasable heatsink",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.thermal.heatsink_rth.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.0",
                    "examples": [
                      "1.1.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.thermal.heatsink_rth.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/pcb-trace-thermal": {
      "post": {
        "operationId": "calculate_electrical_pcb_trace_thermal",
        "summary": "PCB Trace Thermal",
        "description": "Copper trace I²R power and temperature rise with board Rth. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.pcb.trace_thermal`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Uniform copper; lumped board Rth",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.pcb.trace_thermal.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.pcb.trace_thermal.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/rectifier-ripple-cap": {
      "post": {
        "operationId": "calculate_electrical_rectifier_ripple_cap",
        "summary": "Rectifier Ripple Capacitor",
        "description": "Filter C or Vripple for half/full-wave capacitor-input rectifiers. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.rectifier.ripple_cap`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Constant load current; ideal diodes",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.rectifier.ripple_cap.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.rectifier.ripple_cap.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/coulomb": {
      "post": {
        "operationId": "calculate_physics_em_coulomb",
        "summary": "Coulomb's Law",
        "description": "Electrostatic force F = k·|q1·q2|/r² between point charges. (calculation_version 1.0.0)\n\nSemantic capability: `physics.em.coulomb`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Point charges; εr=1",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.em.coulomb.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.em.coulomb.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/logic-gate": {
      "post": {
        "operationId": "calculate_electrical_digital_logic_gate",
        "summary": "Logic Gate",
        "description": "Basic Boolean gate outputs from binary inputs. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.digital.logic_gate`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Combinational Boolean only",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.digital.logic_gate.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.digital.logic_gate.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/battery-aging": {
      "post": {
        "operationId": "calculate_electrical_battery_aging",
        "summary": "Linear Battery Aging",
        "description": "Linear capacity fade from independent cycle and calendar aging. Default k_cycle=0.0002/cycle and k_cal=0.02/year are illustrative. (calculation_version 1.0.2)\n\nSemantic capability: `electrical.battery.aging`.\n\nCalculation version: `1.0.2`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Linear independent cycle+calendar fade — not temperature, SOC, DoD, C-rate, or chemistry aware\n\nLimitation: Default k_cycle=0.0002/cycle and k_cal=0.02/year are illustrative\n\nLimitation: fade_frac is unclamped exposure and may exceed 1; SOH and capacity_Ah are clamped at 0",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.2"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.2); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.battery.aging.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.2",
                    "examples": [
                      "1.0.2"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.battery.aging.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/buck-ripple": {
      "post": {
        "operationId": "calculate_electrical_buck_ripple",
        "summary": "Buck Converter Ripple",
        "description": "Assumed-CCM buck peak-to-peak inductor ripple ΔI_L,pp and optional capacitor-only ΔV_C,pp (ESR=0). (calculation_version 1.1.0)\n\nSemantic capability: `electrical.buck.ripple`.\n\nCalculation version: `1.1.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Ideal CCM is assumed, not measured — no Iout, so CCM/DCM is not certified\n\nLimitation: ΔI_L_A and ΔV_out_V are peak-to-peak, not RMS or amplitude\n\nLimitation: ΔV_out_V is capacitor-only (ESR=0); ESR and switching transients are neglected\n\nLimitation: DCM, current-mode control dynamics, and non-ideal switch/diode drops are out of scope",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.buck.ripple.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.0",
                    "examples": [
                      "1.1.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.buck.ripple.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/celsius-kelvin": {
      "post": {
        "operationId": "calculate_units_temperature_celsius_kelvin",
        "summary": "Celsius ↔ Kelvin",
        "description": "Affine °C↔K with absolute-zero guards. (calculation_version 1.0.2)\n\nSemantic capability: `units.temperature.celsius_kelvin`.\n\nCalculation version: `1.0.2`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not Fahrenheit/Rankine",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.2"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.2); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/units.temperature.celsius_kelvin.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.2",
                    "examples": [
                      "1.0.2"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/units.temperature.celsius_kelvin.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/psi-bar": {
      "post": {
        "operationId": "calculate_units_pressure_psi_bar",
        "summary": "PSI ↔ Bar",
        "description": "Positive pressure conversion using the international pound-force and inch. 1 bar ≈ 14.503773773020923 psi. (calculation_version 1.0.2)\n\nSemantic capability: `units.pressure.psi_bar`.\n\nCalculation version: `1.0.2`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Magnitude only; not gauge→absolute",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.2"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.2); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/units.pressure.psi_bar.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.2",
                    "examples": [
                      "1.0.2"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/units.pressure.psi_bar.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/mosfet-vth": {
      "post": {
        "operationId": "calculate_electrical_mosfet_vth",
        "summary": "MOSFET Threshold / Overdrive",
        "description": "Overdrive, square-law Id (cutoff / linear / saturation), or solve model Vth, with optional linear Vth(Tj). Vth is the long-channel square-law parameter, not datasheet VGS(th). (calculation_version 1.3.1)\n\nSemantic capability: `electrical.mosfet.vth`.\n\nCalculation version: `1.3.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Long-channel square-law only — not BSIM, velocity saturation, or short-channel\n\nLimitation: Vth is the model threshold parameter, not datasheet VGS(th) and not recommended gate drive\n\nLimitation: kn = μn·Cox·W/L such that Id_sat = ½·kn·Vod²; the ½ is not included in kn\n\nLimitation: Without Vds, Id uses the saturation equation; with Vds, region is cutoff / linear / saturation\n\nLimitation: Cutoff returns Id = 0 A; subthreshold leakage is not modeled\n\nLimitation: Linear Vth(Tj) does not scale kn / μ(T); default α = −0.002 V/°C is a Si planning value, not datasheet TCV",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.mosfet.vth.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.1",
                    "examples": [
                      "1.3.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.3.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.mosfet.vth.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/ideal-gas": {
      "post": {
        "operationId": "calculate_physics_thermo_ideal_gas",
        "summary": "Ideal Gas Law",
        "description": "PV=nRT solve for P|V|n|T in SI units. (calculation_version 1.0.0)\n\nSemantic capability: `physics.thermo.ideal_gas`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Ideal gas; SI R default",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.thermo.ideal_gas.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.thermo.ideal_gas.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/heat-transfer": {
      "post": {
        "operationId": "calculate_physics_thermo_heat_transfer",
        "summary": "Heat Transfer",
        "description": "1-D conduction or convection heat rate. (calculation_version 1.0.0)\n\nSemantic capability: `physics.thermo.heat_transfer`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: No radiation / CFD",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.thermo.heat_transfer.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.thermo.heat_transfer.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/receiver-sensitivity": {
      "post": {
        "operationId": "calculate_electrical_rf_receiver_sensitivity",
        "summary": "Receiver Sensitivity",
        "description": "MDS from NF, BW, and SNR_min at T0=290 K. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.rf.receiver_sensitivity`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Flat NF; kT0=−174 dBm/Hz",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.rf.receiver_sensitivity.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.rf.receiver_sensitivity.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/ldo-thermal": {
      "post": {
        "operationId": "calculate_electrical_ldo_thermal",
        "summary": "LDO Thermal",
        "description": "LDO dissipation and junction temperature from Rth. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.ldo.thermal`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Steady-state lumped Rth",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.ldo.thermal.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.ldo.thermal.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/hz-rads": {
      "post": {
        "operationId": "calculate_units_frequency_hz_rads",
        "summary": "Hz ↔ rad/s",
        "description": "Angular frequency ω = 2πf with positive-frequency guards. (calculation_version 1.0.0)\n\nSemantic capability: `units.frequency.hz_rads`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not deg/s or rpm",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/units.frequency.hz_rads.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/units.frequency.hz_rads.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/tesla-gauss": {
      "post": {
        "operationId": "calculate_units_magnetic_tesla_gauss",
        "summary": "Tesla ↔ Gauss",
        "description": "Magnetic flux density with 1 T = 10000 G. (calculation_version 1.0.0)\n\nSemantic capability: `units.magnetic.tesla_gauss`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Non-negative B only",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/units.magnetic.tesla_gauss.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/units.magnetic.tesla_gauss.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/wavelength": {
      "post": {
        "operationId": "calculate_electrical_rf_wavelength",
        "summary": "Wavelength",
        "description": "λ = c·VF/f in vacuum or dielectric (VF or εr). (calculation_version 1.0.0)\n\nSemantic capability: `electrical.rf.wavelength`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Mode lambda needs f_Hz; mode freq needs lambda_m\n\nLimitation: Non-dispersive VF; no waveguide cutoff",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.rf.wavelength.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.rf.wavelength.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/coax-impedance": {
      "post": {
        "operationId": "calculate_electrical_rf_coax",
        "summary": "Coax Impedance",
        "description": "Z0 of coaxial line from shield inner diameter D, center-conductor diameter d, and εr. Omitted εr defaults to 1.0. (calculation_version 1.0.1)\n\nSemantic capability: `electrical.rf.coax`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Does not model conductor loss\n\nLimitation: Does not model dielectric loss / tanδ\n\nLimitation: Does not model dispersion\n\nLimitation: Does not model connectors or discontinuities\n\nLimitation: Does not model higher-order modes",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.rf.coax.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.rf.coax.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/lc-match": {
      "post": {
        "operationId": "calculate_electrical_rf_lc_match",
        "summary": "L-section LC Match",
        "description": "Narrowband real RL→Z0 L-section dual solutions. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.rf.lc_match`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Real ZL only; narrowband; no stub match",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.rf.lc_match.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.rf.lc_match.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/smith-chart": {
      "post": {
        "operationId": "calculate_electrical_rf_smith",
        "summary": "Smith Chart (Impedance Matching)",
        "description": "RF Smith Chart & Matching Workspace: mode-discriminated Agent API, strict match-steps, Touchstone S11, auto-match, SVG overlays. (calculation_version 1.6.3)\n\nSemantic capability: `electrical.rf.smith`.\n\nCalculation version: `1.6.3`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: No multi-section Chebyshev / broadband optimizer\n\nLimitation: Full bilateral gain redesign with S12 feedback not supported\n\nLimitation: Drag-to-tune and S21/stability overlays are UI-side (API returns numerical modes)\n\nLimitation: Noise circles require Touchstone noise params (NFmin, Γopt, Rn); not inferred from S alone\n\nLimitation: Passive Z↔Γ / matching: R≥0 and |Γ|≤1; active overlay circles may extend outside the unit circle",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.6.3"
              ]
            },
            "description": "Pin calculation_version (published: 1.6.3); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.rf.smith.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.6.3",
                    "examples": [
                      "1.6.3"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.6.3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.rf.smith.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/gamma-z": {
      "post": {
        "operationId": "calculate_electrical_rf_gamma_z",
        "summary": "Γ ↔ Z (Complex)",
        "description": "Complex reflection coefficient ↔ normalized impedance with VSWR/RL. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.rf.gamma_z`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Normalized z; |Γ|≤1 for passive",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.rf.gamma_z.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.rf.gamma_z.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/kwh-joule": {
      "post": {
        "operationId": "calculate_units_energy_kwh_joule",
        "summary": "kWh ↔ Joule",
        "description": "Energy conversion with 1 kWh = 3.6 MJ. (calculation_version 1.0.0)\n\nSemantic capability: `units.energy.kwh_joule`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Exact SI factor 3.6e6 only",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/units.energy.kwh_joule.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/units.energy.kwh_joule.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/watt-hp": {
      "post": {
        "operationId": "calculate_units_power_watt_hp",
        "summary": "Watt ↔ Horsepower",
        "description": "Mechanical horsepower: 1 hp = 745.6998715822702 W. (calculation_version 1.0.0)\n\nSemantic capability: `units.power.watt_hp`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Mechanical hp only (not metric PS)",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/units.power.watt_hp.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/units.power.watt_hp.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/projectile": {
      "post": {
        "operationId": "calculate_physics_kinematics_projectile",
        "summary": "Projectile Motion",
        "description": "Flat-ground projectile range, apex, and flight time (no drag). (calculation_version 1.0.0)\n\nSemantic capability: `physics.kinematics.projectile`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: No drag; flat ground; angle in (0,90)",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.kinematics.projectile.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.kinematics.projectile.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/force": {
      "post": {
        "operationId": "calculate_physics_dynamics_force",
        "summary": "Force (F=ma)",
        "description": "Newton second law solve for F, a, or m. (calculation_version 1.0.0)\n\nSemantic capability: `physics.dynamics.force`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Point-mass Newtonian; no relativity",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.dynamics.force.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.dynamics.force.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/reynolds": {
      "post": {
        "operationId": "calculate_physics_fluid_reynolds",
        "summary": "Reynolds Number",
        "description": "Re = ρvL/μ with laminar/turbulent pipe guidance bands. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.reynolds`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Pipe guidance bands 2300/4000; not a stability proof",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.reynolds.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.reynolds.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/colebrook": {
      "post": {
        "operationId": "calculate_physics_fluid_colebrook",
        "summary": "Colebrook Friction Factor",
        "description": "Colebrook–White Darcy friction factor f from Re and ε/D. Turbulent pipes Re≥4000. Not laminar 64/Re. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.colebrook`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Turbulent pipes Re ≥ 4000 — not laminar f=64/Re\n\nLimitation: Not a Moody-chart lookup\n\nLimitation: Does not compose Darcy–Weisbach head loss",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.colebrook.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "Re": 100000,
                  "rel_roughness": 0.0002
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.colebrook.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/darcy-weisbach": {
      "post": {
        "operationId": "calculate_physics_fluid_darcy_weisbach",
        "summary": "Darcy–Weisbach",
        "description": "Pipe head loss hf = f L v²/(2 g D) and Δp = ρ g hf from a given Darcy friction factor. Does not solve Colebrook for f. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.darcy_weisbach`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Incompressible; constant Darcy friction factor; circular pipe\n\nLimitation: Does not solve Colebrook for f\n\nLimitation: Not Hazen–Williams, not minor-loss K v²/2g\n\nLimitation: Not volumetric flow Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.darcy_weisbach.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "f": 0.02,
                  "L": 10,
                  "v": 2,
                  "D": 0.1,
                  "rho": 1000
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.darcy_weisbach.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/manning-formula": {
      "post": {
        "operationId": "calculate_physics_fluid_manning",
        "summary": "Manning formula",
        "description": "SI Manning open-channel discharge Q = (1/n) A R^{2/3} S^{1/2}. k=1. Not Q=Av, not Darcy–Weisbach, not a weir, not US customary 1.486. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.manning`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: SI only: k=1. US customary 1.486 is out of scope\n\nLimitation: Uniform open-channel flow; R=A/P\n\nLimitation: Not Q=Av identities (see /calc/physics/flow-rate)\n\nLimitation: Not Darcy–Weisbach pipe head loss\n\nLimitation: Not a weir or orifice",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.manning.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "discharge",
                  "n": 0.013,
                  "A": 1,
                  "R": 0.5,
                  "S": 0.001
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.manning.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/weir-discharge": {
      "post": {
        "operationId": "calculate_physics_fluid_weir",
        "summary": "Weir discharge",
        "description": "Thin-plate weir discharge. Rectangular Q=(2/3) C_d L √(2g) H^{3/2}. Triangular Q=(8/15) C_d √(2g) tan(θ/2) H^{5/2}. Not Manning, not Q=Av, not Darcy, not an orifice, not Francis contractions. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.weir`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Thin-plate weir; free nappe; SI g=9.80665 unless given\n\nLimitation: Rectangular: Q=(2/3) C_d L √(2g) H^{3/2}; not Francis contractions\n\nLimitation: Triangular: Q=(8/15) C_d √(2g) tan(θ/2) H^{5/2}\n\nLimitation: Not Manning, not Q=Av, not Darcy, not an orifice",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.weir.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "rectangular",
                  "L": 1,
                  "H": 0.2
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.weir.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/orifice-discharge": {
      "post": {
        "operationId": "calculate_physics_fluid_orifice",
        "summary": "Orifice discharge",
        "description": "Sharp-edged orifice. Tank Q=C_d A √(2gH). Meter Q=C_d E A_t √(2Δp/ρ) with E=1/√(1−β⁴). Not a weir, not Q=Av, not Darcy, not Manning, not compressible ISO ε. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.orifice`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Sharp-edged orifice; SI; default C_d=0.61\n\nLimitation: Tank: Q=C_d A √(2gH); not a weir H^{3/2}\n\nLimitation: Meter: Q=C_d E A_t √(2Δp/ρ); incompressible; user C_d; not ISO ε(Re)\n\nLimitation: Not weir, not Q=Av, not Darcy, not Manning",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.orifice.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "tank",
                  "d": 0.05,
                  "H": 2
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.orifice.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/pump-power": {
      "post": {
        "operationId": "calculate_physics_fluid_pump",
        "summary": "Pump power",
        "description": "Pump hydraulic and shaft power P_h=ρgQH, P=P_h/η, plus affinity Q∝ND, H∝N²D², P∝N³D³. Not an orifice, not a weir, not Q=Av, not Darcy, not NPSH. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.pump`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Incompressible pump; P_h = ρ g Q H; P = P_h/η; default ρ=1000 kg/m³; η in (0, 1]\n\nLimitation: Affinity: Q∝N D, H∝N² D², P∝N³ D³; geometrically similar; same fluid\n\nLimitation: Not orifice, not weir, not Q=Av, not Darcy, not NPSH, not a catalog curve",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.pump.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "power",
                  "Q": 0.05,
                  "H": 20,
                  "eta": 0.75
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.pump.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/npsh": {
      "post": {
        "operationId": "calculate_physics_fluid_npsh",
        "summary": "Net positive suction head",
        "description": "NPSH available: open tank (p_atm−p_v)/ρg + z − hf, or suction flange (p_s−p_v)/ρg + v_s²/2g + z_s. Optional NPSHr margin. Not pump power, not orifice, not weir, not Q=Av, not Darcy. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.npsh`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: NPSHa = (p_s − p_v)/(ρ g) + v_s²/(2g) + z_s; pressures absolute; SI\n\nLimitation: Open tank: p_s=p_atm (default 101325 Pa), z_s=z−hf, v_s=0; hf is an input\n\nLimitation: Not pump power, not orifice, not weir, not Q=Av, not Darcy, not a catalog NPSHr curve, not steam p_v(T)",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.npsh.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "p_v": 2339,
                  "z": 2,
                  "hf": 0.5
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.npsh.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/hydraulic-diameter": {
      "post": {
        "operationId": "calculate_physics_fluid_hydraulic_diameter",
        "summary": "Hydraulic diameter",
        "description": "Hydraulic diameter D_h=4A/P_w. Full circular pipe D_h=D, closed rectangular duct 2ab/(a+b), annulus D_o−D_i. Not Q=Av, not Manning Q, not Reynolds, not Darcy. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.hydraulic_diameter`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: D_h = 4 A / P_w; R = A / P_w = D_h / 4\n\nLimitation: Full circular pipe: D_h = D; closed rectangular duct: D_h = 2ab/(a+b); annulus: D_h = D_o − D_i\n\nLimitation: Not Q=Av, not Manning Q, not Reynolds, not Darcy, not a weir or orifice",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.hydraulic_diameter.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "A": 0.01,
                  "Pw": 0.4
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.hydraulic_diameter.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/hazen-williams": {
      "post": {
        "operationId": "calculate_physics_fluid_hazen_williams",
        "summary": "Hazen–Williams",
        "description": "SI Hazen–Williams circular water-pipe head loss hf=10.67 L Q^{1.852}/(C^{1.852} D^{4.87}). Invert Q, D, or C. Not Darcy, not Colebrook, not Manning, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.hazen_williams`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: SI Hazen–Williams: hf = 10.67 L Q^{1.852} / (C^{1.852} D^{4.87})\n\nLimitation: Circular full-flow water pipe; empirical C; k=10.67; not US gpm/in\n\nLimitation: Not Darcy–Weisbach, not Colebrook, not Manning, not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.hazen_williams.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "C": 120,
                  "L": 100,
                  "Q": 0.02,
                  "D": 0.2
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.hazen_williams.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/minor-loss": {
      "post": {
        "operationId": "calculate_physics_fluid_minor_loss",
        "summary": "Minor loss",
        "description": "Fitting minor loss h_m=K v²/(2g). Optional Δp=ρ g h_m. Invert K or v. Not Darcy, not Hazen–Williams, not orifice, not Q=Av, not equivalent length. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.minor_loss`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Minor loss h_m = K v² / (2g); optional Δp = ρ g h_m\n\nLimitation: K is an empirical fitting coefficient; not Darcy f, not equivalent length\n\nLimitation: Not Darcy–Weisbach, not Hazen–Williams, not orifice, not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.minor_loss.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "K": 0.5,
                  "v": 2
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.minor_loss.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/venturi": {
      "post": {
        "operationId": "calculate_physics_fluid_venturi",
        "summary": "Venturi meter",
        "description": "Incompressible venturi Q=C_d A2 √(2Δp/(ρ(1−β⁴))), β=D2/D1. Default C_d=0.98. Optional same-fluid Δh. Not an orifice wrap, not Q=Av, not Darcy, not Cv/Kv. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.venturi`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Incompressible venturi: Q = C_d A2 √(2Δp/(ρ(1−β⁴))), β=D2/D1; default C_d=0.98\n\nLimitation: Ideal Bernoulli Q_ideal uses C_d=1; optional same-fluid manometer Δh, Δp=ρ g Δh\n\nLimitation: Not an orifice plate, not Q=Av, not Darcy, not minor-loss K, not valve Cv/Kv",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.venturi.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "D1": 0.1,
                  "D2": 0.05,
                  "dP": 10000,
                  "rho": 1000
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.venturi.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/valve-flow-coefficient": {
      "post": {
        "operationId": "calculate_physics_fluid_valve_cv",
        "summary": "Valve flow coefficient",
        "description": "Incompressible liquid valve Q_m³/h=Kv √(Δp_bar/SG). Kv=0.865 Cv (IEC 60534-1). SI Q in m³/s, Δp in Pa. Not a venturi wrap, not orifice, not Q=Av, not Darcy. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.valve_cv`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Incompressible liquid valve: Q_m³/h = Kv √(Δp_bar/SG); Kv = 0.865 Cv (IEC 60534-1)\n\nLimitation: SI Q in m³/s, Δp in Pa; default SG=1 (water); not gas, not choked\n\nLimitation: Not a venturi, not an orifice, not Q=Av, not Darcy, not minor-loss K",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.valve_cv.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "Kv": 10,
                  "dP": 100000
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.valve_cv.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/chezy-formula": {
      "post": {
        "operationId": "calculate_physics_fluid_chezy",
        "summary": "Chezy formula",
        "description": "Open-channel Chezy V=C √(R S). C is Chezy C, not Manning n, not Hazen–Williams pipe C. Not Q=Av, not Darcy. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.chezy`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Open-channel Chezy: V = C √(R S); C is Chezy C, not Manning n, not Hazen–Williams C\n\nLimitation: Uniform flow; R is hydraulic radius; S is friction slope\n\nLimitation: Not Manning, not Q=Av, not Darcy, not Hazen–Williams, not a weir",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.chezy.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "C": 50,
                  "R": 1,
                  "S": 0.001
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.chezy.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/pitot-tube": {
      "post": {
        "operationId": "calculate_physics_fluid_pitot",
        "summary": "Pitot tube",
        "description": "Incompressible pitot-static v=C √(2Δp/ρ). Default C=1. Not a venturi wrap, not orifice, not Q=Av, not two-station Bernoulli. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.pitot`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Incompressible pitot-static: v = C √(2 Δp / ρ); default C=1\n\nLimitation: Δp is dynamic pressure P0 − P_static; C is a probe coefficient, not orifice C_d\n\nLimitation: Not a venturi, not an orifice, not Q=Av, not two-station Bernoulli",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.pitot.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "dP": 5000,
                  "rho": 1000
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.pitot.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/froude-number": {
      "post": {
        "operationId": "calculate_physics_fluid_froude",
        "summary": "Froude number",
        "description": "Open-channel Fr=v/√(gL). Default g=9.80665. Not Reynolds, not Manning, not Chezy, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.froude`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Froude Fr = v / √(g L); default g=9.80665 m/s²\n\nLimitation: Free-surface: Fr<1 subcritical, Fr=1 critical, Fr>1 supercritical\n\nLimitation: Not Reynolds, not Manning, not Chezy, not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.froude.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "v": 1,
                  "L": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.froude.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/weber-number": {
      "post": {
        "operationId": "calculate_physics_fluid_weber",
        "summary": "Weber number",
        "description": "We=ρv²L/σ. Not Reynolds, not Froude, not Manning, not Q=Av, not capillary Ca=μv/σ. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.weber`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Weber We = ρ v² L / σ\n\nLimitation: Inertia vs surface tension; σ is interfacial tension, not viscosity μ\n\nLimitation: Not Reynolds, not Froude, not Manning, not Q=Av, not capillary Ca=μv/σ",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.weber.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "rho": 1000,
                  "v": 1,
                  "L": 0.072,
                  "sigma": 0.072
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.weber.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/hydraulic-jump": {
      "post": {
        "operationId": "calculate_physics_fluid_hydraulic_jump",
        "summary": "Hydraulic jump",
        "description": "Rectangular sequent depths y2/y1=(√(1+8Fr₁²)−1)/2. Fr₁>1. Not a Froude wrap, not Manning, not a weir, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.hydraulic_jump`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Rectangular hydraulic jump: y2/y1 = (√(1+8 Fr₁²) − 1)/2; Fr₁ > 1\n\nLimitation: ΔE = (y2 − y1)³ / (4 y1 y2); Fr₂ = Fr₁ / (y2/y1)^{3/2}\n\nLimitation: Not a Froude wrap, not Manning, not Chezy, not a weir, not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.hydraulic_jump.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "y1": 1,
                  "Fr": 2
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.hydraulic_jump.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/hagen-poiseuille": {
      "post": {
        "operationId": "calculate_physics_fluid_poiseuille",
        "summary": "Hagen–Poiseuille",
        "description": "Laminar circular-pipe Q=πΔpD⁴/(128μL). Not Darcy f, not Colebrook, not Q=Av, not Manning. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.poiseuille`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Laminar Hagen–Poiseuille: Q = π Δp D⁴ / (128 μ L); circular, fully developed, Newtonian\n\nLimitation: Mean speed v = 4Q/(π D²) is reported, not an input\n\nLimitation: Not Darcy f, not Colebrook, not Q=Av, not Manning",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.poiseuille.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "dP": 1000,
                  "D": 0.002,
                  "L": 1,
                  "mu": 0.001
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.poiseuille.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/specific-energy": {
      "post": {
        "operationId": "calculate_physics_fluid_specific_energy",
        "summary": "Specific energy",
        "description": "Open-channel E=y+v²/(2g). Not a Froude wrap, not a hydraulic jump, not Manning, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.specific_energy`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Open-channel specific energy: E = y + v² / (2g); default g=9.80665 m/s²\n\nLimitation: Invert y = E − v²/(2g) and v = √(2g(E−y)); require E > y\n\nLimitation: Not a Froude wrap, not a hydraulic jump, not Manning, not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.specific_energy.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "y": 1,
                  "v": 2
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.specific_energy.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/critical-depth": {
      "post": {
        "operationId": "calculate_physics_fluid_critical_depth",
        "summary": "Critical depth",
        "description": "Rectangular yc=(q²/g)^{1/3}. Not a Froude wrap, not specific energy, not a hydraulic jump, not Manning, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.critical_depth`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Rectangular critical depth: yc = (q²/g)^{1/3}; q = Q/b; default g=9.80665 m/s²\n\nLimitation: Critical speed vc = √(g yc) is reported, not an input; Fr=1 is the definition, not a Froude wrap\n\nLimitation: Not a Froude wrap, not specific energy E, not a hydraulic jump, not Manning, not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.critical_depth.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "q": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.critical_depth.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/water-hammer": {
      "post": {
        "operationId": "calculate_physics_fluid_water_hammer",
        "summary": "Water hammer",
        "description": "Joukowsky Δp=ρcΔv. Not Darcy f, not minor-loss K, not Moens–Korteweg, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.water_hammer`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Joukowsky water hammer: Δp = ρ c Δv; h = Δp/(ρ g); default ρ=1000 kg/m³; default g=9.80665 m/s²\n\nLimitation: c is the given celerity, not Moens–Korteweg from bulk modulus K, D, e, E\n\nLimitation: Not Darcy f, not Colebrook, not minor-loss K, not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.water_hammer.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "c": 1000,
                  "dV": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.water_hammer.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/wave-celerity": {
      "post": {
        "operationId": "calculate_physics_fluid_wave_celerity",
        "summary": "Wave celerity",
        "description": "Korteweg–Hall c=√[(K/ρ)/(1+(K D)/(E e))]. Not Joukowsky Δp, not Darcy f, not minor-loss K, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.wave_celerity`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Korteweg–Hall wave celerity: c = √[(K/ρ)/(1+(K D)/(E e))]; default ρ=1000 kg/m³; thin wall; ψ=1\n\nLimitation: K is fluid bulk modulus, E is wall Young’s modulus; not Joukowsky Δp=ρcΔv\n\nLimitation: Not Darcy f, not minor-loss K, not Q=Av, not Y=(F/A)/(ΔL/L0)",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.wave_celerity.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "K": 2200000000,
                  "D": 1,
                  "e": 0.01,
                  "E": 200000000000
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.wave_celerity.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/pipe-period": {
      "post": {
        "operationId": "calculate_physics_fluid_pipe_period",
        "summary": "Pipe period",
        "description": "T=2L/c. Not Joukowsky Δp, not Korteweg–Hall c from K/D/e/E, not Darcy f, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.pipe_period`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Pipe period T = 2L/c; c is a given celerity, not Korteweg–Hall from K, D, e, E\n\nLimitation: Sudden-closure Joukowsky applies when valve time t < T; this page computes T, not Δp\n\nLimitation: Not Joukowsky Δp=ρcΔv, not Darcy f, not minor-loss K, not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.pipe_period.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "L": 1000,
                  "c": 1000
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.pipe_period.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cavitation-number": {
      "post": {
        "operationId": "calculate_physics_fluid_cavitation",
        "summary": "Cavitation number",
        "description": "σ=(p−p_v)/(½ρv²). Not NPSH, not Thoma NPSH/H, not Weber, not Euler Eu=Δp/(ρv²). (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.cavitation`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Cavitation number σ = (p − p_v) / (½ ρ v²); default ρ=1000 kg/m³; p and p_v absolute Pa\n\nLimitation: Not NPSH head, not Thoma σ_Th=NPSH/H, not Weber We=ρv²L/σ, not Euler Eu=Δp/(ρ v²)\n\nLimitation: Not Reynolds, not capillary Ca=μv/σ, not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.cavitation.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "p": 150000,
                  "p_v": 50000,
                  "v": 10
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.cavitation.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/sudden-expansion": {
      "post": {
        "operationId": "calculate_physics_fluid_sudden_expansion",
        "summary": "Sudden expansion",
        "description": "Borda–Carnot h=(v1−v2)²/(2g). Not minor-loss K given, not Darcy f, not orifice C_d, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.sudden_expansion`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Borda–Carnot sudden expansion: h = (v1 − v2)² / (2g); K = (1 − v2/v1)² is reported, not an input\n\nLimitation: Default g=9.80665 m/s²; default ρ=1000 kg/m³ for Δp = ρ (v1−v2)² / 2; incompressible; A2 > A1\n\nLimitation: Not minor-loss K given, not Darcy f, not orifice C_d, not Q=Av, not sudden contraction",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.sudden_expansion.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "v1": 2,
                  "v2": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.sudden_expansion.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/sudden-contraction": {
      "post": {
        "operationId": "calculate_physics_fluid_sudden_contraction",
        "summary": "Sudden contraction",
        "description": "Vena-contracta h=(1/C_c−1)² v2²/(2g). Default C_c=0.62. Not expansion (v1−v2)², not minor-loss K given, not orifice C_d, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.sudden_contraction`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Vena-contracta sudden contraction: h = (1/C_c − 1)² v2² / (2g); default C_c=0.62; K is reported, not an input\n\nLimitation: Default g=9.80665 m/s²; default ρ=1000 kg/m³ for Δp = ρ K v2² / 2; incompressible; C_c in (0, 1)\n\nLimitation: Not sudden expansion (v1−v2)², not minor-loss K given, not Darcy f, not orifice C_d, not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.sudden_contraction.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "v2": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.sudden_contraction.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/gradual-expansion": {
      "post": {
        "operationId": "calculate_physics_fluid_gradual_expansion",
        "summary": "Gradual expansion",
        "description": "Conical diffuser h=k(v1−v2)²/(2g), k=2.6 sin(α). Not sudden expansion, not minor-loss K given, not orifice C_d, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.gradual_expansion`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Conical diffuser: h = k (v1 − v2)² / (2g); k = 2.6 sin(α); α is wall half-angle; k and K are reported, not inputs\n\nLimitation: Require 0 < α < arcsin(1/2.6); k=1 is sudden expansion, not this page; default g=9.80665; default ρ=1000 for Δp\n\nLimitation: Not sudden expansion, not minor-loss K given, not Darcy f, not orifice C_d, not Q=Av, not sudden contraction",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.gradual_expansion.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "v1": 2,
                  "v2": 1,
                  "alpha_deg": 7
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.gradual_expansion.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/gradual-contraction": {
      "post": {
        "operationId": "calculate_physics_fluid_gradual_contraction",
        "summary": "Gradual contraction",
        "description": "Conical contraction h=K v2²/(2g), K=0.5 sin(α)(1−v1/v2). Not sudden contraction, not gradual expansion, not minor-loss K given, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.gradual_contraction`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Conical contraction: h = K v2² / (2g); K = 0.5 sin(α) (1 − v1/v2); α is wall half-angle; k and K are reported, not inputs\n\nLimitation: Require 0 < α < 90°; α=90° is sudden contraction, not this page; default g=9.80665; default ρ=1000 for Δp; v2 > v1\n\nLimitation: Not sudden contraction (C_c), not gradual expansion (v1−v2)², not minor-loss K given, not Darcy f, not orifice C_d, not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.gradual_contraction.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "v1": 1,
                  "v2": 2,
                  "alpha_deg": 7
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.gradual_contraction.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/pipe-bend": {
      "post": {
        "operationId": "calculate_physics_fluid_pipe_bend",
        "summary": "Pipe bend",
        "description": "Circular-arc bend h=K v²/(2g), K=0.21 (θ/90)/√(R/D). Not minor-loss K given, not mitered, not Darcy, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.pipe_bend`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Circular-arc bend: h = K v² / (2g); K = 0.21 (θ/90)/√(R/D); Idelchik 90° B1 scaled linearly in θ; K is reported, not an input\n\nLimitation: Require 0 < θ ≤ 180° and R/D ≥ 1; default g=9.80665; default ρ=1000 for Δp; incompressible\n\nLimitation: Not minor-loss K given, not mitered R/D<1, not Darcy f, not orifice C_d, not Q=Av, not gradual contraction α",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.pipe_bend.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "v_m_s": 2,
                  "theta_deg": 90,
                  "rd": 2
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.pipe_bend.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/mitered-bend": {
      "post": {
        "operationId": "calculate_physics_fluid_mitered_bend",
        "summary": "Mitered bend",
        "description": "Sharp miter h=K v²/(2g), K=n [sin²(δ/2)+2 sin⁴(δ/2)], δ=θ/n. Not circular-arc R/D, not minor-loss K given, not Crane f_T, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.mitered_bend`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Sharp segmented miter: h = K v² / (2g); K = n [sin²(δ/2) + 2 sin⁴(δ/2)], δ = θ/n; K is reported, not an input\n\nLimitation: Require n ≥ 1 integer, 0 < θ ≤ 180°, and each miter δ ≤ 90° (n=1 therefore θ ≤ 90°); default g=9.80665; default ρ=1000 for Δp; incompressible\n\nLimitation: Not circular-arc R/D, not minor-loss K given, not Crane f_T, not Darcy f, not orifice C_d, not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.mitered_bend.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "v_m_s": 2,
                  "theta_deg": 90,
                  "n_miters": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.mitered_bend.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/pipe-entrance": {
      "post": {
        "operationId": "calculate_physics_fluid_pipe_entrance",
        "summary": "Pipe entrance",
        "description": "Geometric inlet h=K v²/(2g): flush K=0.5, reentrant K=0.8, rounded K=0.5/[1+36(rᵢ/D)^1.2]. Not catalog K, not circular-arc R/D, not mitered n, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.pipe_entrance`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Geometric pipe inlet: h = K v² / (2g); flush K=0.5, reentrant K=0.8, rounded K=0.5/[1+36(rᵢ/D)^1.2]; K is reported, not an input\n\nLimitation: Require kind flush|reentrant|rounded; rounded needs 0 < rᵢ/D ≤ 1; default g=9.80665; default ρ=1000 for Δp; incompressible; from a large reservoir\n\nLimitation: Not catalog minor-loss K given, not circular-arc R/D, not mitered n, not Darcy f, not orifice C_d, not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.pipe_entrance.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "v_m_s": 2,
                  "kind": "flush"
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.pipe_entrance.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/pipe-exit": {
      "post": {
        "operationId": "calculate_physics_fluid_pipe_exit",
        "summary": "Pipe exit",
        "description": "Pipe into a large reservoir h=K v²/(2g) with K=1. Not catalog K, not pipe-entrance geometry, not sudden expansion (v1−v2)², not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.pipe_exit`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Pipe exit into a large reservoir: h = K v² / (2g) with K=1; kinetic energy is dissipated; K is reported, not an input\n\nLimitation: Default g=9.80665; default ρ=1000 for Δp; incompressible; one mean speed in the pipe; exit geometry does not change K\n\nLimitation: Not catalog minor-loss K given, not pipe-entrance flush/reentrant/rounded, not sudden expansion (v1−v2)², not Darcy f, not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.pipe_exit.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "v_m_s": 2
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.pipe_exit.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/pipe-tee": {
      "post": {
        "operationId": "calculate_physics_fluid_pipe_tee",
        "summary": "Pipe tee",
        "description": "Equal-area sharp 90° T h=K v_c²/(2g) from dividing/combining and branch/run split. Not catalog K, not circular-arc, not mitered, not entrance/exit, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.pipe_tee`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Equal-area sharp 90° T: h = K v_c² / (2g); K referenced to common-channel speed; K is reported, not an input\n\nLimitation: Dividing: branch K=1+q², run K=0.4(1−q)². Combining: branch K=1+q², run K=1.55q−q². q=Q_path/Q_c in [0,1]; default g=9.80665; default ρ=1000 for Δp\n\nLimitation: Not catalog minor-loss K given, not circular-arc R/D, not mitered n, not pipe-entrance geometry, not pipe-exit K=1, not a non-90° wye, not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.pipe_tee.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "v_m_s": 2,
                  "kind": "dividing",
                  "path": "branch",
                  "q_ratio": 0.5
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.pipe_tee.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/pipe-wye": {
      "post": {
        "operationId": "calculate_physics_fluid_pipe_wye",
        "summary": "Pipe wye",
        "description": "Equal-area sharp wye h=K v_c²/(2g) from α∈(0,90°), dividing/combining, and branch/run split. Not a 90° tee, not catalog K, not circular-arc, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.pipe_wye`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Equal-area sharp wye: h = K v_c² / (2g); K referenced to common-channel speed; α ∈ (0, 90°); K is reported, not an input\n\nLimitation: Branch K=1+q²−2q cos α. Dividing run K=0.4(1−q)². Combining run K=1−q²−2q(1−q)cos α. q=Q_path/Q_c in [0,1]; default g=9.80665; default ρ=1000 for Δp\n\nLimitation: Not a 90° tee, not catalog minor-loss K given, not circular-arc R/D, not mitered n, not pipe-entrance geometry, not pipe-exit K=1, not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.pipe_wye.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "v_m_s": 2,
                  "kind": "dividing",
                  "path": "branch",
                  "q_ratio": 0.5,
                  "alpha_deg": 45
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.pipe_wye.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/pipe-cross": {
      "post": {
        "operationId": "calculate_physics_fluid_pipe_cross",
        "summary": "Pipe cross",
        "description": "Equal-area sharp 90° four-way h=K v_c²/(2g) from dividing/combining and branch/through split with equal opposite laterals. Not a 90° tee, not a wye, not catalog K, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.pipe_cross`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Equal-area sharp 90° four-way cross: h = K v_c² / (2g); K referenced to common-channel speed; two opposite laterals are equal; K is reported, not an input\n\nLimitation: Dividing: branch K=(1+q)², run K=0.4(1−q)². Combining: branch K=1+q²−4(1−2q)²/(2−q), run K=1+q²−q²/[1+q(0.75+0.25q)²]. Branch q≤0.5; default g=9.80665; default ρ=1000 for Δp\n\nLimitation: Not a 90° tee, not a non-90° wye, not catalog minor-loss K given, not circular-arc R/D, not mitered n, not pipe-entrance geometry, not pipe-exit K=1, not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.pipe_cross.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "v_m_s": 2,
                  "kind": "dividing",
                  "path": "branch",
                  "q_ratio": 0.5
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.pipe_cross.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/concentric-reducer": {
      "post": {
        "operationId": "calculate_physics_fluid_concentric_reducer",
        "summary": "Concentric reducer",
        "description": "Area-ratio reducer h=K v₂²/(2g) with K=0.5(1−A₂/A₁) referenced to downstream speed. Not sudden expansion, not gradual contraction α, not C_c, not catalog K, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.concentric_reducer`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Concentric reducer: h = K v₂² / (2g); K = 0.5 (1 − A₂/A₁); K referenced to downstream speed; K is reported, not an input\n\nLimitation: A₂/A₁ in (0, 1); default g=9.80665; default ρ=1000 for Δp; incompressible; geometry from area_ratio or A1+A2 or D1+D2\n\nLimitation: Not sudden expansion (v1−v2)², not gradual contraction α, not vena-contracta C_c, not catalog minor-loss K given, not a four-way cross, not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.concentric_reducer.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "v_m_s": 2,
                  "area_ratio": 0.5
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.concentric_reducer.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/iso-nozzle": {
      "post": {
        "operationId": "calculate_physics_fluid_iso_nozzle",
        "summary": "ISO 5167 nozzle",
        "description": "ISO 5167-3 ISA 1932 nozzle Q=C E A2 √(2Δp/ρ) with C from β and Re_D. Not a venturi wrap with C_d=0.98, not orifice C_d=0.61, not Q=Av, not Darcy. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.iso_nozzle`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: ISO 5167-3 ISA 1932 nozzle: Q = C E A2 √(2Δp/ρ); C from β and Re_D; incompressible ε=1; C is reported, not an input\n\nLimitation: C = 0.9900 − 0.2262 β^4.1 − (0.00175 β² − 0.0033 β^4.15)(10^6/Re_D)^1.15; β∈[0.30,0.80]; Re_D∈[7e4,1e7]; D≥50 mm\n\nLimitation: Not a venturi wrap with given C_d=0.98, not orifice C_d=0.61, not Q=Av, not Darcy f, not compressible ε",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.iso_nozzle.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "D1": 0.1,
                  "D2": 0.05,
                  "Re_D": 1000000,
                  "dP": 10000,
                  "rho": 1000
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.iso_nozzle.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/iso-orifice": {
      "post": {
        "operationId": "calculate_physics_fluid_iso_orifice",
        "summary": "ISO 5167 orifice plate",
        "description": "ISO 5167-2 orifice plate Q=C E A2 √(2Δp/ρ) with Reader–Harris/Gallagher C from β, Re_D, and tapping. Not tank orifice C_d A √(2gH), not given C_d=0.61, not ISA 1932, not venturi C_d=0.98, not Q=Av, not Darcy. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.iso_orifice`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: ISO 5167-2 orifice plate: Q = C E A2 √(2Δp/ρ); Reader–Harris/Gallagher C from β, Re_D, and tapping; incompressible ε=1; C is reported, not an input\n\nLimitation: Corner tappings default (L1=L2′=0); flange L1=L2′=25.4 mm/D; β∈[0.10,0.75]; D∈[50 mm,1000 mm]; d≥12.5 mm; Re_D≥5000 (β≤0.56) or 16000 β² (β>0.56)\n\nLimitation: Not tank orifice C_d A √(2gH), not given C_d=0.61, not ISA 1932 nozzle, not venturi C_d=0.98, not Q=Av, not Darcy f, not D-D/2 tappings, not compressible ε",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.iso_orifice.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "D": 0.1,
                  "d": 0.05,
                  "Re_D": 1000000,
                  "dP": 10000,
                  "rho": 1000
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.iso_orifice.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/iso-venturi": {
      "post": {
        "operationId": "calculate_physics_fluid_iso_venturi",
        "summary": "ISO 5167 Venturi tube",
        "description": "ISO 5167-4 classical Venturi tube Q=C E A2 √(2Δp/ρ) with C from convergent type. Not given C_d=0.98, not ISA 1932, not RHG orifice, not Q=Av, not Darcy. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.iso_venturi`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: ISO 5167-4 classical Venturi tube: Q = C E A2 √(2Δp/ρ); C from convergent type; β and Re_D bound the ISO envelope; incompressible ε=1; C is reported, not an input\n\nLimitation: Machined C=0.995, D∈[50 mm,250 mm], β∈[0.40,0.75], Re_D∈[2e5,1e6]. Rough-welded C=0.985. As-cast C=0.984\n\nLimitation: Not a given C_d=0.98, not ISA 1932 nozzle, not RHG orifice, not Q=Av, not Darcy f, not compressible ε",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.iso_venturi.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "D1": 0.1,
                  "D2": 0.05,
                  "Re_D": 500000,
                  "dP": 10000,
                  "rho": 1000
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.iso_venturi.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/long-radius-nozzle": {
      "post": {
        "operationId": "calculate_physics_fluid_long_radius_nozzle",
        "summary": "ISO 5167 long-radius nozzle",
        "description": "ISO 5167-3 long-radius nozzle Q=C E A2 √(2Δp/ρ) with C=0.9965−0.00653 β^{0.5}. Not ISA 1932, not given C_d=0.98, not RHG orifice, not ISO 5167-4 type C, not Q=Av, not Darcy. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.long_radius_nozzle`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: ISO 5167-3 long-radius nozzle: Q = C E A2 √(2Δp/ρ); C = 0.9965 − 0.00653 β^{0.5}; incompressible ε=1; C is reported, not an input\n\nLimitation: C from β, not Re_D; Re_D∈[1e4,1e7] is the ISO envelope; β∈[0.20,0.80]; D∈[50 mm, 630 mm]\n\nLimitation: Not ISA 1932 C(β,Re), not given C_d=0.98, not RHG orifice, not ISO 5167-4 type C, not Q=Av, not Darcy f, not compressible ε",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.long_radius_nozzle.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "D1": 0.1,
                  "D2": 0.05,
                  "Re_D": 1000000,
                  "dP": 10000,
                  "rho": 1000
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.long_radius_nozzle.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/iso-cone": {
      "post": {
        "operationId": "calculate_physics_fluid_iso_cone",
        "summary": "ISO 5167 cone meter",
        "description": "ISO 5167-5 uncalibrated cone Q=C E A √(2Δp/ρ) with C=0.82 and β=√(1−(d_c/D)²). Not ISA 1932, not RHG orifice, not ISO 5167-4 type C, not long-radius, not given C_d, not Q=Av, not Darcy. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.iso_cone`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: ISO 5167-5 uncalibrated cone: Q = C E A √(2Δp/ρ); C=0.82; β=√(1−(d_c/D)²); A=(π/4) D² β² annulus; incompressible ε=1; C is reported, not an input\n\nLimitation: Uncalibrated C=0.82; Re_D∈[8e4, 1.2e7] is the ISO envelope; β∈[0.45,0.75]; D∈[50 mm, 500 mm]; larger cone lowers β\n\nLimitation: Not ISA 1932 C(β,Re), not RHG orifice, not ISO 5167-4 type C, not long-radius C(β), not given C_d, not Q=Av, not Darcy f, not compressible ε",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.iso_cone.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "D": 0.1,
                  "d_c": 0.08,
                  "Re_D": 1000000,
                  "dP": 10000,
                  "rho": 1000
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.iso_cone.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/iso-wedge": {
      "post": {
        "operationId": "calculate_physics_fluid_iso_wedge",
        "summary": "ISO 5167 wedge meter",
        "description": "ISO 5167-6 uncalibrated wedge Q=C E A √(2Δp/ρ) with C=0.77−0.09β and β from circular-segment h/D. Not cone C=0.82, not ISA 1932, not RHG orifice, not ISO 5167-4 type C, not long-radius, not given C_d, not Q=Av, not Darcy. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.iso_wedge`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: ISO 5167-6 uncalibrated wedge: Q = C E A √(2Δp/ρ); C=0.77−0.09β; β from circular-segment h/D; A=(π/4) D² β²; incompressible ε=1; C is reported, not an input\n\nLimitation: C from β, not Re_D; Re_D∈[1e4, 9e6] is the ISO envelope; h/D∈[0.20,0.60]; β∈[0.377,0.791]; D∈[50 mm, 600 mm]; h/D=0.5 → β=√0.5\n\nLimitation: Not cone C=0.82, not ISA 1932 C(β,Re), not RHG orifice, not ISO 5167-4 type C, not long-radius C(β), not given C_d, not Q=Av, not Darcy f, not compressible ε",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.iso_wedge.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "D": 0.1,
                  "h": 0.05,
                  "Re_D": 1000000,
                  "dP": 10000,
                  "rho": 1000
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.iso_wedge.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/elbow-meter": {
      "post": {
        "operationId": "calculate_physics_fluid_elbow_meter",
        "summary": "Elbow flow meter",
        "description": "90° elbow tap meter Q=C A √(2Δp/ρ) with C=√((R/D)/2). Not pipe-bend K, not Pitot C=1, not venturi, not ISO 5167-6 wedge, not Q=Av, not Darcy. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.elbow_meter`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: 90° elbow tap meter: Q = C A √(2Δp/ρ); C=√((R/D)/2); A=(π/4)D²; inner/outer radius taps; incompressible; C is reported, not an input\n\nLimitation: R/D∈[1.0, 3.0]; D∈[25 mm, 600 mm]; 90° only; C from R/D, not a given Pitot C=1\n\nLimitation: Not pipe-bend K=0.21 (θ/90)/√(R/D), not Pitot v=C√(2Δp/ρ), not venturi, not ISO 5167-6 wedge, not Q=Av, not Darcy f",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.elbow_meter.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "D": 0.1,
                  "R": 0.15,
                  "dP": 10000,
                  "rho": 1000
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.elbow_meter.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/broad-crested-weir": {
      "post": {
        "operationId": "calculate_physics_fluid_broad_crested_weir",
        "summary": "Broad-crested weir",
        "description": "Rectangular broad-crested weir Q=C_d (2/3)^{3/2} b √g H^{3/2}, default C_d=0.85. Not thin-plate weir, not Manning, not Q=Av, not orifice, not Francis 3.33. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.broad_crested_weir`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Rectangular broad-crested weir: Q = C_d (2/3)^{3/2} b √g H^{3/2}; default C_d=0.85; modular free nappe; C_d is an input in (0, 1]\n\nLimitation: H is upstream head above the crest, not energy head; optional L_c envelope H/L_c∈[0.08,0.50]; optional P with H/P≤1.5\n\nLimitation: Not thin-plate (2/3) C_d L √(2g) H^{3/2}, not Manning n, not Q=Av, not orifice C_d A √(2gH), not Francis 3.33 L H^{3/2}",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.broad_crested_weir.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "b": 1,
                  "H": 0.2
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.broad_crested_weir.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/parshall-flume": {
      "post": {
        "operationId": "calculate_physics_fluid_parshall_flume",
        "summary": "Parshall flume",
        "description": "USBR 1–8 ft Parshall free-flow Q from throat W and gage Ha, n=1.522 W_ft^{0.026}. Not thin-plate weir, not broad-crested weir, not Manning, not Q=Av, not orifice. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.parshall_flume`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: USBR 1–8 ft Parshall free flow: Q_cfs = 4 W_ft Ha_ft^n, n=1.522 W_ft^{0.026}; SI W, Ha, Q; n is reported, not an input\n\nLimitation: Ha is the specified-gage upstream head, not weir crest head H; W∈[0.3048 m, 2.4384 m]; Ha∈[0.03048 m, 1.6764 m]; free nappe only\n\nLimitation: Not thin-plate (2/3) C_d L √(2g) H^{3/2}, not broad-crested (2/3)^{3/2} b √g H^{3/2}, not Manning n, not Q=Av, not orifice, not submerged Hb",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.parshall_flume.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "W": 0.3048,
                  "Ha": 0.3048
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.parshall_flume.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cutthroat-flume": {
      "post": {
        "operationId": "calculate_physics_fluid_cutthroat_flume",
        "summary": "Cutthroat flume",
        "description": "Skogerboe cutthroat free-flow Q from throat W, independent length L_f, and gage Ha. Not Parshall, not thin-plate weir, not broad-crested weir, not Manning, not Q=Av, not orifice. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.cutthroat_flume`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Skogerboe cutthroat free flow: Q_cfs = C Ha_ft^n; C=3.50 W_ft^{1.025} (L_f/3 ft)^{0.020}; n=1.56 (L_f/3 ft)^{0.026}; SI W, L_f, Ha, Q; C and n are reported, not inputs\n\nLimitation: No diverging section; L_f is independent flume length, not weir crest L; W < L_f; L_f∈[0.4572 m, 2.7432 m]; W∈[0.0508 m, 1.8288 m]; Ha∈[0.03048 m, 1.2192 m]\n\nLimitation: Not Parshall 4 W_ft Ha^{1.522 W^{0.026}}, not thin-plate weir, not broad-crested (2/3)^{3/2} √g, not Manning n, not Q=Av, not orifice, not submerged Hb",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.cutthroat_flume.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "W": 0.3048,
                  "L_f": 0.9144,
                  "Ha": 0.3048
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.cutthroat_flume.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/sluice-gate": {
      "post": {
        "operationId": "calculate_physics_fluid_sluice_gate",
        "summary": "Sluice gate",
        "description": "Swamee 1992 free-flow undershot sluice Q from opening a, width b, and upstream depth y1. Not tank orifice, not thin-plate weir, not a flume, not Manning, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.sluice_gate`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Swamee 1992 free-flow undershot sluice: Q = C_d a b √(2g y1); C_d = 0.611 [(y1−a)/y1]^{0.072}; SI a, b, y1, Q; C_d is reported, not an input\n\nLimitation: Gate opening a is not orifice area A; y1 is upstream depth, not weir H; a/y1∈[0.05, 0.65]; y1 > a; free flow only\n\nLimitation: Not thin-plate weir, not tank orifice C_d A √(2gH), not a flume, not Manning n, not Q=Av, not submerged y2",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.sluice_gate.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "a": 0.2,
                  "b": 1,
                  "y1": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.sluice_gate.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/ogee-spillway": {
      "post": {
        "operationId": "calculate_physics_fluid_ogee_spillway",
        "summary": "Ogee spillway",
        "description": "USBR high-overflow ogee Q from crest L, head H, and design head Hd. Not thin-plate weir, not broad-crested weir, not sluice, not Manning, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.ogee_spillway`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: USBR high-overflow ogee: Q_cfs = C L_ft H_ft^{3/2}; C = 3.98 (H/Hd)^{0.12}; SI L, H, Hd, Q; C is reported, not an input\n\nLimitation: H/Hd∈[0.2, 1.33]; optional P with P/Hd≥1.7; vertical upstream face; free overflow\n\nLimitation: Not thin-plate (2/3) C_d L √(2g) H^{3/2}, not broad-crested (2/3)^{3/2} b √g H^{3/2}, not sluice, not Manning n, not Q=Av, not Francis 3.33",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.ogee_spillway.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "L": 1,
                  "H": 1,
                  "Hd": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.ogee_spillway.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/side-weir": {
      "post": {
        "operationId": "calculate_physics_fluid_side_weir",
        "summary": "Side weir",
        "description": "Borghei 1999 sharp-crested side weir Q from B, L, y1, p, and Q1. Not frontal thin-plate weir, not ogee, not sluice, not Manning, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.side_weir`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Borghei 1999 sharp-crested side weir: Q=(2/3) C_d L √(2g) (y1−p)^{3/2}; C_d=0.71−0.41 Fr₁−0.22(p/y1); SI B, L, y1, p, Q1, Q; C_d is reported\n\nLimitation: Rectangular channel; subcritical Fr₁∈[0.1, 0.9]; p/y1∈[0.1, 0.9]; y1>p; free lateral overflow; De Marchi-type C_d, not a given frontal C_d\n\nLimitation: Not thin-plate frontal weir, not ogee Hd, not sluice a b √(2g y1), not Manning n, not Q=Av, not submerged y2",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.side_weir.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "B": 1,
                  "L": 2,
                  "y1": 0.5,
                  "p": 0.2,
                  "Q1": 0.4
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.side_weir.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/normal-depth": {
      "post": {
        "operationId": "calculate_physics_fluid_normal_depth",
        "summary": "Normal depth",
        "description": "Rectangular uniform-flow yn from SI Manning with A=b yn and R=b yn/(b+2 yn). Not Manning A,R; not critical depth yc; not specific energy E; not Chezy C; not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.normal_depth`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Rectangular uniform-flow normal depth: invert SI Manning Q=(1/n) A R^{2/3} S^{1/2} with A=b yn, R=b yn/(b+2 yn); yn is unknown; n, S, b given\n\nLimitation: yn/b∈[0.01, 10]; n∈[0.008, 0.15]; S∈[1e-6, 0.1]; SI k=1; geometry is rectangular width b, not A and R\n\nLimitation: Not Manning Q with given A,R; not critical depth yc=(q²/g)^{1/3}; not specific energy E; not Chezy C; not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.normal_depth.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "Q": 1.32807,
                  "b": 2,
                  "n": 0.03,
                  "S": 0.001
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.normal_depth.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/submerged-weir": {
      "post": {
        "operationId": "calculate_physics_fluid_submerged_weir",
        "summary": "Submerged weir",
        "description": "Villemonte rectangular submerged weir: Qs=Qf [1−(H2/H1)^{1.5}]^{0.385} on thin-plate Qf. Not free-flow H only, not ogee Hd, not side weir B+Q1, not Manning n, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.submerged_weir`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Villemonte 1947 rectangular submerged weir: Qs = Qf [1−(H2/H1)^{1.5}]^{0.385}; Qf=(2/3) C_d L √(2g) H1^{3/2}; default C_d=0.62; n=1.5 is not Manning n\n\nLimitation: Requires H1 and H2; H2/H1∈[0.20, 0.95]; H1>H2>0; C_d optional in (0, 1]; SI; rectangular thin-plate only\n\nLimitation: Not free-flow thin-plate H only, not ogee Hd, not side weir B+Q1, not Manning n, not Q=Av, not V-notch",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.submerged_weir.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "L": 1,
                  "H1": 0.3,
                  "H2": 0.15
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.submerged_weir.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/drowned-sluice": {
      "post": {
        "operationId": "calculate_physics_fluid_drowned_sluice",
        "summary": "Drowned sluice",
        "description": "Swamee 1992 drowned undershot sluice: Q=C_d a b √(2g y1) with C_d from y1, a, and y2. Not free-flow sluice, not Villemonte H1+H2, not tank orifice, not Manning n, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.drowned_sluice`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Swamee 1992 drowned undershot sluice: Q=C_d a b √(2g y1); C_d=θ·0.611[(y1−a)/(y1+15a)]^{0.072}; θ from y1, y2, a; C_d is reported\n\nLimitation: Requires y2; drowned when y1 < 0.81 y2 (y2/a)^{0.72}; a/y1∈[0.05, 0.65]; y1>y2>a; SI\n\nLimitation: Not free-flow sluice without y2, not Villemonte H1+H2 weir, not tank orifice C_d A √(2gH), not Manning n, not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.drowned_sluice.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "a": 0.2,
                  "b": 1,
                  "y1": 1,
                  "y2": 0.8
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.drowned_sluice.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/critical-slope": {
      "post": {
        "operationId": "calculate_physics_fluid_critical_slope",
        "summary": "Critical slope",
        "description": "Rectangular Sc such that yn=yc. SI Manning at y=yc. Not Manning A,R; not normal-depth yn invert; not critical-depth yc as the product; not Chezy C; not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.critical_slope`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Rectangular critical slope: Sc such that yn=yc; SI Manning at y=yc; yc=(q²/g)^{1/3}; Sc=[n Q/(A R^{2/3})]^2 with A=b yc, R=b yc/(b+2 yc)\n\nLimitation: yc/b∈[0.2, 10] so Sc(yc) is one-to-one; n∈[0.008, 0.15]; Sc∈[1e-6, 0.1]; SI k=1; default g=9.80665\n\nLimitation: Not Manning Q from A,R,S; not normal-depth yn invert; not critical-depth yc as the product; not Chezy C; not Q=Av; not US k=1.486; not trapezoid z",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.critical_slope.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "Q": 3.4546,
                  "b": 2,
                  "n": 0.03
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.critical_slope.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/specific-force": {
      "post": {
        "operationId": "calculate_physics_fluid_specific_force",
        "summary": "Specific force",
        "description": "Rectangular M=Q²/(gA)+A ȳ with ȳ=y/2. Not hydraulic jump y2, not specific energy E, not Froude as the product, not Manning n, not Q=Av, not critical slope Sc. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.specific_force`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Rectangular specific force: M = Q²/(gA) + A ȳ with A=b y and ȳ=y/2; SI; default g=9.80665; M is m²\n\nLimitation: Unknown is M (force mode) or y (depth invert, subcritical y>yc by default); conjugate y_alt is reported; Fr is reported not an input\n\nLimitation: Not hydraulic jump y2 from Fr₁>1; not specific energy E=y+v²/(2g); not Froude as the product; not Manning n; not Q=Av; not critical slope Sc",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.specific_force.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "Q": 2,
                  "b": 2,
                  "y": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.specific_force.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/alternate-depth": {
      "post": {
        "operationId": "calculate_physics_fluid_alternate_depth",
        "summary": "Alternate depth",
        "description": "Rectangular both y from E, Q, b with E=y+Q²/(2gA²). Not specific energy E from y+v, not specific force M, not hydraulic jump y2, not critical depth yc as the product, not Manning n, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.alternate_depth`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Rectangular alternate depths: E = y + Q²/(2g A²) with A=b y; both y_sub>yc and y_super<yc at the same E, Q, b; SI; default g=9.80665\n\nLimitation: Unknown is the pair (depths mode) or E (energy invert from one y); E>Ec=1.5 yc; Fr is reported not an input\n\nLimitation: Not specific energy E from y+v; not specific force M; not hydraulic jump y2 from Fr₁>1; not critical-depth yc as the product; not Manning n; not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.alternate_depth.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "E": 1.05099,
                  "Q": 2,
                  "b": 2
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.alternate_depth.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/trapezoidal-critical-depth": {
      "post": {
        "operationId": "calculate_physics_fluid_trapezoid_critical_depth",
        "summary": "Trapezoidal critical depth",
        "description": "Trapezoid Fr=1 from Q, b, z with Q² T = g A³, A=(b+z y)y, T=b+2 z y. Not rectangular yc=(q²/g)^{1/3}, not yn, not E, not Manning Q, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.trapezoid_critical_depth`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Trapezoid critical depth: Fr=1 with A=(b+z yc) yc and T=b+2 z yc so Q² T = g A³; SI; default g=9.80665; z>0 is run/rise\n\nLimitation: Unknown is yc (depth mode) or Q (discharge invert); vc=√(g A/T) is reported; Fr=1 is the definition, not a Froude wrap\n\nLimitation: Not rectangular yc=(q²/g)^{1/3}; not normal-depth yn; not specific energy E; not Manning n; not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.trapezoid_critical_depth.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "Q": 2,
                  "b": 2,
                  "z": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.trapezoid_critical_depth.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/trapezoidal-normal-depth": {
      "post": {
        "operationId": "calculate_physics_fluid_trapezoid_normal_depth",
        "summary": "Trapezoidal normal depth",
        "description": "Trapezoid uniform-flow yn from SI Manning with A=(b+z y)y and P=b+2 y √(1+z²). Not rectangular yn, not trapezoid yc, not Manning A,R, not Chezy C, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.trapezoid_normal_depth`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Trapezoid uniform-flow normal depth: invert SI Manning Q=(1/n) A R^{2/3} S^{1/2} with A=(b+z yn) yn, P=b+2 yn √(1+z²), R=A/P; yn is unknown; n, S, b, z given\n\nLimitation: yn/b∈[0.01, 10]; n∈[0.008, 0.15]; S∈[1e-6, 0.1]; z∈(0, 10]; SI k=1; geometry is b and z, not A and R\n\nLimitation: Not rectangular yn; not trapezoid yc; not Manning Q with given A,R; not Chezy C; not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.trapezoid_normal_depth.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "Q": 2.30256,
                  "b": 2,
                  "z": 1,
                  "n": 0.03,
                  "S": 0.001
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.trapezoid_normal_depth.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/trapezoidal-specific-energy": {
      "post": {
        "operationId": "calculate_physics_fluid_trapezoid_specific_energy",
        "summary": "Trapezoidal specific energy",
        "description": "Trapezoid E=y+Q²/(2gA²) with A=(b+z y)y. Not rectangular E=y+v²/(2g), not trapezoid yc, not trapezoid yn, not Manning A,R, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.trapezoid_specific_energy`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Trapezoid specific energy: E=y+Q²/(2g A²) with A=(b+z y)y; SI; default g=9.80665; z>0 is run/rise\n\nLimitation: Unknown is E (energy mode) or Q (discharge invert); v=Q/A is reported; not y invert (that is alternate depth)\n\nLimitation: Not rectangular E=y+v²/(2g); not trapezoid yc; not trapezoid yn; not Manning A,R; not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.trapezoid_specific_energy.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "y": 1,
                  "Q": 2,
                  "b": 2,
                  "z": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.trapezoid_specific_energy.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/trapezoidal-alternate-depth": {
      "post": {
        "operationId": "calculate_physics_fluid_trapezoid_alternate_depth",
        "summary": "Trapezoidal alternate depth",
        "description": "Trapezoid both y from E, Q, b, z with E=y+Q²/(2gA²), A=(b+z y)y. Not rectangular alternate depth, not trapezoid E, not trapezoid yc, not trapezoid yn, not Manning n, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.trapezoid_alternate_depth`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Trapezoid alternate depths: E = y + Q²/(2g A²) with A=(b+z y)y; both y_sub>yc and y_super<yc at the same E, Q, b, z; SI; default g=9.80665; z>0 is run/rise\n\nLimitation: Unknown is the pair (depths mode) or E (energy invert from one y); E>Ec=yc+D_c/2; Fr is reported not an input\n\nLimitation: Not rectangular alternate depth; not trapezoid E from y+Q; not trapezoid yc as the product; not trapezoid yn; not Manning n; not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.trapezoid_alternate_depth.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "E": 1.02266,
                  "Q": 2,
                  "b": 2,
                  "z": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.trapezoid_alternate_depth.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/trapezoidal-hydraulic-jump": {
      "post": {
        "operationId": "calculate_physics_fluid_trapezoid_hydraulic_jump",
        "summary": "Trapezoidal hydraulic jump",
        "description": "Trapezoid sequent depths from M=Q²/(gA)+A ȳ on A=(b+z y)y. Not rectangular Bélanger, not trapezoid alternate E-pair, not trapezoid yc, not trapezoid yn, not Manning n, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.trapezoid_hydraulic_jump`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Trapezoid hydraulic jump: sequent depths from M=Q²/(gA)+A ȳ with A=(b+z y)y and ȳ=y(3b+2zy)/(6(b+zy)); SI; default g=9.80665; z>0 is run/rise; Fr₁>1\n\nLimitation: Unknown is y2 (sequent) or y1 (upstream invert) or ΔE (energy); Fr is reported not an input; not Bélanger y2/y1=(√(1+8Fr₁²)−1)/2\n\nLimitation: Not rectangular sequent depths; not trapezoid alternate E-pair; not trapezoid yc; not trapezoid yn; not Manning n; not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.trapezoid_hydraulic_jump.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "y1": 0.25,
                  "Q": 2,
                  "b": 2,
                  "z": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.trapezoid_hydraulic_jump.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/trapezoidal-specific-force": {
      "post": {
        "operationId": "calculate_physics_fluid_trapezoid_specific_force",
        "summary": "Trapezoidal specific force",
        "description": "Trapezoid specific force M = Q²/(gA) + A ȳ on A=(b+z y)y with ȳ=y(3b+2zy)/(6(b+zy)). Not rectangular ȳ=y/2, not trapezoid sequent y2, not trapezoid specific energy E, not Manning n, not Q=Av. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.trapezoid_specific_force`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Trapezoid specific force: M = Q²/(gA) + A ȳ with A=(b+z y)y and ȳ=y(3b+2zy)/(6(b+zy)); SI; default g=9.80665; M is m²; z>0 is run/rise\n\nLimitation: Unknown is M (force mode) or y (depth invert, subcritical y>yc by default); conjugate y_alt is reported; Fr is reported not an input\n\nLimitation: Not rectangular ȳ=y/2; not trapezoid sequent y2; not trapezoid specific energy E; not Manning n; not Q=Av",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.trapezoid_specific_force.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "Q": 2,
                  "b": 2,
                  "z": 1,
                  "y": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.trapezoid_specific_force.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/henderson-hasselbalch": {
      "post": {
        "operationId": "calculate_chemistry_acid_base_henderson_hasselbalch",
        "summary": "Henderson–Hasselbalch",
        "description": "Buffer pH = pKa + log10([A−]/[HA]). Accepts pKa or Ka. Not ICE and not pH = −log10[H+]. (calculation_version 1.0.1)\n\nSemantic capability: `chemistry.acid_base.henderson_hasselbalch`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Monoprotic buffer pair as given — not ICE equilibrium\n\nLimitation: Not pH = −log10[H+]\n\nLimitation: Not activity coefficients or polyprotic",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/chemistry.acid_base.henderson_hasselbalch.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "pKa": 5,
                  "HA": 0.1,
                  "A": 0.2
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/chemistry.acid_base.henderson_hasselbalch.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/mole": {
      "post": {
        "operationId": "calculate_chemistry_mole_amount",
        "summary": "Mole",
        "description": "Amount n = m/M and N = n·N_A. N_A is CODATA 2018 exact. Not molarity and not Henderson–Hasselbalch. (calculation_version 1.0.1)\n\nSemantic capability: `chemistry.mole.amount`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Lab units g, g/mol, mol\n\nLimitation: Not molarity c=n/V or dilution C1V1=C2V2\n\nLimitation: Not ICE or Henderson–Hasselbalch\n\nLimitation: Does not rewrite /convert/chemistry pair pages",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/chemistry.mole.amount.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "from_mass",
                  "mass": 36.03,
                  "molar_mass": 18.015
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/chemistry.mole.amount.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/molarity": {
      "post": {
        "operationId": "calculate_chemistry_solution_molarity",
        "summary": "Molarity",
        "description": "Molarity c = n/V and dilution C1·V1 = C2·V2. Lab units mol, L, mol/L. Not mole n=m/M and not Henderson–Hasselbalch. (calculation_version 1.0.1)\n\nSemantic capability: `chemistry.solution.molarity`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Lab units mol, L, mol/L\n\nLimitation: Not mole n=m/M or Avogadro\n\nLimitation: Not ICE or Henderson–Hasselbalch\n\nLimitation: Dilution needs exactly one of c1, v1, c2, v2 omitted",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/chemistry.solution.molarity.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "molarity",
                  "amount": 0.5,
                  "volume": 0.25
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/chemistry.solution.molarity.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/ph": {
      "post": {
        "operationId": "calculate_chemistry_acid_base_ph",
        "summary": "pH",
        "description": "Water-ion pH and pOH identities at 25 °C: pH = −log10[H+], pOH = −log10[OH−], pH + pOH = 14. Not Henderson–Hasselbalch and not ICE. (calculation_version 1.0.1)\n\nSemantic capability: `chemistry.acid_base.ph`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Kw = 1e-14 at 25 °C (not temperature-dependent)\n\nLimitation: Not Henderson–Hasselbalch buffer pH\n\nLimitation: Not ICE, activity coefficients, or polyprotic",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/chemistry.acid_base.ph.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "ph_from_h",
                  "h": 0.001
                },
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/chemistry.acid_base.ph.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/weak-acid-equilibrium": {
      "post": {
        "operationId": "calculate_chemistry_equilibrium_weak_acid",
        "summary": "Weak-acid ICE",
        "description": "Monoprotic weak-acid ICE: HA ⇌ H+ + A− from formal C and Ka or pKa. Charge and mass balance; optional water at 25 °C. Reuses math.numerical.root. Not Henderson–Hasselbalch and not pH=−log10[H+] identities. (calculation_version 1.0.4)\n\nSemantic capability: `chemistry.equilibrium.weak_acid`.\n\nCalculation version: `1.0.4`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Monoprotic HA only; not polyprotic, not a weak base, not activity coefficients\n\nLimitation: Not Henderson–Hasselbalch (buffer pair as given)\n\nLimitation: Not the water-ion identity page pH=−log10[H+]\n\nLimitation: Kw = 1e-14 at 25 °C when mode=ice",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.4"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.4); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/chemistry.equilibrium.weak_acid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.4",
                    "examples": [
                      "1.0.4"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "ice",
                  "C": 0.1,
                  "Ka": 0.000018
                },
                "calculation_version": "1.0.4"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/chemistry.equilibrium.weak_acid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/weak-base-equilibrium": {
      "post": {
        "operationId": "calculate_chemistry_equilibrium_weak_base",
        "summary": "Weak-base ICE",
        "description": "Monoprotic weak-base ICE: B + H2O ⇌ BH+ + OH− from formal C and Kb or pKb. Charge and mass balance; optional water at 25 °C. Reuses math.numerical.root. Not Henderson–Hasselbalch and not weak-acid ICE. (calculation_version 1.0.4)\n\nSemantic capability: `chemistry.equilibrium.weak_base`.\n\nCalculation version: `1.0.4`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Monoprotic B only; not polyprotic, not a weak acid, not activity coefficients\n\nLimitation: Not Henderson–Hasselbalch (buffer pair as given)\n\nLimitation: Not weak-acid ICE HA ⇌ H+ + A−\n\nLimitation: Not the water-ion identity page pH=−log10[H+]\n\nLimitation: Kw = 1e-14 at 25 °C when mode=ice",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.4"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.4); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/chemistry.equilibrium.weak_base.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.4",
                    "examples": [
                      "1.0.4"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "ice",
                  "C": 0.1,
                  "Kb": 0.000018
                },
                "calculation_version": "1.0.4"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/chemistry.equilibrium.weak_base.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/stefan-boltzmann": {
      "post": {
        "operationId": "calculate_physics_thermo_stefan_boltzmann",
        "summary": "Stefan–Boltzmann",
        "description": "Net gray-body flux q = εσ(Th⁴−Tc⁴). Optional Q = A·q. Not Fourier/Newton heat-transfer and not a view-factor solver. (calculation_version 1.0.0)\n\nSemantic capability: `physics.thermo.stefan_boltzmann`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Gray body; no view factor (F=1)\n\nLimitation: T in kelvin\n\nLimitation: Not conduction/convection heat-transfer\n\nLimitation: Not heatsink Rth or steam",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.thermo.stefan_boltzmann.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "Th": 400,
                  "Tc": 300,
                  "epsilon": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.thermo.stefan_boltzmann.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/thermal-resistance": {
      "post": {
        "operationId": "calculate_physics_thermo_thermal_resistance",
        "summary": "Thermal resistance",
        "description": "Lumped thermal resistance. Conduction R=L/(k A), convection R=1/(h A), series ΣR, parallel 1/R=Σ1/R_i. Optional Q=ΔT/R. Not Fourier/Newton Q, not heatsink θ, not steam, not radiation. (calculation_version 1.0.0)\n\nSemantic capability: `physics.thermo.thermal_resistance`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Lumped R; SI K/W\n\nLimitation: Series R=ΣR_i; parallel 1/R=Σ1/R_i; Q=ΔT/R when ΔT is given\n\nLimitation: Not Fourier/Newton Q (see /calc/physics/heat-transfer)\n\nLimitation: Not heatsink θJC/θSA, not steam, not radiation",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.thermo.thermal_resistance.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "conduction",
                  "k": 1,
                  "A": 2,
                  "L": 0.5
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.thermo.thermal_resistance.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/composite-wall": {
      "post": {
        "operationId": "calculate_physics_thermo_composite_wall",
        "summary": "Composite wall",
        "description": "Plane composite wall from a layer list. R_i = L_i/(k_i A), optional films 1/(h A), R = R_in + ΣR_i + R_out. Optional Q=ΔT/R. Not Fourier/Newton Q, not lumped R-network, not heatsink θ, not steam, not cylindrical. (calculation_version 1.0.0)\n\nSemantic capability: `physics.thermo.composite_wall`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Plane wall; 1-D; shared A; SI K/W\n\nLimitation: R_i = L_i/(k_i A); optional films 1/(h A); Q=ΔT/R when ΔT is given\n\nLimitation: Not Fourier/Newton Q (see /calc/physics/heat-transfer)\n\nLimitation: Not lumped R-network (see /calc/physics/thermal-resistance)\n\nLimitation: Not heatsink θJC/θSA, not steam, not cylindrical",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.thermo.composite_wall.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "k1": 1,
                  "L1": 0.5,
                  "k2": 0.5,
                  "L2": 0.2,
                  "A": 2
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.thermo.composite_wall.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/bernoulli": {
      "post": {
        "operationId": "calculate_physics_fluid_bernoulli",
        "summary": "Bernoulli's Equation",
        "description": "Incompressible Bernoulli along a streamline: solve P2, v2, or h2. (calculation_version 1.0.1)\n\nSemantic capability: `physics.fluid.bernoulli`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Incompressible; inviscid; steady streamline; no losses",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.bernoulli.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.bernoulli.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/specific-heat": {
      "post": {
        "operationId": "calculate_physics_thermo_specific_heat",
        "summary": "Specific Heat Capacity",
        "description": "Q = m c ΔT solve for Q, m, c, or ΔT. (calculation_version 1.0.0)\n\nSemantic capability: `physics.thermo.specific_heat`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Constant c; no phase change",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.thermo.specific_heat.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.thermo.specific_heat.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/newton-lbf": {
      "post": {
        "operationId": "calculate_units_force_newton_lbf",
        "summary": "Newton ↔ lbf",
        "description": "Force conversion with 1 lbf = 4.4482216152605 N. (calculation_version 1.0.0)\n\nSemantic capability: `units.force.newton_lbf`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Exact NIST factor",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/units.force.newton_lbf.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/units.force.newton_lbf.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/mps-kmh": {
      "post": {
        "operationId": "calculate_units_speed_mps_kmh",
        "summary": "m/s ↔ km/h",
        "description": "Speed conversion with factor 3.6. (calculation_version 1.0.0)\n\nSemantic capability: `units.speed.mps_kmh`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Non-negative speed",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/units.speed.mps_kmh.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/units.speed.mps_kmh.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/suvat": {
      "post": {
        "operationId": "calculate_physics_kinematics_suvat",
        "summary": "SUVAT Calculator",
        "description": "Constant-acceleration kinematics (SUVAT). (calculation_version 1.0.1)\n\nSemantic capability: `physics.kinematics.suvat`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Constant a; 1D",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.kinematics.suvat.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.kinematics.suvat.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/torque": {
      "post": {
        "operationId": "calculate_physics_dynamics_torque",
        "summary": "Torque Calculator",
        "description": "τ = r F sinθ. (calculation_version 1.0.0)\n\nSemantic capability: `physics.dynamics.torque`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Single force; planar",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.dynamics.torque.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.dynamics.torque.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/free-fall": {
      "post": {
        "operationId": "calculate_physics_kinematics_free_fall",
        "summary": "Free Fall Calculator",
        "description": "Free fall under constant g (optional initial velocity). (calculation_version 1.0.1)\n\nSemantic capability: `physics.kinematics.free_fall`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: No drag; constant g",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.kinematics.free_fall.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.kinematics.free_fall.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/work-power": {
      "post": {
        "operationId": "calculate_physics_dynamics_work_power",
        "summary": "Work and Power Calculator",
        "description": "W=Fs cosθ and P=W/t or Fv. (calculation_version 1.0.1)\n\nSemantic capability: `physics.dynamics.work_power`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Constant force; no variable systems",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.dynamics.work_power.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.dynamics.work_power.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/flow-rate": {
      "post": {
        "operationId": "calculate_physics_fluid_flow_rate",
        "summary": "Flow Rate Calculator",
        "description": "Volumetric flow Q=A·v (optional pipe diameter). (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.flow_rate`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Incompressible continuum; uniform velocity",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.flow_rate.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.flow_rate.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/joule-ev": {
      "post": {
        "operationId": "calculate_units_energy_joule_ev",
        "summary": "Joule ↔ Electronvolt",
        "description": "Energy conversion with 1 eV = 1.602176634×10⁻¹⁹ J (exact). (calculation_version 1.0.0)\n\nSemantic capability: `units.energy.joule_ev`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Exact SI factor; no relativistic frames",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/units.energy.joule_ev.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/units.energy.joule_ev.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/binary-hex": {
      "post": {
        "operationId": "calculate_units_digital_binary_hex",
        "summary": "Binary ↔ Hexadecimal",
        "description": "Integer base-2 ↔ base-16 conversion (optional 0b/0x prefixes). (calculation_version 1.0.0)\n\nSemantic capability: `units.digital.binary_hex`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Unsigned integers only; no fractional digits",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/units.digital.binary_hex.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/units.digital.binary_hex.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/velocity": {
      "post": {
        "operationId": "calculate_physics_kinematics_velocity",
        "summary": "Velocity Calculator",
        "description": "Average velocity v = s/t (solve v, s, or t). (calculation_version 1.0.0)\n\nSemantic capability: `physics.kinematics.velocity`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Average speed along path; 1D",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.kinematics.velocity.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.kinematics.velocity.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/momentum": {
      "post": {
        "operationId": "calculate_physics_dynamics_momentum",
        "summary": "Momentum Calculator",
        "description": "Linear momentum p = m·v (solve p, m, or v). (calculation_version 1.0.0)\n\nSemantic capability: `physics.dynamics.momentum`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Non-relativistic; single particle",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.dynamics.momentum.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.dynamics.momentum.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/acceleration": {
      "post": {
        "operationId": "calculate_physics_kinematics_acceleration",
        "summary": "Acceleration Calculator",
        "description": "Constant acceleration a = (v − u)/t. (calculation_version 1.0.0)\n\nSemantic capability: `physics.kinematics.acceleration`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Constant a; 1D",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.kinematics.acceleration.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.kinematics.acceleration.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/half-life": {
      "post": {
        "operationId": "calculate_physics_modern_half_life",
        "summary": "Half-Life Calculator",
        "description": "Radioactive decay N = N₀ · 2^(−t/T½). (calculation_version 1.0.0)\n\nSemantic capability: `physics.modern.half_life`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Single exponential; no branching ratios",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.modern.half_life.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.modern.half_life.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/efficiency": {
      "post": {
        "operationId": "calculate_physics_energy_efficiency",
        "summary": "Efficiency Calculator",
        "description": "η = Pout/Pin as fraction and percent. (calculation_version 1.0.0)\n\nSemantic capability: `physics.energy.efficiency`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: η ≤ 1; no heat-engine Carnot bound",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.energy.efficiency.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.energy.efficiency.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/boyle": {
      "post": {
        "operationId": "calculate_physics_thermo_boyle",
        "summary": "Boyle's Law Calculator",
        "description": "Isothermal Boyle relation P1·V1 = P2·V2. (calculation_version 1.0.0)\n\nSemantic capability: `physics.thermo.boyle`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Isothermal only; use Ideal Gas when T changes",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.thermo.boyle.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.thermo.boyle.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/kinetic": {
      "post": {
        "operationId": "calculate_physics_energy_kinetic",
        "summary": "Kinetic Energy Calculator",
        "description": "KE = ½mv² (solve KE, m, or v). (calculation_version 1.0.0)\n\nSemantic capability: `physics.energy.kinetic`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Classical; no relativistic KE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.energy.kinetic.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.energy.kinetic.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/potential": {
      "post": {
        "operationId": "calculate_physics_energy_potential",
        "summary": "Potential Energy Calculator",
        "description": "Gravitational PE = mgh (default g=9.80665). (calculation_version 1.0.0)\n\nSemantic capability: `physics.energy.potential`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Gravitational PE near Earth; not elastic",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.energy.potential.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.energy.potential.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/friction": {
      "post": {
        "operationId": "calculate_physics_dynamics_friction",
        "summary": "Friction Calculator",
        "description": "F = μN; optional incline N = mg cosθ. (calculation_version 1.0.0)\n\nSemantic capability: `physics.dynamics.friction`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Coulomb model; static vs kinetic μ not distinguished beyond input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.dynamics.friction.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.dynamics.friction.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/doppler": {
      "post": {
        "operationId": "calculate_physics_acoustics_doppler",
        "summary": "Doppler Effect Calculator",
        "description": "1D acoustic Doppler f′ = f(v±vo)/(v±vs). (calculation_version 1.0.0)\n\nSemantic capability: `physics.acoustics.doppler`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: 1D classical; default air speed 343 m/s",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.acoustics.doppler.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.acoustics.doppler.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/snell": {
      "post": {
        "operationId": "calculate_physics_optics_snell",
        "summary": "Snell's Law Calculator",
        "description": "n1 sinθ1 = n2 sinθ2 plus critical angle. (calculation_version 1.0.0)\n\nSemantic capability: `physics.optics.snell`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Geometric optics; TIR flagged as error in refraction modes",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.optics.snell.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.optics.snell.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/resistor-color": {
      "post": {
        "operationId": "calculate_electrical_resistor_color_code",
        "summary": "Resistor Color Code Calculator",
        "description": "IEC 60062 3–6 band decode to ohms, tolerance, TCR. (calculation_version 1.0.0)\n\nSemantic capability: `electrical.resistor_color_code`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Through-hole IEC 60062 colors; not SMD codes",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/electrical.resistor_color_code.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/electrical.resistor_color_code.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/charles": {
      "post": {
        "operationId": "calculate_physics_thermo_charles",
        "summary": "Charles's Law Calculator",
        "description": "Isobaric Charles relation V1/T1 = V2/T2 (T in kelvin). (calculation_version 1.0.0)\n\nSemantic capability: `physics.thermo.charles`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Isobaric only; temperatures must be absolute (K)",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.thermo.charles.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.thermo.charles.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/sound-level": {
      "post": {
        "operationId": "calculate_physics_acoustics_sound_level",
        "summary": "Sound Level Calculator",
        "description": "Intensity and pressure sound levels in dB; incoherent level combination. (calculation_version 1.0.0)\n\nSemantic capability: `physics.acoustics.sound_level`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: I0=1e-12 W/m², p0=20 µPa; no A-weighting",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.acoustics.sound_level.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.acoustics.sound_level.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/trajectory": {
      "post": {
        "operationId": "calculate_physics_kinematics_trajectory",
        "summary": "Projectile Trajectory Calculator",
        "description": "Flat-ground trajectory: range/height/time, position at t, or solve angle. (calculation_version 1.0.0)\n\nSemantic capability: `physics.kinematics.trajectory`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: No drag; level ground",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.kinematics.trajectory.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.kinematics.trajectory.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/centripetal": {
      "post": {
        "operationId": "calculate_physics_dynamics_centripetal",
        "summary": "Centripetal Force Calculator",
        "description": "Fc = mv²/r and a = v²/r. (calculation_version 1.0.0)\n\nSemantic capability: `physics.dynamics.centripetal`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Uniform circular motion; no banked-curve friction",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.dynamics.centripetal.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.dynamics.centripetal.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/electric-field": {
      "post": {
        "operationId": "calculate_physics_em_electric_field",
        "summary": "Electric Field Calculator",
        "description": "Point-charge E, force on q, and potential. (calculation_version 1.0.0)\n\nSemantic capability: `physics.em.electric_field`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Point charge in vacuum; k default 8.9875517923e9",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.em.electric_field.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.em.electric_field.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/faraday": {
      "post": {
        "operationId": "calculate_physics_em_faraday",
        "summary": "Faraday's Law Calculator",
        "description": "Induced emf magnitude from flux change or B·A. (calculation_version 1.0.0)\n\nSemantic capability: `physics.em.faraday`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Magnitude only (Lenz sign omitted); uniform B over area",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.em.faraday.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.em.faraday.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/lens-maker": {
      "post": {
        "operationId": "calculate_physics_optics_lens_maker",
        "summary": "Lens Maker Calculator",
        "description": "Lensmaker equation and thin-lens conjugates. (calculation_version 1.0.0)\n\nSemantic capability: `physics.optics.lens_maker`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Thin lens in air; Cartesian sign convention for R",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.optics.lens_maker.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.optics.lens_maker.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/impulse": {
      "post": {
        "operationId": "calculate_physics_dynamics_impulse",
        "summary": "Impulse Calculator",
        "description": "Impulse J = FΔt = Δp. (calculation_version 1.0.0)\n\nSemantic capability: `physics.dynamics.impulse`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Average force / constant F over Δt",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.dynamics.impulse.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.dynamics.impulse.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/viscosity": {
      "post": {
        "operationId": "calculate_physics_fluid_viscosity",
        "summary": "Viscosity Calculator",
        "description": "Dynamic viscosity from shear; kinematic ν = η/ρ. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.viscosity`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Newtonian fluid; constant η",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.viscosity.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.viscosity.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/displacement": {
      "post": {
        "operationId": "calculate_physics_kinematics_displacement",
        "summary": "Displacement Calculator",
        "description": "1D Δx and 2D displacement magnitude. (calculation_version 1.0.0)\n\nSemantic capability: `physics.kinematics.displacement`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Position change, not path length",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.kinematics.displacement.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.kinematics.displacement.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/drag": {
      "post": {
        "operationId": "calculate_physics_fluid_drag",
        "summary": "Drag Force Calculator",
        "description": "Quadratic drag Fd = ½ρv²CdA. (calculation_version 1.0.0)\n\nSemantic capability: `physics.fluid.drag`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Quadratic drag model; Cd treated as constant",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.fluid.drag.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.fluid.drag.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/magnetic-field": {
      "post": {
        "operationId": "calculate_physics_em_magnetic_field",
        "summary": "Magnetic Field Calculator",
        "description": "B for long wire and long solenoid. (calculation_version 1.0.0)\n\nSemantic capability: `physics.em.magnetic_field`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Ideal infinite wire / long solenoid",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.em.magnetic_field.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.em.magnetic_field.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/time-dilation": {
      "post": {
        "operationId": "calculate_physics_modern_time_dilation",
        "summary": "Time Dilation Calculator",
        "description": "Special-relativistic Δt = γΔτ. (calculation_version 1.0.0)\n\nSemantic capability: `physics.modern.time_dilation`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Special relativity only; v < c",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.modern.time_dilation.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.modern.time_dilation.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/linear-thermal-expansion": {
      "post": {
        "operationId": "calculate_materials_thermal_linear_expansion",
        "summary": "Linear Thermal Expansion Calculator",
        "description": "Constant-coefficient free linear expansion: delta_length = alpha * initial_length * delta_temperature. (calculation_version 1.0.0)\n\nSemantic capability: `materials.thermal.linear_expansion`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Constant mean alpha over the entered interval\n\nLimitation: Free one-dimensional expansion; no thermal stress\n\nLimitation: No material-property database or automatic coefficient selection",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/materials.thermal.linear_expansion.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/materials.thermal.linear_expansion.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/youngs": {
      "post": {
        "operationId": "calculate_physics_materials_youngs",
        "summary": "Young's Modulus Calculator",
        "description": "Y = stress/strain for uniaxial elasticity. (calculation_version 1.0.0)\n\nSemantic capability: `physics.materials.youngs`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Linear elastic regime; isotropic",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/physics.materials.youngs.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/physics.materials.youngs.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/final-grade": {
      "post": {
        "operationId": "calculate_education_final_grade",
        "summary": "Final grade",
        "description": "Need-on-final, overall after the exam, weighted categories, and points-to-weight for a fixed final exam share. (calculation_version 1.1.1)\n\nSemantic capability: `education.final_grade`.\n\nCalculation version: `1.1.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Need on final / Overall: Current must exclude the final (pre-final grade). Do not enter an LMS current that already counts the final as 0%.\n\nLimitation: Weighted: enter category grades and weights as they actually appear for completed work; remaining weight is optional.\n\nLimitation: W is percent (40); w = W/100 is the fraction form. Do not mix W and w in one expression.\n\nLimitation: Need on final with W = 0 → status invalid, code WEIGHT_REQUIRED (not a number).\n\nLimitation: Points mode total ≤ 0 → TOTAL_POINTS_REQUIRED. Final points > total still computes and warns POINTS_EXCEED_TOTAL.\n\nLimitation: Letter cutoffs / GPA points are a reference example, not part of the calculation model.\n\nLimitation: Planning estimate only — not an official transcript. No curve, drop-lowest, or extra credit unless you adjust inputs.\n\nLimitation: Engine aliases current/goal/W/finalScore/totalPoints are accepted at runtime; prefer share-URL field names in schemas.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/education.final_grade.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.1",
                    "examples": [
                      "1.1.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/education.final_grade.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/gpa-to-letter": {
      "post": {
        "operationId": "calculate_education_gpa_letter",
        "summary": "GPA ↔ letter grade",
        "description": "Approximate GPA↔letter lookup on plus/minus 4.33, flat 4.0, or linear 5.0 normalization. One table, two SEO entries (GPA→letter and letter→GPA). (calculation_version 1.1.3)\n\nSemantic capability: `education.gpa_letter`.\n\nCalculation version: `1.1.3`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Interpretation of a numeric GPA or a single letter — not a registrar conversion\n\nLimitation: Not a term or cumulative GPA from a course list (use the GPA calculator)\n\nLimitation: Example percentage bands are syllabus conventions, not derived from GPA",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.3"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.3); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/education.gpa_letter.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.3",
                    "examples": [
                      "1.1.3"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/education.gpa_letter.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/letter-grade-to-gpa": {
      "post": {
        "operationId": "calculate_education_gpa_letter_alias_letter_grade_to_gpa",
        "summary": "GPA ↔ letter grade (letter-grade-to-gpa page alias)",
        "description": "Approximate GPA↔letter lookup on plus/minus 4.33, flat 4.0, or linear 5.0 normalization. One table, two SEO entries (GPA→letter and letter→GPA). (calculation_version 1.1.3)\n\nSemantic capability: `education.gpa_letter`.\n\nCalculation version: `1.1.3`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Interpretation of a numeric GPA or a single letter — not a registrar conversion\n\nLimitation: Not a term or cumulative GPA from a course list (use the GPA calculator)\n\nLimitation: Example percentage bands are syllabus conventions, not derived from GPA",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.3"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.3); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/education.gpa_letter.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.3",
                    "examples": [
                      "1.1.3"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/education.gpa_letter.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/vat": {
      "post": {
        "operationId": "calculate_finance_vat",
        "summary": "VAT / GST",
        "description": "Add or remove a single-rate consumption tax (VAT or GST labeling). Gross = Net × (1 + rate/100); Net = Gross × 100 / (100 + rate). (calculation_version 1.3.0)\n\nSemantic capability: `finance.vat`.\n\nCalculation version: `1.3.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Single flat rate on the entered amount\n\nLimitation: No multi-rate baskets, exemptions, or input-tax credits\n\nLimitation: GST page is an SEO entry of this capability — same engine, GST labeling",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/finance.vat.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.0",
                    "examples": [
                      "1.3.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.3.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/finance.vat.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/gst": {
      "post": {
        "operationId": "calculate_finance_vat_alias_gst",
        "summary": "VAT / GST (gst page alias)",
        "description": "Add or remove a single-rate consumption tax (VAT or GST labeling). Gross = Net × (1 + rate/100); Net = Gross × 100 / (100 + rate). (calculation_version 1.3.0)\n\nSemantic capability: `finance.vat`.\n\nCalculation version: `1.3.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Single flat rate on the entered amount\n\nLimitation: No multi-rate baskets, exemptions, or input-tax credits\n\nLimitation: GST page is an SEO entry of this capability — same engine, GST labeling",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/finance.vat.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.0",
                    "examples": [
                      "1.3.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.3.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/finance.vat.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/factorial": {
      "post": {
        "operationId": "calculate_math_factorial",
        "summary": "Ordinary factorial",
        "description": "Exact n! for integers 0 ≤ n ≤ 5000 via BigInt arithmetic, with product expansion, digit count, and scientific notation for long integers. Matching n/nInput aliases; unknown fields rejected. Exactness refers to normalized integer input; numeric JSON rounds to binary64. Scientific preview truncates to12 leading digits; complete decimal digits in exact. (calculation_version 1.0.4)\n\nSemantic capability: `math.factorial`.\n\nCalculation version: `1.0.4`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Ordinary (single) factorial only — not multifactorial and not Γ(n+1) for non-integers\n\nLimitation: Domain is 0 ≤ n ≤ 5000 (product/resource bound, not a mathematical bound)\n\nLimitation: Missing n → MISSING_REQUIRED_INPUT\n\nLimitation: Non-numeric or non-integer n → INVALID_NUMBER\n\nLimitation: n < 0 → VALUE_MUST_BE_NON_NEGATIVE\n\nLimitation: n > 5000 → VALUE_ABOVE_MAX\n\nLimitation: Digits-only strings: trimmed length≤64; matching n/nInput aliases; string scientific notation rejected. JSON numeric finite rounding is permitted; raw nonzero underflow rejected.\n\nLimitation: Scientific display uses the first12 digits without rounding; exact contains every digit.\n\nLimitation: Unknown fields → UNKNOWN_INPUT; aliases disagree → INPUT_ALIAS_CONFLICT; excessive text → INPUT_TOO_LARGE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.4"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.4); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.factorial.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.4",
                    "examples": [
                      "1.0.4"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.4"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.factorial.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/fractions": {
      "post": {
        "operationId": "calculate_math_fractions",
        "summary": "Fractions",
        "description": "Exact safe-integer fraction and signed mixed-number arithmetic (+,−,×,÷), simplification and decimal previews. From decimal converts the shortest normalized binary64 decimal to an exact base10 rational, or rejects an unsafe reduced n/d; no continued-fraction or silent-zero substitute. (calculation_version 1.0.8)\n\nSemantic capability: `math.fractions`.\n\nCalculation version: `1.0.8`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Integer numerators and denominators only (optional mixed-number whole)\n\nLimitation: Denominator 0 → DENOMINATOR_MUST_BE_NONZERO\n\nLimitation: Division by 0/n → DIVISION_BY_ZERO\n\nLimitation: Add/subtract use LCD = LCM(b, d); (ad ± bc)/bd is an equivalent check only\n\nLimitation: Negative sign is normalized onto the numerator after reduction\n\nLimitation: Expert review pending — L1 engine-tested / source-checked\n\nLimitation: Required numerator/denominator or decimal never default; whole alone may be absent/empty. Unknown mode/op/field and conflicting aliases rejected.\n\nLimitation: From-dec uses shortest decimal serialization after binary64 normalization, not the exact binary float fraction. Nonzero-to-zero rejected; reduced numerator and denominator must be safe integers.\n\nLimitation: rational_exact describes n/d; decimal/decimal_display are rounded previews (12 significant digits normally,9 scientific). Full structured result available in native exports.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.8"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.8); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.fractions.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.8",
                    "examples": [
                      "1.0.8"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.8"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.fractions.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/gcf": {
      "post": {
        "operationId": "calculate_math_gcf",
        "summary": "Greatest common factor",
        "description": "Exact GCF/GCD/HCF of2–32 signed integers up to48 digits, with bounded working, strict aliases and complete method results. (calculation_version 1.0.3)\n\nSemantic capability: `math.gcf`.\n\nCalculation version: `1.0.3`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Integers only; negatives treated by absolute value\n\nLimitation: Each integer ≤ 48 decimal digits (product bound, not a mathematical bound)\n\nLimitation: Zeros are ignored unless every input is 0 (then UNDEFINED)\n\nLimitation: Need at least two numbers → NEED_TWO_NUMBERS\n\nLimitation: Non-integers → INVALID_NUMBER\n\nLimitation: Integers beyond MAX_SAFE_INTEGER must be decimal strings in JSON\n\nLimitation: At most32 integers; list text≤4096 characters, individual array strings≤128 characters\n\nLimitation: Aliases values/numbers/numsInput must normalize to the same ordered list; unknown fields rejected\n\nLimitation: Exactness refers to accepted integers. Nonzero raw JSON underflow and unsafe numeric integers are rejected.\n\nLimitation: Method agreement is an internal cross-check, not third-party certification.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.3"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.3); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.gcf.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.3",
                    "examples": [
                      "1.0.3"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.gcf.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/lcm": {
      "post": {
        "operationId": "calculate_math_lcm",
        "summary": "Least common multiple",
        "description": "Exact least common multiple of2–32 signed integers of at most48 decimal digits each. Any zero gives0. Complete working and bounded listing/prime cross-checks; unsafe JSON integers must be decimal strings. (calculation_version 1.0.4)\n\nSemantic capability: `math.lcm`.\n\nCalculation version: `1.0.4`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Exact relative to accepted normalized integers; cannot recover precision already lost by the client or JSON numeric parsing.\n\nLimitation: 2–32 values,48 decimal digits per integer,4096 list characters; matching ordered aliases required.\n\nLimitation: Listing bound5000 and inputs≤500, at most80 displayed multiples per row with explicit omission; prime cross-check input bound1000000.\n\nLimitation: Result may contain up to1536 decimal digits; summary/full and exports preserve the complete integer.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.4"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.4); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.lcm.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.4",
                    "examples": [
                      "1.0.4"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.4"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.lcm.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/ratio": {
      "post": {
        "operationId": "calculate_math_ratio",
        "summary": "Ratio",
        "description": "Simplify, scale, and compare ratios; solve proportions; split a total; convert part-to-part ratios to fraction, decimal, and part-of-whole percent using exact rationals. (calculation_version 1.0.3)\n\nSemantic capability: `math.ratio`.\n\nCalculation version: `1.0.3`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Integers, terminating decimals, and simple a/b fractions only (no mixed numbers or scientific notation)\n\nLimitation: Simplify / proportion / compare allow negative terms\n\nLimitation: All-zero simplify → ALL_ZERO\n\nLimitation: Proportion needs exactly one blank among A,B,C,D → PROPORTION_ONE_BLANK\n\nLimitation: Expert review pending — L1 engine-tested / source-checked\n\nLimitation: Each token≤128 characters;48 digits per integer/decimal or fraction component. Binary64 JSON numbers may already round; unsafe integer numbers rejected; exact strings recommended.\n\nLimitation: Aliases must agree; unknown and nonempty inactive fields rejected.\n\nLimitation: Proportion requires a unique solution and nonzero B,D including solved denominators.\n\nLimitation: Split terms and total must be nonnegative, sum of terms positive.\n\nLimitation: Bars approximate; tiny percentages may be invisible, exact text retained.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.3"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.3); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.ratio.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.3",
                    "examples": [
                      "1.0.3"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.ratio.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/proportion": {
      "post": {
        "operationId": "calculate_math_ratio_alias_proportion",
        "summary": "Ratio (proportion page alias)",
        "description": "Simplify, scale, and compare ratios; solve proportions; split a total; convert part-to-part ratios to fraction, decimal, and part-of-whole percent using exact rationals. (calculation_version 1.0.3)\n\nSemantic capability: `math.ratio`.\n\nCalculation version: `1.0.3`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Integers, terminating decimals, and simple a/b fractions only (no mixed numbers or scientific notation)\n\nLimitation: Simplify / proportion / compare allow negative terms\n\nLimitation: All-zero simplify → ALL_ZERO\n\nLimitation: Proportion needs exactly one blank among A,B,C,D → PROPORTION_ONE_BLANK\n\nLimitation: Expert review pending — L1 engine-tested / source-checked\n\nLimitation: Each token≤128 characters;48 digits per integer/decimal or fraction component. Binary64 JSON numbers may already round; unsafe integer numbers rejected; exact strings recommended.\n\nLimitation: Aliases must agree; unknown and nonempty inactive fields rejected.\n\nLimitation: Proportion requires a unique solution and nonzero B,D including solved denominators.\n\nLimitation: Split terms and total must be nonnegative, sum of terms positive.\n\nLimitation: Bars approximate; tiny percentages may be invisible, exact text retained.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.3"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.3); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.ratio.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.3",
                    "examples": [
                      "1.0.3"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.ratio.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/log": {
      "post": {
        "operationId": "calculate_math_log",
        "summary": "Logarithm",
        "description": "Common, natural, and arbitrary-base real logarithms; solve for y, x, or b with change-of-base. (calculation_version 1.1.6)\n\nSemantic capability: `math.log`.\n\nCalculation version: `1.1.6`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Solve y=log_b(x), x=b^y or b=x^(1/y). Positive finite x and base b>0,b≠1; y finite. Omitted base defaults10 only for forward/argument solve.\n\nLimitation: Strict decimal/scientific text up to512 characters or e; matching known-input aliases; unknown keys, nonfinite types and nonzero text rounded to zero reject. Legacy all-three selects y; requested output fields are ignored.\n\nLimitation: No numerical snapping near1/2/e/10. Symbolic base e uses Math.log/exp; numeric bases preserve binary64 values. Base1 rounding rejects RESULT_ROUNDED_TO_ONE, distinct from no mathematical solution.\n\nLimitation: Independent Decimal200 fixed complete-pack vectors:4ULP for logarithm/argument and128ULP for solved base; known fields exact binary64.16 existing common-log O3 vectors retain2ULP. Neither is a whole-domain guarantee.\n\nLimitation: Display normally12 significant digits, preserving extra digits near1; complete native exports retain raw inputs. Conditioning grows near base1 and y=0 for base solve. Local typing; URL/REST/MCP send inputs and may enter logs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.6"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.6); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.log.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.6",
                    "examples": [
                      "1.1.6"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.6"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.log.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/quadratic": {
      "post": {
        "operationId": "calculate_math_quadratic",
        "summary": "Quadratic formula",
        "description": "Solve ax² + bx + c = 0, or ax² + bx + c ○ rhs for ○ in {<,≤,>,≥}. Sign of a is the outside of the roots. Inequality discovery /quadratic-inequality. Not cubic, not CAS factoring. (calculation_version 1.1.2)\n\nSemantic capability: `math.quadratic`.\n\nCalculation version: `1.1.2`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Finite real binary64 a,b,c with a nonzero; solve or quadratic inequality lt/le/gt/ge. Decimal/scientific,Unicode minus,en-US grouped inputs andinteger fractions supported; each text token <=512characters. Fractions are projected once tobinary64; exact decisions refer toaccepted binary64 values.\n\nLimitation: a/aInput,b/bInput,c/cInput,rhs/d andoperator aliases mustagree. Missing/blank/null required coefficients reject; rawnonzero underflow rejects NUMERIC_UNDERFLOW; unknown keys andinapplicable solve-mode operators/rhs reject. The inequality entry locks mode=inequality.\n\nLimitation: Exact bounded rational discriminant,shifted constant andvertex decisions; scaled square root andstableq roots. Required discriminant/root/vertex projection outside finite binary64 or distinct roots collapsing toonefloat rejects NUMERICAL_RANGE_ERROR. This isnot universal success forfinite coefficients; exact arithmetic bounded16384bits.\n\nLimitation: 65-plus independent CPython Fraction andDecimal800/1100 fullpacks; rootcoordinate ceiling4ULP forfixedvectors,all other numbers/keys/types/presentation strict. Classification/topology exact onaccepted floats. Near multiple roots areillconditioned undercoefficient changes; nocross-runtime/globalULP guarantee.\n\nLimitation: Display preservesnonzero/distinct binary64 values; symbolic factors onlywhen exact reconstruction succeeds. Curve samples useexact rational Horner. Finite-window/cluster/tiny graph omissions areexplicit; fullscalar/interval data andnative JSON/CSV remain. CSV text isformula-neutralized.\n\nLimitation: Typing computeslocally. ShareURLs andREST/MCP transmitinputs andmayenterbrowser/server/intermediary logs. Oldversionlinks warnbeforecurrent execution; historical numerical runtime isnot replayed.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.2"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.2); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.quadratic.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.2",
                    "examples": [
                      "1.1.2"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.quadratic.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/quadratic-inequality": {
      "post": {
        "operationId": "calculate_math_quadratic_alias_quadratic_inequality",
        "summary": "Quadratic formula (quadratic-inequality page alias)",
        "description": "Solve ax² + bx + c = 0, or ax² + bx + c ○ rhs for ○ in {<,≤,>,≥}. Sign of a is the outside of the roots. Inequality discovery /quadratic-inequality. Not cubic, not CAS factoring. (calculation_version 1.1.2)\n\nSemantic capability: `math.quadratic`.\n\nCalculation version: `1.1.2`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Finite real binary64 a,b,c with a nonzero; solve or quadratic inequality lt/le/gt/ge. Decimal/scientific,Unicode minus,en-US grouped inputs andinteger fractions supported; each text token <=512characters. Fractions are projected once tobinary64; exact decisions refer toaccepted binary64 values.\n\nLimitation: a/aInput,b/bInput,c/cInput,rhs/d andoperator aliases mustagree. Missing/blank/null required coefficients reject; rawnonzero underflow rejects NUMERIC_UNDERFLOW; unknown keys andinapplicable solve-mode operators/rhs reject. The inequality entry locks mode=inequality.\n\nLimitation: Exact bounded rational discriminant,shifted constant andvertex decisions; scaled square root andstableq roots. Required discriminant/root/vertex projection outside finite binary64 or distinct roots collapsing toonefloat rejects NUMERICAL_RANGE_ERROR. This isnot universal success forfinite coefficients; exact arithmetic bounded16384bits.\n\nLimitation: 65-plus independent CPython Fraction andDecimal800/1100 fullpacks; rootcoordinate ceiling4ULP forfixedvectors,all other numbers/keys/types/presentation strict. Classification/topology exact onaccepted floats. Near multiple roots areillconditioned undercoefficient changes; nocross-runtime/globalULP guarantee.\n\nLimitation: Display preservesnonzero/distinct binary64 values; symbolic factors onlywhen exact reconstruction succeeds. Curve samples useexact rational Horner. Finite-window/cluster/tiny graph omissions areexplicit; fullscalar/interval data andnative JSON/CSV remain. CSV text isformula-neutralized.\n\nLimitation: Typing computeslocally. ShareURLs andREST/MCP transmitinputs andmayenterbrowser/server/intermediary logs. Oldversionlinks warnbeforecurrent execution; historical numerical runtime isnot replayed.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.2"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.2); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.quadratic.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.2",
                    "examples": [
                      "1.1.2"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.quadratic.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/percentage": {
      "post": {
        "operationId": "calculate_math_percentage",
        "summary": "Percentage",
        "description": "Phrase modes: P% of X, what percent, of-what, percent change, adjust ±P%, and percentage difference. (calculation_version 1.2.0)\n\nSemantic capability: `math.percentage`.\n\nCalculation version: `1.2.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Exact formulas of normalized binary64 inputs, output rounded once ties-to-even. Decimal inputs are rounded binary64, not exact decimal arithmetic.\n\nLimitation: Reject nonzero values that round to zero and overflow (including published delta/average); rescale on NUMERIC_RANGE.\n\nLimitation: Change uses |old|; difference needs nonnegative a,b and nonzero sum. Near zero baseline is ill-conditioned; shortest round-trip display is not significant-figure tracking.\n\nLimitation: At most512 characters per scalar; active fields only and aliases must agree.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.percentage.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.0",
                    "examples": [
                      "1.2.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.2.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.percentage.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/percent-change": {
      "post": {
        "operationId": "calculate_math_percent_change",
        "summary": "Percentage change",
        "description": "Signed percent change (V₂ − V₁)/|V₁|×100% with reverse solve for V₁ or V₂. (calculation_version 1.2.0)\n\nSemantic capability: `math.percent_change`.\n\nCalculation version: `1.2.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Signed change uses |v1|; nonzero initial value required. Inverse preserves both signed branches or infinite/no-solution outcomes.\n\nLimitation: Exact rational expressions of normalized binary64 inputs, one ties-even rounding per published field; not exact decimal measurement arithmetic.\n\nLimitation: Reject nonzero underflow/overflow in inputs, secondary fields or valid candidate branches; no partial candidate set. Rescale. Near±100 inverse percentages are ill-conditioned.\n\nLimitation: 8ULP same-sign nonzero triple consistency, strict zero; preserve requested percent when solving final even if final rounds unchanged.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.percent_change.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.0",
                    "examples": [
                      "1.2.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.2.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.percent_change.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/percent-error": {
      "post": {
        "operationId": "calculate_math_percent_error",
        "summary": "Percent error",
        "description": "Absolute/signed percent error, complete inverse branches and per-branch diagnostics; binary64 range and resolution policy. (calculation_version 1.2.0)\n\nSemantic capability: `math.percent_error`.\n\nCalculation version: `1.2.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: T must be nonzero; quantities need the same ratio-scale unit.\n\nLimitation: Private CPython Fraction reference covers sampled binary64 domains; no measurement uncertainty or exhaustive real-domain proof.\n\nLimitation: Every valid branch/secondary result must fit binary64; NUMERIC_RANGE requires rescaling.\n\nLimitation: Inverse P is requested; achieved P and resolution_limited describe candidate rounding; strict-zero8ULP triple consistency.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.percent_error.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.0",
                    "examples": [
                      "1.2.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.2.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.percent_error.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/pythagorean": {
      "post": {
        "operationId": "calculate_math_pythagorean",
        "summary": "Pythagorean theorem",
        "description": "Right-triangle solve a² + b² = c² for a missing side, plus area and perimeter; verify mode when all three sides given. (calculation_version 1.2.0)\n\nSemantic capability: `math.pythagorean`.\n\nCalculation version: `1.2.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Positive finite binary64 side lengths in consistent units. Decimal text at most512characters,strict types and matching aliases. Nonzero-to-zero conversion rejects.\n\nLimitation: Four operations:c,a,b,verify. solve_for selects the output;all supplied side tokens still validate. All three without solve_for verify;mode=verify conflicts with solve_for.\n\nLimitation: Verification checks nondegenerate geometry and squared relative residual |a²+b²-c²|/c²<=1e-6 with scaled squares. Approximate binary64 diagnostics may differ by2e-15 near the threshold; no exact-equality proof.\n\nLimitation: Solved sides must fit positive finite binary64. Unrepresentable positive area/perimeter are null with explicit range status;invalid verify has no right-angle area. Values display12significant digits. Exact radical only for exactly representable safe-integer radicands.\n\nLimitation: Diagram is schematic,not to scale;no right-angle diagram for failed verification. Browser calculations run locally;shared URLs and REST/MCP transmit inputs and may enter logs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.pythagorean.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.0",
                    "examples": [
                      "1.2.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.2.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.pythagorean.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/ln": {
      "post": {
        "operationId": "calculate_math_ln",
        "summary": "Natural logarithm",
        "description": "Natural logarithm y = ln(x) = log_e(x) for real x > 0, with exp(result) verification. (calculation_version 1.0.5)\n\nSemantic capability: `math.ln`.\n\nCalculation version: `1.0.5`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Positive finite binary64 x or symbolic e; strict decimal/scientific text ≤512 characters; nonzero text rounded to zero rejects NUMERIC_UNDERFLOW. Unknown keys/conflicting x aliases reject. Legacy y/yInput ignored.\n\nLimitation: Math.log approximates normalized binary64 inputs. Exact flag only x=1 or symbolic e. Display 12 significant digits; native exports retain full pack and input text.\n\nLimitation: Independent Decimal180 vectors accept logarithms within4 ULP and inverse values within16 EPS max(1,|y|) relative plus2 subnormal quanta. Existing16 O3 vectors retain2 ULP; neither claim covers the whole domain.\n\nLimitation: Near1 input rounding is ill conditioned; inverse check tolerance128 EPS max(1,|y|) relative plus2 subnormal quanta is not exactness proof.\n\nLimitation: Typing local; shared URLs/REST/MCP send inputs and may enter logs. Slider0.1–10 only; Focus graph bounded around current input.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.5"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.5); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.ln.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.5",
                    "examples": [
                      "1.0.5"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.5"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.ln.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/square-root": {
      "post": {
        "operationId": "calculate_math_square_root",
        "summary": "Square root",
        "description": "Principal square root of x; non-negative returns real principal, negative returns principal imaginary √|x| i. (calculation_version 1.0.4)\n\nSemantic capability: `math.square_root`.\n\nCalculation version: `1.0.4`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Principal branch on finite real radicands: x≥0 gives real=principal=√x,imag=0; x<0 gives real=0,imag=√|x|,principal=null. Both real/imag/principal are always present.\n\nLimitation: Numbers or strict decimal/scientific strings of at most512 characters; x and xInput must agree. Unknown keys, nonfinite values, null, booleans, hex, commas and nonzero-to-zero underflow reject.\n\nLimitation: Binary64 input rounding and Math.sqrt output rounding are distinct; at most2 ULP on declared independent Decimal2000 reference vectors, not an exhaustive or exact-decimal guarantee. Relative condition number1/2 away from zero; derivative unbounded at zero.\n\nLimitation: 12 significant digit display. Perfect-square claims require safe-integer radicands and roots. Scaled Babylonian working is an illustration, not the engine algorithm.\n\nLimitation: Live graph shows the real branch in a bounded window; negative radicands have no real point. Typing computes locally; shared URLs and REST/MCP send inputs and may enter logs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.4"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.4); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.square_root.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.4",
                    "examples": [
                      "1.0.4"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.4"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.square_root.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/anti-log": {
      "post": {
        "operationId": "calculate_math_antilog",
        "summary": "Antilogarithm",
        "description": "Inverse of log: x = b^y (common, natural, binary, or custom base). (calculation_version 1.0.7)\n\nSemantic capability: `math.antilog`.\n\nCalculation version: `1.0.7`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: x=b^y for finite y and positive finite b≠1. Omitted base defaults10. Scalar output remains unrounded binary64; overflow and result rounding tozero reject.\n\nLimitation: Selected alias precedence: y then yInput; baseId then base; selected explicit preset/numeric base overrides b/baseInput; custom uses b then baseInput; absent base token uses b then baseInput. Nullish aliases fall through. Ignored shadow fields do not change the selected value.\n\nLimitation: Selected numeric text is strict decimal/scientific up to512 characters; nonzero text rounding tozero rejects NUMERIC_UNDERFLOW. Explicit blank/invalid base rejects instead of defaulting. Unknown keys reject; compare/digits are validated presentation-only options.\n\nLimitation: Symbolic e means Math.exp(y); numeric/custom Math.E remains binary64 Math.pow. No proximity snapping.51 independent Decimal150/250 scalar references use2ULP fixed-vector budget; existing O3 budget retained, no whole-domain guarantee.\n\nLimitation: Display precision is rounding only. Inverse uses unrounded x and is not independent verification; x rounded to1 cannot recover nonzero y. Conditioning depends on |y| nearbase1 and |y ln b| for exponent perturbations.\n\nLimitation: Typing local; shared URLs/REST/MCP send inputs and may enter logs. Native exports retain scalar output and raw provided inputs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.7"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.7); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.antilog.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.7",
                    "examples": [
                      "1.0.7"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.7"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.antilog.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/root": {
      "post": {
        "operationId": "calculate_math_root",
        "summary": "Nth root",
        "description": "Principal real nth root of a with positive safe-integer index n (default 2). (calculation_version 1.0.6)\n\nSemantic capability: `math.root`.\n\nCalculation version: `1.0.6`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Principal real nth root only. Even index requires a≥0 (NOT_REAL otherwise); odd-negative uses the real negative branch, distinct from complex principal powers.\n\nLimitation: Strict decimal/scientific text up to512 characters; reject unknown keys, nonfinite, null, hex, comma, mismatching aliases, nonzero text rounded to zero. Exact positive safe-integer index; omitted index defaults to2, explicit blank/null rejects. Semantic cross-field and exact-text rules run after Schema shape validation.\n\nLimitation: Binary64 identity for n=1, Math.sqrt for n=2, Math.cbrt for n=3, signed Math.pow for higher indices. Declared fixed references have≤64 ULP overall; existing path-specific O3 vectors retain0/2/64 ULP. Not a whole-domain guarantee or exact-decimal result.\n\nLimitation: Relative condition number in radicand is1/n away from zero; derivative singular at zero for n>1. Input rounding, reciprocal-exponent error and root rounding are distinct. Raising rounded output to n can overflow or amplify error.\n\nLimitation: 12 significant digit display; exports keep full binary64 scalar, raw inputs and calculation version. Bounded real graph; typing computes locally, shared URLs and REST/MCP send inputs and may enter logs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.6"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.6); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.root.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.6",
                    "examples": [
                      "1.0.6"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.6"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.root.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/exponent": {
      "post": {
        "operationId": "calculate_math_exponent",
        "summary": "Exponentiation",
        "description": "Real power y = aⁿ with solve_for y (default scalar), a, or n. (calculation_version 1.0.5)\n\nSemantic capability: `math.exponent`.\n\nCalculation version: `1.0.5`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Real power equation y=a^n. solve_for y/a/n; omit the unknown and provide exactly the two known fields. Omitted mode inferred from the two fields. Matching aliases only, unknown keys reject.\n\nLimitation: Strict decimal/scientific tokens up to512 characters; null/blank/nonfinite/hex/boolean reject; nonzero text rounded to zero rejects NUMERIC_UNDERFLOW. Raw JSON numeric underflow rejects before parse loss. Integer exponent must be an exact safe integer. Semantic constraints follow shape validation.\n\nLimitation: Only symbolic e uses exp/log; numeric approximations retain their own value. Negative-base forward domain requires integer n; inverse n for negative bases requires an integer reproducing signed y. Base -1 gives infinitely many integer exponents for y=±1. Inverse even integer powers preserve both signs.\n\nLimitation: Binary64, not exact decimal. Independent fixed review vectors allow16 ULP forward/log-ratio and128 ULP inverse-base reciprocal powers; legacy O3 six vectors retain2 ULP. Not a whole-domain guarantee. Forward relative sensitivity |n| in a; inverse exponent ill-conditioned near a=1. Subnormal results have low relative accuracy. Overflow/nonzero-to-zero results reject.\n\nLimitation: 12 significant digit display, full typed outputs/raw inputs/version in exports. Negative-base graphs do not draw a continuous real curve. Typing local; shared URLs/REST/MCP send inputs and may enter logs; links run current version.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.5"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.5); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.exponent.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.5",
                    "examples": [
                      "1.0.5"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.5"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.exponent.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/sin": {
      "post": {
        "operationId": "calculate_math_sin",
        "summary": "Sine",
        "description": "sin(θ) in degrees (default) or radians, with algebraic snap for textbook angles. (calculation_version 1.1.0)\n\nSemantic capability: `math.sin`.\n\nCalculation version: `1.1.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Angle mode: finite binary64 theta; a nonzero degree sine rounding tozero rejects RESULT_UNDERFLOW; deg(default) or rad. Degree reduction uses signed remainder before quadrant reduction; no add360 or angle-proximity epsilon. Listed common degree angles and 17 normalized binary64 radian tokens within ±2π use symbolic recognition, not mathematical exactness of floating-point radians.\n\nLimitation: Ratio mode: finite opposite≥0, hypotenuse>0 and opposite≤hypotenuse; returns opposite/hypotenuse. A nonzero ratio rounding tozero rejects RESULT_UNDERFLOW. Angle fields in ratio mode and side fields in angle mode reject UNEXPECTED_INPUT.\n\nLimitation: Numeric aliases theta/t/angle/thetaInput, opposite/oppInput and hypotenuse/hypInput must agree; unit/unitInput normalize degree(s)/°/radian(s), case/space accepted. Missing mode defaultsangle. Unknown keys reject. Explicit null/blank numeric fields reject; null/blank unit defaultsdeg.\n\nLimitation: Strict decimal/scientific source text ≤512 characters; hexadecimal, booleans and grouped numbers reject. Nonzero text rounding tozero rejects NUMERIC_UNDERFLOW. RawJSON numbers are checked before lossy parse; finite subnormal accepted.\n\nLimitation: Independent Decimal420/620 Taylor/Machin and Fraction references:2ULP fixed-vector ceiling; zero/sign/types strict. Legacy18 O3 samples retain2ULP budget; no whole-domain or cross-runtime bitwise guarantee. Radian generic path uses Math.sin; degrees reduced before conversion.\n\nLimitation: Nearzeros relative conditioning is unbounded; large input spacing loses source angle information before computation. Sine may legitimately round to±1. Display12significant digits falls back tofull binary64 if rounding changes a boundary. Native exports preserve full scalar and raw inputs.\n\nLimitation: Graph omitted in ratio mode and for |theta|>1e6; diagram/derived angle is not independent verification. Typing local; sharedURLs/REST/MCP send inputs and may enter logs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.sin.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.0",
                    "examples": [
                      "1.1.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.sin.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cos": {
      "post": {
        "operationId": "calculate_math_cos",
        "summary": "Cosine",
        "description": "cos(θ) in degrees (default) or radians, with algebraic snap for textbook angles. (calculation_version 1.1.0)\n\nSemantic capability: `math.cos`.\n\nCalculation version: `1.1.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Angle mode: finite binary64 theta; deg(default) or rad. Degree reduction uses signed remainder before quadrant reduction; no add360 or angle-proximity epsilon. Listed common degree angles and 17 normalized binary64 radian tokens within ±2π use symbolic recognition, not mathematical exactness of floating-point radians.\n\nLimitation: Ratio mode: finite adjacent≥0, hypotenuse>0 and adjacent≤hypotenuse; returns adjacent/hypotenuse. A nonzero ratio rounding tozero rejects RESULT_UNDERFLOW. Angle fields in ratio mode and side fields in angle mode reject UNEXPECTED_INPUT.\n\nLimitation: Numeric aliases theta/t/angle/thetaInput, adjacent/adjInput and hypotenuse/hypInput must agree; unit/unitInput normalize degree(s)/°/radian(s), case/space accepted. Missing mode defaultsangle. Unknown keys reject. Explicit null/blank numeric fields reject; null/blank unit defaultsdeg.\n\nLimitation: Strict decimal/scientific source text ≤512 characters; hexadecimal, booleans and grouped numbers reject. Nonzero text rounding tozero rejects NUMERIC_UNDERFLOW. RawJSON numbers are checked before lossy parse; finite subnormal accepted.\n\nLimitation: Independent Decimal420/620 Taylor/Machin and Fraction references:2ULP fixed-vector ceiling; zero/sign/types strict. Legacy18 O3 samples retain2ULP budget; no whole-domain or cross-runtime bitwise guarantee. Radian generic path uses Math.cos; degrees reduced before conversion.\n\nLimitation: Nearzeros relative conditioning is unbounded; large input spacing loses source angle information before computation. Cosine may legitimately round to±1. Display12significant digits falls back tofull binary64 if rounding changes a boundary. Native exports preserve full scalar and raw inputs.\n\nLimitation: Graph omitted in ratio mode and for |theta|>1e6; diagram/derived angle is not independent verification. Typing local; sharedURLs/REST/MCP send inputs and may enter logs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.cos.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.0",
                    "examples": [
                      "1.1.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.cos.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/tan": {
      "post": {
        "operationId": "calculate_math_tan",
        "summary": "Tangent",
        "description": "tan(θ) in degrees (default) or radians; exact odd multiples of 90° are UNDEFINED; near-pole returns finite with NEAR_SINGULARITY. (calculation_version 1.1.0)\n\nSemantic capability: `math.tan`.\n\nCalculation version: `1.1.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Finite binary64 angle;deg(default) orrad. Strict decimal/scientific text<=512characters;unknownkeys/conflictingaliases reject. Null/blank numeric rejects;null/blankunit defaultsdeg. Nonzero source text rounding0 rejectsNUMERIC_UNDERFLOW.\n\nLimitation: Degree reduction before conversion,stable tan/cotangent offsets;exact odd90degree poles rejectUNDEFINED without epsilon.17 listed normalized binary64 radian magnitudes within2pi andsignedcounterparts use symbolic recognition;only pi/2 and3pi/2 pole tokens andtheir negatives reject. Genericradians useMath.tan.\n\nLimitation: Nonzero finite input producingzero rejectsRESULT_UNDERFLOW except declaredsymboliczero identities. Nonfinite result rejectsRESULT_OVERFLOW. Finite output is scalar;|value|>5729.57789313059 returns{value,warnings:[NEAR_SINGULARITY]}.\n\nLimitation: 121 independent Decimal420/620 Taylor/Machin referencevectors:2ULPfixedvector budget;zero/sign/types/warnings strict,actualULP reported;16legacyO3values retainedseparately. Noall-domain/cross-runtime guarantee. Nearpoles inputuncertainty strongly amplifies;huge inputspacing losesphase beforecomputation.\n\nLimitation: Display12significantdigits fallsbacktofullbinary64 if rounding erases nonzero orchanges±1. Fullscalar/warnings/rawinputs preservedin native exports. Graph omitted when|theta|>1e6 or|value|>8,not calculation failure.\n\nLimitation: Inverse tangent usespublished Arctan capability viaexplicitnavigation. Typinglocal;shareURLs/REST/MCP sendinputs andmayenterlogs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.tan.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.0",
                    "examples": [
                      "1.1.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.tan.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/arcsin": {
      "post": {
        "operationId": "calculate_math_arcsin",
        "summary": "Arcsine",
        "description": "Principal arcsin(x) for x ∈ [−1, 1], returning degrees and radians with verification. (calculation_version 1.1.0)\n\nSemantic capability: `math.arcsin`.\n\nCalculation version: `1.1.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: x outside [−1, 1] → NOT_REAL\n\nLimitation: Missing x → MISSING_REQUIRED_INPUT\n\nLimitation: Near-common-value hint is display metadata; it does not replace the canonical deg/rad or assert mathematical exactness.\n\nLimitation: Raw input accepts finite JSON numbers or decimal strings; normalized inputs contain numeric x only. Nonzero text rounded to zero is NUMERIC_UNDERFLOW.\n\nLimitation: Unknown inputs are UNKNOWN_INPUT; x/xInput conflicts are AMBIGUOUS_INPUT.\n\nLimitation: Legacy engine test counts are separate from the CVP Manifest suite. CVP identity is included; production status requires the linked report matched by version, revision and digest.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.arcsin.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.0",
                    "examples": [
                      "1.1.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.arcsin.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/arccos": {
      "post": {
        "operationId": "calculate_math_arccos",
        "summary": "Arccosine",
        "description": "Principal arccos(x) for x ∈ [−1, 1], returning degrees and radians with verification. (calculation_version 1.1.0)\n\nSemantic capability: `math.arccos`.\n\nCalculation version: `1.1.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: x outside [−1, 1] → NOT_REAL\n\nLimitation: Missing x → MISSING_REQUIRED_INPUT\n\nLimitation: Near-common-value hint is display metadata; it does not replace the canonical deg/rad or assert mathematical exactness.\n\nLimitation: Raw input accepts finite JSON numbers or decimal strings; normalized inputs contain numeric x only. Nonzero text rounded to zero is NUMERIC_UNDERFLOW.\n\nLimitation: Unknown inputs are UNKNOWN_INPUT; x/xInput conflicts are AMBIGUOUS_INPUT.\n\nLimitation: Legacy engine test counts are separate from the CVP Manifest suite. CVP identity is included; production status requires the linked report matched by version, revision and digest.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.arccos.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.0",
                    "examples": [
                      "1.1.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.arccos.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/arctan": {
      "post": {
        "operationId": "calculate_math_arctan",
        "summary": "Arctangent",
        "description": "Principal arctan(x) for any finite real x, returning degrees and radians with verification. (calculation_version 1.1.0)\n\nSemantic capability: `math.arctan`.\n\nCalculation version: `1.1.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Missing x → MISSING_REQUIRED_INPUT\n\nLimitation: Non-finite → INVALID_NUMBER\n\nLimitation: Near-common-value hint is display metadata; it does not replace the canonical deg/rad or assert mathematical exactness.\n\nLimitation: Raw input accepts finite JSON numbers or decimal strings; normalized inputs contain numeric x only. Nonzero text rounded to zero is NUMERIC_UNDERFLOW.\n\nLimitation: Unknown inputs are UNKNOWN_INPUT; x/xInput conflicts are AMBIGUOUS_INPUT.\n\nLimitation: Legacy engine test counts are separate from the CVP Manifest suite. CVP identity is included; production status requires the linked report matched by version, revision and digest.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.arctan.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.0",
                    "examples": [
                      "1.1.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.arctan.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/add": {
      "post": {
        "operationId": "calculate_math_sum",
        "summary": "Sum / addition",
        "description": "Exact decimal totals and rational means; scientific lists use finite Neumaier binary64; bounded Long addition shows complete place-value carry work. (calculation_version 1.0.3)\n\nSemantic capability: `math.sum`.\n\nCalculation version: `1.0.3`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Plain decimals:48 significant digits and48 fractional places;10000 values,65536 total characters,512 per token. Long:32 nonnegative plain decimals and48 aligned columns.\n\nLimitation: sumStr/display are exact only for plain decimals and Long. Numeric fields/chart are binary64 conveniences; mean_rational_exact describes the source and numeric approximation flags describe representation. Repeating means round half away to4 decimal places.\n\nLimitation: Any scientific token selects Neumaier binary64. Conversion, cancellation and intermediate range affect results; no universal ULP guarantee. Nonzero underflow and nonfinite intermediates rejected.\n\nLimitation: Commas separate values, including apparent thousands groups, which issue a warning. Units are not parsed. Share links use the current engine; historical runtimes are not retained.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.3"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.3); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.sum.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.3",
                    "examples": [
                      "1.0.3"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.sum.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/subtraction": {
      "post": {
        "operationId": "calculate_math_subtraction",
        "summary": "Subtraction",
        "description": "Solve any missing subtraction term with binary64, or exact non-negative decimal Long subtraction with borrowing up to48 aligned columns. (calculation_version 1.0.2)\n\nSemantic capability: `math.subtraction`.\n\nCalculation version: `1.0.2`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Difference requires exactly two terms and uses binary64, not exact decimal arithmetic. All normalized integral operands must be safe integers. Cancellation may amplify input/conversion error; measurement uncertainty is not modeled.\n\nLimitation: Long uses exact decimal strings; display and exact_value are authoritative. Numeric fields are approximate binary64 conveniences. Up to48 aligned columns, non-negative inputs, negative result allowed; no scientific notation.\n\nLimitation: Tokens at most512 characters, without commas. Unknown fields, invalid types/modes, conflicting aliases and text nonzero underflow rejected.\n\nLimitation: Shared links run the current engine; they do not retain historical runtimes.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.2"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.2); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.subtraction.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.2",
                    "examples": [
                      "1.0.2"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.subtraction.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/division": {
      "post": {
        "operationId": "calculate_math_divide",
        "summary": "Division",
        "description": "Binary64 quotient with0–16 display places, or exact non-negative integer long division and full working up to48 digits. (calculation_version 1.0.7)\n\nSemantic capability: `math.divide`.\n\nCalculation version: `1.0.7`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Quotient exact/display_exact refer to normalized binary64 operands and rounded display separately; decimal parsing is not exact decimal arithmetic.\n\nLimitation: All integral quotient operands must fit±(2^53−1). Use Long mode with non-negative integer strings for larger values, up to48 digits.\n\nLimitation: Tokens at most512 characters; unknown fields, mode/type errors and conflicting aliases rejected. Nonzero text/JSON/result underflow is rejected; subnormal nonzero values accepted.\n\nLimitation: Division by zero and overflow rejected. Decimal places default8 when absent/blank, otherwise integer0–16.\n\nLimitation: Share URLs restore current-engine inputs; not a historical runtime.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.7"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.7); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.divide.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.7",
                    "examples": [
                      "1.0.7"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.7"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.divide.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/exponential-growth": {
      "post": {
        "operationId": "calculate_math_exponential_growth",
        "summary": "Exponential growth / decay",
        "description": "Periodic x₀(1+r/100)^t or continuous x₀e^(kt) growth and decay. Any three of x₀, r/k, t, x(t) solve the fourth; all four verify displayed-precision consistency. (calculation_version 1.1.0)\n\nSemantic capability: `math.exponential_growth`.\n\nCalculation version: `1.1.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Periodic x(t)=x0(1+r/100)^t requires r>-100%; continuous x(t)=x0 exp(k t) uses ratePct=k per time unit, not percent. Signed amplitudes allowed; inverse time/rate require matching nonzero signs.\n\nLimitation: Provide any three fields or four to compare calculated xt using display quantization. Zero rate/time can make inverses undefined or nonunique. Blank/null fields are missing.\n\nLimitation: Strict decimal/scientific text up to512 characters; nonzero input rounding tozero rejects NUMERIC_UNDERFLOW. Conflicting aliases/unknown fields/models reject. Output is finite unrounded binary64; overflow/underflow reject.\n\nLimitation: Independent Decimal1200/1600 fixed vectors use predeclared4e-12 relative budget plus2 subnormal quanta, strictzero/sign/type. Legacy O3 remains separately tested32ULP. No whole-domain or cross-runtime guarantee; inverse conditioning degrades at zero rate/time and amplitude ratios near1.\n\nLimitation: Typing local; shared URLs, REST and MCP transmit inputs and may enter logs. Native exports retain scalar and provided raw inputs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.exponential_growth.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.0",
                    "examples": [
                      "1.1.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "x0": 50,
                  "ratePct": 4,
                  "t": 90
                },
                "calculation_version": "1.1.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.exponential_growth.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/scientific-notation": {
      "post": {
        "operationId": "calculate_math_scientific_notation",
        "summary": "Scientific notation",
        "description": "Convert between decimal and scientific/engineering notation; normalize and operate on A×10ⁿ forms. (calculation_version 2.0.1)\n\nSemantic capability: `math.scientific_notation`.\n\nCalculation version: `2.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Canonical Agent modes are convert / engineering / normalize / operate. dec-sci, sci-dec, numInput, coefInput, expInput, aInput, bInput are URL/engine adapter aliases, not the Agent contract.\n\nLimitation: Missing/invalid numbers → INVALID_NUMBER / MISSING_REQUIRED_INPUT\n\nLimitation: Division by zero in operate → DIVISION_BY_ZERO\n\nLimitation: Each numeric text token is at most512 characters. Normalize exponent is an integer within±10000. Decimal exponents in A×10^n are combined before one binary64 conversion; finite nonzero subnormals accepted; nonzero values rounded to zero are rejected.\n\nLimitation: Matching adapter aliases only; inactive/unknown fields and invalid mode/op are rejected. Shortest binary64 decimal display does not preserve significant figures. Shared URLs reach the server.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "2.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 2.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.scientific_notation.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 2.0.1",
                    "examples": [
                      "2.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "2.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.scientific_notation.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/multiplication": {
      "post": {
        "operationId": "calculate_math_multiplication",
        "summary": "Multiplication",
        "description": "Exact decimal product of multiplicand × multiplier, with optional long-multiplication work. (calculation_version 1.0.4)\n\nSemantic capability: `math.multiplication`.\n\nCalculation version: `1.0.4`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Exactness applies to accepted plain decimal tokens, not values rounded by a client before sending. Unsafe JSON integer numbers rejected; strings preserve full source digits.\n\nLimitation: 512 characters and48 significant digits per factor; trailing zeros count.\n\nLimitation: Long grid limited to24 significant digits and24 displayed digit places per normalized factor; otherwise no work, LONG_GRID_TRUNCATED, and full exact product.\n\nLimitation: productStr is authoritative; product is approximate or null on binary64 range loss. Share links use current engine, not historical replay.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.4"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.4); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.multiplication.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.4",
                    "examples": [
                      "1.0.4"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.4"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.multiplication.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/combinatorics": {
      "post": {
        "operationId": "calculate_math_combinatorics",
        "summary": "Permutations and combinations",
        "description": "Exact P(n,k) and C(n,k) for integers 0 ≤ k ≤ n ≤ 1000 via the multiplicative formula. Not a factorial product page. (calculation_version 1.0.3)\n\nSemantic capability: `math.combinatorics`.\n\nCalculation version: `1.0.3`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Distinct items without replacement;0<=k<=n<=1000. k>n is rejected, even though some mathematical libraries extend C(n,k)=0 beyond this product domain.\n\nLimitation: Safe JSON integers or integer strings with at most4digits/512characters; aliases must agree; strict types and unknown keys.\n\nLimitation: Exact count uses BigInt. Counts above18digits have explicitly approximate8-significant-digit previews; full exact counts, formula and working are exported.\n\nLimitation: Not multinomials, with-replacement counts or a standalone factorial tool. JSON numeric literals obey IEEE-754 transport before safe-integer validation; raw nonzero-to-zero underflow is rejected.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.3"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.3); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.combinatorics.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.3",
                    "examples": [
                      "1.0.3"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.combinatorics.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/modulo": {
      "post": {
        "operationId": "calculate_math_modulo",
        "summary": "Euclidean remainder / modular inverse",
        "description": "Exact Euclidean remainder/quotient and modular inverse for signed integers; canonical Bézout coefficients satisfy the original-input identity. (calculation_version 1.1.2)\n\nSemantic capability: `math.modulo`.\n\nCalculation version: `1.1.2`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Integer tokens up to48 digits and512 characters; JSON numeric integers must be safe. Use digit strings for larger exact integers; no decimal/scientific syntax.\n\nLimitation: Euclidean0<=r<|m|; nonzero modulus. Inverse requires |m|>=2 and gcd(a,m)=1. Canonical bezout_x=inverse, bezout_y=(1-a*inverse)/modulus.\n\nLimitation: Numeric outputs are safe integers; larger exact values use decimal strings. No floating rounding or measurement-uncertainty model. Not constant-time cryptography.\n\nLimitation: Share links use the current engine. The modular-inverse entry locks inverse, overriding a conflicting mode parameter.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.2"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.2); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.modulo.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.2",
                    "examples": [
                      "1.1.2"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.modulo.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/modular-inverse": {
      "post": {
        "operationId": "calculate_math_modulo_alias_modular_inverse",
        "summary": "Euclidean remainder / modular inverse (modular-inverse page alias)",
        "description": "Exact Euclidean remainder/quotient and modular inverse for signed integers; canonical Bézout coefficients satisfy the original-input identity. (calculation_version 1.1.2)\n\nSemantic capability: `math.modulo`.\n\nCalculation version: `1.1.2`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Integer tokens up to48 digits and512 characters; JSON numeric integers must be safe. Use digit strings for larger exact integers; no decimal/scientific syntax.\n\nLimitation: Euclidean0<=r<|m|; nonzero modulus. Inverse requires |m|>=2 and gcd(a,m)=1. Canonical bezout_x=inverse, bezout_y=(1-a*inverse)/modulus.\n\nLimitation: Numeric outputs are safe integers; larger exact values use decimal strings. No floating rounding or measurement-uncertainty model. Not constant-time cryptography.\n\nLimitation: Share links use the current engine. The modular-inverse entry locks inverse, overriding a conflicting mode parameter.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.2"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.2); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.modulo.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.2",
                    "examples": [
                      "1.1.2"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.modulo.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/sequence": {
      "post": {
        "operationId": "calculate_math_sequences",
        "summary": "Integer sequences",
        "description": "Arithmetic and geometric sequences, Fibonacci (F_0=0), and linear recurrences. Exact BigInt. Discovery pages share this capability. Not Pascal, not partition, not n!. Engine id is sequence — never arithmetic. (calculation_version 1.0.3)\n\nSemantic capability: `math.sequences`.\n\nCalculation version: `1.0.3`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Exact integer arithmetic for four modes;AP/GP n=1..1000,Fibonacci/recurrence n=0..1000. Coefficients at most48 digits,rawtokens at most512 characters,index at most4 digits.\n\nLimitation: Digit strings only;unsafe JSON numbers rejected. Aliases must agree;unknown andinactive inputs rejected. Results use JSON numbers only within safe integers, otherwise exact decimal strings.\n\nLimitation: 37 independent Python integer-enumeration/matrix-power full packs;exact complete structure/type/metadata comparison,notthird-party certification.\n\nLimitation: Large orindistinguishable exact terms omit graph explicitly;fullintegers remain inresult/work/nativeexports. Continuousreal-valued ornonintegersequences unsupported.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.3"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.3); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.sequences.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.3",
                    "examples": [
                      "1.0.3"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.sequences.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/arithmetic-sequence": {
      "post": {
        "operationId": "calculate_math_sequences_alias_arithmetic_sequence",
        "summary": "Integer sequences (arithmetic-sequence page alias)",
        "description": "Arithmetic and geometric sequences, Fibonacci (F_0=0), and linear recurrences. Exact BigInt. Discovery pages share this capability. Not Pascal, not partition, not n!. Engine id is sequence — never arithmetic. (calculation_version 1.0.3)\n\nSemantic capability: `math.sequences`.\n\nCalculation version: `1.0.3`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Exact integer arithmetic for four modes;AP/GP n=1..1000,Fibonacci/recurrence n=0..1000. Coefficients at most48 digits,rawtokens at most512 characters,index at most4 digits.\n\nLimitation: Digit strings only;unsafe JSON numbers rejected. Aliases must agree;unknown andinactive inputs rejected. Results use JSON numbers only within safe integers, otherwise exact decimal strings.\n\nLimitation: 37 independent Python integer-enumeration/matrix-power full packs;exact complete structure/type/metadata comparison,notthird-party certification.\n\nLimitation: Large orindistinguishable exact terms omit graph explicitly;fullintegers remain inresult/work/nativeexports. Continuousreal-valued ornonintegersequences unsupported.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.3"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.3); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.sequences.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.3",
                    "examples": [
                      "1.0.3"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.sequences.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/geometric-sequence": {
      "post": {
        "operationId": "calculate_math_sequences_alias_geometric_sequence",
        "summary": "Integer sequences (geometric-sequence page alias)",
        "description": "Arithmetic and geometric sequences, Fibonacci (F_0=0), and linear recurrences. Exact BigInt. Discovery pages share this capability. Not Pascal, not partition, not n!. Engine id is sequence — never arithmetic. (calculation_version 1.0.3)\n\nSemantic capability: `math.sequences`.\n\nCalculation version: `1.0.3`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Exact integer arithmetic for four modes;AP/GP n=1..1000,Fibonacci/recurrence n=0..1000. Coefficients at most48 digits,rawtokens at most512 characters,index at most4 digits.\n\nLimitation: Digit strings only;unsafe JSON numbers rejected. Aliases must agree;unknown andinactive inputs rejected. Results use JSON numbers only within safe integers, otherwise exact decimal strings.\n\nLimitation: 37 independent Python integer-enumeration/matrix-power full packs;exact complete structure/type/metadata comparison,notthird-party certification.\n\nLimitation: Large orindistinguishable exact terms omit graph explicitly;fullintegers remain inresult/work/nativeexports. Continuousreal-valued ornonintegersequences unsupported.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.3"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.3); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.sequences.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.3",
                    "examples": [
                      "1.0.3"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.sequences.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/fibonacci": {
      "post": {
        "operationId": "calculate_math_sequences_alias_fibonacci",
        "summary": "Integer sequences (fibonacci page alias)",
        "description": "Arithmetic and geometric sequences, Fibonacci (F_0=0), and linear recurrences. Exact BigInt. Discovery pages share this capability. Not Pascal, not partition, not n!. Engine id is sequence — never arithmetic. (calculation_version 1.0.3)\n\nSemantic capability: `math.sequences`.\n\nCalculation version: `1.0.3`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Exact integer arithmetic for four modes;AP/GP n=1..1000,Fibonacci/recurrence n=0..1000. Coefficients at most48 digits,rawtokens at most512 characters,index at most4 digits.\n\nLimitation: Digit strings only;unsafe JSON numbers rejected. Aliases must agree;unknown andinactive inputs rejected. Results use JSON numbers only within safe integers, otherwise exact decimal strings.\n\nLimitation: 37 independent Python integer-enumeration/matrix-power full packs;exact complete structure/type/metadata comparison,notthird-party certification.\n\nLimitation: Large orindistinguishable exact terms omit graph explicitly;fullintegers remain inresult/work/nativeexports. Continuousreal-valued ornonintegersequences unsupported.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.3"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.3); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.sequences.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.3",
                    "examples": [
                      "1.0.3"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.sequences.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/prime-factorization": {
      "post": {
        "operationId": "calculate_math_prime_factorization",
        "summary": "Prime factorization",
        "description": "Exact bounded prime factorization and primality with sorted factors/exponents, complete counts and empty-product handling for1. (calculation_version 1.0.1)\n\nSemantic capability: `math.prime_factorization`.\n\nCalculation version: `1.0.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: 1<=n<=10^12; integer strings at most13 digits and512 characters, or safe JSON integers. Exactness starts at the normalized integer.\n\nLimitation: n=1 has empty factors and is neither prime nor composite. Factors are sorted ascending; ω counts distinct primes and Ω counts multiplicity.\n\nLimitation: Trial division bounded by sqrt(n); no floating convergence or cryptographic-size factorization service. Primality is a view of the complete factorization.\n\nLimitation: Unknown keys, alias conflicts and invalid types reject. Share links execute the current engine. JSON numeric source follows the general binary64 transport policy; use digit strings for exact source input.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.prime_factorization.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.1",
                    "examples": [
                      "1.0.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.prime_factorization.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/linear-equation": {
      "post": {
        "operationId": "calculate_math_algebra_linear_equation",
        "summary": "Linear equation",
        "description": "Solve ax + b = rhs, ax + b ○ rhs, |ax + b| = rhs, |ax + b| ○ rhs, (ax + b)/(cx + d) = rhs, or (ax + b)/(cx + d) ○ rhs. a = 0 is identity/inconsistent or ℝ/∅. Discovery /linear-inequality, /absolute-value, /absolute-value-inequality, /rational-equation, /rational-inequality. Not the quadratic formula, not a system, not CAS. (calculation_version 1.5.1)\n\nSemantic capability: `math.algebra.linear_equation`.\n\nCalculation version: `1.5.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: One variable:linear equation/inequality,absolute equation/inequality,rational equation/inequality. Accepted coefficients are finite binary64; exact rational decisions use those rounded inputs, not arbitrary-precision raw decimals.\n\nLimitation: Strict decimal/scientific text up to512 characters; nonzero text rounding tozero rejects NUMERIC_UNDERFLOW. a andrhs required,b defaults0; rational c,d default0 andcannot bothzero. Nonrational c/d are rhs aliases andmust agree. Unknown keys,conflicts,invalid modes/relations andexplicit blank fields reject.\n\nLimitation: Returned solution ranges preserve open/closed endpoints andexcluded poles. No epsilon zero/pole/root merging. Endpoints are rounded once tobinary64; overflow/underflow ordistinct exact boundaries collapsing toonebinary64 value reject explicitly. Exact arithmetic is bounded to16384 numerator/denominator bits.\n\nLimitation: 178 independent Fraction predicate/open-cell references compare complete result packs. One-ULP numerical ceiling for listed vectors; current full serialized comparisons are strict. No whole-domain/cross-runtime guarantee. Display/native result pack remain separate.\n\nLimitation: Six discovery entries lock their documented mode exceptthe canonical page,which accepts all modes. Typing local;share/REST/MCP transmit data andmay enter logs. Real screen reader user-deferred.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.5.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.5.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.algebra.linear_equation.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.5.1",
                    "examples": [
                      "1.5.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.5.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.algebra.linear_equation.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/linear-inequality": {
      "post": {
        "operationId": "calculate_math_algebra_linear_equation_alias_linear_inequality",
        "summary": "Linear equation (linear-inequality page alias)",
        "description": "Solve ax + b = rhs, ax + b ○ rhs, |ax + b| = rhs, |ax + b| ○ rhs, (ax + b)/(cx + d) = rhs, or (ax + b)/(cx + d) ○ rhs. a = 0 is identity/inconsistent or ℝ/∅. Discovery /linear-inequality, /absolute-value, /absolute-value-inequality, /rational-equation, /rational-inequality. Not the quadratic formula, not a system, not CAS. (calculation_version 1.5.1)\n\nSemantic capability: `math.algebra.linear_equation`.\n\nCalculation version: `1.5.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: One variable:linear equation/inequality,absolute equation/inequality,rational equation/inequality. Accepted coefficients are finite binary64; exact rational decisions use those rounded inputs, not arbitrary-precision raw decimals.\n\nLimitation: Strict decimal/scientific text up to512 characters; nonzero text rounding tozero rejects NUMERIC_UNDERFLOW. a andrhs required,b defaults0; rational c,d default0 andcannot bothzero. Nonrational c/d are rhs aliases andmust agree. Unknown keys,conflicts,invalid modes/relations andexplicit blank fields reject.\n\nLimitation: Returned solution ranges preserve open/closed endpoints andexcluded poles. No epsilon zero/pole/root merging. Endpoints are rounded once tobinary64; overflow/underflow ordistinct exact boundaries collapsing toonebinary64 value reject explicitly. Exact arithmetic is bounded to16384 numerator/denominator bits.\n\nLimitation: 178 independent Fraction predicate/open-cell references compare complete result packs. One-ULP numerical ceiling for listed vectors; current full serialized comparisons are strict. No whole-domain/cross-runtime guarantee. Display/native result pack remain separate.\n\nLimitation: Six discovery entries lock their documented mode exceptthe canonical page,which accepts all modes. Typing local;share/REST/MCP transmit data andmay enter logs. Real screen reader user-deferred.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.5.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.5.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.algebra.linear_equation.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.5.1",
                    "examples": [
                      "1.5.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.5.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.algebra.linear_equation.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/absolute-value": {
      "post": {
        "operationId": "calculate_math_algebra_linear_equation_alias_absolute_value",
        "summary": "Linear equation (absolute-value page alias)",
        "description": "Solve ax + b = rhs, ax + b ○ rhs, |ax + b| = rhs, |ax + b| ○ rhs, (ax + b)/(cx + d) = rhs, or (ax + b)/(cx + d) ○ rhs. a = 0 is identity/inconsistent or ℝ/∅. Discovery /linear-inequality, /absolute-value, /absolute-value-inequality, /rational-equation, /rational-inequality. Not the quadratic formula, not a system, not CAS. (calculation_version 1.5.1)\n\nSemantic capability: `math.algebra.linear_equation`.\n\nCalculation version: `1.5.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: One variable:linear equation/inequality,absolute equation/inequality,rational equation/inequality. Accepted coefficients are finite binary64; exact rational decisions use those rounded inputs, not arbitrary-precision raw decimals.\n\nLimitation: Strict decimal/scientific text up to512 characters; nonzero text rounding tozero rejects NUMERIC_UNDERFLOW. a andrhs required,b defaults0; rational c,d default0 andcannot bothzero. Nonrational c/d are rhs aliases andmust agree. Unknown keys,conflicts,invalid modes/relations andexplicit blank fields reject.\n\nLimitation: Returned solution ranges preserve open/closed endpoints andexcluded poles. No epsilon zero/pole/root merging. Endpoints are rounded once tobinary64; overflow/underflow ordistinct exact boundaries collapsing toonebinary64 value reject explicitly. Exact arithmetic is bounded to16384 numerator/denominator bits.\n\nLimitation: 178 independent Fraction predicate/open-cell references compare complete result packs. One-ULP numerical ceiling for listed vectors; current full serialized comparisons are strict. No whole-domain/cross-runtime guarantee. Display/native result pack remain separate.\n\nLimitation: Six discovery entries lock their documented mode exceptthe canonical page,which accepts all modes. Typing local;share/REST/MCP transmit data andmay enter logs. Real screen reader user-deferred.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.5.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.5.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.algebra.linear_equation.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.5.1",
                    "examples": [
                      "1.5.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.5.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.algebra.linear_equation.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/absolute-value-inequality": {
      "post": {
        "operationId": "calculate_math_algebra_linear_equation_alias_absolute_value_inequality",
        "summary": "Linear equation (absolute-value-inequality page alias)",
        "description": "Solve ax + b = rhs, ax + b ○ rhs, |ax + b| = rhs, |ax + b| ○ rhs, (ax + b)/(cx + d) = rhs, or (ax + b)/(cx + d) ○ rhs. a = 0 is identity/inconsistent or ℝ/∅. Discovery /linear-inequality, /absolute-value, /absolute-value-inequality, /rational-equation, /rational-inequality. Not the quadratic formula, not a system, not CAS. (calculation_version 1.5.1)\n\nSemantic capability: `math.algebra.linear_equation`.\n\nCalculation version: `1.5.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: One variable:linear equation/inequality,absolute equation/inequality,rational equation/inequality. Accepted coefficients are finite binary64; exact rational decisions use those rounded inputs, not arbitrary-precision raw decimals.\n\nLimitation: Strict decimal/scientific text up to512 characters; nonzero text rounding tozero rejects NUMERIC_UNDERFLOW. a andrhs required,b defaults0; rational c,d default0 andcannot bothzero. Nonrational c/d are rhs aliases andmust agree. Unknown keys,conflicts,invalid modes/relations andexplicit blank fields reject.\n\nLimitation: Returned solution ranges preserve open/closed endpoints andexcluded poles. No epsilon zero/pole/root merging. Endpoints are rounded once tobinary64; overflow/underflow ordistinct exact boundaries collapsing toonebinary64 value reject explicitly. Exact arithmetic is bounded to16384 numerator/denominator bits.\n\nLimitation: 178 independent Fraction predicate/open-cell references compare complete result packs. One-ULP numerical ceiling for listed vectors; current full serialized comparisons are strict. No whole-domain/cross-runtime guarantee. Display/native result pack remain separate.\n\nLimitation: Six discovery entries lock their documented mode exceptthe canonical page,which accepts all modes. Typing local;share/REST/MCP transmit data andmay enter logs. Real screen reader user-deferred.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.5.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.5.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.algebra.linear_equation.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.5.1",
                    "examples": [
                      "1.5.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.5.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.algebra.linear_equation.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/rational-equation": {
      "post": {
        "operationId": "calculate_math_algebra_linear_equation_alias_rational_equation",
        "summary": "Linear equation (rational-equation page alias)",
        "description": "Solve ax + b = rhs, ax + b ○ rhs, |ax + b| = rhs, |ax + b| ○ rhs, (ax + b)/(cx + d) = rhs, or (ax + b)/(cx + d) ○ rhs. a = 0 is identity/inconsistent or ℝ/∅. Discovery /linear-inequality, /absolute-value, /absolute-value-inequality, /rational-equation, /rational-inequality. Not the quadratic formula, not a system, not CAS. (calculation_version 1.5.1)\n\nSemantic capability: `math.algebra.linear_equation`.\n\nCalculation version: `1.5.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: One variable:linear equation/inequality,absolute equation/inequality,rational equation/inequality. Accepted coefficients are finite binary64; exact rational decisions use those rounded inputs, not arbitrary-precision raw decimals.\n\nLimitation: Strict decimal/scientific text up to512 characters; nonzero text rounding tozero rejects NUMERIC_UNDERFLOW. a andrhs required,b defaults0; rational c,d default0 andcannot bothzero. Nonrational c/d are rhs aliases andmust agree. Unknown keys,conflicts,invalid modes/relations andexplicit blank fields reject.\n\nLimitation: Returned solution ranges preserve open/closed endpoints andexcluded poles. No epsilon zero/pole/root merging. Endpoints are rounded once tobinary64; overflow/underflow ordistinct exact boundaries collapsing toonebinary64 value reject explicitly. Exact arithmetic is bounded to16384 numerator/denominator bits.\n\nLimitation: 178 independent Fraction predicate/open-cell references compare complete result packs. One-ULP numerical ceiling for listed vectors; current full serialized comparisons are strict. No whole-domain/cross-runtime guarantee. Display/native result pack remain separate.\n\nLimitation: Six discovery entries lock their documented mode exceptthe canonical page,which accepts all modes. Typing local;share/REST/MCP transmit data andmay enter logs. Real screen reader user-deferred.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.5.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.5.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.algebra.linear_equation.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.5.1",
                    "examples": [
                      "1.5.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.5.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.algebra.linear_equation.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/rational-inequality": {
      "post": {
        "operationId": "calculate_math_algebra_linear_equation_alias_rational_inequality",
        "summary": "Linear equation (rational-inequality page alias)",
        "description": "Solve ax + b = rhs, ax + b ○ rhs, |ax + b| = rhs, |ax + b| ○ rhs, (ax + b)/(cx + d) = rhs, or (ax + b)/(cx + d) ○ rhs. a = 0 is identity/inconsistent or ℝ/∅. Discovery /linear-inequality, /absolute-value, /absolute-value-inequality, /rational-equation, /rational-inequality. Not the quadratic formula, not a system, not CAS. (calculation_version 1.5.1)\n\nSemantic capability: `math.algebra.linear_equation`.\n\nCalculation version: `1.5.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: One variable:linear equation/inequality,absolute equation/inequality,rational equation/inequality. Accepted coefficients are finite binary64; exact rational decisions use those rounded inputs, not arbitrary-precision raw decimals.\n\nLimitation: Strict decimal/scientific text up to512 characters; nonzero text rounding tozero rejects NUMERIC_UNDERFLOW. a andrhs required,b defaults0; rational c,d default0 andcannot bothzero. Nonrational c/d are rhs aliases andmust agree. Unknown keys,conflicts,invalid modes/relations andexplicit blank fields reject.\n\nLimitation: Returned solution ranges preserve open/closed endpoints andexcluded poles. No epsilon zero/pole/root merging. Endpoints are rounded once tobinary64; overflow/underflow ordistinct exact boundaries collapsing toonebinary64 value reject explicitly. Exact arithmetic is bounded to16384 numerator/denominator bits.\n\nLimitation: 178 independent Fraction predicate/open-cell references compare complete result packs. One-ULP numerical ceiling for listed vectors; current full serialized comparisons are strict. No whole-domain/cross-runtime guarantee. Display/native result pack remain separate.\n\nLimitation: Six discovery entries lock their documented mode exceptthe canonical page,which accepts all modes. Typing local;share/REST/MCP transmit data andmay enter logs. Real screen reader user-deferred.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.5.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.5.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.algebra.linear_equation.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.5.1",
                    "examples": [
                      "1.5.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.5.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.algebra.linear_equation.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/triangle-solver": {
      "post": {
        "operationId": "calculate_math_geometry_triangle",
        "summary": "Triangle solver",
        "description": "Solve a Euclidean triangle from SSS, SAS, ASA, AAS, or SSA (ambiguous). Not the Pythagorean-only page. (calculation_version 1.1.0)\n\nSemantic capability: `math.geometry.triangle`.\n\nCalculation version: `1.1.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: One consistent length unit, area in its square; angles in degrees. a/b/c opposite A/B/C. Euclidean only.\n\nLimitation: Strict decimal inputs normalize to binary64. SSS inequality classification uses exact dyadic predicates; no fixed absolute length epsilon.\n\nLimitation: SSA no solution -> INVALID_INPUT; one/two solutions retain complete ordered solutions array, acute B before supplementary B. Primary top-level fields mirror solutions[0].\n\nLimitation: Nonzero inputs and reported positive values must be finite normal binary64; rescale on NUMERIC_RANGE. Degree-to-radian values must also remain normal.\n\nLimitation: NUMERIC_CONDITION rejects unresolved triangles: for non-exact SSA sine, abs(a^2-h^2)/(a^2+h^2)<=1e-8 with h=b*sin(A); exact degree30/90/150 sine identities bypass that guard.\n\nLimitation: For derived sides (SAS/ASA/AAS/SSA), each rounded triangle-inequality gap must exceed64*Number.EPSILON times the shortest side. SSS raw-side classification uses exact dyadic inequalities without that guard.\n\nLimitation: Near flat/SSA tangent cases are sensitive to input rounding. Relative5e-10 arithmetic verification against independent high precision is not an input perturbation or universal geometric accuracy guarantee.\n\nLimitation: Browser interaction local; shared URLs and REST/MCP send parameters to the server.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.triangle.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.0",
                    "examples": [
                      "1.1.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.triangle.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/complex": {
      "post": {
        "operationId": "calculate_math_complex",
        "summary": "Complex numbers",
        "description": "Rectangular and polar complex arithmetic, integer powers, nth roots, and Euler form. Not a CAS. (calculation_version 1.3.0)\n\nSemantic capability: `math.complex`.\n\nCalculation version: `1.3.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Finite decimal inputs; matching aliases only. Missing rectangular components default0; explicit empty inputs are errors.\n\nLimitation: Power integer |n|≤1000; roots integer2≤n≤64; zero has one distinct root;0^0 undefined.\n\nLimitation: Argument in degrees (−180,180]; negative real axis assigned+180 including signed zero; origin0 by convention (undefined mathematically).\n\nLimitation: Nonzero input/output components and modulus must be normal finite binary64; unrepresentable scaling/intermediates return NUMERIC_RANGE.\n\nLimitation: Vector error budget2e-11 times modulus, argument2e-9 degrees away from ill-conditioned origin/cut; cancellation can lose relative component accuracy.\n\nLimitation: No symbolic CAS or complex noninteger powers.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.complex.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.0",
                    "examples": [
                      "1.3.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.3.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.complex.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/complex-polar": {
      "post": {
        "operationId": "calculate_math_complex_alias_complex_polar",
        "summary": "Complex numbers (complex-polar page alias)",
        "description": "Rectangular and polar complex arithmetic, integer powers, nth roots, and Euler form. Not a CAS. (calculation_version 1.3.0)\n\nSemantic capability: `math.complex`.\n\nCalculation version: `1.3.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Finite decimal inputs; matching aliases only. Missing rectangular components default0; explicit empty inputs are errors.\n\nLimitation: Power integer |n|≤1000; roots integer2≤n≤64; zero has one distinct root;0^0 undefined.\n\nLimitation: Argument in degrees (−180,180]; negative real axis assigned+180 including signed zero; origin0 by convention (undefined mathematically).\n\nLimitation: Nonzero input/output components and modulus must be normal finite binary64; unrepresentable scaling/intermediates return NUMERIC_RANGE.\n\nLimitation: Vector error budget2e-11 times modulus, argument2e-9 degrees away from ill-conditioned origin/cut; cancellation can lose relative component accuracy.\n\nLimitation: No symbolic CAS or complex noninteger powers.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.complex.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.0",
                    "examples": [
                      "1.3.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.3.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.complex.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/complex-power": {
      "post": {
        "operationId": "calculate_math_complex_alias_complex_power",
        "summary": "Complex numbers (complex-power page alias)",
        "description": "Rectangular and polar complex arithmetic, integer powers, nth roots, and Euler form. Not a CAS. (calculation_version 1.3.0)\n\nSemantic capability: `math.complex`.\n\nCalculation version: `1.3.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Finite decimal inputs; matching aliases only. Missing rectangular components default0; explicit empty inputs are errors.\n\nLimitation: Power integer |n|≤1000; roots integer2≤n≤64; zero has one distinct root;0^0 undefined.\n\nLimitation: Argument in degrees (−180,180]; negative real axis assigned+180 including signed zero; origin0 by convention (undefined mathematically).\n\nLimitation: Nonzero input/output components and modulus must be normal finite binary64; unrepresentable scaling/intermediates return NUMERIC_RANGE.\n\nLimitation: Vector error budget2e-11 times modulus, argument2e-9 degrees away from ill-conditioned origin/cut; cancellation can lose relative component accuracy.\n\nLimitation: No symbolic CAS or complex noninteger powers.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.complex.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.0",
                    "examples": [
                      "1.3.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.3.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.complex.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/complex-roots": {
      "post": {
        "operationId": "calculate_math_complex_alias_complex_roots",
        "summary": "Complex numbers (complex-roots page alias)",
        "description": "Rectangular and polar complex arithmetic, integer powers, nth roots, and Euler form. Not a CAS. (calculation_version 1.3.0)\n\nSemantic capability: `math.complex`.\n\nCalculation version: `1.3.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Finite decimal inputs; matching aliases only. Missing rectangular components default0; explicit empty inputs are errors.\n\nLimitation: Power integer |n|≤1000; roots integer2≤n≤64; zero has one distinct root;0^0 undefined.\n\nLimitation: Argument in degrees (−180,180]; negative real axis assigned+180 including signed zero; origin0 by convention (undefined mathematically).\n\nLimitation: Nonzero input/output components and modulus must be normal finite binary64; unrepresentable scaling/intermediates return NUMERIC_RANGE.\n\nLimitation: Vector error budget2e-11 times modulus, argument2e-9 degrees away from ill-conditioned origin/cut; cancellation can lose relative component accuracy.\n\nLimitation: No symbolic CAS or complex noninteger powers.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.complex.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.0",
                    "examples": [
                      "1.3.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.3.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.complex.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/complex-euler": {
      "post": {
        "operationId": "calculate_math_complex_alias_complex_euler",
        "summary": "Complex numbers (complex-euler page alias)",
        "description": "Rectangular and polar complex arithmetic, integer powers, nth roots, and Euler form. Not a CAS. (calculation_version 1.3.0)\n\nSemantic capability: `math.complex`.\n\nCalculation version: `1.3.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Finite decimal inputs; matching aliases only. Missing rectangular components default0; explicit empty inputs are errors.\n\nLimitation: Power integer |n|≤1000; roots integer2≤n≤64; zero has one distinct root;0^0 undefined.\n\nLimitation: Argument in degrees (−180,180]; negative real axis assigned+180 including signed zero; origin0 by convention (undefined mathematically).\n\nLimitation: Nonzero input/output components and modulus must be normal finite binary64; unrepresentable scaling/intermediates return NUMERIC_RANGE.\n\nLimitation: Vector error budget2e-11 times modulus, argument2e-9 degrees away from ill-conditioned origin/cut; cancellation can lose relative component accuracy.\n\nLimitation: No symbolic CAS or complex noninteger powers.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.3.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.3.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.complex.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.3.0",
                    "examples": [
                      "1.3.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.3.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.complex.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/circle": {
      "post": {
        "operationId": "calculate_math_geometry_circle",
        "summary": "Circle",
        "description": "Radius, diameter, circumference, area, arc length, and sector area of a Euclidean circle. Discovery /sector, /arc. Not the Pythagorean page, not /spherical-sector, not CAS. (calculation_version 1.2.0)\n\nSemantic capability: `math.geometry.circle`.\n\nCalculation version: `1.2.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not a²+b²=c² — use /calc/math/pythagorean\n\nLimitation: r ≤ 0 → VALUE_MUST_BE_POSITIVE\n\nLimitation: Spherical geometry is out of scope\n\nLimitation: All nonzero outputs must be finite normal binary64 values (magnitude at least 2^-1022); exact zero angles are supported. Outside this envelope, NUMERIC_RANGE requests rescaling instead of returning zero, Infinity, or NaN.\n\nLimitation: Raw/normalized inputs follow separate schemas. Nonzero decimal text rounded to zero is NUMERIC_UNDERFLOW; unknown inputs are UNKNOWN_INPUT and conflicting aliases are AMBIGUOUS_INPUT.\n\nLimitation: Legacy engine test counts are separate from CVP. Responses carry the current CVP identity and an exact-match production attestation lookup; no old CURRENT status is inherited.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.circle.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.0",
                    "examples": [
                      "1.2.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.2.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.circle.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/sector": {
      "post": {
        "operationId": "calculate_math_geometry_circle_alias_sector",
        "summary": "Circle (sector page alias)",
        "description": "Radius, diameter, circumference, area, arc length, and sector area of a Euclidean circle. Discovery /sector, /arc. Not the Pythagorean page, not /spherical-sector, not CAS. (calculation_version 1.2.0)\n\nSemantic capability: `math.geometry.circle`.\n\nCalculation version: `1.2.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not a²+b²=c² — use /calc/math/pythagorean\n\nLimitation: r ≤ 0 → VALUE_MUST_BE_POSITIVE\n\nLimitation: Spherical geometry is out of scope\n\nLimitation: All nonzero outputs must be finite normal binary64 values (magnitude at least 2^-1022); exact zero angles are supported. Outside this envelope, NUMERIC_RANGE requests rescaling instead of returning zero, Infinity, or NaN.\n\nLimitation: Raw/normalized inputs follow separate schemas. Nonzero decimal text rounded to zero is NUMERIC_UNDERFLOW; unknown inputs are UNKNOWN_INPUT and conflicting aliases are AMBIGUOUS_INPUT.\n\nLimitation: Legacy engine test counts are separate from CVP. Responses carry the current CVP identity and an exact-match production attestation lookup; no old CURRENT status is inherited.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.circle.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.0",
                    "examples": [
                      "1.2.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.2.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.circle.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/arc": {
      "post": {
        "operationId": "calculate_math_geometry_circle_alias_arc",
        "summary": "Circle (arc page alias)",
        "description": "Radius, diameter, circumference, area, arc length, and sector area of a Euclidean circle. Discovery /sector, /arc. Not the Pythagorean page, not /spherical-sector, not CAS. (calculation_version 1.2.0)\n\nSemantic capability: `math.geometry.circle`.\n\nCalculation version: `1.2.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not a²+b²=c² — use /calc/math/pythagorean\n\nLimitation: r ≤ 0 → VALUE_MUST_BE_POSITIVE\n\nLimitation: Spherical geometry is out of scope\n\nLimitation: All nonzero outputs must be finite normal binary64 values (magnitude at least 2^-1022); exact zero angles are supported. Outside this envelope, NUMERIC_RANGE requests rescaling instead of returning zero, Infinity, or NaN.\n\nLimitation: Raw/normalized inputs follow separate schemas. Nonzero decimal text rounded to zero is NUMERIC_UNDERFLOW; unknown inputs are UNKNOWN_INPUT and conflicting aliases are AMBIGUOUS_INPUT.\n\nLimitation: Legacy engine test counts are separate from CVP. Responses carry the current CVP identity and an exact-match production attestation lookup; no old CURRENT status is inherited.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.circle.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.0",
                    "examples": [
                      "1.2.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.2.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.circle.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/conic-section": {
      "post": {
        "operationId": "calculate_math_geometry_conic",
        "summary": "Conic section",
        "description": "Axis-aligned ellipse, parabola, and hyperbola. Discovery /ellipse, /parabola, /hyperbola. Not the circle-only page, not coordinate geometry, not CAS. (calculation_version 1.1.0)\n\nSemantic capability: `math.geometry.conic`.\n\nCalculation version: `1.1.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Axis-aligned standard forms only; not rotated (xy term), not translated\n\nLimitation: Not the circle-only calculator — a=b is a valid ellipse with e=0; /calc/math/circle stays the circle page\n\nLimitation: Not coordinate geometry (two-point line / intersection / angle)\n\nLimitation: Ellipse perimeter is Ramanujan I, not a complete elliptic integral\n\nLimitation: a ≤ 0 or b ≤ 0 → VALUE_MUST_BE_POSITIVE\n\nLimitation: parabola p = 0 → INVALID_INPUT\n\nLimitation: unknown mode (including cas, circle, pythagorean) → INVALID_MODE\n\nLimitation: Decimal inputs normalize to binary64; circle uses exact a===b after normalization. Near-circle c/e are sensitive to input rounding; noncircle eccentricity may round to1.\n\nLimitation: Nonzero input/output scalars must be finite normal binary64; NUMERIC_RANGE requires rescaling. No absolute-zero clamp. Explicit empty/null inputs reject; inactive supplied numeric fields are validated.\n\nLimitation: Ellipse perimeter is Ramanujan I approximation, not exact arclength. Relative2e-12 verification compares the stated approximation formula, not its model error.\n\nLimitation: Local browser calculation; shared URLs are received by the server; REST/MCP send their inputs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.conic.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.0",
                    "examples": [
                      "1.1.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.conic.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/ellipse": {
      "post": {
        "operationId": "calculate_math_geometry_conic_alias_ellipse",
        "summary": "Conic section (ellipse page alias)",
        "description": "Axis-aligned ellipse, parabola, and hyperbola. Discovery /ellipse, /parabola, /hyperbola. Not the circle-only page, not coordinate geometry, not CAS. (calculation_version 1.1.0)\n\nSemantic capability: `math.geometry.conic`.\n\nCalculation version: `1.1.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Axis-aligned standard forms only; not rotated (xy term), not translated\n\nLimitation: Not the circle-only calculator — a=b is a valid ellipse with e=0; /calc/math/circle stays the circle page\n\nLimitation: Not coordinate geometry (two-point line / intersection / angle)\n\nLimitation: Ellipse perimeter is Ramanujan I, not a complete elliptic integral\n\nLimitation: a ≤ 0 or b ≤ 0 → VALUE_MUST_BE_POSITIVE\n\nLimitation: parabola p = 0 → INVALID_INPUT\n\nLimitation: unknown mode (including cas, circle, pythagorean) → INVALID_MODE\n\nLimitation: Decimal inputs normalize to binary64; circle uses exact a===b after normalization. Near-circle c/e are sensitive to input rounding; noncircle eccentricity may round to1.\n\nLimitation: Nonzero input/output scalars must be finite normal binary64; NUMERIC_RANGE requires rescaling. No absolute-zero clamp. Explicit empty/null inputs reject; inactive supplied numeric fields are validated.\n\nLimitation: Ellipse perimeter is Ramanujan I approximation, not exact arclength. Relative2e-12 verification compares the stated approximation formula, not its model error.\n\nLimitation: Local browser calculation; shared URLs are received by the server; REST/MCP send their inputs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.conic.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.0",
                    "examples": [
                      "1.1.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.conic.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/parabola": {
      "post": {
        "operationId": "calculate_math_geometry_conic_alias_parabola",
        "summary": "Conic section (parabola page alias)",
        "description": "Axis-aligned ellipse, parabola, and hyperbola. Discovery /ellipse, /parabola, /hyperbola. Not the circle-only page, not coordinate geometry, not CAS. (calculation_version 1.1.0)\n\nSemantic capability: `math.geometry.conic`.\n\nCalculation version: `1.1.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Axis-aligned standard forms only; not rotated (xy term), not translated\n\nLimitation: Not the circle-only calculator — a=b is a valid ellipse with e=0; /calc/math/circle stays the circle page\n\nLimitation: Not coordinate geometry (two-point line / intersection / angle)\n\nLimitation: Ellipse perimeter is Ramanujan I, not a complete elliptic integral\n\nLimitation: a ≤ 0 or b ≤ 0 → VALUE_MUST_BE_POSITIVE\n\nLimitation: parabola p = 0 → INVALID_INPUT\n\nLimitation: unknown mode (including cas, circle, pythagorean) → INVALID_MODE\n\nLimitation: Decimal inputs normalize to binary64; circle uses exact a===b after normalization. Near-circle c/e are sensitive to input rounding; noncircle eccentricity may round to1.\n\nLimitation: Nonzero input/output scalars must be finite normal binary64; NUMERIC_RANGE requires rescaling. No absolute-zero clamp. Explicit empty/null inputs reject; inactive supplied numeric fields are validated.\n\nLimitation: Ellipse perimeter is Ramanujan I approximation, not exact arclength. Relative2e-12 verification compares the stated approximation formula, not its model error.\n\nLimitation: Local browser calculation; shared URLs are received by the server; REST/MCP send their inputs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.conic.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.0",
                    "examples": [
                      "1.1.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.conic.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/hyperbola": {
      "post": {
        "operationId": "calculate_math_geometry_conic_alias_hyperbola",
        "summary": "Conic section (hyperbola page alias)",
        "description": "Axis-aligned ellipse, parabola, and hyperbola. Discovery /ellipse, /parabola, /hyperbola. Not the circle-only page, not coordinate geometry, not CAS. (calculation_version 1.1.0)\n\nSemantic capability: `math.geometry.conic`.\n\nCalculation version: `1.1.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Axis-aligned standard forms only; not rotated (xy term), not translated\n\nLimitation: Not the circle-only calculator — a=b is a valid ellipse with e=0; /calc/math/circle stays the circle page\n\nLimitation: Not coordinate geometry (two-point line / intersection / angle)\n\nLimitation: Ellipse perimeter is Ramanujan I, not a complete elliptic integral\n\nLimitation: a ≤ 0 or b ≤ 0 → VALUE_MUST_BE_POSITIVE\n\nLimitation: parabola p = 0 → INVALID_INPUT\n\nLimitation: unknown mode (including cas, circle, pythagorean) → INVALID_MODE\n\nLimitation: Decimal inputs normalize to binary64; circle uses exact a===b after normalization. Near-circle c/e are sensitive to input rounding; noncircle eccentricity may round to1.\n\nLimitation: Nonzero input/output scalars must be finite normal binary64; NUMERIC_RANGE requires rescaling. No absolute-zero clamp. Explicit empty/null inputs reject; inactive supplied numeric fields are validated.\n\nLimitation: Ellipse perimeter is Ramanujan I approximation, not exact arclength. Relative2e-12 verification compares the stated approximation formula, not its model error.\n\nLimitation: Local browser calculation; shared URLs are received by the server; REST/MCP send their inputs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.conic.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.0",
                    "examples": [
                      "1.1.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.conic.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/coordinate-geometry": {
      "post": {
        "operationId": "calculate_math_geometry_coordinate",
        "summary": "Coordinate geometry",
        "description": "Distance, midpoint, slope, two-point line, point-line distance, line intersection, and angle in the plane. Slope is not share-key m. Discovery /line-equation, /point-line-distance, /line-intersection, /angle-between-lines. Not Pythagorean, not CAS. (calculation_version 1.8.0)\n\nSemantic capability: `math.geometry.coordinate`.\n\nCalculation version: `1.8.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Cartesian R²; all coordinates use one consistent length unit; angle outputs include radians and degrees.\n\nLimitation: Strict decimal inputs; matching x0/px and y0/py aliases; unknown fields reject. Omitted mode defaults distance. Discovery entry URLs lock their documented operation.\n\nLimitation: Exact dyadic predicates classify the supplied normalized binary64 values; decimal-to-binary rounding still affects nearly parallel lines and input-sensitive intersections. No absolute geometric epsilon or near-integer snapping.\n\nLimitation: Nonzero inputs and published numeric fields must be finite normal binary64; NUMERIC_RANGE requires translation/rescaling. Mathematical zero is retained, never a clamp.\n\nLimitation: Coincident defining points reject INVALID_INPUT for slope and all line operations; distance zero and midpoint remain valid. Vertical slope/intercept are null.\n\nLimitation: Line coefficients use exact integer gcd only for exact safe integers; otherwise a common power-of-two normalization and canonical sign. Standard equations are floating presentations, not exact symbolic identities.\n\nLimitation: Intersections of infinite lines (not segments): parallel distinct => empty, coincident => coincident, each with x/y null; other intersections return one point.\n\nLimitation: Undirected principal line angle is atan2(abs cross, abs dot) in [0,90] degrees. Exact predicates determine status; a non-perpendicular angle can round to90 degrees.\n\nLimitation: Full binary64 output without near-zero clamping. Typical well-conditioned scalar error budget relative2e-12; ill-conditioned inputs require their own sensitivity analysis. No positional bound is claimed for perturbed inputs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.8.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.8.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.coordinate.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.8.0",
                    "examples": [
                      "1.8.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.8.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.coordinate.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/line-equation": {
      "post": {
        "operationId": "calculate_math_geometry_coordinate_alias_line_equation",
        "summary": "Coordinate geometry (line-equation page alias)",
        "description": "Distance, midpoint, slope, two-point line, point-line distance, line intersection, and angle in the plane. Slope is not share-key m. Discovery /line-equation, /point-line-distance, /line-intersection, /angle-between-lines. Not Pythagorean, not CAS. (calculation_version 1.8.0)\n\nSemantic capability: `math.geometry.coordinate`.\n\nCalculation version: `1.8.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Cartesian R²; all coordinates use one consistent length unit; angle outputs include radians and degrees.\n\nLimitation: Strict decimal inputs; matching x0/px and y0/py aliases; unknown fields reject. Omitted mode defaults distance. Discovery entry URLs lock their documented operation.\n\nLimitation: Exact dyadic predicates classify the supplied normalized binary64 values; decimal-to-binary rounding still affects nearly parallel lines and input-sensitive intersections. No absolute geometric epsilon or near-integer snapping.\n\nLimitation: Nonzero inputs and published numeric fields must be finite normal binary64; NUMERIC_RANGE requires translation/rescaling. Mathematical zero is retained, never a clamp.\n\nLimitation: Coincident defining points reject INVALID_INPUT for slope and all line operations; distance zero and midpoint remain valid. Vertical slope/intercept are null.\n\nLimitation: Line coefficients use exact integer gcd only for exact safe integers; otherwise a common power-of-two normalization and canonical sign. Standard equations are floating presentations, not exact symbolic identities.\n\nLimitation: Intersections of infinite lines (not segments): parallel distinct => empty, coincident => coincident, each with x/y null; other intersections return one point.\n\nLimitation: Undirected principal line angle is atan2(abs cross, abs dot) in [0,90] degrees. Exact predicates determine status; a non-perpendicular angle can round to90 degrees.\n\nLimitation: Full binary64 output without near-zero clamping. Typical well-conditioned scalar error budget relative2e-12; ill-conditioned inputs require their own sensitivity analysis. No positional bound is claimed for perturbed inputs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.8.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.8.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.coordinate.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.8.0",
                    "examples": [
                      "1.8.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.8.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.coordinate.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/point-line-distance": {
      "post": {
        "operationId": "calculate_math_geometry_coordinate_alias_point_line_distance",
        "summary": "Coordinate geometry (point-line-distance page alias)",
        "description": "Distance, midpoint, slope, two-point line, point-line distance, line intersection, and angle in the plane. Slope is not share-key m. Discovery /line-equation, /point-line-distance, /line-intersection, /angle-between-lines. Not Pythagorean, not CAS. (calculation_version 1.8.0)\n\nSemantic capability: `math.geometry.coordinate`.\n\nCalculation version: `1.8.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Cartesian R²; all coordinates use one consistent length unit; angle outputs include radians and degrees.\n\nLimitation: Strict decimal inputs; matching x0/px and y0/py aliases; unknown fields reject. Omitted mode defaults distance. Discovery entry URLs lock their documented operation.\n\nLimitation: Exact dyadic predicates classify the supplied normalized binary64 values; decimal-to-binary rounding still affects nearly parallel lines and input-sensitive intersections. No absolute geometric epsilon or near-integer snapping.\n\nLimitation: Nonzero inputs and published numeric fields must be finite normal binary64; NUMERIC_RANGE requires translation/rescaling. Mathematical zero is retained, never a clamp.\n\nLimitation: Coincident defining points reject INVALID_INPUT for slope and all line operations; distance zero and midpoint remain valid. Vertical slope/intercept are null.\n\nLimitation: Line coefficients use exact integer gcd only for exact safe integers; otherwise a common power-of-two normalization and canonical sign. Standard equations are floating presentations, not exact symbolic identities.\n\nLimitation: Intersections of infinite lines (not segments): parallel distinct => empty, coincident => coincident, each with x/y null; other intersections return one point.\n\nLimitation: Undirected principal line angle is atan2(abs cross, abs dot) in [0,90] degrees. Exact predicates determine status; a non-perpendicular angle can round to90 degrees.\n\nLimitation: Full binary64 output without near-zero clamping. Typical well-conditioned scalar error budget relative2e-12; ill-conditioned inputs require their own sensitivity analysis. No positional bound is claimed for perturbed inputs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.8.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.8.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.coordinate.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.8.0",
                    "examples": [
                      "1.8.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.8.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.coordinate.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/line-intersection": {
      "post": {
        "operationId": "calculate_math_geometry_coordinate_alias_line_intersection",
        "summary": "Coordinate geometry (line-intersection page alias)",
        "description": "Distance, midpoint, slope, two-point line, point-line distance, line intersection, and angle in the plane. Slope is not share-key m. Discovery /line-equation, /point-line-distance, /line-intersection, /angle-between-lines. Not Pythagorean, not CAS. (calculation_version 1.8.0)\n\nSemantic capability: `math.geometry.coordinate`.\n\nCalculation version: `1.8.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Cartesian R²; all coordinates use one consistent length unit; angle outputs include radians and degrees.\n\nLimitation: Strict decimal inputs; matching x0/px and y0/py aliases; unknown fields reject. Omitted mode defaults distance. Discovery entry URLs lock their documented operation.\n\nLimitation: Exact dyadic predicates classify the supplied normalized binary64 values; decimal-to-binary rounding still affects nearly parallel lines and input-sensitive intersections. No absolute geometric epsilon or near-integer snapping.\n\nLimitation: Nonzero inputs and published numeric fields must be finite normal binary64; NUMERIC_RANGE requires translation/rescaling. Mathematical zero is retained, never a clamp.\n\nLimitation: Coincident defining points reject INVALID_INPUT for slope and all line operations; distance zero and midpoint remain valid. Vertical slope/intercept are null.\n\nLimitation: Line coefficients use exact integer gcd only for exact safe integers; otherwise a common power-of-two normalization and canonical sign. Standard equations are floating presentations, not exact symbolic identities.\n\nLimitation: Intersections of infinite lines (not segments): parallel distinct => empty, coincident => coincident, each with x/y null; other intersections return one point.\n\nLimitation: Undirected principal line angle is atan2(abs cross, abs dot) in [0,90] degrees. Exact predicates determine status; a non-perpendicular angle can round to90 degrees.\n\nLimitation: Full binary64 output without near-zero clamping. Typical well-conditioned scalar error budget relative2e-12; ill-conditioned inputs require their own sensitivity analysis. No positional bound is claimed for perturbed inputs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.8.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.8.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.coordinate.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.8.0",
                    "examples": [
                      "1.8.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.8.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.coordinate.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/angle-between-lines": {
      "post": {
        "operationId": "calculate_math_geometry_coordinate_alias_angle_between_lines",
        "summary": "Coordinate geometry (angle-between-lines page alias)",
        "description": "Distance, midpoint, slope, two-point line, point-line distance, line intersection, and angle in the plane. Slope is not share-key m. Discovery /line-equation, /point-line-distance, /line-intersection, /angle-between-lines. Not Pythagorean, not CAS. (calculation_version 1.8.0)\n\nSemantic capability: `math.geometry.coordinate`.\n\nCalculation version: `1.8.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Cartesian R²; all coordinates use one consistent length unit; angle outputs include radians and degrees.\n\nLimitation: Strict decimal inputs; matching x0/px and y0/py aliases; unknown fields reject. Omitted mode defaults distance. Discovery entry URLs lock their documented operation.\n\nLimitation: Exact dyadic predicates classify the supplied normalized binary64 values; decimal-to-binary rounding still affects nearly parallel lines and input-sensitive intersections. No absolute geometric epsilon or near-integer snapping.\n\nLimitation: Nonzero inputs and published numeric fields must be finite normal binary64; NUMERIC_RANGE requires translation/rescaling. Mathematical zero is retained, never a clamp.\n\nLimitation: Coincident defining points reject INVALID_INPUT for slope and all line operations; distance zero and midpoint remain valid. Vertical slope/intercept are null.\n\nLimitation: Line coefficients use exact integer gcd only for exact safe integers; otherwise a common power-of-two normalization and canonical sign. Standard equations are floating presentations, not exact symbolic identities.\n\nLimitation: Intersections of infinite lines (not segments): parallel distinct => empty, coincident => coincident, each with x/y null; other intersections return one point.\n\nLimitation: Undirected principal line angle is atan2(abs cross, abs dot) in [0,90] degrees. Exact predicates determine status; a non-perpendicular angle can round to90 degrees.\n\nLimitation: Full binary64 output without near-zero clamping. Typical well-conditioned scalar error budget relative2e-12; ill-conditioned inputs require their own sensitivity analysis. No positional bound is claimed for perturbed inputs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.8.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.8.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.coordinate.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.8.0",
                    "examples": [
                      "1.8.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.8.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.coordinate.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/vector": {
      "post": {
        "operationId": "calculate_math_vector",
        "summary": "Vector",
        "description": "R²/R³ vector magnitude, normalize, add/subtract, dot/cross product, included angle, projection and scalar triple product. Finite normal binary64 components or zero; nine locked discovery entries. (calculation_version 1.8.0)\n\nSemantic capability: `math.vector`.\n\nCalculation version: `1.8.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: R²/R³; required x/y for each active vector; optional z defaults to zero only when absent. Explicit empty or null is invalid.\n\nLimitation: Nonzero inputs and published fields must be finite normal binary64 (at least 2^-1022); NUMERIC_RANGE requires rescaling. Decimal text that rounds to zero is NUMERIC_UNDERFLOW.\n\nLimitation: Dot/cross/triple, addition and projection use exact dyadic intermediate arithmetic; published values are binary64, not arbitrary precision. Magnitude, normalization and angle are approximate.\n\nLimitation: Zero u is valid for magnitude and projection; zero direction is invalid for normalize/angle and zero v is invalid for projection.\n\nLimitation: Included angle is atan2(|u×v|,u·v) in [0°,180°], with radians and cosine. Direction becomes sensitive near zero; relative component accuracy can deteriorate under cancellation.\n\nLimitation: Consistent component units: magnitude/add/sub/projection retain units, dot/cross square units, triple cubes units, normalized components and projection scale dimensionless.\n\nLimitation: Figures show only exact z=0 modes other than cross/triple. A shared linear scale can hide subpixel arrows; those are labeled, never changed to zero.\n\nLimitation: Not matrices, coordinate geometry or CAS. Unknown mode is INVALID_MODE; unsupported input keys are rejected.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.8.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.8.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.vector.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.8.0",
                    "examples": [
                      "1.8.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.8.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.vector.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/vector-magnitude": {
      "post": {
        "operationId": "calculate_math_vector_alias_vector_magnitude",
        "summary": "Vector (vector-magnitude page alias)",
        "description": "R²/R³ vector magnitude, normalize, add/subtract, dot/cross product, included angle, projection and scalar triple product. Finite normal binary64 components or zero; nine locked discovery entries. (calculation_version 1.8.0)\n\nSemantic capability: `math.vector`.\n\nCalculation version: `1.8.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: R²/R³; required x/y for each active vector; optional z defaults to zero only when absent. Explicit empty or null is invalid.\n\nLimitation: Nonzero inputs and published fields must be finite normal binary64 (at least 2^-1022); NUMERIC_RANGE requires rescaling. Decimal text that rounds to zero is NUMERIC_UNDERFLOW.\n\nLimitation: Dot/cross/triple, addition and projection use exact dyadic intermediate arithmetic; published values are binary64, not arbitrary precision. Magnitude, normalization and angle are approximate.\n\nLimitation: Zero u is valid for magnitude and projection; zero direction is invalid for normalize/angle and zero v is invalid for projection.\n\nLimitation: Included angle is atan2(|u×v|,u·v) in [0°,180°], with radians and cosine. Direction becomes sensitive near zero; relative component accuracy can deteriorate under cancellation.\n\nLimitation: Consistent component units: magnitude/add/sub/projection retain units, dot/cross square units, triple cubes units, normalized components and projection scale dimensionless.\n\nLimitation: Figures show only exact z=0 modes other than cross/triple. A shared linear scale can hide subpixel arrows; those are labeled, never changed to zero.\n\nLimitation: Not matrices, coordinate geometry or CAS. Unknown mode is INVALID_MODE; unsupported input keys are rejected.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.8.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.8.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.vector.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.8.0",
                    "examples": [
                      "1.8.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.8.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.vector.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/vector-normalize": {
      "post": {
        "operationId": "calculate_math_vector_alias_vector_normalize",
        "summary": "Vector (vector-normalize page alias)",
        "description": "R²/R³ vector magnitude, normalize, add/subtract, dot/cross product, included angle, projection and scalar triple product. Finite normal binary64 components or zero; nine locked discovery entries. (calculation_version 1.8.0)\n\nSemantic capability: `math.vector`.\n\nCalculation version: `1.8.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: R²/R³; required x/y for each active vector; optional z defaults to zero only when absent. Explicit empty or null is invalid.\n\nLimitation: Nonzero inputs and published fields must be finite normal binary64 (at least 2^-1022); NUMERIC_RANGE requires rescaling. Decimal text that rounds to zero is NUMERIC_UNDERFLOW.\n\nLimitation: Dot/cross/triple, addition and projection use exact dyadic intermediate arithmetic; published values are binary64, not arbitrary precision. Magnitude, normalization and angle are approximate.\n\nLimitation: Zero u is valid for magnitude and projection; zero direction is invalid for normalize/angle and zero v is invalid for projection.\n\nLimitation: Included angle is atan2(|u×v|,u·v) in [0°,180°], with radians and cosine. Direction becomes sensitive near zero; relative component accuracy can deteriorate under cancellation.\n\nLimitation: Consistent component units: magnitude/add/sub/projection retain units, dot/cross square units, triple cubes units, normalized components and projection scale dimensionless.\n\nLimitation: Figures show only exact z=0 modes other than cross/triple. A shared linear scale can hide subpixel arrows; those are labeled, never changed to zero.\n\nLimitation: Not matrices, coordinate geometry or CAS. Unknown mode is INVALID_MODE; unsupported input keys are rejected.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.8.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.8.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.vector.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.8.0",
                    "examples": [
                      "1.8.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.8.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.vector.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/vector-add": {
      "post": {
        "operationId": "calculate_math_vector_alias_vector_add",
        "summary": "Vector (vector-add page alias)",
        "description": "R²/R³ vector magnitude, normalize, add/subtract, dot/cross product, included angle, projection and scalar triple product. Finite normal binary64 components or zero; nine locked discovery entries. (calculation_version 1.8.0)\n\nSemantic capability: `math.vector`.\n\nCalculation version: `1.8.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: R²/R³; required x/y for each active vector; optional z defaults to zero only when absent. Explicit empty or null is invalid.\n\nLimitation: Nonzero inputs and published fields must be finite normal binary64 (at least 2^-1022); NUMERIC_RANGE requires rescaling. Decimal text that rounds to zero is NUMERIC_UNDERFLOW.\n\nLimitation: Dot/cross/triple, addition and projection use exact dyadic intermediate arithmetic; published values are binary64, not arbitrary precision. Magnitude, normalization and angle are approximate.\n\nLimitation: Zero u is valid for magnitude and projection; zero direction is invalid for normalize/angle and zero v is invalid for projection.\n\nLimitation: Included angle is atan2(|u×v|,u·v) in [0°,180°], with radians and cosine. Direction becomes sensitive near zero; relative component accuracy can deteriorate under cancellation.\n\nLimitation: Consistent component units: magnitude/add/sub/projection retain units, dot/cross square units, triple cubes units, normalized components and projection scale dimensionless.\n\nLimitation: Figures show only exact z=0 modes other than cross/triple. A shared linear scale can hide subpixel arrows; those are labeled, never changed to zero.\n\nLimitation: Not matrices, coordinate geometry or CAS. Unknown mode is INVALID_MODE; unsupported input keys are rejected.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.8.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.8.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.vector.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.8.0",
                    "examples": [
                      "1.8.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.8.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.vector.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/vector-sub": {
      "post": {
        "operationId": "calculate_math_vector_alias_vector_sub",
        "summary": "Vector (vector-sub page alias)",
        "description": "R²/R³ vector magnitude, normalize, add/subtract, dot/cross product, included angle, projection and scalar triple product. Finite normal binary64 components or zero; nine locked discovery entries. (calculation_version 1.8.0)\n\nSemantic capability: `math.vector`.\n\nCalculation version: `1.8.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: R²/R³; required x/y for each active vector; optional z defaults to zero only when absent. Explicit empty or null is invalid.\n\nLimitation: Nonzero inputs and published fields must be finite normal binary64 (at least 2^-1022); NUMERIC_RANGE requires rescaling. Decimal text that rounds to zero is NUMERIC_UNDERFLOW.\n\nLimitation: Dot/cross/triple, addition and projection use exact dyadic intermediate arithmetic; published values are binary64, not arbitrary precision. Magnitude, normalization and angle are approximate.\n\nLimitation: Zero u is valid for magnitude and projection; zero direction is invalid for normalize/angle and zero v is invalid for projection.\n\nLimitation: Included angle is atan2(|u×v|,u·v) in [0°,180°], with radians and cosine. Direction becomes sensitive near zero; relative component accuracy can deteriorate under cancellation.\n\nLimitation: Consistent component units: magnitude/add/sub/projection retain units, dot/cross square units, triple cubes units, normalized components and projection scale dimensionless.\n\nLimitation: Figures show only exact z=0 modes other than cross/triple. A shared linear scale can hide subpixel arrows; those are labeled, never changed to zero.\n\nLimitation: Not matrices, coordinate geometry or CAS. Unknown mode is INVALID_MODE; unsupported input keys are rejected.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.8.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.8.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.vector.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.8.0",
                    "examples": [
                      "1.8.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.8.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.vector.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/dot-product": {
      "post": {
        "operationId": "calculate_math_vector_alias_dot_product",
        "summary": "Vector (dot-product page alias)",
        "description": "R²/R³ vector magnitude, normalize, add/subtract, dot/cross product, included angle, projection and scalar triple product. Finite normal binary64 components or zero; nine locked discovery entries. (calculation_version 1.8.0)\n\nSemantic capability: `math.vector`.\n\nCalculation version: `1.8.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: R²/R³; required x/y for each active vector; optional z defaults to zero only when absent. Explicit empty or null is invalid.\n\nLimitation: Nonzero inputs and published fields must be finite normal binary64 (at least 2^-1022); NUMERIC_RANGE requires rescaling. Decimal text that rounds to zero is NUMERIC_UNDERFLOW.\n\nLimitation: Dot/cross/triple, addition and projection use exact dyadic intermediate arithmetic; published values are binary64, not arbitrary precision. Magnitude, normalization and angle are approximate.\n\nLimitation: Zero u is valid for magnitude and projection; zero direction is invalid for normalize/angle and zero v is invalid for projection.\n\nLimitation: Included angle is atan2(|u×v|,u·v) in [0°,180°], with radians and cosine. Direction becomes sensitive near zero; relative component accuracy can deteriorate under cancellation.\n\nLimitation: Consistent component units: magnitude/add/sub/projection retain units, dot/cross square units, triple cubes units, normalized components and projection scale dimensionless.\n\nLimitation: Figures show only exact z=0 modes other than cross/triple. A shared linear scale can hide subpixel arrows; those are labeled, never changed to zero.\n\nLimitation: Not matrices, coordinate geometry or CAS. Unknown mode is INVALID_MODE; unsupported input keys are rejected.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.8.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.8.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.vector.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.8.0",
                    "examples": [
                      "1.8.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.8.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.vector.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cross-product": {
      "post": {
        "operationId": "calculate_math_vector_alias_cross_product",
        "summary": "Vector (cross-product page alias)",
        "description": "R²/R³ vector magnitude, normalize, add/subtract, dot/cross product, included angle, projection and scalar triple product. Finite normal binary64 components or zero; nine locked discovery entries. (calculation_version 1.8.0)\n\nSemantic capability: `math.vector`.\n\nCalculation version: `1.8.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: R²/R³; required x/y for each active vector; optional z defaults to zero only when absent. Explicit empty or null is invalid.\n\nLimitation: Nonzero inputs and published fields must be finite normal binary64 (at least 2^-1022); NUMERIC_RANGE requires rescaling. Decimal text that rounds to zero is NUMERIC_UNDERFLOW.\n\nLimitation: Dot/cross/triple, addition and projection use exact dyadic intermediate arithmetic; published values are binary64, not arbitrary precision. Magnitude, normalization and angle are approximate.\n\nLimitation: Zero u is valid for magnitude and projection; zero direction is invalid for normalize/angle and zero v is invalid for projection.\n\nLimitation: Included angle is atan2(|u×v|,u·v) in [0°,180°], with radians and cosine. Direction becomes sensitive near zero; relative component accuracy can deteriorate under cancellation.\n\nLimitation: Consistent component units: magnitude/add/sub/projection retain units, dot/cross square units, triple cubes units, normalized components and projection scale dimensionless.\n\nLimitation: Figures show only exact z=0 modes other than cross/triple. A shared linear scale can hide subpixel arrows; those are labeled, never changed to zero.\n\nLimitation: Not matrices, coordinate geometry or CAS. Unknown mode is INVALID_MODE; unsupported input keys are rejected.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.8.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.8.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.vector.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.8.0",
                    "examples": [
                      "1.8.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.8.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.vector.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/vector-angle": {
      "post": {
        "operationId": "calculate_math_vector_alias_vector_angle",
        "summary": "Vector (vector-angle page alias)",
        "description": "R²/R³ vector magnitude, normalize, add/subtract, dot/cross product, included angle, projection and scalar triple product. Finite normal binary64 components or zero; nine locked discovery entries. (calculation_version 1.8.0)\n\nSemantic capability: `math.vector`.\n\nCalculation version: `1.8.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: R²/R³; required x/y for each active vector; optional z defaults to zero only when absent. Explicit empty or null is invalid.\n\nLimitation: Nonzero inputs and published fields must be finite normal binary64 (at least 2^-1022); NUMERIC_RANGE requires rescaling. Decimal text that rounds to zero is NUMERIC_UNDERFLOW.\n\nLimitation: Dot/cross/triple, addition and projection use exact dyadic intermediate arithmetic; published values are binary64, not arbitrary precision. Magnitude, normalization and angle are approximate.\n\nLimitation: Zero u is valid for magnitude and projection; zero direction is invalid for normalize/angle and zero v is invalid for projection.\n\nLimitation: Included angle is atan2(|u×v|,u·v) in [0°,180°], with radians and cosine. Direction becomes sensitive near zero; relative component accuracy can deteriorate under cancellation.\n\nLimitation: Consistent component units: magnitude/add/sub/projection retain units, dot/cross square units, triple cubes units, normalized components and projection scale dimensionless.\n\nLimitation: Figures show only exact z=0 modes other than cross/triple. A shared linear scale can hide subpixel arrows; those are labeled, never changed to zero.\n\nLimitation: Not matrices, coordinate geometry or CAS. Unknown mode is INVALID_MODE; unsupported input keys are rejected.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.8.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.8.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.vector.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.8.0",
                    "examples": [
                      "1.8.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.8.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.vector.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/vector-projection": {
      "post": {
        "operationId": "calculate_math_vector_alias_vector_projection",
        "summary": "Vector (vector-projection page alias)",
        "description": "R²/R³ vector magnitude, normalize, add/subtract, dot/cross product, included angle, projection and scalar triple product. Finite normal binary64 components or zero; nine locked discovery entries. (calculation_version 1.8.0)\n\nSemantic capability: `math.vector`.\n\nCalculation version: `1.8.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: R²/R³; required x/y for each active vector; optional z defaults to zero only when absent. Explicit empty or null is invalid.\n\nLimitation: Nonzero inputs and published fields must be finite normal binary64 (at least 2^-1022); NUMERIC_RANGE requires rescaling. Decimal text that rounds to zero is NUMERIC_UNDERFLOW.\n\nLimitation: Dot/cross/triple, addition and projection use exact dyadic intermediate arithmetic; published values are binary64, not arbitrary precision. Magnitude, normalization and angle are approximate.\n\nLimitation: Zero u is valid for magnitude and projection; zero direction is invalid for normalize/angle and zero v is invalid for projection.\n\nLimitation: Included angle is atan2(|u×v|,u·v) in [0°,180°], with radians and cosine. Direction becomes sensitive near zero; relative component accuracy can deteriorate under cancellation.\n\nLimitation: Consistent component units: magnitude/add/sub/projection retain units, dot/cross square units, triple cubes units, normalized components and projection scale dimensionless.\n\nLimitation: Figures show only exact z=0 modes other than cross/triple. A shared linear scale can hide subpixel arrows; those are labeled, never changed to zero.\n\nLimitation: Not matrices, coordinate geometry or CAS. Unknown mode is INVALID_MODE; unsupported input keys are rejected.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.8.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.8.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.vector.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.8.0",
                    "examples": [
                      "1.8.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.8.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.vector.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/vector-triple": {
      "post": {
        "operationId": "calculate_math_vector_alias_vector_triple",
        "summary": "Vector (vector-triple page alias)",
        "description": "R²/R³ vector magnitude, normalize, add/subtract, dot/cross product, included angle, projection and scalar triple product. Finite normal binary64 components or zero; nine locked discovery entries. (calculation_version 1.8.0)\n\nSemantic capability: `math.vector`.\n\nCalculation version: `1.8.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: R²/R³; required x/y for each active vector; optional z defaults to zero only when absent. Explicit empty or null is invalid.\n\nLimitation: Nonzero inputs and published fields must be finite normal binary64 (at least 2^-1022); NUMERIC_RANGE requires rescaling. Decimal text that rounds to zero is NUMERIC_UNDERFLOW.\n\nLimitation: Dot/cross/triple, addition and projection use exact dyadic intermediate arithmetic; published values are binary64, not arbitrary precision. Magnitude, normalization and angle are approximate.\n\nLimitation: Zero u is valid for magnitude and projection; zero direction is invalid for normalize/angle and zero v is invalid for projection.\n\nLimitation: Included angle is atan2(|u×v|,u·v) in [0°,180°], with radians and cosine. Direction becomes sensitive near zero; relative component accuracy can deteriorate under cancellation.\n\nLimitation: Consistent component units: magnitude/add/sub/projection retain units, dot/cross square units, triple cubes units, normalized components and projection scale dimensionless.\n\nLimitation: Figures show only exact z=0 modes other than cross/triple. A shared linear scale can hide subpixel arrows; those are labeled, never changed to zero.\n\nLimitation: Not matrices, coordinate geometry or CAS. Unknown mode is INVALID_MODE; unsupported input keys are rejected.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.8.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.8.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.vector.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.8.0",
                    "examples": [
                      "1.8.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.8.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.vector.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/solid-geometry": {
      "post": {
        "operationId": "calculate_math_geometry_solid",
        "summary": "Solid geometry",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/sphere": {
      "post": {
        "operationId": "calculate_math_geometry_solid_alias_sphere",
        "summary": "Solid geometry (sphere page alias)",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cylinder": {
      "post": {
        "operationId": "calculate_math_geometry_solid_alias_cylinder",
        "summary": "Solid geometry (cylinder page alias)",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cone": {
      "post": {
        "operationId": "calculate_math_geometry_solid_alias_cone",
        "summary": "Solid geometry (cone page alias)",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/torus": {
      "post": {
        "operationId": "calculate_math_geometry_solid_alias_torus",
        "summary": "Solid geometry (torus page alias)",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/frustum": {
      "post": {
        "operationId": "calculate_math_geometry_solid_alias_frustum",
        "summary": "Solid geometry (frustum page alias)",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/prism": {
      "post": {
        "operationId": "calculate_math_geometry_solid_alias_prism",
        "summary": "Solid geometry (prism page alias)",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/pyramid": {
      "post": {
        "operationId": "calculate_math_geometry_solid_alias_pyramid",
        "summary": "Solid geometry (pyramid page alias)",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/tetrahedron": {
      "post": {
        "operationId": "calculate_math_geometry_solid_alias_tetrahedron",
        "summary": "Solid geometry (tetrahedron page alias)",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/octahedron": {
      "post": {
        "operationId": "calculate_math_geometry_solid_alias_octahedron",
        "summary": "Solid geometry (octahedron page alias)",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/icosahedron": {
      "post": {
        "operationId": "calculate_math_geometry_solid_alias_icosahedron",
        "summary": "Solid geometry (icosahedron page alias)",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/dodecahedron": {
      "post": {
        "operationId": "calculate_math_geometry_solid_alias_dodecahedron",
        "summary": "Solid geometry (dodecahedron page alias)",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/regular-prism": {
      "post": {
        "operationId": "calculate_math_geometry_solid_alias_regular_prism",
        "summary": "Solid geometry (regular-prism page alias)",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/regular-pyramid": {
      "post": {
        "operationId": "calculate_math_geometry_solid_alias_regular_pyramid",
        "summary": "Solid geometry (regular-pyramid page alias)",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/regular-frustum": {
      "post": {
        "operationId": "calculate_math_geometry_solid_alias_regular_frustum",
        "summary": "Solid geometry (regular-frustum page alias)",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/ellipsoid": {
      "post": {
        "operationId": "calculate_math_geometry_solid_alias_ellipsoid",
        "summary": "Solid geometry (ellipsoid page alias)",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/spherical-cap": {
      "post": {
        "operationId": "calculate_math_geometry_solid_alias_spherical_cap",
        "summary": "Solid geometry (spherical-cap page alias)",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/spherical-zone": {
      "post": {
        "operationId": "calculate_math_geometry_solid_alias_spherical_zone",
        "summary": "Solid geometry (spherical-zone page alias)",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/spherical-wedge": {
      "post": {
        "operationId": "calculate_math_geometry_solid_alias_spherical_wedge",
        "summary": "Solid geometry (spherical-wedge page alias)",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/spherical-lune": {
      "post": {
        "operationId": "calculate_math_geometry_solid_alias_spherical_lune",
        "summary": "Solid geometry (spherical-lune page alias)",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/spherical-sector": {
      "post": {
        "operationId": "calculate_math_geometry_solid_alias_spherical_sector",
        "summary": "Solid geometry (spherical-sector page alias)",
        "description": "Volume, surface and secondary dimensions for20 Euclidean solid models. Strict decimal inputs, one consistent length unit, binary64 normal-range outputs, bounded figures; ellipsoid surface uses spheroid forms or incomplete elliptic integrals. (calculation_version 1.19.0)\n\nSemantic capability: `math.geometry.solid`.\n\nCalculation version: `1.19.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Right solids only; not oblique\n\nLimitation: Not the circle-only page — 2-D circle stays on math.geometry.circle\n\nLimitation: Not a vector — math.vector is R²/R³ algebra\n\nLimitation: Not ISO 5167-5 cone meter (physics.fluid.iso_cone)\n\nLimitation: Torus is a ring torus: major R > tube r; horn/spindle out of scope\n\nLimitation: Right circular frustum needs R,r,h>0; r=R recovers a cylinder; not a cone page\n\nLimitation: Right rectangular prism needs a,b,h>0; a=b=h is a cube; not a frustum page\n\nLimitation: Right rectangular pyramid needs a,b,h>0; V=abh/3; apex above the base center; a=b is a square base; not a prism page\n\nLimitation: Regular tetrahedron needs a>0; V=a³√2/12, A=a²√3; not a rectangular pyramid page\n\nLimitation: Regular octahedron needs a>0; V=(√2/3)a³, A=2√3 a²; not a tetrahedron page\n\nLimitation: Regular icosahedron needs a>0; V=(5/12)(3+√5)a³, A=5√3 a²; not an octahedron page\n\nLimitation: Regular dodecahedron needs a>0; V=(1/4)(15+7√5)a³, A=3√(25+10√5) a²; not an icosahedron page\n\nLimitation: Regular n-gon prism needs integer n≥3 and s,h>0; base from math.geometry.plane; n=4 matches a square rectangular prism; not /prism; not an n-gon pyramid\n\nLimitation: Regular n-gon pyramid needs integer n≥3 and s,h>0; V=A h/3 with A from math.geometry.plane; n=4 matches a square rectangular pyramid; not /pyramid; not a tetrahedron; not /regular-frustum\n\nLimitation: Regular n-gon frustum needs integer n≥3 and s,t,h>0; V=h/3(A+a+√(Aa)) with A,a from math.geometry.plane; s=t recovers a regular prism; lateral faces from the plane isosceles trapezoid; not /frustum; not /regular-pyramid\n\nLimitation: Ellipsoid needs a,b,c>0; V=4/3 πabc; surface is the exact elliptic-integral / spheroid model numerically evaluated (modulus k, not m=k²); axes sorted internally; a=b=c is a sphere; not /sphere; not the 2-D ellipse\n\nLimitation: Spherical cap needs r>0 and 0<h≤2r; V=(1/3)πh²(3r−h); h=r is a hemisphere; h=2r is a sphere; not /sphere; not a spherical zone\n\nLimitation: Spherical zone needs a,b,h>0; V=(πh/6)(3a²+3b²+h²); r recovered; a=b is symmetric; not /spherical-cap; not /sphere; not a spherical wedge\n\nLimitation: Spherical wedge needs r>0 and 0<θ≤360°; V=(2/3)r³θ with θ in radians; θ=180° is a hemisphere; θ=360° is a sphere; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical lune\n\nLimitation: Spherical lune needs r>0 and 0<θ≤360°; A=2r²θ with θ in radians; θ=180° is a hemisphere surface; θ=360° is a sphere; not /spherical-wedge; not /spherical-cap; not /spherical-zone; not /sphere; not a spherical sector\n\nLimitation: Spherical sector needs r>0 and 0<h≤2r; V=(2/3)πr²h; a=√(h(2r−h)); A=πr(2h+a); h=r is a hemisphere; h=2r is a sphere; not /spherical-cap; not /cone; not /sphere; not /spherical-wedge; not /spherical-lune\n\nLimitation: unknown mode (including cas, vector, iso-cone) → INVALID_MODE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.19.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.19.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.19.0",
                    "examples": [
                      "1.19.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.19.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.solid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/plane-geometry": {
      "post": {
        "operationId": "calculate_math_geometry_plane",
        "summary": "Plane geometry",
        "description": "Seven Euclidean plane shapes: rectangle, square, regular polygon, annulus, parallelogram, isosceles trapezoid and validated simple polygon. Complete area/perimeter and secondary measures; consistent length units, angles in degrees. (calculation_version 1.6.0)\n\nSemantic capability: `math.geometry.plane`.\n\nCalculation version: `1.6.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Positive dimensions and nonzero coordinates must be finite normal binary64; exact zero coordinates allowed. Positive reported measures must be normal binary64. Strict bounded decimal texts and matching active aliases.\n\nLimitation: Regular n is an integer3–9007199254740991; figures draw at most128 sides, otherwise explicitly omitted.\n\nLimitation: Simple polygon3–8 ordered distinct vertices, optional closing repetition. Exact predicates reject crossings, nonadjacent contacts, overlaps, backtracking and zero area. Concave, clockwise and collinear nonoverlapping intermediate vertices supported.\n\nLimitation: Annulus R>r>0; parallelogram0<theta<180 degrees with normal radian conversion; trapezoid assumes isosceles legs.\n\nLimitation: Thin rings/near-flat figures/topology are sensitive to input rounding. Exact predicates concern normalized binary64, not original arbitrary-precision decimals. Verification relative1e-11 is arithmetic, not input perturbation accuracy.\n\nLimitation: NUMERIC_UNDERFLOW for nonzero text converted to zero; NUMERIC_RANGE for nonnormal inputs/outputs. Change length units or translate coordinates. No absolute zero clamp.\n\nLimitation: Interactive solve local; shared URLs, REST/MCP and analytics have separate disclosed data paths.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.6.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.6.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.plane.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.6.0",
                    "examples": [
                      "1.6.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.6.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.plane.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/rectangle": {
      "post": {
        "operationId": "calculate_math_geometry_plane_alias_rectangle",
        "summary": "Plane geometry (rectangle page alias)",
        "description": "Seven Euclidean plane shapes: rectangle, square, regular polygon, annulus, parallelogram, isosceles trapezoid and validated simple polygon. Complete area/perimeter and secondary measures; consistent length units, angles in degrees. (calculation_version 1.6.0)\n\nSemantic capability: `math.geometry.plane`.\n\nCalculation version: `1.6.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Positive dimensions and nonzero coordinates must be finite normal binary64; exact zero coordinates allowed. Positive reported measures must be normal binary64. Strict bounded decimal texts and matching active aliases.\n\nLimitation: Regular n is an integer3–9007199254740991; figures draw at most128 sides, otherwise explicitly omitted.\n\nLimitation: Simple polygon3–8 ordered distinct vertices, optional closing repetition. Exact predicates reject crossings, nonadjacent contacts, overlaps, backtracking and zero area. Concave, clockwise and collinear nonoverlapping intermediate vertices supported.\n\nLimitation: Annulus R>r>0; parallelogram0<theta<180 degrees with normal radian conversion; trapezoid assumes isosceles legs.\n\nLimitation: Thin rings/near-flat figures/topology are sensitive to input rounding. Exact predicates concern normalized binary64, not original arbitrary-precision decimals. Verification relative1e-11 is arithmetic, not input perturbation accuracy.\n\nLimitation: NUMERIC_UNDERFLOW for nonzero text converted to zero; NUMERIC_RANGE for nonnormal inputs/outputs. Change length units or translate coordinates. No absolute zero clamp.\n\nLimitation: Interactive solve local; shared URLs, REST/MCP and analytics have separate disclosed data paths.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.6.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.6.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.plane.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.6.0",
                    "examples": [
                      "1.6.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.6.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.plane.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/square": {
      "post": {
        "operationId": "calculate_math_geometry_plane_alias_square",
        "summary": "Plane geometry (square page alias)",
        "description": "Seven Euclidean plane shapes: rectangle, square, regular polygon, annulus, parallelogram, isosceles trapezoid and validated simple polygon. Complete area/perimeter and secondary measures; consistent length units, angles in degrees. (calculation_version 1.6.0)\n\nSemantic capability: `math.geometry.plane`.\n\nCalculation version: `1.6.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Positive dimensions and nonzero coordinates must be finite normal binary64; exact zero coordinates allowed. Positive reported measures must be normal binary64. Strict bounded decimal texts and matching active aliases.\n\nLimitation: Regular n is an integer3–9007199254740991; figures draw at most128 sides, otherwise explicitly omitted.\n\nLimitation: Simple polygon3–8 ordered distinct vertices, optional closing repetition. Exact predicates reject crossings, nonadjacent contacts, overlaps, backtracking and zero area. Concave, clockwise and collinear nonoverlapping intermediate vertices supported.\n\nLimitation: Annulus R>r>0; parallelogram0<theta<180 degrees with normal radian conversion; trapezoid assumes isosceles legs.\n\nLimitation: Thin rings/near-flat figures/topology are sensitive to input rounding. Exact predicates concern normalized binary64, not original arbitrary-precision decimals. Verification relative1e-11 is arithmetic, not input perturbation accuracy.\n\nLimitation: NUMERIC_UNDERFLOW for nonzero text converted to zero; NUMERIC_RANGE for nonnormal inputs/outputs. Change length units or translate coordinates. No absolute zero clamp.\n\nLimitation: Interactive solve local; shared URLs, REST/MCP and analytics have separate disclosed data paths.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.6.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.6.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.plane.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.6.0",
                    "examples": [
                      "1.6.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.6.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.plane.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/regular-polygon": {
      "post": {
        "operationId": "calculate_math_geometry_plane_alias_regular_polygon",
        "summary": "Plane geometry (regular-polygon page alias)",
        "description": "Seven Euclidean plane shapes: rectangle, square, regular polygon, annulus, parallelogram, isosceles trapezoid and validated simple polygon. Complete area/perimeter and secondary measures; consistent length units, angles in degrees. (calculation_version 1.6.0)\n\nSemantic capability: `math.geometry.plane`.\n\nCalculation version: `1.6.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Positive dimensions and nonzero coordinates must be finite normal binary64; exact zero coordinates allowed. Positive reported measures must be normal binary64. Strict bounded decimal texts and matching active aliases.\n\nLimitation: Regular n is an integer3–9007199254740991; figures draw at most128 sides, otherwise explicitly omitted.\n\nLimitation: Simple polygon3–8 ordered distinct vertices, optional closing repetition. Exact predicates reject crossings, nonadjacent contacts, overlaps, backtracking and zero area. Concave, clockwise and collinear nonoverlapping intermediate vertices supported.\n\nLimitation: Annulus R>r>0; parallelogram0<theta<180 degrees with normal radian conversion; trapezoid assumes isosceles legs.\n\nLimitation: Thin rings/near-flat figures/topology are sensitive to input rounding. Exact predicates concern normalized binary64, not original arbitrary-precision decimals. Verification relative1e-11 is arithmetic, not input perturbation accuracy.\n\nLimitation: NUMERIC_UNDERFLOW for nonzero text converted to zero; NUMERIC_RANGE for nonnormal inputs/outputs. Change length units or translate coordinates. No absolute zero clamp.\n\nLimitation: Interactive solve local; shared URLs, REST/MCP and analytics have separate disclosed data paths.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.6.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.6.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.plane.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.6.0",
                    "examples": [
                      "1.6.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.6.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.plane.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/annulus": {
      "post": {
        "operationId": "calculate_math_geometry_plane_alias_annulus",
        "summary": "Plane geometry (annulus page alias)",
        "description": "Seven Euclidean plane shapes: rectangle, square, regular polygon, annulus, parallelogram, isosceles trapezoid and validated simple polygon. Complete area/perimeter and secondary measures; consistent length units, angles in degrees. (calculation_version 1.6.0)\n\nSemantic capability: `math.geometry.plane`.\n\nCalculation version: `1.6.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Positive dimensions and nonzero coordinates must be finite normal binary64; exact zero coordinates allowed. Positive reported measures must be normal binary64. Strict bounded decimal texts and matching active aliases.\n\nLimitation: Regular n is an integer3–9007199254740991; figures draw at most128 sides, otherwise explicitly omitted.\n\nLimitation: Simple polygon3–8 ordered distinct vertices, optional closing repetition. Exact predicates reject crossings, nonadjacent contacts, overlaps, backtracking and zero area. Concave, clockwise and collinear nonoverlapping intermediate vertices supported.\n\nLimitation: Annulus R>r>0; parallelogram0<theta<180 degrees with normal radian conversion; trapezoid assumes isosceles legs.\n\nLimitation: Thin rings/near-flat figures/topology are sensitive to input rounding. Exact predicates concern normalized binary64, not original arbitrary-precision decimals. Verification relative1e-11 is arithmetic, not input perturbation accuracy.\n\nLimitation: NUMERIC_UNDERFLOW for nonzero text converted to zero; NUMERIC_RANGE for nonnormal inputs/outputs. Change length units or translate coordinates. No absolute zero clamp.\n\nLimitation: Interactive solve local; shared URLs, REST/MCP and analytics have separate disclosed data paths.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.6.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.6.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.plane.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.6.0",
                    "examples": [
                      "1.6.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.6.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.plane.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/parallelogram": {
      "post": {
        "operationId": "calculate_math_geometry_plane_alias_parallelogram",
        "summary": "Plane geometry (parallelogram page alias)",
        "description": "Seven Euclidean plane shapes: rectangle, square, regular polygon, annulus, parallelogram, isosceles trapezoid and validated simple polygon. Complete area/perimeter and secondary measures; consistent length units, angles in degrees. (calculation_version 1.6.0)\n\nSemantic capability: `math.geometry.plane`.\n\nCalculation version: `1.6.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Positive dimensions and nonzero coordinates must be finite normal binary64; exact zero coordinates allowed. Positive reported measures must be normal binary64. Strict bounded decimal texts and matching active aliases.\n\nLimitation: Regular n is an integer3–9007199254740991; figures draw at most128 sides, otherwise explicitly omitted.\n\nLimitation: Simple polygon3–8 ordered distinct vertices, optional closing repetition. Exact predicates reject crossings, nonadjacent contacts, overlaps, backtracking and zero area. Concave, clockwise and collinear nonoverlapping intermediate vertices supported.\n\nLimitation: Annulus R>r>0; parallelogram0<theta<180 degrees with normal radian conversion; trapezoid assumes isosceles legs.\n\nLimitation: Thin rings/near-flat figures/topology are sensitive to input rounding. Exact predicates concern normalized binary64, not original arbitrary-precision decimals. Verification relative1e-11 is arithmetic, not input perturbation accuracy.\n\nLimitation: NUMERIC_UNDERFLOW for nonzero text converted to zero; NUMERIC_RANGE for nonnormal inputs/outputs. Change length units or translate coordinates. No absolute zero clamp.\n\nLimitation: Interactive solve local; shared URLs, REST/MCP and analytics have separate disclosed data paths.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.6.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.6.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.plane.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.6.0",
                    "examples": [
                      "1.6.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.6.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.plane.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/trapezoid": {
      "post": {
        "operationId": "calculate_math_geometry_plane_alias_trapezoid",
        "summary": "Plane geometry (trapezoid page alias)",
        "description": "Seven Euclidean plane shapes: rectangle, square, regular polygon, annulus, parallelogram, isosceles trapezoid and validated simple polygon. Complete area/perimeter and secondary measures; consistent length units, angles in degrees. (calculation_version 1.6.0)\n\nSemantic capability: `math.geometry.plane`.\n\nCalculation version: `1.6.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Positive dimensions and nonzero coordinates must be finite normal binary64; exact zero coordinates allowed. Positive reported measures must be normal binary64. Strict bounded decimal texts and matching active aliases.\n\nLimitation: Regular n is an integer3–9007199254740991; figures draw at most128 sides, otherwise explicitly omitted.\n\nLimitation: Simple polygon3–8 ordered distinct vertices, optional closing repetition. Exact predicates reject crossings, nonadjacent contacts, overlaps, backtracking and zero area. Concave, clockwise and collinear nonoverlapping intermediate vertices supported.\n\nLimitation: Annulus R>r>0; parallelogram0<theta<180 degrees with normal radian conversion; trapezoid assumes isosceles legs.\n\nLimitation: Thin rings/near-flat figures/topology are sensitive to input rounding. Exact predicates concern normalized binary64, not original arbitrary-precision decimals. Verification relative1e-11 is arithmetic, not input perturbation accuracy.\n\nLimitation: NUMERIC_UNDERFLOW for nonzero text converted to zero; NUMERIC_RANGE for nonnormal inputs/outputs. Change length units or translate coordinates. No absolute zero clamp.\n\nLimitation: Interactive solve local; shared URLs, REST/MCP and analytics have separate disclosed data paths.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.6.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.6.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.plane.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.6.0",
                    "examples": [
                      "1.6.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.6.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.plane.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/irregular-polygon": {
      "post": {
        "operationId": "calculate_math_geometry_plane_alias_irregular_polygon",
        "summary": "Plane geometry (irregular-polygon page alias)",
        "description": "Seven Euclidean plane shapes: rectangle, square, regular polygon, annulus, parallelogram, isosceles trapezoid and validated simple polygon. Complete area/perimeter and secondary measures; consistent length units, angles in degrees. (calculation_version 1.6.0)\n\nSemantic capability: `math.geometry.plane`.\n\nCalculation version: `1.6.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Positive dimensions and nonzero coordinates must be finite normal binary64; exact zero coordinates allowed. Positive reported measures must be normal binary64. Strict bounded decimal texts and matching active aliases.\n\nLimitation: Regular n is an integer3–9007199254740991; figures draw at most128 sides, otherwise explicitly omitted.\n\nLimitation: Simple polygon3–8 ordered distinct vertices, optional closing repetition. Exact predicates reject crossings, nonadjacent contacts, overlaps, backtracking and zero area. Concave, clockwise and collinear nonoverlapping intermediate vertices supported.\n\nLimitation: Annulus R>r>0; parallelogram0<theta<180 degrees with normal radian conversion; trapezoid assumes isosceles legs.\n\nLimitation: Thin rings/near-flat figures/topology are sensitive to input rounding. Exact predicates concern normalized binary64, not original arbitrary-precision decimals. Verification relative1e-11 is arithmetic, not input perturbation accuracy.\n\nLimitation: NUMERIC_UNDERFLOW for nonzero text converted to zero; NUMERIC_RANGE for nonnormal inputs/outputs. Change length units or translate coordinates. No absolute zero clamp.\n\nLimitation: Interactive solve local; shared URLs, REST/MCP and analytics have separate disclosed data paths.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.6.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.6.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.geometry.plane.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.6.0",
                    "examples": [
                      "1.6.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.6.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.geometry.plane.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/special-functions": {
      "post": {
        "operationId": "calculate_math_special",
        "summary": "Special functions",
        "description": "Real erf, erfc, Gamma, log-gamma, integer-order J_n, Y_n, I_n, and K_n, Lambert W_0 and W_{-1}, Euler beta B(x,y), incomplete beta B_x(a,b), unnormalized sinc, and normalized sinc. Discovery /error-function, /gamma-function, /bessel-function, /bessel-y, /bessel-i, /bessel-k, /lambert-w, /lambert-w-minus-1, /beta-function, /incomplete-beta, /sinc-function, /normalized-sinc. Not factorial, not CAS. (calculation_version 1.10.6)\n\nSemantic capability: `math.special`.\n\nCalculation version: `1.10.6`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Real, dimensionless binary64 inputs; publishes12 significant digits, no arbitrary-precision/exact claim.\n\nLimitation: Default mode erf and Bessel order0 apply only when absent; explicit empty/null rejects. All supplied numeric aliases must agree; known irrelevant numeric parameters are parsed then ignored.\n\nLimitation: Gamma poles reject. Nonzero Gamma that underflows rejects NUMERICAL_RANGE_ERROR; positive overflow suggests lgamma. lgamma is computed directly for x>0 with a stable Taylor expansion near1 and2.\n\nLimitation: Bessel integer n0–8, |x|≤80, Y/K require x>0; subnormal error and zeros limit relative accuracy.\n\nLimitation: Lambert W0 and W-1 explicit real branches; binary64 -1/e designated endpoint, no tolerance band absorbs adjacent inputs.\n\nLimitation: Beta shapes positive and at most1e6, except exact B(x,1)=1/x or B(1,y)=1/y. Incomplete beta shapes at most1e6. CF capped10000 steps; failure NO_CONVERGENCE.\n\nLimitation: erf/erfc and beta tails can round to zero only on binary64 underflow, not an absolute display cutoff. Regularized incomplete beta evaluated separately in logs.\n\nLimitation: Normalized sinc uses sinpi reduction and returns zero at representable nonzero integer x. Other tiny nonzero results retain significance.\n\nLimitation: Numeric references have relative1e-10, with J/Y near zeros absolute2e-14,4 minimum subnormals otherwise. No global error proof for all real inputs.\n\nLimitation: Browser interaction computes locally; parameterized share pages, REST and MCP send inputs to server. Logs/retention/region are deployment concerns; no zero-log promise.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.10.6"
              ]
            },
            "description": "Pin calculation_version (published: 1.10.6); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.special.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.10.6",
                    "examples": [
                      "1.10.6"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.10.6"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.special.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/error-function": {
      "post": {
        "operationId": "calculate_math_special_alias_error_function",
        "summary": "Special functions (error-function page alias)",
        "description": "Real erf, erfc, Gamma, log-gamma, integer-order J_n, Y_n, I_n, and K_n, Lambert W_0 and W_{-1}, Euler beta B(x,y), incomplete beta B_x(a,b), unnormalized sinc, and normalized sinc. Discovery /error-function, /gamma-function, /bessel-function, /bessel-y, /bessel-i, /bessel-k, /lambert-w, /lambert-w-minus-1, /beta-function, /incomplete-beta, /sinc-function, /normalized-sinc. Not factorial, not CAS. (calculation_version 1.10.6)\n\nSemantic capability: `math.special`.\n\nCalculation version: `1.10.6`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Real, dimensionless binary64 inputs; publishes12 significant digits, no arbitrary-precision/exact claim.\n\nLimitation: Default mode erf and Bessel order0 apply only when absent; explicit empty/null rejects. All supplied numeric aliases must agree; known irrelevant numeric parameters are parsed then ignored.\n\nLimitation: Gamma poles reject. Nonzero Gamma that underflows rejects NUMERICAL_RANGE_ERROR; positive overflow suggests lgamma. lgamma is computed directly for x>0 with a stable Taylor expansion near1 and2.\n\nLimitation: Bessel integer n0–8, |x|≤80, Y/K require x>0; subnormal error and zeros limit relative accuracy.\n\nLimitation: Lambert W0 and W-1 explicit real branches; binary64 -1/e designated endpoint, no tolerance band absorbs adjacent inputs.\n\nLimitation: Beta shapes positive and at most1e6, except exact B(x,1)=1/x or B(1,y)=1/y. Incomplete beta shapes at most1e6. CF capped10000 steps; failure NO_CONVERGENCE.\n\nLimitation: erf/erfc and beta tails can round to zero only on binary64 underflow, not an absolute display cutoff. Regularized incomplete beta evaluated separately in logs.\n\nLimitation: Normalized sinc uses sinpi reduction and returns zero at representable nonzero integer x. Other tiny nonzero results retain significance.\n\nLimitation: Numeric references have relative1e-10, with J/Y near zeros absolute2e-14,4 minimum subnormals otherwise. No global error proof for all real inputs.\n\nLimitation: Browser interaction computes locally; parameterized share pages, REST and MCP send inputs to server. Logs/retention/region are deployment concerns; no zero-log promise.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.10.6"
              ]
            },
            "description": "Pin calculation_version (published: 1.10.6); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.special.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.10.6",
                    "examples": [
                      "1.10.6"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.10.6"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.special.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/gamma-function": {
      "post": {
        "operationId": "calculate_math_special_alias_gamma_function",
        "summary": "Special functions (gamma-function page alias)",
        "description": "Real erf, erfc, Gamma, log-gamma, integer-order J_n, Y_n, I_n, and K_n, Lambert W_0 and W_{-1}, Euler beta B(x,y), incomplete beta B_x(a,b), unnormalized sinc, and normalized sinc. Discovery /error-function, /gamma-function, /bessel-function, /bessel-y, /bessel-i, /bessel-k, /lambert-w, /lambert-w-minus-1, /beta-function, /incomplete-beta, /sinc-function, /normalized-sinc. Not factorial, not CAS. (calculation_version 1.10.6)\n\nSemantic capability: `math.special`.\n\nCalculation version: `1.10.6`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Real, dimensionless binary64 inputs; publishes12 significant digits, no arbitrary-precision/exact claim.\n\nLimitation: Default mode erf and Bessel order0 apply only when absent; explicit empty/null rejects. All supplied numeric aliases must agree; known irrelevant numeric parameters are parsed then ignored.\n\nLimitation: Gamma poles reject. Nonzero Gamma that underflows rejects NUMERICAL_RANGE_ERROR; positive overflow suggests lgamma. lgamma is computed directly for x>0 with a stable Taylor expansion near1 and2.\n\nLimitation: Bessel integer n0–8, |x|≤80, Y/K require x>0; subnormal error and zeros limit relative accuracy.\n\nLimitation: Lambert W0 and W-1 explicit real branches; binary64 -1/e designated endpoint, no tolerance band absorbs adjacent inputs.\n\nLimitation: Beta shapes positive and at most1e6, except exact B(x,1)=1/x or B(1,y)=1/y. Incomplete beta shapes at most1e6. CF capped10000 steps; failure NO_CONVERGENCE.\n\nLimitation: erf/erfc and beta tails can round to zero only on binary64 underflow, not an absolute display cutoff. Regularized incomplete beta evaluated separately in logs.\n\nLimitation: Normalized sinc uses sinpi reduction and returns zero at representable nonzero integer x. Other tiny nonzero results retain significance.\n\nLimitation: Numeric references have relative1e-10, with J/Y near zeros absolute2e-14,4 minimum subnormals otherwise. No global error proof for all real inputs.\n\nLimitation: Browser interaction computes locally; parameterized share pages, REST and MCP send inputs to server. Logs/retention/region are deployment concerns; no zero-log promise.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.10.6"
              ]
            },
            "description": "Pin calculation_version (published: 1.10.6); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.special.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.10.6",
                    "examples": [
                      "1.10.6"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.10.6"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.special.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/bessel-function": {
      "post": {
        "operationId": "calculate_math_special_alias_bessel_function",
        "summary": "Special functions (bessel-function page alias)",
        "description": "Real erf, erfc, Gamma, log-gamma, integer-order J_n, Y_n, I_n, and K_n, Lambert W_0 and W_{-1}, Euler beta B(x,y), incomplete beta B_x(a,b), unnormalized sinc, and normalized sinc. Discovery /error-function, /gamma-function, /bessel-function, /bessel-y, /bessel-i, /bessel-k, /lambert-w, /lambert-w-minus-1, /beta-function, /incomplete-beta, /sinc-function, /normalized-sinc. Not factorial, not CAS. (calculation_version 1.10.6)\n\nSemantic capability: `math.special`.\n\nCalculation version: `1.10.6`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Real, dimensionless binary64 inputs; publishes12 significant digits, no arbitrary-precision/exact claim.\n\nLimitation: Default mode erf and Bessel order0 apply only when absent; explicit empty/null rejects. All supplied numeric aliases must agree; known irrelevant numeric parameters are parsed then ignored.\n\nLimitation: Gamma poles reject. Nonzero Gamma that underflows rejects NUMERICAL_RANGE_ERROR; positive overflow suggests lgamma. lgamma is computed directly for x>0 with a stable Taylor expansion near1 and2.\n\nLimitation: Bessel integer n0–8, |x|≤80, Y/K require x>0; subnormal error and zeros limit relative accuracy.\n\nLimitation: Lambert W0 and W-1 explicit real branches; binary64 -1/e designated endpoint, no tolerance band absorbs adjacent inputs.\n\nLimitation: Beta shapes positive and at most1e6, except exact B(x,1)=1/x or B(1,y)=1/y. Incomplete beta shapes at most1e6. CF capped10000 steps; failure NO_CONVERGENCE.\n\nLimitation: erf/erfc and beta tails can round to zero only on binary64 underflow, not an absolute display cutoff. Regularized incomplete beta evaluated separately in logs.\n\nLimitation: Normalized sinc uses sinpi reduction and returns zero at representable nonzero integer x. Other tiny nonzero results retain significance.\n\nLimitation: Numeric references have relative1e-10, with J/Y near zeros absolute2e-14,4 minimum subnormals otherwise. No global error proof for all real inputs.\n\nLimitation: Browser interaction computes locally; parameterized share pages, REST and MCP send inputs to server. Logs/retention/region are deployment concerns; no zero-log promise.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.10.6"
              ]
            },
            "description": "Pin calculation_version (published: 1.10.6); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.special.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.10.6",
                    "examples": [
                      "1.10.6"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.10.6"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.special.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/lambert-w": {
      "post": {
        "operationId": "calculate_math_special_alias_lambert_w",
        "summary": "Special functions (lambert-w page alias)",
        "description": "Real erf, erfc, Gamma, log-gamma, integer-order J_n, Y_n, I_n, and K_n, Lambert W_0 and W_{-1}, Euler beta B(x,y), incomplete beta B_x(a,b), unnormalized sinc, and normalized sinc. Discovery /error-function, /gamma-function, /bessel-function, /bessel-y, /bessel-i, /bessel-k, /lambert-w, /lambert-w-minus-1, /beta-function, /incomplete-beta, /sinc-function, /normalized-sinc. Not factorial, not CAS. (calculation_version 1.10.6)\n\nSemantic capability: `math.special`.\n\nCalculation version: `1.10.6`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Real, dimensionless binary64 inputs; publishes12 significant digits, no arbitrary-precision/exact claim.\n\nLimitation: Default mode erf and Bessel order0 apply only when absent; explicit empty/null rejects. All supplied numeric aliases must agree; known irrelevant numeric parameters are parsed then ignored.\n\nLimitation: Gamma poles reject. Nonzero Gamma that underflows rejects NUMERICAL_RANGE_ERROR; positive overflow suggests lgamma. lgamma is computed directly for x>0 with a stable Taylor expansion near1 and2.\n\nLimitation: Bessel integer n0–8, |x|≤80, Y/K require x>0; subnormal error and zeros limit relative accuracy.\n\nLimitation: Lambert W0 and W-1 explicit real branches; binary64 -1/e designated endpoint, no tolerance band absorbs adjacent inputs.\n\nLimitation: Beta shapes positive and at most1e6, except exact B(x,1)=1/x or B(1,y)=1/y. Incomplete beta shapes at most1e6. CF capped10000 steps; failure NO_CONVERGENCE.\n\nLimitation: erf/erfc and beta tails can round to zero only on binary64 underflow, not an absolute display cutoff. Regularized incomplete beta evaluated separately in logs.\n\nLimitation: Normalized sinc uses sinpi reduction and returns zero at representable nonzero integer x. Other tiny nonzero results retain significance.\n\nLimitation: Numeric references have relative1e-10, with J/Y near zeros absolute2e-14,4 minimum subnormals otherwise. No global error proof for all real inputs.\n\nLimitation: Browser interaction computes locally; parameterized share pages, REST and MCP send inputs to server. Logs/retention/region are deployment concerns; no zero-log promise.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.10.6"
              ]
            },
            "description": "Pin calculation_version (published: 1.10.6); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.special.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.10.6",
                    "examples": [
                      "1.10.6"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.10.6"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.special.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/lambert-w-minus-1": {
      "post": {
        "operationId": "calculate_math_special_alias_lambert_w_minus_1",
        "summary": "Special functions (lambert-w-minus-1 page alias)",
        "description": "Real erf, erfc, Gamma, log-gamma, integer-order J_n, Y_n, I_n, and K_n, Lambert W_0 and W_{-1}, Euler beta B(x,y), incomplete beta B_x(a,b), unnormalized sinc, and normalized sinc. Discovery /error-function, /gamma-function, /bessel-function, /bessel-y, /bessel-i, /bessel-k, /lambert-w, /lambert-w-minus-1, /beta-function, /incomplete-beta, /sinc-function, /normalized-sinc. Not factorial, not CAS. (calculation_version 1.10.6)\n\nSemantic capability: `math.special`.\n\nCalculation version: `1.10.6`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Real, dimensionless binary64 inputs; publishes12 significant digits, no arbitrary-precision/exact claim.\n\nLimitation: Default mode erf and Bessel order0 apply only when absent; explicit empty/null rejects. All supplied numeric aliases must agree; known irrelevant numeric parameters are parsed then ignored.\n\nLimitation: Gamma poles reject. Nonzero Gamma that underflows rejects NUMERICAL_RANGE_ERROR; positive overflow suggests lgamma. lgamma is computed directly for x>0 with a stable Taylor expansion near1 and2.\n\nLimitation: Bessel integer n0–8, |x|≤80, Y/K require x>0; subnormal error and zeros limit relative accuracy.\n\nLimitation: Lambert W0 and W-1 explicit real branches; binary64 -1/e designated endpoint, no tolerance band absorbs adjacent inputs.\n\nLimitation: Beta shapes positive and at most1e6, except exact B(x,1)=1/x or B(1,y)=1/y. Incomplete beta shapes at most1e6. CF capped10000 steps; failure NO_CONVERGENCE.\n\nLimitation: erf/erfc and beta tails can round to zero only on binary64 underflow, not an absolute display cutoff. Regularized incomplete beta evaluated separately in logs.\n\nLimitation: Normalized sinc uses sinpi reduction and returns zero at representable nonzero integer x. Other tiny nonzero results retain significance.\n\nLimitation: Numeric references have relative1e-10, with J/Y near zeros absolute2e-14,4 minimum subnormals otherwise. No global error proof for all real inputs.\n\nLimitation: Browser interaction computes locally; parameterized share pages, REST and MCP send inputs to server. Logs/retention/region are deployment concerns; no zero-log promise.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.10.6"
              ]
            },
            "description": "Pin calculation_version (published: 1.10.6); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.special.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.10.6",
                    "examples": [
                      "1.10.6"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.10.6"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.special.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/beta-function": {
      "post": {
        "operationId": "calculate_math_special_alias_beta_function",
        "summary": "Special functions (beta-function page alias)",
        "description": "Real erf, erfc, Gamma, log-gamma, integer-order J_n, Y_n, I_n, and K_n, Lambert W_0 and W_{-1}, Euler beta B(x,y), incomplete beta B_x(a,b), unnormalized sinc, and normalized sinc. Discovery /error-function, /gamma-function, /bessel-function, /bessel-y, /bessel-i, /bessel-k, /lambert-w, /lambert-w-minus-1, /beta-function, /incomplete-beta, /sinc-function, /normalized-sinc. Not factorial, not CAS. (calculation_version 1.10.6)\n\nSemantic capability: `math.special`.\n\nCalculation version: `1.10.6`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Real, dimensionless binary64 inputs; publishes12 significant digits, no arbitrary-precision/exact claim.\n\nLimitation: Default mode erf and Bessel order0 apply only when absent; explicit empty/null rejects. All supplied numeric aliases must agree; known irrelevant numeric parameters are parsed then ignored.\n\nLimitation: Gamma poles reject. Nonzero Gamma that underflows rejects NUMERICAL_RANGE_ERROR; positive overflow suggests lgamma. lgamma is computed directly for x>0 with a stable Taylor expansion near1 and2.\n\nLimitation: Bessel integer n0–8, |x|≤80, Y/K require x>0; subnormal error and zeros limit relative accuracy.\n\nLimitation: Lambert W0 and W-1 explicit real branches; binary64 -1/e designated endpoint, no tolerance band absorbs adjacent inputs.\n\nLimitation: Beta shapes positive and at most1e6, except exact B(x,1)=1/x or B(1,y)=1/y. Incomplete beta shapes at most1e6. CF capped10000 steps; failure NO_CONVERGENCE.\n\nLimitation: erf/erfc and beta tails can round to zero only on binary64 underflow, not an absolute display cutoff. Regularized incomplete beta evaluated separately in logs.\n\nLimitation: Normalized sinc uses sinpi reduction and returns zero at representable nonzero integer x. Other tiny nonzero results retain significance.\n\nLimitation: Numeric references have relative1e-10, with J/Y near zeros absolute2e-14,4 minimum subnormals otherwise. No global error proof for all real inputs.\n\nLimitation: Browser interaction computes locally; parameterized share pages, REST and MCP send inputs to server. Logs/retention/region are deployment concerns; no zero-log promise.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.10.6"
              ]
            },
            "description": "Pin calculation_version (published: 1.10.6); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.special.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.10.6",
                    "examples": [
                      "1.10.6"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.10.6"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.special.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/incomplete-beta": {
      "post": {
        "operationId": "calculate_math_special_alias_incomplete_beta",
        "summary": "Special functions (incomplete-beta page alias)",
        "description": "Real erf, erfc, Gamma, log-gamma, integer-order J_n, Y_n, I_n, and K_n, Lambert W_0 and W_{-1}, Euler beta B(x,y), incomplete beta B_x(a,b), unnormalized sinc, and normalized sinc. Discovery /error-function, /gamma-function, /bessel-function, /bessel-y, /bessel-i, /bessel-k, /lambert-w, /lambert-w-minus-1, /beta-function, /incomplete-beta, /sinc-function, /normalized-sinc. Not factorial, not CAS. (calculation_version 1.10.6)\n\nSemantic capability: `math.special`.\n\nCalculation version: `1.10.6`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Real, dimensionless binary64 inputs; publishes12 significant digits, no arbitrary-precision/exact claim.\n\nLimitation: Default mode erf and Bessel order0 apply only when absent; explicit empty/null rejects. All supplied numeric aliases must agree; known irrelevant numeric parameters are parsed then ignored.\n\nLimitation: Gamma poles reject. Nonzero Gamma that underflows rejects NUMERICAL_RANGE_ERROR; positive overflow suggests lgamma. lgamma is computed directly for x>0 with a stable Taylor expansion near1 and2.\n\nLimitation: Bessel integer n0–8, |x|≤80, Y/K require x>0; subnormal error and zeros limit relative accuracy.\n\nLimitation: Lambert W0 and W-1 explicit real branches; binary64 -1/e designated endpoint, no tolerance band absorbs adjacent inputs.\n\nLimitation: Beta shapes positive and at most1e6, except exact B(x,1)=1/x or B(1,y)=1/y. Incomplete beta shapes at most1e6. CF capped10000 steps; failure NO_CONVERGENCE.\n\nLimitation: erf/erfc and beta tails can round to zero only on binary64 underflow, not an absolute display cutoff. Regularized incomplete beta evaluated separately in logs.\n\nLimitation: Normalized sinc uses sinpi reduction and returns zero at representable nonzero integer x. Other tiny nonzero results retain significance.\n\nLimitation: Numeric references have relative1e-10, with J/Y near zeros absolute2e-14,4 minimum subnormals otherwise. No global error proof for all real inputs.\n\nLimitation: Browser interaction computes locally; parameterized share pages, REST and MCP send inputs to server. Logs/retention/region are deployment concerns; no zero-log promise.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.10.6"
              ]
            },
            "description": "Pin calculation_version (published: 1.10.6); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.special.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.10.6",
                    "examples": [
                      "1.10.6"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.10.6"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.special.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/sinc-function": {
      "post": {
        "operationId": "calculate_math_special_alias_sinc_function",
        "summary": "Special functions (sinc-function page alias)",
        "description": "Real erf, erfc, Gamma, log-gamma, integer-order J_n, Y_n, I_n, and K_n, Lambert W_0 and W_{-1}, Euler beta B(x,y), incomplete beta B_x(a,b), unnormalized sinc, and normalized sinc. Discovery /error-function, /gamma-function, /bessel-function, /bessel-y, /bessel-i, /bessel-k, /lambert-w, /lambert-w-minus-1, /beta-function, /incomplete-beta, /sinc-function, /normalized-sinc. Not factorial, not CAS. (calculation_version 1.10.6)\n\nSemantic capability: `math.special`.\n\nCalculation version: `1.10.6`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Real, dimensionless binary64 inputs; publishes12 significant digits, no arbitrary-precision/exact claim.\n\nLimitation: Default mode erf and Bessel order0 apply only when absent; explicit empty/null rejects. All supplied numeric aliases must agree; known irrelevant numeric parameters are parsed then ignored.\n\nLimitation: Gamma poles reject. Nonzero Gamma that underflows rejects NUMERICAL_RANGE_ERROR; positive overflow suggests lgamma. lgamma is computed directly for x>0 with a stable Taylor expansion near1 and2.\n\nLimitation: Bessel integer n0–8, |x|≤80, Y/K require x>0; subnormal error and zeros limit relative accuracy.\n\nLimitation: Lambert W0 and W-1 explicit real branches; binary64 -1/e designated endpoint, no tolerance band absorbs adjacent inputs.\n\nLimitation: Beta shapes positive and at most1e6, except exact B(x,1)=1/x or B(1,y)=1/y. Incomplete beta shapes at most1e6. CF capped10000 steps; failure NO_CONVERGENCE.\n\nLimitation: erf/erfc and beta tails can round to zero only on binary64 underflow, not an absolute display cutoff. Regularized incomplete beta evaluated separately in logs.\n\nLimitation: Normalized sinc uses sinpi reduction and returns zero at representable nonzero integer x. Other tiny nonzero results retain significance.\n\nLimitation: Numeric references have relative1e-10, with J/Y near zeros absolute2e-14,4 minimum subnormals otherwise. No global error proof for all real inputs.\n\nLimitation: Browser interaction computes locally; parameterized share pages, REST and MCP send inputs to server. Logs/retention/region are deployment concerns; no zero-log promise.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.10.6"
              ]
            },
            "description": "Pin calculation_version (published: 1.10.6); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.special.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.10.6",
                    "examples": [
                      "1.10.6"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.10.6"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.special.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/normalized-sinc": {
      "post": {
        "operationId": "calculate_math_special_alias_normalized_sinc",
        "summary": "Special functions (normalized-sinc page alias)",
        "description": "Real erf, erfc, Gamma, log-gamma, integer-order J_n, Y_n, I_n, and K_n, Lambert W_0 and W_{-1}, Euler beta B(x,y), incomplete beta B_x(a,b), unnormalized sinc, and normalized sinc. Discovery /error-function, /gamma-function, /bessel-function, /bessel-y, /bessel-i, /bessel-k, /lambert-w, /lambert-w-minus-1, /beta-function, /incomplete-beta, /sinc-function, /normalized-sinc. Not factorial, not CAS. (calculation_version 1.10.6)\n\nSemantic capability: `math.special`.\n\nCalculation version: `1.10.6`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Real, dimensionless binary64 inputs; publishes12 significant digits, no arbitrary-precision/exact claim.\n\nLimitation: Default mode erf and Bessel order0 apply only when absent; explicit empty/null rejects. All supplied numeric aliases must agree; known irrelevant numeric parameters are parsed then ignored.\n\nLimitation: Gamma poles reject. Nonzero Gamma that underflows rejects NUMERICAL_RANGE_ERROR; positive overflow suggests lgamma. lgamma is computed directly for x>0 with a stable Taylor expansion near1 and2.\n\nLimitation: Bessel integer n0–8, |x|≤80, Y/K require x>0; subnormal error and zeros limit relative accuracy.\n\nLimitation: Lambert W0 and W-1 explicit real branches; binary64 -1/e designated endpoint, no tolerance band absorbs adjacent inputs.\n\nLimitation: Beta shapes positive and at most1e6, except exact B(x,1)=1/x or B(1,y)=1/y. Incomplete beta shapes at most1e6. CF capped10000 steps; failure NO_CONVERGENCE.\n\nLimitation: erf/erfc and beta tails can round to zero only on binary64 underflow, not an absolute display cutoff. Regularized incomplete beta evaluated separately in logs.\n\nLimitation: Normalized sinc uses sinpi reduction and returns zero at representable nonzero integer x. Other tiny nonzero results retain significance.\n\nLimitation: Numeric references have relative1e-10, with J/Y near zeros absolute2e-14,4 minimum subnormals otherwise. No global error proof for all real inputs.\n\nLimitation: Browser interaction computes locally; parameterized share pages, REST and MCP send inputs to server. Logs/retention/region are deployment concerns; no zero-log promise.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.10.6"
              ]
            },
            "description": "Pin calculation_version (published: 1.10.6); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.special.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.10.6",
                    "examples": [
                      "1.10.6"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.10.6"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.special.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/bessel-y": {
      "post": {
        "operationId": "calculate_math_special_alias_bessel_y",
        "summary": "Special functions (bessel-y page alias)",
        "description": "Real erf, erfc, Gamma, log-gamma, integer-order J_n, Y_n, I_n, and K_n, Lambert W_0 and W_{-1}, Euler beta B(x,y), incomplete beta B_x(a,b), unnormalized sinc, and normalized sinc. Discovery /error-function, /gamma-function, /bessel-function, /bessel-y, /bessel-i, /bessel-k, /lambert-w, /lambert-w-minus-1, /beta-function, /incomplete-beta, /sinc-function, /normalized-sinc. Not factorial, not CAS. (calculation_version 1.10.6)\n\nSemantic capability: `math.special`.\n\nCalculation version: `1.10.6`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Real, dimensionless binary64 inputs; publishes12 significant digits, no arbitrary-precision/exact claim.\n\nLimitation: Default mode erf and Bessel order0 apply only when absent; explicit empty/null rejects. All supplied numeric aliases must agree; known irrelevant numeric parameters are parsed then ignored.\n\nLimitation: Gamma poles reject. Nonzero Gamma that underflows rejects NUMERICAL_RANGE_ERROR; positive overflow suggests lgamma. lgamma is computed directly for x>0 with a stable Taylor expansion near1 and2.\n\nLimitation: Bessel integer n0–8, |x|≤80, Y/K require x>0; subnormal error and zeros limit relative accuracy.\n\nLimitation: Lambert W0 and W-1 explicit real branches; binary64 -1/e designated endpoint, no tolerance band absorbs adjacent inputs.\n\nLimitation: Beta shapes positive and at most1e6, except exact B(x,1)=1/x or B(1,y)=1/y. Incomplete beta shapes at most1e6. CF capped10000 steps; failure NO_CONVERGENCE.\n\nLimitation: erf/erfc and beta tails can round to zero only on binary64 underflow, not an absolute display cutoff. Regularized incomplete beta evaluated separately in logs.\n\nLimitation: Normalized sinc uses sinpi reduction and returns zero at representable nonzero integer x. Other tiny nonzero results retain significance.\n\nLimitation: Numeric references have relative1e-10, with J/Y near zeros absolute2e-14,4 minimum subnormals otherwise. No global error proof for all real inputs.\n\nLimitation: Browser interaction computes locally; parameterized share pages, REST and MCP send inputs to server. Logs/retention/region are deployment concerns; no zero-log promise.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.10.6"
              ]
            },
            "description": "Pin calculation_version (published: 1.10.6); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.special.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.10.6",
                    "examples": [
                      "1.10.6"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.10.6"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.special.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/bessel-i": {
      "post": {
        "operationId": "calculate_math_special_alias_bessel_i",
        "summary": "Special functions (bessel-i page alias)",
        "description": "Real erf, erfc, Gamma, log-gamma, integer-order J_n, Y_n, I_n, and K_n, Lambert W_0 and W_{-1}, Euler beta B(x,y), incomplete beta B_x(a,b), unnormalized sinc, and normalized sinc. Discovery /error-function, /gamma-function, /bessel-function, /bessel-y, /bessel-i, /bessel-k, /lambert-w, /lambert-w-minus-1, /beta-function, /incomplete-beta, /sinc-function, /normalized-sinc. Not factorial, not CAS. (calculation_version 1.10.6)\n\nSemantic capability: `math.special`.\n\nCalculation version: `1.10.6`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Real, dimensionless binary64 inputs; publishes12 significant digits, no arbitrary-precision/exact claim.\n\nLimitation: Default mode erf and Bessel order0 apply only when absent; explicit empty/null rejects. All supplied numeric aliases must agree; known irrelevant numeric parameters are parsed then ignored.\n\nLimitation: Gamma poles reject. Nonzero Gamma that underflows rejects NUMERICAL_RANGE_ERROR; positive overflow suggests lgamma. lgamma is computed directly for x>0 with a stable Taylor expansion near1 and2.\n\nLimitation: Bessel integer n0–8, |x|≤80, Y/K require x>0; subnormal error and zeros limit relative accuracy.\n\nLimitation: Lambert W0 and W-1 explicit real branches; binary64 -1/e designated endpoint, no tolerance band absorbs adjacent inputs.\n\nLimitation: Beta shapes positive and at most1e6, except exact B(x,1)=1/x or B(1,y)=1/y. Incomplete beta shapes at most1e6. CF capped10000 steps; failure NO_CONVERGENCE.\n\nLimitation: erf/erfc and beta tails can round to zero only on binary64 underflow, not an absolute display cutoff. Regularized incomplete beta evaluated separately in logs.\n\nLimitation: Normalized sinc uses sinpi reduction and returns zero at representable nonzero integer x. Other tiny nonzero results retain significance.\n\nLimitation: Numeric references have relative1e-10, with J/Y near zeros absolute2e-14,4 minimum subnormals otherwise. No global error proof for all real inputs.\n\nLimitation: Browser interaction computes locally; parameterized share pages, REST and MCP send inputs to server. Logs/retention/region are deployment concerns; no zero-log promise.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.10.6"
              ]
            },
            "description": "Pin calculation_version (published: 1.10.6); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.special.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.10.6",
                    "examples": [
                      "1.10.6"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.10.6"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.special.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/bessel-k": {
      "post": {
        "operationId": "calculate_math_special_alias_bessel_k",
        "summary": "Special functions (bessel-k page alias)",
        "description": "Real erf, erfc, Gamma, log-gamma, integer-order J_n, Y_n, I_n, and K_n, Lambert W_0 and W_{-1}, Euler beta B(x,y), incomplete beta B_x(a,b), unnormalized sinc, and normalized sinc. Discovery /error-function, /gamma-function, /bessel-function, /bessel-y, /bessel-i, /bessel-k, /lambert-w, /lambert-w-minus-1, /beta-function, /incomplete-beta, /sinc-function, /normalized-sinc. Not factorial, not CAS. (calculation_version 1.10.6)\n\nSemantic capability: `math.special`.\n\nCalculation version: `1.10.6`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Real, dimensionless binary64 inputs; publishes12 significant digits, no arbitrary-precision/exact claim.\n\nLimitation: Default mode erf and Bessel order0 apply only when absent; explicit empty/null rejects. All supplied numeric aliases must agree; known irrelevant numeric parameters are parsed then ignored.\n\nLimitation: Gamma poles reject. Nonzero Gamma that underflows rejects NUMERICAL_RANGE_ERROR; positive overflow suggests lgamma. lgamma is computed directly for x>0 with a stable Taylor expansion near1 and2.\n\nLimitation: Bessel integer n0–8, |x|≤80, Y/K require x>0; subnormal error and zeros limit relative accuracy.\n\nLimitation: Lambert W0 and W-1 explicit real branches; binary64 -1/e designated endpoint, no tolerance band absorbs adjacent inputs.\n\nLimitation: Beta shapes positive and at most1e6, except exact B(x,1)=1/x or B(1,y)=1/y. Incomplete beta shapes at most1e6. CF capped10000 steps; failure NO_CONVERGENCE.\n\nLimitation: erf/erfc and beta tails can round to zero only on binary64 underflow, not an absolute display cutoff. Regularized incomplete beta evaluated separately in logs.\n\nLimitation: Normalized sinc uses sinpi reduction and returns zero at representable nonzero integer x. Other tiny nonzero results retain significance.\n\nLimitation: Numeric references have relative1e-10, with J/Y near zeros absolute2e-14,4 minimum subnormals otherwise. No global error proof for all real inputs.\n\nLimitation: Browser interaction computes locally; parameterized share pages, REST and MCP send inputs to server. Logs/retention/region are deployment concerns; no zero-log promise.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.10.6"
              ]
            },
            "description": "Pin calculation_version (published: 1.10.6); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.special.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.10.6",
                    "examples": [
                      "1.10.6"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.10.6"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.special.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/discrete-fourier-transform": {
      "post": {
        "operationId": "calculate_math_transform_dft",
        "summary": "Discrete Fourier transform",
        "description": "Direct DFT / IDFT and radix-2 FFT / IFFT of a length-N sequence, N≤64. FFT requires N=2^k. Numpy backward: unnormalized forward, 1/N inverse. Discovery /dft, /inverse-dft, /fft, /ifft. Not Laplace, not Z, not CAS. (calculation_version 1.2.3)\n\nSemantic capability: `math.transform.dft`.\n\nCalculation version: `1.2.3`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Direct O(N²) DFT/IDFT, N≤64; radix-2 FFT/IFFT, N=2^k ≤64\n\nLimitation: Numpy backward: unnormalized forward, 1/N inverse\n\nLimitation: FFT agrees with DFT for power-of-2 N (Float64)\n\nLimitation: Not Laplace / Z — other canonicals\n\nLimitation: Not CAS\n\nLimitation: unknown mode (including laplace, cas) → INVALID_MODE\n\nLimitation: Decimal nonzero input underflow → NUMERIC_UNDERFLOW; malformed/conflicting inputs rejected.\n\nLimitation: Exact dyadic sums/products of binary64 twiddles; no exact transcendental or per-bin relative guarantee near cancellation zeros.\n\nLimitation: Nonzero evaluated output component below binary64 or nonfinite output/magnitude → NUMERICAL_RANGE_ERROR. Intermediate overflow is avoided. Input echoes retain binary64; outputs publish12 significant digits.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.3"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.3); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.transform.dft.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.3",
                    "examples": [
                      "1.2.3"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "fft",
                  "samples": [
                    1,
                    0,
                    0,
                    0
                  ]
                },
                "calculation_version": "1.2.3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.transform.dft.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/dft": {
      "post": {
        "operationId": "calculate_math_transform_dft_alias_dft",
        "summary": "Discrete Fourier transform (dft page alias)",
        "description": "Direct DFT / IDFT and radix-2 FFT / IFFT of a length-N sequence, N≤64. FFT requires N=2^k. Numpy backward: unnormalized forward, 1/N inverse. Discovery /dft, /inverse-dft, /fft, /ifft. Not Laplace, not Z, not CAS. (calculation_version 1.2.3)\n\nSemantic capability: `math.transform.dft`.\n\nCalculation version: `1.2.3`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Direct O(N²) DFT/IDFT, N≤64; radix-2 FFT/IFFT, N=2^k ≤64\n\nLimitation: Numpy backward: unnormalized forward, 1/N inverse\n\nLimitation: FFT agrees with DFT for power-of-2 N (Float64)\n\nLimitation: Not Laplace / Z — other canonicals\n\nLimitation: Not CAS\n\nLimitation: unknown mode (including laplace, cas) → INVALID_MODE\n\nLimitation: Decimal nonzero input underflow → NUMERIC_UNDERFLOW; malformed/conflicting inputs rejected.\n\nLimitation: Exact dyadic sums/products of binary64 twiddles; no exact transcendental or per-bin relative guarantee near cancellation zeros.\n\nLimitation: Nonzero evaluated output component below binary64 or nonfinite output/magnitude → NUMERICAL_RANGE_ERROR. Intermediate overflow is avoided. Input echoes retain binary64; outputs publish12 significant digits.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.3"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.3); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.transform.dft.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.3",
                    "examples": [
                      "1.2.3"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "fft",
                  "samples": [
                    1,
                    0,
                    0,
                    0
                  ]
                },
                "calculation_version": "1.2.3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.transform.dft.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/inverse-dft": {
      "post": {
        "operationId": "calculate_math_transform_dft_alias_inverse_dft",
        "summary": "Discrete Fourier transform (inverse-dft page alias)",
        "description": "Direct DFT / IDFT and radix-2 FFT / IFFT of a length-N sequence, N≤64. FFT requires N=2^k. Numpy backward: unnormalized forward, 1/N inverse. Discovery /dft, /inverse-dft, /fft, /ifft. Not Laplace, not Z, not CAS. (calculation_version 1.2.3)\n\nSemantic capability: `math.transform.dft`.\n\nCalculation version: `1.2.3`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Direct O(N²) DFT/IDFT, N≤64; radix-2 FFT/IFFT, N=2^k ≤64\n\nLimitation: Numpy backward: unnormalized forward, 1/N inverse\n\nLimitation: FFT agrees with DFT for power-of-2 N (Float64)\n\nLimitation: Not Laplace / Z — other canonicals\n\nLimitation: Not CAS\n\nLimitation: unknown mode (including laplace, cas) → INVALID_MODE\n\nLimitation: Decimal nonzero input underflow → NUMERIC_UNDERFLOW; malformed/conflicting inputs rejected.\n\nLimitation: Exact dyadic sums/products of binary64 twiddles; no exact transcendental or per-bin relative guarantee near cancellation zeros.\n\nLimitation: Nonzero evaluated output component below binary64 or nonfinite output/magnitude → NUMERICAL_RANGE_ERROR. Intermediate overflow is avoided. Input echoes retain binary64; outputs publish12 significant digits.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.3"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.3); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.transform.dft.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.3",
                    "examples": [
                      "1.2.3"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "fft",
                  "samples": [
                    1,
                    0,
                    0,
                    0
                  ]
                },
                "calculation_version": "1.2.3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.transform.dft.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/fft": {
      "post": {
        "operationId": "calculate_math_transform_dft_alias_fft",
        "summary": "Discrete Fourier transform (fft page alias)",
        "description": "Direct DFT / IDFT and radix-2 FFT / IFFT of a length-N sequence, N≤64. FFT requires N=2^k. Numpy backward: unnormalized forward, 1/N inverse. Discovery /dft, /inverse-dft, /fft, /ifft. Not Laplace, not Z, not CAS. (calculation_version 1.2.3)\n\nSemantic capability: `math.transform.dft`.\n\nCalculation version: `1.2.3`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Direct O(N²) DFT/IDFT, N≤64; radix-2 FFT/IFFT, N=2^k ≤64\n\nLimitation: Numpy backward: unnormalized forward, 1/N inverse\n\nLimitation: FFT agrees with DFT for power-of-2 N (Float64)\n\nLimitation: Not Laplace / Z — other canonicals\n\nLimitation: Not CAS\n\nLimitation: unknown mode (including laplace, cas) → INVALID_MODE\n\nLimitation: Decimal nonzero input underflow → NUMERIC_UNDERFLOW; malformed/conflicting inputs rejected.\n\nLimitation: Exact dyadic sums/products of binary64 twiddles; no exact transcendental or per-bin relative guarantee near cancellation zeros.\n\nLimitation: Nonzero evaluated output component below binary64 or nonfinite output/magnitude → NUMERICAL_RANGE_ERROR. Intermediate overflow is avoided. Input echoes retain binary64; outputs publish12 significant digits.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.3"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.3); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.transform.dft.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.3",
                    "examples": [
                      "1.2.3"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "fft",
                  "samples": [
                    1,
                    0,
                    0,
                    0
                  ]
                },
                "calculation_version": "1.2.3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.transform.dft.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/ifft": {
      "post": {
        "operationId": "calculate_math_transform_dft_alias_ifft",
        "summary": "Discrete Fourier transform (ifft page alias)",
        "description": "Direct DFT / IDFT and radix-2 FFT / IFFT of a length-N sequence, N≤64. FFT requires N=2^k. Numpy backward: unnormalized forward, 1/N inverse. Discovery /dft, /inverse-dft, /fft, /ifft. Not Laplace, not Z, not CAS. (calculation_version 1.2.3)\n\nSemantic capability: `math.transform.dft`.\n\nCalculation version: `1.2.3`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Direct O(N²) DFT/IDFT, N≤64; radix-2 FFT/IFFT, N=2^k ≤64\n\nLimitation: Numpy backward: unnormalized forward, 1/N inverse\n\nLimitation: FFT agrees with DFT for power-of-2 N (Float64)\n\nLimitation: Not Laplace / Z — other canonicals\n\nLimitation: Not CAS\n\nLimitation: unknown mode (including laplace, cas) → INVALID_MODE\n\nLimitation: Decimal nonzero input underflow → NUMERIC_UNDERFLOW; malformed/conflicting inputs rejected.\n\nLimitation: Exact dyadic sums/products of binary64 twiddles; no exact transcendental or per-bin relative guarantee near cancellation zeros.\n\nLimitation: Nonzero evaluated output component below binary64 or nonfinite output/magnitude → NUMERICAL_RANGE_ERROR. Intermediate overflow is avoided. Input echoes retain binary64; outputs publish12 significant digits.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.3"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.3); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.transform.dft.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.3",
                    "examples": [
                      "1.2.3"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "fft",
                  "samples": [
                    1,
                    0,
                    0,
                    0
                  ]
                },
                "calculation_version": "1.2.3"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.transform.dft.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/laplace-transform": {
      "post": {
        "operationId": "calculate_math_transform_laplace",
        "summary": "Laplace transform",
        "description": "Unilateral Laplace table of causal elementary pairs: exp, sin, cos, step, ramp, t^n, damped sin/cos. Evaluate F(s) or f(t). Discovery /inverse-laplace. Not DFT, not Z, not Bromwich, not CAS. (calculation_version 1.0.4)\n\nSemantic capability: `math.transform.laplace`.\n\nCalculation version: `1.0.4`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Unilateral causal elementary table; eight named pairs, power integer0–8; inverse table evaluation at t≥0, step(0)=1 and0^0=1 convention\n\nLimitation: Finite real s strictly inside the conservative stated ROC, even degenerate zero sine; real dimensionless parameters, omega in radians per unit t\n\nLimitation: Binary64 approximate evaluation,12 significant digits;2e-11 relative fixture tolerance, no uniform accuracy theorem; conditioned near poles/trig zeros\n\nLimitation: Coded input underflow, numerical range/phase/quantization refusal; no fabricated nonzero-to-zero success\n\nLimitation: Inputs/method/pair aliases must agree; unknown fields rejected\n\nLimitation: DFT, Z and unrestricted symbolic/contour inversion are separate models",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.4"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.4); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.transform.laplace.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.4",
                    "examples": [
                      "1.0.4"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "laplace",
                  "f": "exp",
                  "a": -1,
                  "s": 1
                },
                "calculation_version": "1.0.4"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.transform.laplace.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/inverse-laplace": {
      "post": {
        "operationId": "calculate_math_transform_laplace_alias_inverse_laplace",
        "summary": "Laplace transform (inverse-laplace page alias)",
        "description": "Unilateral Laplace table of causal elementary pairs: exp, sin, cos, step, ramp, t^n, damped sin/cos. Evaluate F(s) or f(t). Discovery /inverse-laplace. Not DFT, not Z, not Bromwich, not CAS. (calculation_version 1.0.4)\n\nSemantic capability: `math.transform.laplace`.\n\nCalculation version: `1.0.4`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Unilateral causal elementary table; eight named pairs, power integer0–8; inverse table evaluation at t≥0, step(0)=1 and0^0=1 convention\n\nLimitation: Finite real s strictly inside the conservative stated ROC, even degenerate zero sine; real dimensionless parameters, omega in radians per unit t\n\nLimitation: Binary64 approximate evaluation,12 significant digits;2e-11 relative fixture tolerance, no uniform accuracy theorem; conditioned near poles/trig zeros\n\nLimitation: Coded input underflow, numerical range/phase/quantization refusal; no fabricated nonzero-to-zero success\n\nLimitation: Inputs/method/pair aliases must agree; unknown fields rejected\n\nLimitation: DFT, Z and unrestricted symbolic/contour inversion are separate models",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.4"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.4); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.transform.laplace.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.4",
                    "examples": [
                      "1.0.4"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "laplace",
                  "f": "exp",
                  "a": -1,
                  "s": 1
                },
                "calculation_version": "1.0.4"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.transform.laplace.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/z-transform": {
      "post": {
        "operationId": "calculate_math_transform_z",
        "summary": "Z transform",
        "description": "Unilateral Z table of causal elementary pairs: a^n, step, ramp, n a^n, sin, cos, damped sin/cos. Evaluate X(z) or x[n]. Discovery /inverse-z. Not DFT, not Laplace, not residue, not CAS. (calculation_version 1.0.5)\n\nSemantic capability: `math.transform.z`.\n\nCalculation version: `1.0.5`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Unilateral causal elementary table; eight named pairs, inverse integer0–64; u[0]=1,a^0=1 including a=0\n\nLimitation: Finite real z strictly outside conservative ROC radius on either real branch, including degenerate zero sine; a,z dimensionless, omega radians per sample\n\nLimitation: Binary64 approximate evaluation,12 significant digits;2e-11 relative fixture tolerance, no uniform accuracy theorem; conditioned near poles and trig zeros\n\nLimitation: Coded decimal input underflow and numerical range/phase/quantization refusals; inverse subnormal relative precision may be refused despite representability\n\nLimitation: Aliases must agree; null, nondecimal scalar forms and unknown fields rejected; inverse URL locks mode\n\nLimitation: Arbitrary symbolic sequence and contour/residue inversion are outside this named table",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.5"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.5); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.transform.z.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.5",
                    "examples": [
                      "1.0.5"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "z",
                  "f": "geom",
                  "a": 0.5,
                  "z": 1
                },
                "calculation_version": "1.0.5"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.transform.z.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/inverse-z": {
      "post": {
        "operationId": "calculate_math_transform_z_alias_inverse_z",
        "summary": "Z transform (inverse-z page alias)",
        "description": "Unilateral Z table of causal elementary pairs: a^n, step, ramp, n a^n, sin, cos, damped sin/cos. Evaluate X(z) or x[n]. Discovery /inverse-z. Not DFT, not Laplace, not residue, not CAS. (calculation_version 1.0.5)\n\nSemantic capability: `math.transform.z`.\n\nCalculation version: `1.0.5`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Unilateral causal elementary table; eight named pairs, inverse integer0–64; u[0]=1,a^0=1 including a=0\n\nLimitation: Finite real z strictly outside conservative ROC radius on either real branch, including degenerate zero sine; a,z dimensionless, omega radians per sample\n\nLimitation: Binary64 approximate evaluation,12 significant digits;2e-11 relative fixture tolerance, no uniform accuracy theorem; conditioned near poles and trig zeros\n\nLimitation: Coded decimal input underflow and numerical range/phase/quantization refusals; inverse subnormal relative precision may be refused despite representability\n\nLimitation: Aliases must agree; null, nondecimal scalar forms and unknown fields rejected; inverse URL locks mode\n\nLimitation: Arbitrary symbolic sequence and contour/residue inversion are outside this named table",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.5"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.5); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.transform.z.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.5",
                    "examples": [
                      "1.0.5"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "z",
                  "f": "geom",
                  "a": 0.5,
                  "z": 1
                },
                "calculation_version": "1.0.5"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.transform.z.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/linear-system": {
      "post": {
        "operationId": "calculate_math_linear_algebra",
        "summary": "Linear system / small matrix",
        "description": "Solve Ax=b for order 2–4, plus det, inverse, rank, LU, Cholesky (SPD A=LLᵀ), QR and SVD (square or rectangular m×n with m,n∈[2,4]), least squares (same rectangular shape), RREF, condition number, nullspace, column space, rowspace, left-nullspace, eigen, multiply, transpose. Same engine as /workspace/matrix. Discovery pages share this capability. Not a CAS. Not Statistics regression. (calculation_version 1.14.16)\n\nSemantic capability: `math.linear_algebra`.\n\nCalculation version: `1.14.16`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Order ≤ 4 (local small-matrix seed)\n\nLimitation: Singular inverse → SINGULAR_MATRIX\n\nLimitation: qr, svd, and lstsq accept rectangular m×n with m,n ∈ [2,4]; solve / det / inverse / LU / Cholesky stay square\n\nLimitation: Cholesky is SPD only (NOT_SYMMETRIC / NOT_POSITIVE_DEFINITE)\n\nLimitation: Not Statistics regression / large-matrix server compute\n\nLimitation: Not 2-norm κ₂ as a product / CAS / Jordan form\n\nLimitation: Finite decimal scalars only; nonzero text underflow is rejected. Conflicting aliases or nested/flat values are rejected. Every required cell must be supplied.\n\nLimitation: Numerical outputs that exceed binary64 range or cannot be resolved at working precision refuse with NUMERIC_PRECISION_LIMIT; out-of-range auxiliary determinants are omitted with a warning.\n\nLimitation: Singular solve distinguishes consistent (infinite) from inconsistent systems using the stated numerical rank tolerance.\n\nLimitation: Cholesky: relative pairwise symmetry tolerance 1e-12, with no absolute floor; accepted differences mirror the lower triangle into effective_A and emit symmetry_adjusted. A preserves the original inputs.\n\nLimitation: Cholesky: exact binary64 leading-minor signs distinguish NOT_POSITIVE_DEFINITE from NUMERIC_PRECISION_LIMIT. Positive pivots are not rejected merely for being small.\n\nLimitation: Cholesky: L and A preserve binary64 round-trip values. Residuals use published L versus original A; relative Frobenius residual uses common scaling. Absolute residual can underflow to zero. Condition estimate is 1-norm; ill_conditioned threshold is 1e8.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.14.16"
              ]
            },
            "description": "Pin calculation_version (published: 1.14.16); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.14.16",
                    "examples": [
                      "1.14.16"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.14.16"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/matrix-determinant": {
      "post": {
        "operationId": "calculate_math_linear_algebra_alias_matrix_determinant",
        "summary": "Linear system / small matrix (matrix-determinant page alias)",
        "description": "Solve Ax=b for order 2–4, plus det, inverse, rank, LU, Cholesky (SPD A=LLᵀ), QR and SVD (square or rectangular m×n with m,n∈[2,4]), least squares (same rectangular shape), RREF, condition number, nullspace, column space, rowspace, left-nullspace, eigen, multiply, transpose. Same engine as /workspace/matrix. Discovery pages share this capability. Not a CAS. Not Statistics regression. (calculation_version 1.14.16)\n\nSemantic capability: `math.linear_algebra`.\n\nCalculation version: `1.14.16`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Order ≤ 4 (local small-matrix seed)\n\nLimitation: Singular inverse → SINGULAR_MATRIX\n\nLimitation: qr, svd, and lstsq accept rectangular m×n with m,n ∈ [2,4]; solve / det / inverse / LU / Cholesky stay square\n\nLimitation: Cholesky is SPD only (NOT_SYMMETRIC / NOT_POSITIVE_DEFINITE)\n\nLimitation: Not Statistics regression / large-matrix server compute\n\nLimitation: Not 2-norm κ₂ as a product / CAS / Jordan form\n\nLimitation: Finite decimal scalars only; nonzero text underflow is rejected. Conflicting aliases or nested/flat values are rejected. Every required cell must be supplied.\n\nLimitation: Numerical outputs that exceed binary64 range or cannot be resolved at working precision refuse with NUMERIC_PRECISION_LIMIT; out-of-range auxiliary determinants are omitted with a warning.\n\nLimitation: Singular solve distinguishes consistent (infinite) from inconsistent systems using the stated numerical rank tolerance.\n\nLimitation: Cholesky: relative pairwise symmetry tolerance 1e-12, with no absolute floor; accepted differences mirror the lower triangle into effective_A and emit symmetry_adjusted. A preserves the original inputs.\n\nLimitation: Cholesky: exact binary64 leading-minor signs distinguish NOT_POSITIVE_DEFINITE from NUMERIC_PRECISION_LIMIT. Positive pivots are not rejected merely for being small.\n\nLimitation: Cholesky: L and A preserve binary64 round-trip values. Residuals use published L versus original A; relative Frobenius residual uses common scaling. Absolute residual can underflow to zero. Condition estimate is 1-norm; ill_conditioned threshold is 1e8.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.14.16"
              ]
            },
            "description": "Pin calculation_version (published: 1.14.16); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.14.16",
                    "examples": [
                      "1.14.16"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.14.16"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/matrix-inverse": {
      "post": {
        "operationId": "calculate_math_linear_algebra_alias_matrix_inverse",
        "summary": "Linear system / small matrix (matrix-inverse page alias)",
        "description": "Solve Ax=b for order 2–4, plus det, inverse, rank, LU, Cholesky (SPD A=LLᵀ), QR and SVD (square or rectangular m×n with m,n∈[2,4]), least squares (same rectangular shape), RREF, condition number, nullspace, column space, rowspace, left-nullspace, eigen, multiply, transpose. Same engine as /workspace/matrix. Discovery pages share this capability. Not a CAS. Not Statistics regression. (calculation_version 1.14.16)\n\nSemantic capability: `math.linear_algebra`.\n\nCalculation version: `1.14.16`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Order ≤ 4 (local small-matrix seed)\n\nLimitation: Singular inverse → SINGULAR_MATRIX\n\nLimitation: qr, svd, and lstsq accept rectangular m×n with m,n ∈ [2,4]; solve / det / inverse / LU / Cholesky stay square\n\nLimitation: Cholesky is SPD only (NOT_SYMMETRIC / NOT_POSITIVE_DEFINITE)\n\nLimitation: Not Statistics regression / large-matrix server compute\n\nLimitation: Not 2-norm κ₂ as a product / CAS / Jordan form\n\nLimitation: Finite decimal scalars only; nonzero text underflow is rejected. Conflicting aliases or nested/flat values are rejected. Every required cell must be supplied.\n\nLimitation: Numerical outputs that exceed binary64 range or cannot be resolved at working precision refuse with NUMERIC_PRECISION_LIMIT; out-of-range auxiliary determinants are omitted with a warning.\n\nLimitation: Singular solve distinguishes consistent (infinite) from inconsistent systems using the stated numerical rank tolerance.\n\nLimitation: Cholesky: relative pairwise symmetry tolerance 1e-12, with no absolute floor; accepted differences mirror the lower triangle into effective_A and emit symmetry_adjusted. A preserves the original inputs.\n\nLimitation: Cholesky: exact binary64 leading-minor signs distinguish NOT_POSITIVE_DEFINITE from NUMERIC_PRECISION_LIMIT. Positive pivots are not rejected merely for being small.\n\nLimitation: Cholesky: L and A preserve binary64 round-trip values. Residuals use published L versus original A; relative Frobenius residual uses common scaling. Absolute residual can underflow to zero. Condition estimate is 1-norm; ill_conditioned threshold is 1e8.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.14.16"
              ]
            },
            "description": "Pin calculation_version (published: 1.14.16); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.14.16",
                    "examples": [
                      "1.14.16"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.14.16"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/matrix-rank": {
      "post": {
        "operationId": "calculate_math_linear_algebra_alias_matrix_rank",
        "summary": "Linear system / small matrix (matrix-rank page alias)",
        "description": "Solve Ax=b for order 2–4, plus det, inverse, rank, LU, Cholesky (SPD A=LLᵀ), QR and SVD (square or rectangular m×n with m,n∈[2,4]), least squares (same rectangular shape), RREF, condition number, nullspace, column space, rowspace, left-nullspace, eigen, multiply, transpose. Same engine as /workspace/matrix. Discovery pages share this capability. Not a CAS. Not Statistics regression. (calculation_version 1.14.16)\n\nSemantic capability: `math.linear_algebra`.\n\nCalculation version: `1.14.16`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Order ≤ 4 (local small-matrix seed)\n\nLimitation: Singular inverse → SINGULAR_MATRIX\n\nLimitation: qr, svd, and lstsq accept rectangular m×n with m,n ∈ [2,4]; solve / det / inverse / LU / Cholesky stay square\n\nLimitation: Cholesky is SPD only (NOT_SYMMETRIC / NOT_POSITIVE_DEFINITE)\n\nLimitation: Not Statistics regression / large-matrix server compute\n\nLimitation: Not 2-norm κ₂ as a product / CAS / Jordan form\n\nLimitation: Finite decimal scalars only; nonzero text underflow is rejected. Conflicting aliases or nested/flat values are rejected. Every required cell must be supplied.\n\nLimitation: Numerical outputs that exceed binary64 range or cannot be resolved at working precision refuse with NUMERIC_PRECISION_LIMIT; out-of-range auxiliary determinants are omitted with a warning.\n\nLimitation: Singular solve distinguishes consistent (infinite) from inconsistent systems using the stated numerical rank tolerance.\n\nLimitation: Cholesky: relative pairwise symmetry tolerance 1e-12, with no absolute floor; accepted differences mirror the lower triangle into effective_A and emit symmetry_adjusted. A preserves the original inputs.\n\nLimitation: Cholesky: exact binary64 leading-minor signs distinguish NOT_POSITIVE_DEFINITE from NUMERIC_PRECISION_LIMIT. Positive pivots are not rejected merely for being small.\n\nLimitation: Cholesky: L and A preserve binary64 round-trip values. Residuals use published L versus original A; relative Frobenius residual uses common scaling. Absolute residual can underflow to zero. Condition estimate is 1-norm; ill_conditioned threshold is 1e8.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.14.16"
              ]
            },
            "description": "Pin calculation_version (published: 1.14.16); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.14.16",
                    "examples": [
                      "1.14.16"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.14.16"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/matrix-eigenvalues": {
      "post": {
        "operationId": "calculate_math_linear_algebra_alias_matrix_eigenvalues",
        "summary": "Linear system / small matrix (matrix-eigenvalues page alias)",
        "description": "Solve Ax=b for order 2–4, plus det, inverse, rank, LU, Cholesky (SPD A=LLᵀ), QR and SVD (square or rectangular m×n with m,n∈[2,4]), least squares (same rectangular shape), RREF, condition number, nullspace, column space, rowspace, left-nullspace, eigen, multiply, transpose. Same engine as /workspace/matrix. Discovery pages share this capability. Not a CAS. Not Statistics regression. (calculation_version 1.14.16)\n\nSemantic capability: `math.linear_algebra`.\n\nCalculation version: `1.14.16`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Order ≤ 4 (local small-matrix seed)\n\nLimitation: Singular inverse → SINGULAR_MATRIX\n\nLimitation: qr, svd, and lstsq accept rectangular m×n with m,n ∈ [2,4]; solve / det / inverse / LU / Cholesky stay square\n\nLimitation: Cholesky is SPD only (NOT_SYMMETRIC / NOT_POSITIVE_DEFINITE)\n\nLimitation: Not Statistics regression / large-matrix server compute\n\nLimitation: Not 2-norm κ₂ as a product / CAS / Jordan form\n\nLimitation: Finite decimal scalars only; nonzero text underflow is rejected. Conflicting aliases or nested/flat values are rejected. Every required cell must be supplied.\n\nLimitation: Numerical outputs that exceed binary64 range or cannot be resolved at working precision refuse with NUMERIC_PRECISION_LIMIT; out-of-range auxiliary determinants are omitted with a warning.\n\nLimitation: Singular solve distinguishes consistent (infinite) from inconsistent systems using the stated numerical rank tolerance.\n\nLimitation: Cholesky: relative pairwise symmetry tolerance 1e-12, with no absolute floor; accepted differences mirror the lower triangle into effective_A and emit symmetry_adjusted. A preserves the original inputs.\n\nLimitation: Cholesky: exact binary64 leading-minor signs distinguish NOT_POSITIVE_DEFINITE from NUMERIC_PRECISION_LIMIT. Positive pivots are not rejected merely for being small.\n\nLimitation: Cholesky: L and A preserve binary64 round-trip values. Residuals use published L versus original A; relative Frobenius residual uses common scaling. Absolute residual can underflow to zero. Condition estimate is 1-norm; ill_conditioned threshold is 1e8.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.14.16"
              ]
            },
            "description": "Pin calculation_version (published: 1.14.16); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.14.16",
                    "examples": [
                      "1.14.16"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.14.16"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/matrix-lu": {
      "post": {
        "operationId": "calculate_math_linear_algebra_alias_matrix_lu",
        "summary": "Linear system / small matrix (matrix-lu page alias)",
        "description": "Solve Ax=b for order 2–4, plus det, inverse, rank, LU, Cholesky (SPD A=LLᵀ), QR and SVD (square or rectangular m×n with m,n∈[2,4]), least squares (same rectangular shape), RREF, condition number, nullspace, column space, rowspace, left-nullspace, eigen, multiply, transpose. Same engine as /workspace/matrix. Discovery pages share this capability. Not a CAS. Not Statistics regression. (calculation_version 1.14.16)\n\nSemantic capability: `math.linear_algebra`.\n\nCalculation version: `1.14.16`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Order ≤ 4 (local small-matrix seed)\n\nLimitation: Singular inverse → SINGULAR_MATRIX\n\nLimitation: qr, svd, and lstsq accept rectangular m×n with m,n ∈ [2,4]; solve / det / inverse / LU / Cholesky stay square\n\nLimitation: Cholesky is SPD only (NOT_SYMMETRIC / NOT_POSITIVE_DEFINITE)\n\nLimitation: Not Statistics regression / large-matrix server compute\n\nLimitation: Not 2-norm κ₂ as a product / CAS / Jordan form\n\nLimitation: Finite decimal scalars only; nonzero text underflow is rejected. Conflicting aliases or nested/flat values are rejected. Every required cell must be supplied.\n\nLimitation: Numerical outputs that exceed binary64 range or cannot be resolved at working precision refuse with NUMERIC_PRECISION_LIMIT; out-of-range auxiliary determinants are omitted with a warning.\n\nLimitation: Singular solve distinguishes consistent (infinite) from inconsistent systems using the stated numerical rank tolerance.\n\nLimitation: Cholesky: relative pairwise symmetry tolerance 1e-12, with no absolute floor; accepted differences mirror the lower triangle into effective_A and emit symmetry_adjusted. A preserves the original inputs.\n\nLimitation: Cholesky: exact binary64 leading-minor signs distinguish NOT_POSITIVE_DEFINITE from NUMERIC_PRECISION_LIMIT. Positive pivots are not rejected merely for being small.\n\nLimitation: Cholesky: L and A preserve binary64 round-trip values. Residuals use published L versus original A; relative Frobenius residual uses common scaling. Absolute residual can underflow to zero. Condition estimate is 1-norm; ill_conditioned threshold is 1e8.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.14.16"
              ]
            },
            "description": "Pin calculation_version (published: 1.14.16); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.14.16",
                    "examples": [
                      "1.14.16"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.14.16"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/matrix-cholesky": {
      "post": {
        "operationId": "calculate_math_linear_algebra_alias_matrix_cholesky",
        "summary": "Linear system / small matrix (matrix-cholesky page alias)",
        "description": "Solve Ax=b for order 2–4, plus det, inverse, rank, LU, Cholesky (SPD A=LLᵀ), QR and SVD (square or rectangular m×n with m,n∈[2,4]), least squares (same rectangular shape), RREF, condition number, nullspace, column space, rowspace, left-nullspace, eigen, multiply, transpose. Same engine as /workspace/matrix. Discovery pages share this capability. Not a CAS. Not Statistics regression. (calculation_version 1.14.16)\n\nSemantic capability: `math.linear_algebra`.\n\nCalculation version: `1.14.16`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Order ≤ 4 (local small-matrix seed)\n\nLimitation: Singular inverse → SINGULAR_MATRIX\n\nLimitation: qr, svd, and lstsq accept rectangular m×n with m,n ∈ [2,4]; solve / det / inverse / LU / Cholesky stay square\n\nLimitation: Cholesky is SPD only (NOT_SYMMETRIC / NOT_POSITIVE_DEFINITE)\n\nLimitation: Not Statistics regression / large-matrix server compute\n\nLimitation: Not 2-norm κ₂ as a product / CAS / Jordan form\n\nLimitation: Finite decimal scalars only; nonzero text underflow is rejected. Conflicting aliases or nested/flat values are rejected. Every required cell must be supplied.\n\nLimitation: Numerical outputs that exceed binary64 range or cannot be resolved at working precision refuse with NUMERIC_PRECISION_LIMIT; out-of-range auxiliary determinants are omitted with a warning.\n\nLimitation: Singular solve distinguishes consistent (infinite) from inconsistent systems using the stated numerical rank tolerance.\n\nLimitation: Cholesky: relative pairwise symmetry tolerance 1e-12, with no absolute floor; accepted differences mirror the lower triangle into effective_A and emit symmetry_adjusted. A preserves the original inputs.\n\nLimitation: Cholesky: exact binary64 leading-minor signs distinguish NOT_POSITIVE_DEFINITE from NUMERIC_PRECISION_LIMIT. Positive pivots are not rejected merely for being small.\n\nLimitation: Cholesky: L and A preserve binary64 round-trip values. Residuals use published L versus original A; relative Frobenius residual uses common scaling. Absolute residual can underflow to zero. Condition estimate is 1-norm; ill_conditioned threshold is 1e8.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.14.16"
              ]
            },
            "description": "Pin calculation_version (published: 1.14.16); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.14.16",
                    "examples": [
                      "1.14.16"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.14.16"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/matrix-qr": {
      "post": {
        "operationId": "calculate_math_linear_algebra_alias_matrix_qr",
        "summary": "Linear system / small matrix (matrix-qr page alias)",
        "description": "Solve Ax=b for order 2–4, plus det, inverse, rank, LU, Cholesky (SPD A=LLᵀ), QR and SVD (square or rectangular m×n with m,n∈[2,4]), least squares (same rectangular shape), RREF, condition number, nullspace, column space, rowspace, left-nullspace, eigen, multiply, transpose. Same engine as /workspace/matrix. Discovery pages share this capability. Not a CAS. Not Statistics regression. (calculation_version 1.14.16)\n\nSemantic capability: `math.linear_algebra`.\n\nCalculation version: `1.14.16`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Order ≤ 4 (local small-matrix seed)\n\nLimitation: Singular inverse → SINGULAR_MATRIX\n\nLimitation: qr, svd, and lstsq accept rectangular m×n with m,n ∈ [2,4]; solve / det / inverse / LU / Cholesky stay square\n\nLimitation: Cholesky is SPD only (NOT_SYMMETRIC / NOT_POSITIVE_DEFINITE)\n\nLimitation: Not Statistics regression / large-matrix server compute\n\nLimitation: Not 2-norm κ₂ as a product / CAS / Jordan form\n\nLimitation: Finite decimal scalars only; nonzero text underflow is rejected. Conflicting aliases or nested/flat values are rejected. Every required cell must be supplied.\n\nLimitation: Numerical outputs that exceed binary64 range or cannot be resolved at working precision refuse with NUMERIC_PRECISION_LIMIT; out-of-range auxiliary determinants are omitted with a warning.\n\nLimitation: Singular solve distinguishes consistent (infinite) from inconsistent systems using the stated numerical rank tolerance.\n\nLimitation: Cholesky: relative pairwise symmetry tolerance 1e-12, with no absolute floor; accepted differences mirror the lower triangle into effective_A and emit symmetry_adjusted. A preserves the original inputs.\n\nLimitation: Cholesky: exact binary64 leading-minor signs distinguish NOT_POSITIVE_DEFINITE from NUMERIC_PRECISION_LIMIT. Positive pivots are not rejected merely for being small.\n\nLimitation: Cholesky: L and A preserve binary64 round-trip values. Residuals use published L versus original A; relative Frobenius residual uses common scaling. Absolute residual can underflow to zero. Condition estimate is 1-norm; ill_conditioned threshold is 1e8.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.14.16"
              ]
            },
            "description": "Pin calculation_version (published: 1.14.16); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.14.16",
                    "examples": [
                      "1.14.16"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.14.16"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/matrix-svd": {
      "post": {
        "operationId": "calculate_math_linear_algebra_alias_matrix_svd",
        "summary": "Linear system / small matrix (matrix-svd page alias)",
        "description": "Solve Ax=b for order 2–4, plus det, inverse, rank, LU, Cholesky (SPD A=LLᵀ), QR and SVD (square or rectangular m×n with m,n∈[2,4]), least squares (same rectangular shape), RREF, condition number, nullspace, column space, rowspace, left-nullspace, eigen, multiply, transpose. Same engine as /workspace/matrix. Discovery pages share this capability. Not a CAS. Not Statistics regression. (calculation_version 1.14.16)\n\nSemantic capability: `math.linear_algebra`.\n\nCalculation version: `1.14.16`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Order ≤ 4 (local small-matrix seed)\n\nLimitation: Singular inverse → SINGULAR_MATRIX\n\nLimitation: qr, svd, and lstsq accept rectangular m×n with m,n ∈ [2,4]; solve / det / inverse / LU / Cholesky stay square\n\nLimitation: Cholesky is SPD only (NOT_SYMMETRIC / NOT_POSITIVE_DEFINITE)\n\nLimitation: Not Statistics regression / large-matrix server compute\n\nLimitation: Not 2-norm κ₂ as a product / CAS / Jordan form\n\nLimitation: Finite decimal scalars only; nonzero text underflow is rejected. Conflicting aliases or nested/flat values are rejected. Every required cell must be supplied.\n\nLimitation: Numerical outputs that exceed binary64 range or cannot be resolved at working precision refuse with NUMERIC_PRECISION_LIMIT; out-of-range auxiliary determinants are omitted with a warning.\n\nLimitation: Singular solve distinguishes consistent (infinite) from inconsistent systems using the stated numerical rank tolerance.\n\nLimitation: Cholesky: relative pairwise symmetry tolerance 1e-12, with no absolute floor; accepted differences mirror the lower triangle into effective_A and emit symmetry_adjusted. A preserves the original inputs.\n\nLimitation: Cholesky: exact binary64 leading-minor signs distinguish NOT_POSITIVE_DEFINITE from NUMERIC_PRECISION_LIMIT. Positive pivots are not rejected merely for being small.\n\nLimitation: Cholesky: L and A preserve binary64 round-trip values. Residuals use published L versus original A; relative Frobenius residual uses common scaling. Absolute residual can underflow to zero. Condition estimate is 1-norm; ill_conditioned threshold is 1e8.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.14.16"
              ]
            },
            "description": "Pin calculation_version (published: 1.14.16); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.14.16",
                    "examples": [
                      "1.14.16"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.14.16"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/least-squares": {
      "post": {
        "operationId": "calculate_math_linear_algebra_alias_least_squares",
        "summary": "Linear system / small matrix (least-squares page alias)",
        "description": "Solve Ax=b for order 2–4, plus det, inverse, rank, LU, Cholesky (SPD A=LLᵀ), QR and SVD (square or rectangular m×n with m,n∈[2,4]), least squares (same rectangular shape), RREF, condition number, nullspace, column space, rowspace, left-nullspace, eigen, multiply, transpose. Same engine as /workspace/matrix. Discovery pages share this capability. Not a CAS. Not Statistics regression. (calculation_version 1.14.16)\n\nSemantic capability: `math.linear_algebra`.\n\nCalculation version: `1.14.16`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Order ≤ 4 (local small-matrix seed)\n\nLimitation: Singular inverse → SINGULAR_MATRIX\n\nLimitation: qr, svd, and lstsq accept rectangular m×n with m,n ∈ [2,4]; solve / det / inverse / LU / Cholesky stay square\n\nLimitation: Cholesky is SPD only (NOT_SYMMETRIC / NOT_POSITIVE_DEFINITE)\n\nLimitation: Not Statistics regression / large-matrix server compute\n\nLimitation: Not 2-norm κ₂ as a product / CAS / Jordan form\n\nLimitation: Finite decimal scalars only; nonzero text underflow is rejected. Conflicting aliases or nested/flat values are rejected. Every required cell must be supplied.\n\nLimitation: Numerical outputs that exceed binary64 range or cannot be resolved at working precision refuse with NUMERIC_PRECISION_LIMIT; out-of-range auxiliary determinants are omitted with a warning.\n\nLimitation: Singular solve distinguishes consistent (infinite) from inconsistent systems using the stated numerical rank tolerance.\n\nLimitation: Cholesky: relative pairwise symmetry tolerance 1e-12, with no absolute floor; accepted differences mirror the lower triangle into effective_A and emit symmetry_adjusted. A preserves the original inputs.\n\nLimitation: Cholesky: exact binary64 leading-minor signs distinguish NOT_POSITIVE_DEFINITE from NUMERIC_PRECISION_LIMIT. Positive pivots are not rejected merely for being small.\n\nLimitation: Cholesky: L and A preserve binary64 round-trip values. Residuals use published L versus original A; relative Frobenius residual uses common scaling. Absolute residual can underflow to zero. Condition estimate is 1-norm; ill_conditioned threshold is 1e8.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.14.16"
              ]
            },
            "description": "Pin calculation_version (published: 1.14.16); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.14.16",
                    "examples": [
                      "1.14.16"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.14.16"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/matrix-rref": {
      "post": {
        "operationId": "calculate_math_linear_algebra_alias_matrix_rref",
        "summary": "Linear system / small matrix (matrix-rref page alias)",
        "description": "Solve Ax=b for order 2–4, plus det, inverse, rank, LU, Cholesky (SPD A=LLᵀ), QR and SVD (square or rectangular m×n with m,n∈[2,4]), least squares (same rectangular shape), RREF, condition number, nullspace, column space, rowspace, left-nullspace, eigen, multiply, transpose. Same engine as /workspace/matrix. Discovery pages share this capability. Not a CAS. Not Statistics regression. (calculation_version 1.14.16)\n\nSemantic capability: `math.linear_algebra`.\n\nCalculation version: `1.14.16`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Order ≤ 4 (local small-matrix seed)\n\nLimitation: Singular inverse → SINGULAR_MATRIX\n\nLimitation: qr, svd, and lstsq accept rectangular m×n with m,n ∈ [2,4]; solve / det / inverse / LU / Cholesky stay square\n\nLimitation: Cholesky is SPD only (NOT_SYMMETRIC / NOT_POSITIVE_DEFINITE)\n\nLimitation: Not Statistics regression / large-matrix server compute\n\nLimitation: Not 2-norm κ₂ as a product / CAS / Jordan form\n\nLimitation: Finite decimal scalars only; nonzero text underflow is rejected. Conflicting aliases or nested/flat values are rejected. Every required cell must be supplied.\n\nLimitation: Numerical outputs that exceed binary64 range or cannot be resolved at working precision refuse with NUMERIC_PRECISION_LIMIT; out-of-range auxiliary determinants are omitted with a warning.\n\nLimitation: Singular solve distinguishes consistent (infinite) from inconsistent systems using the stated numerical rank tolerance.\n\nLimitation: Cholesky: relative pairwise symmetry tolerance 1e-12, with no absolute floor; accepted differences mirror the lower triangle into effective_A and emit symmetry_adjusted. A preserves the original inputs.\n\nLimitation: Cholesky: exact binary64 leading-minor signs distinguish NOT_POSITIVE_DEFINITE from NUMERIC_PRECISION_LIMIT. Positive pivots are not rejected merely for being small.\n\nLimitation: Cholesky: L and A preserve binary64 round-trip values. Residuals use published L versus original A; relative Frobenius residual uses common scaling. Absolute residual can underflow to zero. Condition estimate is 1-norm; ill_conditioned threshold is 1e8.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.14.16"
              ]
            },
            "description": "Pin calculation_version (published: 1.14.16); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.14.16",
                    "examples": [
                      "1.14.16"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.14.16"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/condition-number": {
      "post": {
        "operationId": "calculate_math_linear_algebra_alias_condition_number",
        "summary": "Linear system / small matrix (condition-number page alias)",
        "description": "Solve Ax=b for order 2–4, plus det, inverse, rank, LU, Cholesky (SPD A=LLᵀ), QR and SVD (square or rectangular m×n with m,n∈[2,4]), least squares (same rectangular shape), RREF, condition number, nullspace, column space, rowspace, left-nullspace, eigen, multiply, transpose. Same engine as /workspace/matrix. Discovery pages share this capability. Not a CAS. Not Statistics regression. (calculation_version 1.14.16)\n\nSemantic capability: `math.linear_algebra`.\n\nCalculation version: `1.14.16`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Order ≤ 4 (local small-matrix seed)\n\nLimitation: Singular inverse → SINGULAR_MATRIX\n\nLimitation: qr, svd, and lstsq accept rectangular m×n with m,n ∈ [2,4]; solve / det / inverse / LU / Cholesky stay square\n\nLimitation: Cholesky is SPD only (NOT_SYMMETRIC / NOT_POSITIVE_DEFINITE)\n\nLimitation: Not Statistics regression / large-matrix server compute\n\nLimitation: Not 2-norm κ₂ as a product / CAS / Jordan form\n\nLimitation: Finite decimal scalars only; nonzero text underflow is rejected. Conflicting aliases or nested/flat values are rejected. Every required cell must be supplied.\n\nLimitation: Numerical outputs that exceed binary64 range or cannot be resolved at working precision refuse with NUMERIC_PRECISION_LIMIT; out-of-range auxiliary determinants are omitted with a warning.\n\nLimitation: Singular solve distinguishes consistent (infinite) from inconsistent systems using the stated numerical rank tolerance.\n\nLimitation: Cholesky: relative pairwise symmetry tolerance 1e-12, with no absolute floor; accepted differences mirror the lower triangle into effective_A and emit symmetry_adjusted. A preserves the original inputs.\n\nLimitation: Cholesky: exact binary64 leading-minor signs distinguish NOT_POSITIVE_DEFINITE from NUMERIC_PRECISION_LIMIT. Positive pivots are not rejected merely for being small.\n\nLimitation: Cholesky: L and A preserve binary64 round-trip values. Residuals use published L versus original A; relative Frobenius residual uses common scaling. Absolute residual can underflow to zero. Condition estimate is 1-norm; ill_conditioned threshold is 1e8.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.14.16"
              ]
            },
            "description": "Pin calculation_version (published: 1.14.16); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.14.16",
                    "examples": [
                      "1.14.16"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.14.16"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/nullspace": {
      "post": {
        "operationId": "calculate_math_linear_algebra_alias_nullspace",
        "summary": "Linear system / small matrix (nullspace page alias)",
        "description": "Solve Ax=b for order 2–4, plus det, inverse, rank, LU, Cholesky (SPD A=LLᵀ), QR and SVD (square or rectangular m×n with m,n∈[2,4]), least squares (same rectangular shape), RREF, condition number, nullspace, column space, rowspace, left-nullspace, eigen, multiply, transpose. Same engine as /workspace/matrix. Discovery pages share this capability. Not a CAS. Not Statistics regression. (calculation_version 1.14.16)\n\nSemantic capability: `math.linear_algebra`.\n\nCalculation version: `1.14.16`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Order ≤ 4 (local small-matrix seed)\n\nLimitation: Singular inverse → SINGULAR_MATRIX\n\nLimitation: qr, svd, and lstsq accept rectangular m×n with m,n ∈ [2,4]; solve / det / inverse / LU / Cholesky stay square\n\nLimitation: Cholesky is SPD only (NOT_SYMMETRIC / NOT_POSITIVE_DEFINITE)\n\nLimitation: Not Statistics regression / large-matrix server compute\n\nLimitation: Not 2-norm κ₂ as a product / CAS / Jordan form\n\nLimitation: Finite decimal scalars only; nonzero text underflow is rejected. Conflicting aliases or nested/flat values are rejected. Every required cell must be supplied.\n\nLimitation: Numerical outputs that exceed binary64 range or cannot be resolved at working precision refuse with NUMERIC_PRECISION_LIMIT; out-of-range auxiliary determinants are omitted with a warning.\n\nLimitation: Singular solve distinguishes consistent (infinite) from inconsistent systems using the stated numerical rank tolerance.\n\nLimitation: Cholesky: relative pairwise symmetry tolerance 1e-12, with no absolute floor; accepted differences mirror the lower triangle into effective_A and emit symmetry_adjusted. A preserves the original inputs.\n\nLimitation: Cholesky: exact binary64 leading-minor signs distinguish NOT_POSITIVE_DEFINITE from NUMERIC_PRECISION_LIMIT. Positive pivots are not rejected merely for being small.\n\nLimitation: Cholesky: L and A preserve binary64 round-trip values. Residuals use published L versus original A; relative Frobenius residual uses common scaling. Absolute residual can underflow to zero. Condition estimate is 1-norm; ill_conditioned threshold is 1e8.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.14.16"
              ]
            },
            "description": "Pin calculation_version (published: 1.14.16); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.14.16",
                    "examples": [
                      "1.14.16"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.14.16"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/column-space": {
      "post": {
        "operationId": "calculate_math_linear_algebra_alias_column_space",
        "summary": "Linear system / small matrix (column-space page alias)",
        "description": "Solve Ax=b for order 2–4, plus det, inverse, rank, LU, Cholesky (SPD A=LLᵀ), QR and SVD (square or rectangular m×n with m,n∈[2,4]), least squares (same rectangular shape), RREF, condition number, nullspace, column space, rowspace, left-nullspace, eigen, multiply, transpose. Same engine as /workspace/matrix. Discovery pages share this capability. Not a CAS. Not Statistics regression. (calculation_version 1.14.16)\n\nSemantic capability: `math.linear_algebra`.\n\nCalculation version: `1.14.16`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Order ≤ 4 (local small-matrix seed)\n\nLimitation: Singular inverse → SINGULAR_MATRIX\n\nLimitation: qr, svd, and lstsq accept rectangular m×n with m,n ∈ [2,4]; solve / det / inverse / LU / Cholesky stay square\n\nLimitation: Cholesky is SPD only (NOT_SYMMETRIC / NOT_POSITIVE_DEFINITE)\n\nLimitation: Not Statistics regression / large-matrix server compute\n\nLimitation: Not 2-norm κ₂ as a product / CAS / Jordan form\n\nLimitation: Finite decimal scalars only; nonzero text underflow is rejected. Conflicting aliases or nested/flat values are rejected. Every required cell must be supplied.\n\nLimitation: Numerical outputs that exceed binary64 range or cannot be resolved at working precision refuse with NUMERIC_PRECISION_LIMIT; out-of-range auxiliary determinants are omitted with a warning.\n\nLimitation: Singular solve distinguishes consistent (infinite) from inconsistent systems using the stated numerical rank tolerance.\n\nLimitation: Cholesky: relative pairwise symmetry tolerance 1e-12, with no absolute floor; accepted differences mirror the lower triangle into effective_A and emit symmetry_adjusted. A preserves the original inputs.\n\nLimitation: Cholesky: exact binary64 leading-minor signs distinguish NOT_POSITIVE_DEFINITE from NUMERIC_PRECISION_LIMIT. Positive pivots are not rejected merely for being small.\n\nLimitation: Cholesky: L and A preserve binary64 round-trip values. Residuals use published L versus original A; relative Frobenius residual uses common scaling. Absolute residual can underflow to zero. Condition estimate is 1-norm; ill_conditioned threshold is 1e8.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.14.16"
              ]
            },
            "description": "Pin calculation_version (published: 1.14.16); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.14.16",
                    "examples": [
                      "1.14.16"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.14.16"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/row-space": {
      "post": {
        "operationId": "calculate_math_linear_algebra_alias_row_space",
        "summary": "Linear system / small matrix (row-space page alias)",
        "description": "Solve Ax=b for order 2–4, plus det, inverse, rank, LU, Cholesky (SPD A=LLᵀ), QR and SVD (square or rectangular m×n with m,n∈[2,4]), least squares (same rectangular shape), RREF, condition number, nullspace, column space, rowspace, left-nullspace, eigen, multiply, transpose. Same engine as /workspace/matrix. Discovery pages share this capability. Not a CAS. Not Statistics regression. (calculation_version 1.14.16)\n\nSemantic capability: `math.linear_algebra`.\n\nCalculation version: `1.14.16`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Order ≤ 4 (local small-matrix seed)\n\nLimitation: Singular inverse → SINGULAR_MATRIX\n\nLimitation: qr, svd, and lstsq accept rectangular m×n with m,n ∈ [2,4]; solve / det / inverse / LU / Cholesky stay square\n\nLimitation: Cholesky is SPD only (NOT_SYMMETRIC / NOT_POSITIVE_DEFINITE)\n\nLimitation: Not Statistics regression / large-matrix server compute\n\nLimitation: Not 2-norm κ₂ as a product / CAS / Jordan form\n\nLimitation: Finite decimal scalars only; nonzero text underflow is rejected. Conflicting aliases or nested/flat values are rejected. Every required cell must be supplied.\n\nLimitation: Numerical outputs that exceed binary64 range or cannot be resolved at working precision refuse with NUMERIC_PRECISION_LIMIT; out-of-range auxiliary determinants are omitted with a warning.\n\nLimitation: Singular solve distinguishes consistent (infinite) from inconsistent systems using the stated numerical rank tolerance.\n\nLimitation: Cholesky: relative pairwise symmetry tolerance 1e-12, with no absolute floor; accepted differences mirror the lower triangle into effective_A and emit symmetry_adjusted. A preserves the original inputs.\n\nLimitation: Cholesky: exact binary64 leading-minor signs distinguish NOT_POSITIVE_DEFINITE from NUMERIC_PRECISION_LIMIT. Positive pivots are not rejected merely for being small.\n\nLimitation: Cholesky: L and A preserve binary64 round-trip values. Residuals use published L versus original A; relative Frobenius residual uses common scaling. Absolute residual can underflow to zero. Condition estimate is 1-norm; ill_conditioned threshold is 1e8.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.14.16"
              ]
            },
            "description": "Pin calculation_version (published: 1.14.16); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.14.16",
                    "examples": [
                      "1.14.16"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.14.16"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/left-nullspace": {
      "post": {
        "operationId": "calculate_math_linear_algebra_alias_left_nullspace",
        "summary": "Linear system / small matrix (left-nullspace page alias)",
        "description": "Solve Ax=b for order 2–4, plus det, inverse, rank, LU, Cholesky (SPD A=LLᵀ), QR and SVD (square or rectangular m×n with m,n∈[2,4]), least squares (same rectangular shape), RREF, condition number, nullspace, column space, rowspace, left-nullspace, eigen, multiply, transpose. Same engine as /workspace/matrix. Discovery pages share this capability. Not a CAS. Not Statistics regression. (calculation_version 1.14.16)\n\nSemantic capability: `math.linear_algebra`.\n\nCalculation version: `1.14.16`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Order ≤ 4 (local small-matrix seed)\n\nLimitation: Singular inverse → SINGULAR_MATRIX\n\nLimitation: qr, svd, and lstsq accept rectangular m×n with m,n ∈ [2,4]; solve / det / inverse / LU / Cholesky stay square\n\nLimitation: Cholesky is SPD only (NOT_SYMMETRIC / NOT_POSITIVE_DEFINITE)\n\nLimitation: Not Statistics regression / large-matrix server compute\n\nLimitation: Not 2-norm κ₂ as a product / CAS / Jordan form\n\nLimitation: Finite decimal scalars only; nonzero text underflow is rejected. Conflicting aliases or nested/flat values are rejected. Every required cell must be supplied.\n\nLimitation: Numerical outputs that exceed binary64 range or cannot be resolved at working precision refuse with NUMERIC_PRECISION_LIMIT; out-of-range auxiliary determinants are omitted with a warning.\n\nLimitation: Singular solve distinguishes consistent (infinite) from inconsistent systems using the stated numerical rank tolerance.\n\nLimitation: Cholesky: relative pairwise symmetry tolerance 1e-12, with no absolute floor; accepted differences mirror the lower triangle into effective_A and emit symmetry_adjusted. A preserves the original inputs.\n\nLimitation: Cholesky: exact binary64 leading-minor signs distinguish NOT_POSITIVE_DEFINITE from NUMERIC_PRECISION_LIMIT. Positive pivots are not rejected merely for being small.\n\nLimitation: Cholesky: L and A preserve binary64 round-trip values. Residuals use published L versus original A; relative Frobenius residual uses common scaling. Absolute residual can underflow to zero. Condition estimate is 1-norm; ill_conditioned threshold is 1e8.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.14.16"
              ]
            },
            "description": "Pin calculation_version (published: 1.14.16); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.14.16",
                    "examples": [
                      "1.14.16"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.14.16"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.linear_algebra.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/numerical-root": {
      "post": {
        "operationId": "calculate_math_numerical_root",
        "summary": "Numerical root",
        "description": "Newton, bisection, or secant for an approximate real zero of a polynomial or sin. exp has no finite real zero and returns NO_CONVERGENCE. Discovery /nonlinear-equation. Not the nth-root page, not CAS, not a system. (calculation_version 1.1.6)\n\nSemantic capability: `math.numerical.root`.\n\nCalculation version: `1.1.6`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not ⁿ√a — that remains /calc/math/root\n\nLimitation: Not three independent Newton/bisection/secant product pages\n\nLimitation: Not CAS / not a nonlinear system\n\nLimitation: Degree > 8 → INVALID_INPUT\n\nLimitation: No convergence → NO_CONVERGENCE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.6"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.6); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.numerical.root.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.6",
                    "examples": [
                      "1.1.6"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.6"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.numerical.root.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/nonlinear-equation": {
      "post": {
        "operationId": "calculate_math_numerical_root_alias_nonlinear_equation",
        "summary": "Numerical root (nonlinear-equation page alias)",
        "description": "Newton, bisection, or secant for an approximate real zero of a polynomial or sin. exp has no finite real zero and returns NO_CONVERGENCE. Discovery /nonlinear-equation. Not the nth-root page, not CAS, not a system. (calculation_version 1.1.6)\n\nSemantic capability: `math.numerical.root`.\n\nCalculation version: `1.1.6`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not ⁿ√a — that remains /calc/math/root\n\nLimitation: Not three independent Newton/bisection/secant product pages\n\nLimitation: Not CAS / not a nonlinear system\n\nLimitation: Degree > 8 → INVALID_INPUT\n\nLimitation: No convergence → NO_CONVERGENCE",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.6"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.6); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.numerical.root.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.6",
                    "examples": [
                      "1.1.6"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.6"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.numerical.root.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/definite-integral": {
      "post": {
        "operationId": "calculate_math_numerical_definite_integral",
        "summary": "Definite integral",
        "description": "Composite trapezoid, Simpson 1/3, or Gauss–Legendre of a polynomial, sin, or exp on [a, b]. Not indefinite symbolic integrate. (calculation_version 1.1.5)\n\nSemantic capability: `math.numerical.definite_integral`.\n\nCalculation version: `1.1.5`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not indefinite / symbolic CAS integrate\n\nLimitation: Simpson/trapezoid n panels 2–10000; Simpson n forced even\n\nLimitation: Gauss–Legendre n nodes 2–8\n\nLimitation: Polynomial degree ≤ 8\n\nLimitation: Decimal nonzero-to-zero inputs and unresolved nonzero outputs are rejected (NUMERIC_UNDERFLOW).\n\nLimitation: n must be an integer; odd Simpson n rounds up to the next even panel count.\n\nLimitation: Integrand sample overflow/underflow and severe quadrature cancellation are rejected; rescale or split the interval.\n\nLimitation: exact is a binary64 analytic baseline; abs_err is the signed raw quadrature-minus-baseline difference, not a certified bound.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.5"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.5); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.numerical.definite_integral.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.5",
                    "examples": [
                      "1.1.5"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.5"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.numerical.definite_integral.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/simpson-rule": {
      "post": {
        "operationId": "calculate_math_numerical_definite_integral_alias_simpson_rule",
        "summary": "Definite integral (simpson-rule page alias)",
        "description": "Composite trapezoid, Simpson 1/3, or Gauss–Legendre of a polynomial, sin, or exp on [a, b]. Not indefinite symbolic integrate. (calculation_version 1.1.5)\n\nSemantic capability: `math.numerical.definite_integral`.\n\nCalculation version: `1.1.5`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not indefinite / symbolic CAS integrate\n\nLimitation: Simpson/trapezoid n panels 2–10000; Simpson n forced even\n\nLimitation: Gauss–Legendre n nodes 2–8\n\nLimitation: Polynomial degree ≤ 8\n\nLimitation: Decimal nonzero-to-zero inputs and unresolved nonzero outputs are rejected (NUMERIC_UNDERFLOW).\n\nLimitation: n must be an integer; odd Simpson n rounds up to the next even panel count.\n\nLimitation: Integrand sample overflow/underflow and severe quadrature cancellation are rejected; rescale or split the interval.\n\nLimitation: exact is a binary64 analytic baseline; abs_err is the signed raw quadrature-minus-baseline difference, not a certified bound.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.5"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.5); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.numerical.definite_integral.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.5",
                    "examples": [
                      "1.1.5"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.5"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.numerical.definite_integral.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/trapezoidal-rule": {
      "post": {
        "operationId": "calculate_math_numerical_definite_integral_alias_trapezoidal_rule",
        "summary": "Definite integral (trapezoidal-rule page alias)",
        "description": "Composite trapezoid, Simpson 1/3, or Gauss–Legendre of a polynomial, sin, or exp on [a, b]. Not indefinite symbolic integrate. (calculation_version 1.1.5)\n\nSemantic capability: `math.numerical.definite_integral`.\n\nCalculation version: `1.1.5`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not indefinite / symbolic CAS integrate\n\nLimitation: Simpson/trapezoid n panels 2–10000; Simpson n forced even\n\nLimitation: Gauss–Legendre n nodes 2–8\n\nLimitation: Polynomial degree ≤ 8\n\nLimitation: Decimal nonzero-to-zero inputs and unresolved nonzero outputs are rejected (NUMERIC_UNDERFLOW).\n\nLimitation: n must be an integer; odd Simpson n rounds up to the next even panel count.\n\nLimitation: Integrand sample overflow/underflow and severe quadrature cancellation are rejected; rescale or split the interval.\n\nLimitation: exact is a binary64 analytic baseline; abs_err is the signed raw quadrature-minus-baseline difference, not a certified bound.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.5"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.5); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.numerical.definite_integral.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.5",
                    "examples": [
                      "1.1.5"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.5"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.numerical.definite_integral.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/gauss-quadrature": {
      "post": {
        "operationId": "calculate_math_numerical_definite_integral_alias_gauss_quadrature",
        "summary": "Definite integral (gauss-quadrature page alias)",
        "description": "Composite trapezoid, Simpson 1/3, or Gauss–Legendre of a polynomial, sin, or exp on [a, b]. Not indefinite symbolic integrate. (calculation_version 1.1.5)\n\nSemantic capability: `math.numerical.definite_integral`.\n\nCalculation version: `1.1.5`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not indefinite / symbolic CAS integrate\n\nLimitation: Simpson/trapezoid n panels 2–10000; Simpson n forced even\n\nLimitation: Gauss–Legendre n nodes 2–8\n\nLimitation: Polynomial degree ≤ 8\n\nLimitation: Decimal nonzero-to-zero inputs and unresolved nonzero outputs are rejected (NUMERIC_UNDERFLOW).\n\nLimitation: n must be an integer; odd Simpson n rounds up to the next even panel count.\n\nLimitation: Integrand sample overflow/underflow and severe quadrature cancellation are rejected; rescale or split the interval.\n\nLimitation: exact is a binary64 analytic baseline; abs_err is the signed raw quadrature-minus-baseline difference, not a certified bound.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.5"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.5); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.numerical.definite_integral.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.5",
                    "examples": [
                      "1.1.5"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.5"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.numerical.definite_integral.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/numerical-interpolation": {
      "post": {
        "operationId": "calculate_math_numerical_interpolate",
        "summary": "Numerical interpolation",
        "description": "Piecewise-linear, Lagrange, or natural cubic spline of tabulated (x, y). Not regression, not CAS. (calculation_version 1.1.6)\n\nSemantic capability: `math.numerical.interpolate`.\n\nCalculation version: `1.1.6`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not Akima, PCHIP, clamped spline, or statistical regression\n\nLimitation: Linear/spline x outside the table without extrapolate → VALUE_OUT_OF_RANGE\n\nLimitation: Lagrange limited to 9 points (degree ≤ 8); linear/spline table ≤ 100\n\nLimitation: Not a second interpolator and not CAS\n\nLimitation: Exact rational binary64-input primary evaluation; intermediate numerator/denominator at most16384 bits. Publication12 significant digits. Unrepresentable output, nonzero output underflow or unsupported spline coordinate normalization returns NUMERICAL_RANGE_ERROR.\n\nLimitation: Finite decimals only; full matching aliases and exactly two cells per node. Curve samples use illustrative binary64 arithmetic, not a certified error bound.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.6"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.6); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.numerical.interpolate.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.6",
                    "examples": [
                      "1.1.6"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.6"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.numerical.interpolate.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/spline-interpolation": {
      "post": {
        "operationId": "calculate_math_numerical_interpolate_alias_spline_interpolation",
        "summary": "Numerical interpolation (spline-interpolation page alias)",
        "description": "Piecewise-linear, Lagrange, or natural cubic spline of tabulated (x, y). Not regression, not CAS. (calculation_version 1.1.6)\n\nSemantic capability: `math.numerical.interpolate`.\n\nCalculation version: `1.1.6`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not Akima, PCHIP, clamped spline, or statistical regression\n\nLimitation: Linear/spline x outside the table without extrapolate → VALUE_OUT_OF_RANGE\n\nLimitation: Lagrange limited to 9 points (degree ≤ 8); linear/spline table ≤ 100\n\nLimitation: Not a second interpolator and not CAS\n\nLimitation: Exact rational binary64-input primary evaluation; intermediate numerator/denominator at most16384 bits. Publication12 significant digits. Unrepresentable output, nonzero output underflow or unsupported spline coordinate normalization returns NUMERICAL_RANGE_ERROR.\n\nLimitation: Finite decimals only; full matching aliases and exactly two cells per node. Curve samples use illustrative binary64 arithmetic, not a certified error bound.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.6"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.6); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.numerical.interpolate.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.6",
                    "examples": [
                      "1.1.6"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.6"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.numerical.interpolate.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/numerical-derivative": {
      "post": {
        "operationId": "calculate_math_numerical_derivative",
        "summary": "Numerical derivative",
        "description": "Forward, backward, or central finite difference of a polynomial, sin, or exp, plus a numeric two-sided limit. Discovery /two-sided-limit. Not symbolic d/dx. (calculation_version 1.1.4)\n\nSemantic capability: `math.numerical.derivative`.\n\nCalculation version: `1.1.4`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not symbolic / CAS d/dx\n\nLimitation: Not one-sided left/right; not L’Hôpital\n\nLimitation: h ≤ 0 → VALUE_MUST_BE_POSITIVE\n\nLimitation: Polynomial degree ≤ 8\n\nLimitation: Not a Statistics calculator\n\nLimitation: Strict decimal/scalar inputs; nonzero decimal and nonzero primary result underflow reject. Matching aliases required.\n\nLimitation: Finite-step value differs from analytic exact; abs_err is signed published value minus published baseline, not a certified bound.\n\nLimitation: For polynomial input, x±h denotes exact sums of supplied binary64 values, with exact dyadic intermediates.\n\nLimitation: Probe/gap/error diagnostics are rounded binary64 and may quantize to zero; no uniform relative accuracy claim at the subnormal scale.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.4"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.4); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.numerical.derivative.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.4",
                    "examples": [
                      "1.1.4"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.4"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.numerical.derivative.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/two-sided-limit": {
      "post": {
        "operationId": "calculate_math_numerical_derivative_alias_two_sided_limit",
        "summary": "Numerical derivative (two-sided-limit page alias)",
        "description": "Forward, backward, or central finite difference of a polynomial, sin, or exp, plus a numeric two-sided limit. Discovery /two-sided-limit. Not symbolic d/dx. (calculation_version 1.1.4)\n\nSemantic capability: `math.numerical.derivative`.\n\nCalculation version: `1.1.4`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not symbolic / CAS d/dx\n\nLimitation: Not one-sided left/right; not L’Hôpital\n\nLimitation: h ≤ 0 → VALUE_MUST_BE_POSITIVE\n\nLimitation: Polynomial degree ≤ 8\n\nLimitation: Not a Statistics calculator\n\nLimitation: Strict decimal/scalar inputs; nonzero decimal and nonzero primary result underflow reject. Matching aliases required.\n\nLimitation: Finite-step value differs from analytic exact; abs_err is signed published value minus published baseline, not a certified bound.\n\nLimitation: For polynomial input, x±h denotes exact sums of supplied binary64 values, with exact dyadic intermediates.\n\nLimitation: Probe/gap/error diagnostics are rounded binary64 and may quantize to zero; no uniform relative accuracy claim at the subnormal scale.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.4"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.4); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.numerical.derivative.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.4",
                    "examples": [
                      "1.1.4"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.1.4"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.numerical.derivative.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/one-dimensional-optimization": {
      "post": {
        "operationId": "calculate_math_numerical_optimize_1d",
        "summary": "One-dimensional optimization",
        "description": "Minimize a polynomial, sin, or exp on [a, b] by golden-section search or Brent. Not multivariate, not maximization, not CAS. (calculation_version 1.0.5)\n\nSemantic capability: `math.numerical.optimize_1d`.\n\nCalculation version: `1.0.5`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Minimize only; not multivariate, Nelder-Mead, gradient descent, maximization or CAS.\n\nLimitation: Unimodal assumption; arbitrary multimodal intervals can yield local candidates, not a guaranteed global minimum. Original closed interval endpoints are compared.\n\nLimitation: a<b; finite interval width; decimal scalars, matching aliases, degree<=8, positive tol<=1, integer max_iter1..100.\n\nLimitation: converged indicates only requested internal bracket width; max_iter and resolution_limit return an explicit candidate. Inspect termination and bracket_width.\n\nLimitation: Polynomial comparison uses exact dyadic intermediates of binary64 inputs. Coordinates retain binary64 precision; objective values/signed analytic-baseline differences publish12 significant digits. Required endpoint/final nonzero underflow or overflow rejects.\n\nLimitation: Legacy exact_xmin/exact_fmin are optional binary64 analytic baselines when available; signed abs_err_x/abs_err_f are comparisons, not certified bounds. Tied minima may differ in location; figures are illustrative.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.5"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.5); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.numerical.optimize_1d.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.5",
                    "examples": [
                      "1.0.5"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.5"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.numerical.optimize_1d.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/golden-section": {
      "post": {
        "operationId": "calculate_math_numerical_optimize_1d_alias_golden_section",
        "summary": "One-dimensional optimization (golden-section page alias)",
        "description": "Minimize a polynomial, sin, or exp on [a, b] by golden-section search or Brent. Not multivariate, not maximization, not CAS. (calculation_version 1.0.5)\n\nSemantic capability: `math.numerical.optimize_1d`.\n\nCalculation version: `1.0.5`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Minimize only; not multivariate, Nelder-Mead, gradient descent, maximization or CAS.\n\nLimitation: Unimodal assumption; arbitrary multimodal intervals can yield local candidates, not a guaranteed global minimum. Original closed interval endpoints are compared.\n\nLimitation: a<b; finite interval width; decimal scalars, matching aliases, degree<=8, positive tol<=1, integer max_iter1..100.\n\nLimitation: converged indicates only requested internal bracket width; max_iter and resolution_limit return an explicit candidate. Inspect termination and bracket_width.\n\nLimitation: Polynomial comparison uses exact dyadic intermediates of binary64 inputs. Coordinates retain binary64 precision; objective values/signed analytic-baseline differences publish12 significant digits. Required endpoint/final nonzero underflow or overflow rejects.\n\nLimitation: Legacy exact_xmin/exact_fmin are optional binary64 analytic baselines when available; signed abs_err_x/abs_err_f are comparisons, not certified bounds. Tied minima may differ in location; figures are illustrative.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.5"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.5); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.numerical.optimize_1d.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.5",
                    "examples": [
                      "1.0.5"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.5"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.numerical.optimize_1d.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/brent-method": {
      "post": {
        "operationId": "calculate_math_numerical_optimize_1d_alias_brent_method",
        "summary": "One-dimensional optimization (brent-method page alias)",
        "description": "Minimize a polynomial, sin, or exp on [a, b] by golden-section search or Brent. Not multivariate, not maximization, not CAS. (calculation_version 1.0.5)\n\nSemantic capability: `math.numerical.optimize_1d`.\n\nCalculation version: `1.0.5`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Minimize only; not multivariate, Nelder-Mead, gradient descent, maximization or CAS.\n\nLimitation: Unimodal assumption; arbitrary multimodal intervals can yield local candidates, not a guaranteed global minimum. Original closed interval endpoints are compared.\n\nLimitation: a<b; finite interval width; decimal scalars, matching aliases, degree<=8, positive tol<=1, integer max_iter1..100.\n\nLimitation: converged indicates only requested internal bracket width; max_iter and resolution_limit return an explicit candidate. Inspect termination and bracket_width.\n\nLimitation: Polynomial comparison uses exact dyadic intermediates of binary64 inputs. Coordinates retain binary64 precision; objective values/signed analytic-baseline differences publish12 significant digits. Required endpoint/final nonzero underflow or overflow rejects.\n\nLimitation: Legacy exact_xmin/exact_fmin are optional binary64 analytic baselines when available; signed abs_err_x/abs_err_f are comparisons, not certified bounds. Tied minima may differ in location; figures are illustrative.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.5"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.5); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.numerical.optimize_1d.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.5",
                    "examples": [
                      "1.0.5"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.0.5"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.numerical.optimize_1d.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/ordinary-differential-equation": {
      "post": {
        "operationId": "calculate_math_numerical_ode",
        "summary": "Ordinary differential equation",
        "description": "Scalar first-order IVP y′=f(t,y) by Euler or RK4. rhs linear is y′=k y; poly is y′=p(t). Not rk45, not systems, not PDE, not CAS. (calculation_version 1.1.1)\n\nSemantic capability: `math.numerical.ode`.\n\nCalculation version: `1.1.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not rk45 / adaptive / Dormand–Prince\n\nLimitation: Not systems of ODEs or second-order IVP\n\nLimitation: Not PDE / CAS / symbolic solve\n\nLimitation: n ≤ 10000\n\nLimitation: t1 = t0 → INVALID_INPUT\n\nLimitation: n must be an integer; fractional steps and unknown inputs are rejected\n\nLimitation: abs_err is a legacy signed difference before publication rounding; diagnostics names signed/absolute/relative error explicitly\n\nLimitation: Fixed-step method completion is not accuracy acceptance; inspect diagnostics and warnings\n\nLimitation: Finite decimal text only; aliases must agree; explicit empty modes/fields do not default.\n\nLimitation: Polynomial intermediates and quadrature sums use exact binary64-input dyadic arithmetic; final results are binary64 projections.\n\nLimitation: Raw input/model fields and h retain binary64 precision; y, exact and error publish12 significant digits. Live graph uses at most257 samples and is not a complete trajectory export.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.numerical.ode.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.1",
                    "examples": [
                      "1.1.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "method": "rk4",
                  "rhs": "linear",
                  "k": 1,
                  "y0": 1,
                  "t0": 0,
                  "t1": 1,
                  "n": 40
                },
                "calculation_version": "1.1.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.numerical.ode.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/euler-method": {
      "post": {
        "operationId": "calculate_math_numerical_ode_alias_euler_method",
        "summary": "Ordinary differential equation (euler-method page alias)",
        "description": "Scalar first-order IVP y′=f(t,y) by Euler or RK4. rhs linear is y′=k y; poly is y′=p(t). Not rk45, not systems, not PDE, not CAS. (calculation_version 1.1.1)\n\nSemantic capability: `math.numerical.ode`.\n\nCalculation version: `1.1.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not rk45 / adaptive / Dormand–Prince\n\nLimitation: Not systems of ODEs or second-order IVP\n\nLimitation: Not PDE / CAS / symbolic solve\n\nLimitation: n ≤ 10000\n\nLimitation: t1 = t0 → INVALID_INPUT\n\nLimitation: n must be an integer; fractional steps and unknown inputs are rejected\n\nLimitation: abs_err is a legacy signed difference before publication rounding; diagnostics names signed/absolute/relative error explicitly\n\nLimitation: Fixed-step method completion is not accuracy acceptance; inspect diagnostics and warnings\n\nLimitation: Finite decimal text only; aliases must agree; explicit empty modes/fields do not default.\n\nLimitation: Polynomial intermediates and quadrature sums use exact binary64-input dyadic arithmetic; final results are binary64 projections.\n\nLimitation: Raw input/model fields and h retain binary64 precision; y, exact and error publish12 significant digits. Live graph uses at most257 samples and is not a complete trajectory export.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.numerical.ode.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.1",
                    "examples": [
                      "1.1.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "method": "rk4",
                  "rhs": "linear",
                  "k": 1,
                  "y0": 1,
                  "t0": 0,
                  "t1": 1,
                  "n": 40
                },
                "calculation_version": "1.1.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.numerical.ode.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/runge-kutta": {
      "post": {
        "operationId": "calculate_math_numerical_ode_alias_runge_kutta",
        "summary": "Ordinary differential equation (runge-kutta page alias)",
        "description": "Scalar first-order IVP y′=f(t,y) by Euler or RK4. rhs linear is y′=k y; poly is y′=p(t). Not rk45, not systems, not PDE, not CAS. (calculation_version 1.1.1)\n\nSemantic capability: `math.numerical.ode`.\n\nCalculation version: `1.1.1`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not rk45 / adaptive / Dormand–Prince\n\nLimitation: Not systems of ODEs or second-order IVP\n\nLimitation: Not PDE / CAS / symbolic solve\n\nLimitation: n ≤ 10000\n\nLimitation: t1 = t0 → INVALID_INPUT\n\nLimitation: n must be an integer; fractional steps and unknown inputs are rejected\n\nLimitation: abs_err is a legacy signed difference before publication rounding; diagnostics names signed/absolute/relative error explicitly\n\nLimitation: Fixed-step method completion is not accuracy acceptance; inspect diagnostics and warnings\n\nLimitation: Finite decimal text only; aliases must agree; explicit empty modes/fields do not default.\n\nLimitation: Polynomial intermediates and quadrature sums use exact binary64-input dyadic arithmetic; final results are binary64 projections.\n\nLimitation: Raw input/model fields and h retain binary64 precision; y, exact and error publish12 significant digits. Live graph uses at most257 samples and is not a complete trajectory export.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.1"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.1); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.numerical.ode.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.1",
                    "examples": [
                      "1.1.1"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "method": "rk4",
                  "rhs": "linear",
                  "k": 1,
                  "y0": 1,
                  "t0": 0,
                  "t1": 1,
                  "n": 40
                },
                "calculation_version": "1.1.1"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.numerical.ode.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/polynomial-roots": {
      "post": {
        "operationId": "calculate_math_polynomial_roots",
        "summary": "Polynomial roots",
        "description": "All roots of a real polynomial of degree 1–8, or Horner evaluation at a real x. Closed form for linear, quadratic, and cubic (Cardano); Durand–Kerner otherwise. Cubic discovery /cubic-equation. Evaluate discovery /polynomial-evaluate. Not the quadratic formula page, not Ferrari, not a single Newton root, not CAS. (calculation_version 1.2.2)\n\nSemantic capability: `math.polynomial.roots`.\n\nCalculation version: `1.2.2`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Finite real constant-first coefficients,degree1–8,leadingnonzero. Arrayorcomma/semicolon/space-separated text;numeric tokens≤512chars,totaltext≤4608. Strict decimal/scientific;nonzero text→zero rejectsNUMERIC_UNDERFLOW;unknown/conflicting aliases andinapplicablex reject. Cubic a,b,c,d forms mustagreewithcoefficients;b/c/d omitteddefaultzero.\n\nLimitation: all_roots acceptsall/roots/durand_kerner/durand/weierstrass/dk aliases;cardano accepts cubic/cubic_equation/cubic_formula;evaluate accepts eval/horner/polynomial_evaluate/polynomial_evaluation. Method/mode aliases agree;case/space/hyphennormalized. Presetpages locktheir method.\n\nLimitation: Exact acceptedbinary64 rational arithmetic bounded16384bits;Horner projects once. Exact GCD square-free decomposition preservesmultiplicity. Stablequadratic/Cardano orscaledDK withtwo2048iterationattempts;exactSturm classifiesrealroots (512levels/4096steps).\n\nLimitation: Every square-free rootset mustpass exactrational Weierstrass/Gershgorin diskdisjointness and2e-10relativeL1 inclusion-error budget,plusnormalizedL1residual≤2e-12. Unresolved/overlappingdisks,reals oriteration failNON_CONVERGENCE;normalizationrange losescoefficient→NUMERICAL_RANGE_ERROR;unrepresentable root/value rejects RESULT_OVERFLOW/UNDERFLOW. Not a universalfinite-input success guarantee.\n\nLimitation: residual_max isunscaled Euclidean |p(z)|max,nullablewhenoutside finitebinary64;normalized_residual ismax (|Re p|+|Im p|)/sum |ci|(|re|+|im|)^i roundedbinary64. A zero displayedresidual isnot proof ofexactroots. Cubic delta usesexactdepresseddiscriminant sign,cubic_case true evenwhendelta isnull on range.\n\nLimitation: Independent Fraction-factor/Decimal250/750 fixedvectors checkcomplete multisets inclmultiplicity with4e-10relativeL2+2subnormalquanta;zero roots exact,Horner≤1ULP. IndependentPython recomputesdiagnosticsfromreturnedroots. No whole-domain orcross-runtime bitwiseguarantee;nearclustersandcoeffperturbations areillconditioned.\n\nLimitation: Display never snapsnonzero roots/coefficients. Real curve usesexactHorner;complexroots arelistedoffrealplane. Graphomittedwhenfinitecoordinates/labels cannotbedistinguished. NativeCSV/JSON preservefullpack/rawinputs. Typinglocal;sharedURLs andREST/MCP sendinputs andmayenterlogs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.2"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.2); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.polynomial.roots.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.2",
                    "examples": [
                      "1.2.2"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.2.2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.polynomial.roots.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cubic-equation": {
      "post": {
        "operationId": "calculate_math_polynomial_roots_alias_cubic_equation",
        "summary": "Polynomial roots (cubic-equation page alias)",
        "description": "All roots of a real polynomial of degree 1–8, or Horner evaluation at a real x. Closed form for linear, quadratic, and cubic (Cardano); Durand–Kerner otherwise. Cubic discovery /cubic-equation. Evaluate discovery /polynomial-evaluate. Not the quadratic formula page, not Ferrari, not a single Newton root, not CAS. (calculation_version 1.2.2)\n\nSemantic capability: `math.polynomial.roots`.\n\nCalculation version: `1.2.2`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Finite real constant-first coefficients,degree1–8,leadingnonzero. Arrayorcomma/semicolon/space-separated text;numeric tokens≤512chars,totaltext≤4608. Strict decimal/scientific;nonzero text→zero rejectsNUMERIC_UNDERFLOW;unknown/conflicting aliases andinapplicablex reject. Cubic a,b,c,d forms mustagreewithcoefficients;b/c/d omitteddefaultzero.\n\nLimitation: all_roots acceptsall/roots/durand_kerner/durand/weierstrass/dk aliases;cardano accepts cubic/cubic_equation/cubic_formula;evaluate accepts eval/horner/polynomial_evaluate/polynomial_evaluation. Method/mode aliases agree;case/space/hyphennormalized. Presetpages locktheir method.\n\nLimitation: Exact acceptedbinary64 rational arithmetic bounded16384bits;Horner projects once. Exact GCD square-free decomposition preservesmultiplicity. Stablequadratic/Cardano orscaledDK withtwo2048iterationattempts;exactSturm classifiesrealroots (512levels/4096steps).\n\nLimitation: Every square-free rootset mustpass exactrational Weierstrass/Gershgorin diskdisjointness and2e-10relativeL1 inclusion-error budget,plusnormalizedL1residual≤2e-12. Unresolved/overlappingdisks,reals oriteration failNON_CONVERGENCE;normalizationrange losescoefficient→NUMERICAL_RANGE_ERROR;unrepresentable root/value rejects RESULT_OVERFLOW/UNDERFLOW. Not a universalfinite-input success guarantee.\n\nLimitation: residual_max isunscaled Euclidean |p(z)|max,nullablewhenoutside finitebinary64;normalized_residual ismax (|Re p|+|Im p|)/sum |ci|(|re|+|im|)^i roundedbinary64. A zero displayedresidual isnot proof ofexactroots. Cubic delta usesexactdepresseddiscriminant sign,cubic_case true evenwhendelta isnull on range.\n\nLimitation: Independent Fraction-factor/Decimal250/750 fixedvectors checkcomplete multisets inclmultiplicity with4e-10relativeL2+2subnormalquanta;zero roots exact,Horner≤1ULP. IndependentPython recomputesdiagnosticsfromreturnedroots. No whole-domain orcross-runtime bitwiseguarantee;nearclustersandcoeffperturbations areillconditioned.\n\nLimitation: Display never snapsnonzero roots/coefficients. Real curve usesexactHorner;complexroots arelistedoffrealplane. Graphomittedwhenfinitecoordinates/labels cannotbedistinguished. NativeCSV/JSON preservefullpack/rawinputs. Typinglocal;sharedURLs andREST/MCP sendinputs andmayenterlogs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.2"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.2); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.polynomial.roots.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.2",
                    "examples": [
                      "1.2.2"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.2.2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.polynomial.roots.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/polynomial-evaluate": {
      "post": {
        "operationId": "calculate_math_polynomial_roots_alias_polynomial_evaluate",
        "summary": "Polynomial roots (polynomial-evaluate page alias)",
        "description": "All roots of a real polynomial of degree 1–8, or Horner evaluation at a real x. Closed form for linear, quadratic, and cubic (Cardano); Durand–Kerner otherwise. Cubic discovery /cubic-equation. Evaluate discovery /polynomial-evaluate. Not the quadratic formula page, not Ferrari, not a single Newton root, not CAS. (calculation_version 1.2.2)\n\nSemantic capability: `math.polynomial.roots`.\n\nCalculation version: `1.2.2`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Finite real constant-first coefficients,degree1–8,leadingnonzero. Arrayorcomma/semicolon/space-separated text;numeric tokens≤512chars,totaltext≤4608. Strict decimal/scientific;nonzero text→zero rejectsNUMERIC_UNDERFLOW;unknown/conflicting aliases andinapplicablex reject. Cubic a,b,c,d forms mustagreewithcoefficients;b/c/d omitteddefaultzero.\n\nLimitation: all_roots acceptsall/roots/durand_kerner/durand/weierstrass/dk aliases;cardano accepts cubic/cubic_equation/cubic_formula;evaluate accepts eval/horner/polynomial_evaluate/polynomial_evaluation. Method/mode aliases agree;case/space/hyphennormalized. Presetpages locktheir method.\n\nLimitation: Exact acceptedbinary64 rational arithmetic bounded16384bits;Horner projects once. Exact GCD square-free decomposition preservesmultiplicity. Stablequadratic/Cardano orscaledDK withtwo2048iterationattempts;exactSturm classifiesrealroots (512levels/4096steps).\n\nLimitation: Every square-free rootset mustpass exactrational Weierstrass/Gershgorin diskdisjointness and2e-10relativeL1 inclusion-error budget,plusnormalizedL1residual≤2e-12. Unresolved/overlappingdisks,reals oriteration failNON_CONVERGENCE;normalizationrange losescoefficient→NUMERICAL_RANGE_ERROR;unrepresentable root/value rejects RESULT_OVERFLOW/UNDERFLOW. Not a universalfinite-input success guarantee.\n\nLimitation: residual_max isunscaled Euclidean |p(z)|max,nullablewhenoutside finitebinary64;normalized_residual ismax (|Re p|+|Im p|)/sum |ci|(|re|+|im|)^i roundedbinary64. A zero displayedresidual isnot proof ofexactroots. Cubic delta usesexactdepresseddiscriminant sign,cubic_case true evenwhendelta isnull on range.\n\nLimitation: Independent Fraction-factor/Decimal250/750 fixedvectors checkcomplete multisets inclmultiplicity with4e-10relativeL2+2subnormalquanta;zero roots exact,Horner≤1ULP. IndependentPython recomputesdiagnosticsfromreturnedroots. No whole-domain orcross-runtime bitwiseguarantee;nearclustersandcoeffperturbations areillconditioned.\n\nLimitation: Display never snapsnonzero roots/coefficients. Real curve usesexactHorner;complexroots arelistedoffrealplane. Graphomittedwhenfinitecoordinates/labels cannotbedistinguished. NativeCSV/JSON preservefullpack/rawinputs. Typinglocal;sharedURLs andREST/MCP sendinputs andmayenterlogs.",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.2.2"
              ]
            },
            "description": "Pin calculation_version (published: 1.2.2); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/math.polynomial.roots.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.2.2",
                    "examples": [
                      "1.2.2"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {},
                "calculation_version": "1.2.2"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/math.polynomial.roots.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/planar-equilibrium": {
      "post": {
        "operationId": "calculate_mechanical_statics_planar_equilibrium",
        "summary": "Planar equilibrium",
        "description": "2-D point-force resultant and equilibrium. Resultant uses math.vector. Two or three unknowns use math.linear_algebra. Not a beam. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.planar_equilibrium`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: 2-D point forces and concentrated moments only\n\nLimitation: Moment about the origin, CCW positive\n\nLimitation: Solve path is exactly 2 or 3 unknowns\n\nLimitation: Not beam deflection, distributed load, frames, or 3-D",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.planar_equilibrium.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mode": "resultant",
                  "forces": "3,0; 0,4"
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.planar_equilibrium.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/plane-centroid": {
      "post": {
        "operationId": "calculate_mechanical_statics_plane_centroid",
        "summary": "Plane centroid",
        "description": "Centroid of composite plane areas. First moments use math.vector add. Negative area is a hole. Not a moment of inertia. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.plane_centroid`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Plane areas with a known part centroid\n\nLimitation: Negative area is a hole\n\nLimitation: Total area must not be zero\n\nLimitation: Not moment of inertia, radius of gyration, section modulus, or beam deflection",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.plane_centroid.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "parts": "2,0,0; 2,4,0"
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.plane_centroid.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/area-moment": {
      "post": {
        "operationId": "calculate_mechanical_statics_area_moment",
        "summary": "Area moment",
        "description": "Second moment of composite plane areas about the composite centroid. Centroid reuses plane centroid. Parallel-axis shift of supplied centroidal Ix and Iy. Radius of gyration is sqrt(I/A). Not a section modulus and not a beam. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.area_moment`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Ix and Iy are supplied about each part centroid\n\nLimitation: Axes stay parallel to x and y\n\nLimitation: Negative area is a hole\n\nLimitation: Total area must not be zero\n\nLimitation: Not product of inertia, principal axes, section modulus, or beam deflection",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.area_moment.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "parts": "1,0,1,0,0; 1,0,1,0,2"
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.area_moment.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/principal-moment": {
      "post": {
        "operationId": "calculate_mechanical_statics_principal_moment",
        "summary": "Principal moments",
        "description": "Product of inertia and principal moments of a composite plane area. Ix and Iy reuse area moment. The 2-D inertia tensor uses math.linear_algebra eigen. θ is the I1 axis. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.principal_moment`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Moments are supplied about each part centroid\n\nLimitation: θ is the I1 axis, CCW from +x, in (−90°, 90°]\n\nLimitation: Equal principal moments report θ = 0\n\nLimitation: Negative area is a hole\n\nLimitation: Total area must not be zero\n\nLimitation: Not a Mohr circle drawing, section modulus, or beam deflection",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.principal_moment.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "parts": "0,0,0,1,0,0; 0,0,0,1,2,2"
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.principal_moment.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/shear-moment": {
      "post": {
        "operationId": "calculate_mechanical_statics_shear_moment",
        "summary": "Shear and moment",
        "description": "Shear and bending moment at a cut in a simply supported span with point forces and concentrated moments. Reactions use math.linear_algebra solve. Not deflection and not a distributed load. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.shear_moment`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Simply supported span\n\nLimitation: Point forces and concentrated moments only\n\nLimitation: Upward force and CCW moment are positive\n\nLimitation: A load exactly at the cut stays on the right\n\nLimitation: Not distributed load, deflection, or an indeterminate beam",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.shear_moment.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "L": 4,
                  "s": 1,
                  "forces": "-10,2"
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.shear_moment.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/section-modulus": {
      "post": {
        "operationId": "calculate_mechanical_statics_section_modulus",
        "summary": "Section modulus",
        "description": "Elastic section modulus of a composite plane area. Sx = Ix/cy and Sy = Iy/cx after the area-moment shift to the composite centroid. Not bending stress and not a rectangle built from b and h. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.section_modulus`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Sx = Ix/cy and Sy = Iy/cx about axes parallel to x and y\n\nLimitation: cx and cy are distances from the composite centroid to the extreme fiber\n\nLimitation: A blank distance omits that modulus\n\nLimitation: Negative area is a hole\n\nLimitation: Not bending stress, plastic modulus, principal-axis modulus, or beam deflection",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.section_modulus.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "parts": "16,4,4,0,0",
                  "cx": 1,
                  "cy": 2
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.section_modulus.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/principal-section-modulus": {
      "post": {
        "operationId": "calculate_mechanical_statics_principal_section_modulus",
        "summary": "Principal section modulus",
        "description": "Elastic section modulus about the principal axes. S1 = I1/c1 and S2 = I2/c2 after the principal-moment engine. Not Sx and Sy, and not bending stress. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.principal_section_modulus`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: S1 = I1/c1 and S2 = I2/c2 along the principal axes\n\nLimitation: c1 and c2 are distances from the composite centroid to the extreme fiber\n\nLimitation: A blank distance omits that modulus\n\nLimitation: θ is the I1 axis, CCW from +x, in (−90°, 90°]\n\nLimitation: Not Sx or Sy, bending stress, plastic modulus, or beam deflection",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.principal_section_modulus.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "parts": "4,1,0,2,0,0",
                  "c1": 2,
                  "c2": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.principal_section_modulus.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/inclined-axis-moment": {
      "post": {
        "operationId": "calculate_mechanical_statics_inclined_axis_moment",
        "summary": "Inclined-axis moments",
        "description": "Centroidal moments about axes rotated by a given angle. Ix, Iy, and Ixy come from the principal-moment engine. Not the principal values, and not a Mohr circle. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.inclined_axis_moment`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: θ is counterclockwise from +x and is an input, not a solved principal angle\n\nLimitation: Ix′ + Iy′ = Ix + Iy about the composite centroid\n\nLimitation: Negative area is a hole\n\nLimitation: Not I1 or I2, not a Mohr-circle drawing, not section modulus, and not beam deflection",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.inclined_axis_moment.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "parts": "4,1,0,2,0,0",
                  "theta_deg": 0
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.inclined_axis_moment.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/incline-friction": {
      "post": {
        "operationId": "calculate_mechanical_statics_incline_friction",
        "summary": "Incline friction",
        "description": "Force parallel to a rough incline at impending slip. Normal and friction come from the friction engine. Equilibrium is a 2-by-2 linear solve. Not F = μN by itself, and not wedges or belts. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.incline_friction`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: P is parallel to the plane and positive up the plane\n\nLimitation: F is positive up the plane and opposes the impending motion\n\nLimitation: μ is the coefficient at impending slip\n\nLimitation: Not wedges, screws, belts, tipping, or kinetic friction as a separate coefficient",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.incline_friction.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "W": 100,
                  "theta_deg": 0,
                  "mu": 0.25,
                  "direction": "up"
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.incline_friction.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/slip-or-tip": {
      "post": {
        "operationId": "calculate_mechanical_statics_slip_or_tip",
        "summary": "Slip or tip",
        "description": "Whether a block on a level surface slips or tips under a horizontal force. Slip uses the friction engine. Tip is the moment of the weight about the leading edge. Not an incline, and not a wedge. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.slip_or_tip`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: The surface is level and the force is horizontal\n\nLimitation: The weight acts through the center of a base of width b\n\nLimitation: mode is slip, tip, or either\n\nLimitation: Not an incline, a wedge, a screw, or a belt",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.slip_or_tip.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "W": 100,
                  "mu": 0.25,
                  "b": 2,
                  "d": 2
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.slip_or_tip.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/ladder-friction": {
      "post": {
        "operationId": "calculate_mechanical_statics_ladder_friction",
        "summary": "Ladder friction",
        "description": "Minimum floor friction for a uniform ladder against a smooth wall. The three reactions are a linear system. μ_min comes from the friction engine. Not a wedge, a screw, or a belt. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.ladder_friction`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: The ladder is uniform and the weight acts at mid-length\n\nLimitation: The wall is smooth and the floor is rough\n\nLimitation: θ is the angle with the floor\n\nLimitation: Not a person on the ladder, a rough wall, a wedge, a screw, or a belt",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.ladder_friction.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "W": 100,
                  "theta_deg": 45
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.ladder_friction.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/ladder-rough-wall": {
      "post": {
        "operationId": "calculate_mechanical_statics_ladder_rough_wall",
        "summary": "Rough-wall ladder",
        "description": "Critical angle of a uniform ladder when both the floor and the wall are at impending slip. μwall = 0 recovers the smooth-wall ladder. μfloor·μwall ≥ 1 holds at every angle. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.ladder_rough_wall`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: The ladder is uniform and the weight acts at mid-length\n\nLimitation: Both surfaces are at impending slip\n\nLimitation: μwall = 0 is the smooth-wall case\n\nLimitation: Not a person on the ladder, a wedge, a screw, or a belt",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.ladder_rough_wall.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "W": 100,
                  "mu_floor": 0.5,
                  "mu_wall": 0
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.ladder_rough_wall.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/ladder-person": {
      "post": {
        "operationId": "calculate_mechanical_statics_ladder_person",
        "summary": "Person on a ladder",
        "description": "How far a person can climb a uniform ladder before impending slip. s is a fraction of the length from the floor. μwall = 0 is a smooth wall. s above 1 reaches the top. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.ladder_person`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: The ladder is uniform and its weight acts at mid-length\n\nLimitation: s is the fraction of the length from the floor toward the wall\n\nLimitation: Both surfaces are at impending slip\n\nLimitation: Not a wedge, a screw, or a belt",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.ladder_person.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "W": 100,
                  "P": 100,
                  "theta_deg": 45,
                  "mu_floor": 0.5,
                  "mu_wall": 0
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.ladder_person.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/incline-slip-or-tip": {
      "post": {
        "operationId": "calculate_mechanical_statics_incline_slip_or_tip",
        "summary": "Incline slip or tip",
        "description": "Whether a homogeneous rectangle on an incline slips or tips under its own weight as the angle is raised. θslip is the friction angle. θtip is the angle where the vertical through the center passes through the downhill edge. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.incline_slip_or_tip`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: The block is a homogeneous rectangle\n\nLimitation: The only force is its own weight\n\nLimitation: b is the base along the incline and h is the height perpendicular to it\n\nLimitation: Not a horizontal force on a level surface, a wedge, a screw, or a belt",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.incline_slip_or_tip.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "mu": 1,
                  "b": 2,
                  "h": 2
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.incline_slip_or_tip.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/incline-horizontal": {
      "post": {
        "operationId": "calculate_mechanical_statics_incline_horizontal",
        "summary": "Horizontal force on an incline",
        "description": "Horizontal force that puts a block on an incline at impending slip. P is positive toward the uphill side. The normal grows by P sinθ. This is not a force parallel to the plane. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.incline_horizontal`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: P is horizontal and positive toward the uphill side\n\nLimitation: Impending slip, with friction opposing the stated direction\n\nLimitation: The normal is W cosθ + P sinθ\n\nLimitation: Not a force parallel to the plane, tipping, a wedge, a screw, or a belt",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.incline_horizontal.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "W": 100,
                  "theta_deg": 0,
                  "mu": 0.25,
                  "direction": "up"
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.incline_horizontal.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/angled-pull": {
      "post": {
        "operationId": "calculate_mechanical_statics_angled_pull",
        "summary": "Angled pull",
        "description": "Pull at an angle above the horizontal that puts a block on a level surface at impending slip. The normal is W − P sinα. A horizontal pull is α = 0. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.angled_pull`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: The surface is level\n\nLimitation: α is measured above the horizontal toward impending motion\n\nLimitation: The normal is W − P sinα\n\nLimitation: Not an incline, tipping, a wedge, a screw, or a belt",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.angled_pull.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "W": 100,
                  "mu": 0.25,
                  "alpha_deg": 0
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.angled_pull.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/least-pull": {
      "post": {
        "operationId": "calculate_mechanical_statics_least_pull",
        "summary": "Least pull",
        "description": "The angle and magnitude of the smallest pull that puts a block on a level surface at impending slip. α = arctan μ. P = μW / √(1+μ²). (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.least_pull`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: The surface is level\n\nLimitation: α = arctan μ is the angle that minimizes the pull\n\nLimitation: P = μW / √(1+μ²) and N = W / (1+μ²)\n\nLimitation: Not a prescribed angle, an incline, tipping, a wedge, a screw, or a belt",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.least_pull.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "W": 100,
                  "mu": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.least_pull.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/incline-angled-pull": {
      "post": {
        "operationId": "calculate_mechanical_statics_incline_angled_pull",
        "summary": "Angled pull on an incline",
        "description": "Pull at an angle above the horizontal on a block at impending slip on an incline. α = 0 is a horizontal force. α = θ is a force parallel to the plane. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.incline_angled_pull`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: α is measured above the horizontal toward the uphill side\n\nLimitation: The normal is W cosθ − P sin(α−θ)\n\nLimitation: Not tipping, a wedge, a screw, or a belt",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.incline_angled_pull.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "W": 100,
                  "theta_deg": 0,
                  "mu": 0.25,
                  "alpha_deg": 0,
                  "direction": "up"
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.incline_angled_pull.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/incline-least-pull": {
      "post": {
        "operationId": "calculate_mechanical_statics_incline_least_pull",
        "summary": "Least pull on an incline",
        "description": "The smallest pull that moves a block up an incline. The pull is at the friction angle above the incline. On a level surface this is the least-pull page. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.incline_least_pull`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: The pull is β = arctan μ above the incline, so α = θ + β above the horizontal\n\nLimitation: P = W (sinθ + μ cosθ) / √(1+μ²)\n\nLimitation: N = W (cosθ − μ sinθ) / (1+μ²)\n\nLimitation: Not a prescribed angle, tipping, a wedge, a screw, or a belt",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.incline_least_pull.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "W": 100,
                  "theta_deg": 0,
                  "mu": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.incline_least_pull.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/rectangular-section": {
      "post": {
        "operationId": "calculate_mechanical_statics_rectangular_section",
        "summary": "Rectangular section",
        "description": "Centroidal area moments and elastic section moduli of a rectangle from its width and height. Composite sections stay on the area-moment page. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.rectangular_section`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Centroidal axes parallel to the sides\n\nLimitation: Ix = b h³/12 and Iy = h b³/12\n\nLimitation: Sx = b h²/6 and Sy = h b²/6\n\nLimitation: Not a composite section, a circle, bending stress, or a plastic modulus",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.rectangular_section.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "b": 2,
                  "h": 6
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.rectangular_section.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/circular-section": {
      "post": {
        "operationId": "calculate_mechanical_statics_circular_section",
        "summary": "Circular section",
        "description": "Centroidal area moments and elastic section moduli of a solid circle from its radius. A rectangle stays on the rectangular-section page. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.circular_section`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Solid circle about centroidal diameters\n\nLimitation: Ix = Iy = π r⁴/4\n\nLimitation: Sx = Sy = π r³/4\n\nLimitation: kx = ky = r/2\n\nLimitation: Not a rectangle, a hollow circle, bending stress, or a plastic modulus",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.circular_section.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "r": 2
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.circular_section.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/hollow-circular-section": {
      "post": {
        "operationId": "calculate_mechanical_statics_hollow_circular_section",
        "summary": "Hollow circular section",
        "description": "Centroidal area moments and elastic section moduli of a hollow circle from the outer and inner radii. A solid circle stays on the circular-section page. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.hollow_circular_section`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Hollow circle about centroidal diameters\n\nLimitation: Ix = Iy = π(R⁴−r⁴)/4\n\nLimitation: Sx = Sy = Ix/R\n\nLimitation: kx = ky = √(R²+r²)/2\n\nLimitation: Not a solid circle, a rectangle, bending stress, or a plastic modulus",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.hollow_circular_section.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "R": 2,
                  "r": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.hollow_circular_section.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/bending-stress": {
      "post": {
        "operationId": "calculate_mechanical_statics_bending_stress",
        "summary": "Bending stress",
        "description": "Elastic bending stress σ = M/S on one centroidal axis. S may be entered or formed as Ix/c by the section-modulus engine. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.bending_stress`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: One centroidal axis\n\nLimitation: σ = M/S\n\nLimitation: S = Ix/c when S is omitted\n\nLimitation: Not a rectangle built from b and h\n\nLimitation: Not transverse shear, deflection, or a plastic modulus",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.bending_stress.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "M": 12,
                  "S": 4
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.bending_stress.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/rectangular-plastic-modulus": {
      "post": {
        "operationId": "calculate_mechanical_statics_rectangular_plastic_modulus",
        "summary": "Rectangular plastic modulus",
        "description": "Plastic moduli and shape factor of a solid rectangle. Elastic Sx and Sy come from the rectangular-section engine. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.rectangular_plastic_modulus`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: One solid rectangle\n\nLimitation: Zx = b h²/4 and Zy = h b²/4\n\nLimitation: Shape factor 3/2\n\nLimitation: Not a circle, bending stress, or a plastic moment",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.rectangular_plastic_modulus.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "b": 2,
                  "h": 6
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.rectangular_plastic_modulus.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/circular-plastic-modulus": {
      "post": {
        "operationId": "calculate_mechanical_statics_circular_plastic_modulus",
        "summary": "Circular plastic modulus",
        "description": "Plastic modulus and shape factor of a solid circle. The elastic modulus comes from the circular-section engine. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.circular_plastic_modulus`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Solid circle about a centroidal diameter\n\nLimitation: Z = 4 r³/3\n\nLimitation: Shape factor 16/(3π)\n\nLimitation: Not a rectangle, a hollow circle, or a plastic moment",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.circular_plastic_modulus.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "r": 2
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.circular_plastic_modulus.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/hollow-circular-plastic-modulus": {
      "post": {
        "operationId": "calculate_mechanical_statics_hollow_circular_plastic_modulus",
        "summary": "Hollow circular plastic modulus",
        "description": "Plastic modulus and shape factor of a hollow circle. The elastic modulus comes from the hollow-circular-section engine. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.hollow_circular_plastic_modulus`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Hollow circle about a centroidal diameter\n\nLimitation: Z = (4/3)(R³−r³)\n\nLimitation: Shape factor Z/S\n\nLimitation: Not a solid circle, a rectangle, or a plastic moment",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.hollow_circular_plastic_modulus.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "R": 2,
                  "r": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.hollow_circular_plastic_modulus.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/plastic-moment": {
      "post": {
        "operationId": "calculate_mechanical_statics_plastic_moment",
        "summary": "Plastic moment",
        "description": "Fully plastic moment on one centroidal axis from a yield stress and a plastic modulus. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.plastic_moment`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: One centroidal axis\n\nLimitation: Mp = σ_y Z\n\nLimitation: Z is an input, not rebuilt from b and h\n\nLimitation: Not transverse shear",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.plastic_moment.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "sigma_y": 250,
                  "Z": 18
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.plastic_moment.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/transverse-shear": {
      "post": {
        "operationId": "calculate_mechanical_statics_transverse_shear",
        "summary": "Transverse shear",
        "description": "Shear stress at one line from the shear force, the first moment, the area moment, and the width at that line. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.transverse_shear`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: One line across the section\n\nLimitation: τ = VQ/(I b)\n\nLimitation: Q, I, and b are inputs\n\nLimitation: Not a rectangle built from width and height",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.transverse_shear.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "V": 12,
                  "Q": 9,
                  "I": 36,
                  "b": 2
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.transverse_shear.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/rectangular-shear": {
      "post": {
        "operationId": "calculate_mechanical_statics_rectangular_shear",
        "summary": "Rectangular shear",
        "description": "Neutral-axis shear stress of one solid rectangle. The area moment comes from the rectangular-section engine. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.rectangular_shear`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Neutral axis of one solid rectangle\n\nLimitation: Q = b h²/8\n\nLimitation: I from the rectangular-section engine\n\nLimitation: Not a circle",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.rectangular_shear.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "V": 12,
                  "b": 2,
                  "h": 6
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.rectangular_shear.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/circular-shear": {
      "post": {
        "operationId": "calculate_mechanical_statics_circular_shear",
        "summary": "Circular shear",
        "description": "Neutral-axis shear stress of one solid circle. The area moment comes from the circular-section engine. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.circular_shear`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Neutral axis of one solid circle\n\nLimitation: Q = (2/3) r³\n\nLimitation: Width at the axis is 2r\n\nLimitation: Not a hollow circle",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.circular_shear.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "V": 12,
                  "r": 2
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.circular_shear.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/hollow-circular-shear": {
      "post": {
        "operationId": "calculate_mechanical_statics_hollow_circular_shear",
        "summary": "Hollow circular shear",
        "description": "Neutral-axis shear stress of one hollow circle. The area moment comes from the hollow-circular-section engine. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.hollow_circular_shear`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Neutral axis of one hollow circle\n\nLimitation: Q = (2/3)(R³−r³)\n\nLimitation: Width at the axis is 2(R−r)\n\nLimitation: Not beam deflection",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.hollow_circular_shear.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "V": 12,
                  "R": 2,
                  "r": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.hollow_circular_shear.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/beam-deflection": {
      "post": {
        "operationId": "calculate_mechanical_statics_beam_deflection",
        "summary": "Beam deflection",
        "description": "Midspan deflection of a simply supported span with one concentrated load. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.beam_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Simply supported span\n\nLimitation: One concentrated load at midspan\n\nLimitation: I is an input\n\nLimitation: Not a cantilever or a distributed load",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.beam_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "P": 48,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.beam_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/mechanical-beam-deflection": {
      "post": {
        "operationId": "calculate_mechanical_beam_deflection",
        "summary": "Mechanical beam deflection (shared contract)",
        "description": "Shared Euler–Bernoulli deflection Capability. Delegates to Layer-A primitives. See docs/platform/MECHANICAL_BEAM_COLLAPSE.md. (calculation_version 1.1.0)\n\nSemantic capability: `mechanical.beam.deflection`.\n\nCalculation version: `1.1.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Not FEM / indeterminate / Timoshenko\n\nLimitation: Not generic multi-load max\n\nLimitation: Not interior uniform segments; not overhang arm at_x stations\n\nLimitation: Human SEO Entries remapped via discovery prefills to this Capability",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.1.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.1.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.beam.deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.1.0",
                    "examples": [
                      "1.1.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "support": "simply_supported",
                  "L": 2,
                  "E": 1,
                  "I": 1,
                  "loads": [
                    {
                      "id": "P1",
                      "type": "point",
                      "P": 480
                    }
                  ],
                  "query": {
                    "kind": "midspan"
                  }
                },
                "calculation_version": "1.1.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.beam.deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cantilever-deflection": {
      "post": {
        "operationId": "calculate_mechanical_statics_cantilever_deflection",
        "summary": "Cantilever deflection",
        "description": "Free-end deflection of a cantilever with one concentrated load at the tip. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.cantilever_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Cantilever fixed at one end\n\nLimitation: One concentrated load at the free end\n\nLimitation: I is an input\n\nLimitation: Not a simply supported span or a distributed load",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "P": 48,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/uniform-load-deflection": {
      "post": {
        "operationId": "calculate_mechanical_statics_uniform_load_deflection",
        "summary": "Uniform load deflection",
        "description": "Midspan deflection of a simply supported span with a uniform load over the whole span. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.uniform_load_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Simply supported span\n\nLimitation: Uniform load over the whole span\n\nLimitation: I is an input\n\nLimitation: Not a cantilever or a concentrated load",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.uniform_load_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w": 24,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.uniform_load_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cantilever-uniform-deflection": {
      "post": {
        "operationId": "calculate_mechanical_statics_cantilever_uniform_deflection",
        "summary": "Cantilever uniform deflection",
        "description": "Free-end deflection of a cantilever with a uniform load over the whole length. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.cantilever_uniform_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Cantilever fixed at one end\n\nLimitation: Uniform load over the whole length\n\nLimitation: I is an input\n\nLimitation: Not a simply supported span or a concentrated load",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_uniform_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w": 24,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_uniform_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cantilever-moment-deflection": {
      "post": {
        "operationId": "calculate_mechanical_statics_cantilever_moment_deflection",
        "summary": "Cantilever moment deflection",
        "description": "Free-end deflection of a cantilever with one concentrated moment at the free end. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.cantilever_moment_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Cantilever fixed at one end\n\nLimitation: One concentrated moment at the free end\n\nLimitation: I is an input\n\nLimitation: Not a point load or a uniform load",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_moment_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "M": 4,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_moment_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/beam-moment-deflection": {
      "post": {
        "operationId": "calculate_mechanical_statics_beam_moment_deflection",
        "summary": "Beam moment deflection",
        "description": "Midspan deflection of a simply supported span with one concentrated moment at one end. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.beam_moment_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Simply supported span\n\nLimitation: One concentrated moment at one end\n\nLimitation: Midspan deflection, not the off-center maximum\n\nLimitation: I is an input\n\nLimitation: Not a cantilever or a point load",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.beam_moment_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "M": 16,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.beam_moment_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/beam-moment-maximum": {
      "post": {
        "operationId": "calculate_mechanical_statics_beam_moment_max_deflection",
        "summary": "Beam moment maximum deflection",
        "description": "Largest deflection of a simply supported span with one concentrated moment at one end. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.beam_moment_max_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Simply supported span\n\nLimitation: One concentrated moment at one end\n\nLimitation: Largest deflection, not the midspan value\n\nLimitation: x is measured from the end without the moment\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.beam_moment_max_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "M": 16,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.beam_moment_max_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/offset-load-deflection": {
      "post": {
        "operationId": "calculate_mechanical_statics_offset_load_deflection",
        "summary": "Offset load deflection",
        "description": "Deflection under one concentrated load on a simply supported span, at a stated distance from the left support. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.offset_load_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Simply supported span\n\nLimitation: One concentrated load strictly between the supports\n\nLimitation: Deflection under the load, not the off-load maximum\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.offset_load_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "P": 48,
                  "a": 1,
                  "L": 4,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.offset_load_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/offset-load-maximum": {
      "post": {
        "operationId": "calculate_mechanical_statics_offset_load_max_deflection",
        "summary": "Offset load maximum deflection",
        "description": "Largest deflection of a simply supported span with one concentrated load not at midspan. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.offset_load_max_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Simply supported span\n\nLimitation: Largest deflection, not the value under the load\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.offset_load_max_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "P": 48,
                  "a": 1,
                  "L": 4,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.offset_load_max_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cantilever-intermediate-deflection": {
      "post": {
        "operationId": "calculate_mechanical_statics_cantilever_intermediate_deflection",
        "summary": "Cantilever intermediate deflection",
        "description": "Deflection at a concentrated load on a cantilever, measured from the fixed end. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.cantilever_intermediate_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Cantilever\n\nLimitation: Deflection at the load, not at the free end\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_intermediate_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "P": 48,
                  "a": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_intermediate_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cantilever-tip-deflection": {
      "post": {
        "operationId": "calculate_mechanical_statics_cantilever_tip_deflection",
        "summary": "Cantilever tip deflection",
        "description": "Free-end deflection of a cantilever with a concentrated load between the fixed end and the tip. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.cantilever_tip_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Cantilever\n\nLimitation: Deflection at the free end\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_tip_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "P": 48,
                  "a": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_tip_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/beam-end-moments": {
      "post": {
        "operationId": "calculate_mechanical_statics_beam_end_moments_deflection",
        "summary": "Equal end-moment deflection",
        "description": "Midspan deflection of a simply supported span under equal sagging end moments. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.beam_end_moments_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Simply supported span\n\nLimitation: Equal sagging end moments\n\nLimitation: Midspan value\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.beam_end_moments_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "M": 16,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.beam_end_moments_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/triangular-load-deflection": {
      "post": {
        "operationId": "calculate_mechanical_statics_triangular_load_deflection",
        "summary": "Triangular load deflection",
        "description": "Midspan deflection of a simply supported span with intensity 0 at the left support and w0 at the right. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.triangular_load_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Simply supported span\n\nLimitation: Midspan value, not the maximum\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.triangular_load_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w0": 24,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.triangular_load_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/triangular-load-maximum": {
      "post": {
        "operationId": "calculate_mechanical_statics_triangular_load_max_deflection",
        "summary": "Triangular load maximum deflection",
        "description": "Largest deflection of a simply supported span with intensity 0 at the left support and w0 at the right. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.triangular_load_max_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Simply supported span\n\nLimitation: Largest deflection, not the midspan value\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.triangular_load_max_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w0": 24,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.triangular_load_max_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cantilever-triangular-deflection": {
      "post": {
        "operationId": "calculate_mechanical_statics_cantilever_triangular_deflection",
        "summary": "Cantilever triangular deflection",
        "description": "Tip deflection of a cantilever whose triangular load peaks at the fixed end. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.cantilever_triangular_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Cantilever\n\nLimitation: Peak intensity at the fixed end\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_triangular_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w0": 24,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_triangular_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cantilever-triangular-tip": {
      "post": {
        "operationId": "calculate_mechanical_statics_cantilever_triangular_tip_deflection",
        "summary": "Cantilever tip-peak deflection",
        "description": "Tip deflection of a cantilever whose triangular load peaks at the free end. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.cantilever_triangular_tip_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Cantilever\n\nLimitation: Peak intensity at the free end\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_triangular_tip_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w0": 24,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_triangular_tip_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/center-triangle-deflection": {
      "post": {
        "operationId": "calculate_mechanical_statics_center_triangle_deflection",
        "summary": "Center-peaked triangle deflection",
        "description": "Midspan deflection of a simply supported span with intensity 0 at both supports and w0 at midspan. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.center_triangle_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Simply supported span\n\nLimitation: Peak at midspan\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.center_triangle_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w0": 24,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.center_triangle_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/end-triangle-deflection": {
      "post": {
        "operationId": "calculate_mechanical_statics_end_triangle_deflection",
        "summary": "End-peaked triangle deflection",
        "description": "Midspan deflection of a simply supported span with intensity w0 at both supports and 0 at midspan. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.end_triangle_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Simply supported span\n\nLimitation: Peaks at the supports\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.end_triangle_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w0": 24,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.end_triangle_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cantilever-moment-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_cantilever_moment_at_deflection",
        "summary": "Cantilever moment at the couple",
        "description": "Deflection at a concentrated moment on a cantilever, measured from the fixed end. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.cantilever_moment_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Cantilever\n\nLimitation: Deflection at the moment\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_moment_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "M": 4,
                  "a": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_moment_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/paired-load-deflection": {
      "post": {
        "operationId": "calculate_mechanical_statics_paired_load_deflection",
        "summary": "Paired load deflection",
        "description": "Midspan deflection of a simply supported span with two equal loads, each at distance a from the nearer support. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.paired_load_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Simply supported span\n\nLimitation: Two equal loads\n\nLimitation: a is at most L/2\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.paired_load_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "P": 48,
                  "a": 1,
                  "L": 4,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.paired_load_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cantilever-partial-deflection": {
      "post": {
        "operationId": "calculate_mechanical_statics_cantilever_partial_deflection",
        "summary": "Cantilever partial load at a",
        "description": "Deflection where a uniform load that starts at the fixed end stops. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.cantilever_partial_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Cantilever\n\nLimitation: Load from the wall to a\n\nLimitation: Deflection at a\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_partial_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w": 24,
                  "a": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_partial_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cantilever-outer-uniform": {
      "post": {
        "operationId": "calculate_mechanical_statics_cantilever_outer_uniform_deflection",
        "summary": "Cantilever outer uniform load",
        "description": "Tip deflection when a uniform load starts at distance a from the fixed end. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.cantilever_outer_uniform_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Cantilever\n\nLimitation: Load from a to the tip\n\nLimitation: a may be zero\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_outer_uniform_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w": 24,
                  "a": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_outer_uniform_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/offset-load-midspan": {
      "post": {
        "operationId": "calculate_mechanical_statics_offset_load_midspan_deflection",
        "summary": "Offset load at midspan",
        "description": "Midspan deflection of a simply supported span with one load that is not necessarily at midspan. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.offset_load_midspan_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Simply supported span\n\nLimitation: Midspan value, not the value under the load\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.offset_load_midspan_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "P": 48,
                  "a": 1,
                  "L": 4,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.offset_load_midspan_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/paired-load-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_paired_load_at_deflection",
        "summary": "Deflection under a paired load",
        "description": "Deflection under either of two equal loads on a simply supported span. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.paired_load_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Two equal loads\n\nLimitation: Deflection under a load, not at midspan\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.paired_load_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "P": 48,
                  "a": 1,
                  "L": 4,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.paired_load_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/overhang-deflection": {
      "post": {
        "operationId": "calculate_mechanical_statics_overhang_deflection",
        "summary": "Overhang end deflection",
        "description": "Deflection at a load on the overhang beyond a simply supported span. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.overhang_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: One overhang\n\nLimitation: Deflection at the load\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.overhang_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "P": 48,
                  "a": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.overhang_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/overhang-span-deflection": {
      "post": {
        "operationId": "calculate_mechanical_statics_overhang_span_deflection",
        "summary": "Overhang span deflection",
        "description": "Midspan deflection of the span when a load sits on the overhang. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.overhang_span_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: One overhang\n\nLimitation: Span midspan, opposite the load\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.overhang_span_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "P": 48,
                  "a": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.overhang_span_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/uniform-load-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_uniform_load_at_deflection",
        "summary": "Uniform load at a station",
        "description": "Deflection at a stated station on a simply supported uniform load. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.uniform_load_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Simply supported span\n\nLimitation: Station strictly inside the span\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.uniform_load_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w": 24,
                  "x": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.uniform_load_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cantilever-uniform-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_cantilever_uniform_at_deflection",
        "summary": "Cantilever uniform load at a station",
        "description": "Deflection at a stated distance from the wall on a cantilever uniform load. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.cantilever_uniform_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Cantilever\n\nLimitation: x may reach the free end\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_uniform_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w": 24,
                  "x": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_uniform_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/beam-deflection-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_beam_deflection_at",
        "summary": "Midspan load at a station",
        "description": "Deflection at a stated station when the concentrated load is at midspan. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.beam_deflection_at`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Load at midspan\n\nLimitation: Station strictly inside the span\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.beam_deflection_at.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "P": 48,
                  "x": 1,
                  "L": 4,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.beam_deflection_at.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cantilever-deflection-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_cantilever_deflection_at",
        "summary": "Tip load at a station",
        "description": "Deflection at a stated distance from the wall when the load is at the free end. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.cantilever_deflection_at`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Load at the free end\n\nLimitation: x may reach the free end\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_deflection_at.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "P": 48,
                  "x": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_deflection_at.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/offset-load-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_offset_load_at_deflection",
        "summary": "Offset load at a station",
        "description": "Deflection at a stated station for one offset load on a simply supported span. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.offset_load_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Simply supported span\n\nLimitation: Station and load strictly inside the span\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.offset_load_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "P": 48,
                  "a": 1,
                  "x": 1,
                  "L": 4,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.offset_load_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cantilever-load-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_cantilever_load_at_deflection",
        "summary": "Cantilever load at a station",
        "description": "Deflection at a stated station for a cantilever load that is not necessarily at the tip. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.cantilever_load_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Cantilever\n\nLimitation: Load and station may reach the free end\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_load_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "P": 48,
                  "a": 1,
                  "x": 2,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_load_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/beam-moment-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_beam_moment_at_deflection",
        "summary": "End moment at a station",
        "description": "Deflection at a stated station for one end moment, measured from the unloaded end. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.beam_moment_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Moment at one end\n\nLimitation: x from the unloaded end\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.beam_moment_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "M": 16,
                  "x": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.beam_moment_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cantilever-moment-curve": {
      "post": {
        "operationId": "calculate_mechanical_statics_cantilever_moment_curve_deflection",
        "summary": "Tip moment at a station",
        "description": "Deflection at a stated distance from the wall for a moment at the free end. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.cantilever_moment_curve_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Moment at the free end\n\nLimitation: x may reach the free end\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_moment_curve_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "M": 4,
                  "x": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_moment_curve_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/triangular-load-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_triangular_load_at_deflection",
        "summary": "Triangular load at a station",
        "description": "Deflection at a stated station for a one-sided triangular load. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.triangular_load_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Zero at the left support\n\nLimitation: Station strictly inside the span\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.triangular_load_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w0": 24,
                  "x": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.triangular_load_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cantilever-triangular-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_cantilever_triangular_at_deflection",
        "summary": "Wall-peak triangle at a station",
        "description": "Deflection at a stated distance from the wall for a triangle that peaks at the wall. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.cantilever_triangular_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Peak at the wall\n\nLimitation: x may reach the free end\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_triangular_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w0": 24,
                  "x": 2,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_triangular_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cantilever-triangular-tip-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_cantilever_triangular_tip_at_deflection",
        "summary": "Tip-peak triangle at a station",
        "description": "Deflection at a stated distance from the wall for a triangle that peaks at the tip. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.cantilever_triangular_tip_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Peak at the tip\n\nLimitation: x may reach the free end\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_triangular_tip_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w0": 24,
                  "x": 2,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_triangular_tip_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/overhang-span-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_overhang_span_at_deflection",
        "summary": "Overhang span at a station",
        "description": "Deflection at a stated station on the span of an overhanging beam. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.overhang_span_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Station on the span\n\nLimitation: x is strictly inside the span\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.overhang_span_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "P": 48,
                  "a": 1,
                  "x": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.overhang_span_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/overhang-arm-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_overhang_arm_at_deflection",
        "summary": "Overhang arm at a station",
        "description": "Deflection at a stated station on the overhang, measured from the right support. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.overhang_arm_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Station on the overhang\n\nLimitation: z may reach the load\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.overhang_arm_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "P": 48,
                  "a": 1,
                  "z": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.overhang_arm_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/paired-load-curve": {
      "post": {
        "operationId": "calculate_mechanical_statics_paired_load_curve_deflection",
        "summary": "Paired loads at a station",
        "description": "Deflection at a stated station for two equal loads. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.paired_load_curve_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Two equal loads\n\nLimitation: a at most midspan\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.paired_load_curve_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "P": 48,
                  "a": 1,
                  "x": 2,
                  "L": 4,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.paired_load_curve_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/beam-end-moments-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_beam_end_moments_at_deflection",
        "summary": "Equal end moments at a station",
        "description": "Deflection at a stated station for equal sagging end moments. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.beam_end_moments_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Equal sagging end moments\n\nLimitation: x is strictly inside the span\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.beam_end_moments_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "M": 16,
                  "x": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.beam_end_moments_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/center-triangle-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_center_triangle_at_deflection",
        "summary": "Center-peaked triangle at a station",
        "description": "Deflection at a stated station for a triangle that peaks at midspan. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.center_triangle_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Peak at midspan\n\nLimitation: x is strictly inside the span\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.center_triangle_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w0": 24,
                  "x": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.center_triangle_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/end-triangle-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_end_triangle_at_deflection",
        "summary": "End-peaked triangle at a station",
        "description": "Deflection at a stated station for a triangle that peaks at both supports. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.end_triangle_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Peaks at the supports\n\nLimitation: x is strictly inside the span\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.end_triangle_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w0": 24,
                  "x": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.end_triangle_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cantilever-partial-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_cantilever_partial_at_deflection",
        "summary": "Partial uniform at a station",
        "description": "Deflection at a stated distance from the wall for a uniform load from the wall to a. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.cantilever_partial_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Load from the wall to a\n\nLimitation: x may reach the free end\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_partial_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w": 24,
                  "a": 1,
                  "x": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_partial_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/cantilever-outer-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_cantilever_outer_at_deflection",
        "summary": "Outer uniform at a station",
        "description": "Deflection at a stated distance from the wall for a uniform load from a to the tip. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.cantilever_outer_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Load from a to the tip\n\nLimitation: a is shorter than L\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_outer_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w": 24,
                  "a": 1,
                  "x": 2,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.cantilever_outer_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/center-moment-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_center_moment_at_deflection",
        "summary": "Center-peaked triangle plus an end moment",
        "description": "Deflection at a stated station for a center-peaked triangle plus one end moment. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.center_moment_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Peak at midspan\n\nLimitation: Moment at the right end\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.center_moment_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w0": 24,
                  "M": 16,
                  "x": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.center_moment_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/end-moment-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_end_moment_at_deflection",
        "summary": "End-peaked triangle plus an end moment",
        "description": "Deflection at a stated station for an end-peaked triangle plus one end moment. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.end_moment_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Peaks at the supports\n\nLimitation: Moment at the right end\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.end_moment_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w0": 24,
                  "M": 16,
                  "x": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.end_moment_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/paired-moment-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_paired_moment_at_deflection",
        "summary": "Paired loads plus an end moment",
        "description": "Deflection at a stated station for two equal point loads plus one end moment. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.paired_moment_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Two equal loads\n\nLimitation: Moment at the right end\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.paired_moment_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "P": 48,
                  "M": 16,
                  "a": 1,
                  "x": 2,
                  "L": 4,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.paired_moment_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/triangular-moment-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_triangular_moment_at_deflection",
        "summary": "One-sided triangle plus an end moment",
        "description": "Deflection at a stated station for a one-sided triangle plus one end moment. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.triangular_moment_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Zero at the left support\n\nLimitation: Moment at the right end\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.triangular_moment_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w0": 24,
                  "M": 16,
                  "x": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.triangular_moment_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/calc/triangular-end-moments-at": {
      "post": {
        "operationId": "calculate_mechanical_statics_triangular_end_moments_at_deflection",
        "summary": "One-sided triangle plus equal end moments",
        "description": "Deflection at a stated station for a one-sided triangle plus equal end moments. I is an input. (calculation_version 1.0.0)\n\nSemantic capability: `mechanical.statics.triangular_end_moments_at_deflection`.\n\nCalculation version: `1.0.0`.\n\nPin with body `calculation_version` or header `CalculatorX-Spec-Version`.\n\nLimitation: Zero at the left support\n\nLimitation: Equal end moments\n\nLimitation: I is an input",
        "tags": [
          "CoreCapabilities"
        ],
        "parameters": [
          {
            "name": "CalculatorX-Spec-Version",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string",
              "examples": [
                "1.0.0"
              ]
            },
            "description": "Pin calculation_version (published: 1.0.0); mismatch returns 409"
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "inputs"
                ],
                "properties": {
                  "inputs": {
                    "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.triangular_end_moments_at_deflection.input.json"
                  },
                  "calculation_version": {
                    "type": "string",
                    "description": "Optional pin; published version is 1.0.0",
                    "examples": [
                      "1.0.0"
                    ]
                  }
                }
              },
              "example": {
                "inputs": {
                  "w0": 24,
                  "M": 16,
                  "x": 1,
                  "L": 2,
                  "E": 1,
                  "I": 1
                },
                "calculation_version": "1.0.0"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "https://www.calculatorx.com/schemas/mechanical.statics.triangular_end_moments_at_deflection.output.json"
                }
              }
            }
          },
          "400": {
            "description": "Invalid or incomplete inputs",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "404": {
            "description": "Unknown engine or capability",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "409": {
            "description": "VERSION_MISMATCH — pinned calculation_version unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "415": {
            "description": "Unsupported Content-Type (use application/json)",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "429": {
            "description": "RATE_LIMITED",
            "headers": {
              "Retry-After": {
                "description": "Seconds until the client may retry",
                "schema": {
                  "type": "integer",
                  "minimum": 1
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RateLimitError"
                }
              }
            }
          },
          "500": {
            "description": "Unexpected server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          },
          "503": {
            "description": "Temporarily unavailable",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApiError"
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "ApiError": {
        "type": "object",
        "required": [
          "status",
          "code",
          "error"
        ],
        "additionalProperties": true,
        "properties": {
          "type": {
            "type": "string",
            "format": "uri",
            "description": "Problem type URI, e.g. https://www.calculatorx.com/problems/voltage-must-be-positive"
          },
          "title": {
            "type": "string"
          },
          "status": {
            "oneOf": [
              {
                "const": "error"
              },
              {
                "type": "integer"
              }
            ],
            "description": "Either the string \"error\" or HTTP status code"
          },
          "code": {
            "type": "string",
            "description": "Machine code such as VOLTAGE_MUST_BE_POSITIVE or VERSION_MISMATCH"
          },
          "error": {
            "type": "string",
            "description": "Human-readable detail"
          },
          "detail": {
            "type": "string"
          },
          "field": {
            "type": [
              "string",
              "null"
            ]
          },
          "invalid_parameters": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string"
                },
                "received": {},
                "constraint": {
                  "type": "string"
                }
              }
            }
          },
          "recoverable": {
            "type": "boolean"
          },
          "suggestion": {
            "type": "string"
          },
          "published_version": {
            "type": "string"
          },
          "received": {}
        }
      },
      "RateLimitError": {
        "allOf": [
          {
            "$ref": "#/components/schemas/ApiError"
          },
          {
            "type": "object",
            "properties": {
              "code": {
                "const": "RATE_LIMITED"
              },
              "retry_after_seconds": {
                "type": "integer",
                "minimum": 1
              },
              "limit": {
                "type": "integer"
              }
            }
          }
        ]
      }
    },
    "parameters": {}
  },
  "externalDocs": {
    "description": "Capability templates",
    "url": "https://www.calculatorx.com/.well-known/calculatorx-capabilities.json"
  }
}
