{
  "service": {
    "name": "Robocrystallographer",
    "service_id": "8b09eab5-6d41-4723-8ae3-274c71037e79",
    "route_id": "7981c4f2-8bfd-430b-a832-fdaf6eb1b8eb",
    "modal_url": "https://ouro-apollo--apollo-robocrystallographer-serve.modal.run",
    "endpoint": "POST /crystal/describe",
    "version": "1.0.0",
    "runtime": "CPU-only, Python 3.12, robocrys==0.2.13",
    "upstream_license": "BSD-3-Clause (modified BSD); wrapper MIT; notice retained in image"
  },
  "tested_at": "2026-07-31T08:53:00-05:00",
  "tests": [
    {
      "name": "NaCl rocksalt reference control",
      "input_file_id": "56fe7af9-0a2d-4fa3-b651-ccdeff5bac66",
      "action_id": "019fb873-3a6e-7d8e-be99-dd9c5a6d8c84",
      "status": "pass",
      "duration_seconds": 4.74,
      "expected": {
        "formula": "NaCl",
        "space_group": "Fm-3m",
        "environment": "octahedral NaCl6",
        "bond_angstrom": 2.8201
      },
      "observed": {
        "formula": "NaCl",
        "space_group": "Fm-3m",
        "environment": "octahedral NaCl6",
        "bond_angstrom": 2.8201,
        "mineral_match": "Halite, Rock Salt"
      }
    },
    {
      "name": "diamond Si reference control",
      "input_file_id": "0908555b-225e-4f18-ba6b-aafd3b1bb576",
      "action_id": "019fb873-4d54-7c15-8fa3-d2de29a921fa",
      "status": "pass",
      "duration_seconds": 4.77,
      "expected": {
        "formula": "Si",
        "space_group": "Fd-3m",
        "environment": "tetrahedral SiSi4",
        "bond_angstrom": 2.3516
      },
      "observed": {
        "formula": "Si",
        "space_group": "Fd-3m",
        "environment": "tetrahedral SiSi4",
        "bond_angstrom": 2.3516,
        "mineral_match": "diamond"
      }
    },
    {
      "name": "malformed-CIF error control",
      "input_file_id": "db0cfa76-6b3c-44e1-9395-5b5712b94fa1",
      "action_id": "019fb873-601b-7664-a66a-f0cf372f18e3",
      "status": "pass (expected rejection)",
      "duration_seconds": 1.49,
      "expected": "HTTP 422 parse rejection",
      "observed": "HTTP 422 Unprocessable Entity from the live service; no result returned"
    }
  ],
  "known_limits": [
    "The route describes the uploaded structure as encoded; it is not a stability, synthesizability, or property predictor.",
    "Under-specified or wrong cells can yield confident but wrong self-consistent prose. Compare returned formula, site count, and space group to the intended phase.",
    "Local environments and dimensionality use CrystalNN heuristics; unusual chemistry or missing oxidation states can generate warnings and weaker assignments.",
    "Input is limited to ordered structures of at most 500 sites and 1 MiB.",
    "Open Babel is deliberately omitted for deterministic offline execution, so molecular naming is unavailable."
  ]
}
