{
  "id": "UIAPI-RT-001",
  "name": "RecordUI: RecordType lookup displays name, not raw ID",
  "description": "Regression for #1860 — resolveRecordLookups now uses ElevatedContext to bypass FLS for lookup display-name resolution. Without the fix, non-admin users see raw RecordType IDs instead of names. This case validates the ElevatedContext code path end-to-end by asserting the RecordType relationship field carries a non-empty displayValue matching the RecordType name.",
  "object": "Order",
  "method": "GET",
  "endpoint": "/services/data/v63.0/ui-api/record-ui/{order_id}?type=Order",
  "setup": [
    {
      "type": "sql",
      "name": "Look up Order RecordType Id for 'New'",
      "sql": "SELECT rt.Id AS new_rt_id FROM _System_RecordType rt JOIN _System_Object so ON so.Id = rt.ObjectId WHERE so.ApiName IN ('Order','order') AND rt.Name = 'New' AND rt.IsActive = 1 AND (rt.IsDeleted = 0 OR rt.IsDeleted IS NULL) LIMIT 1",
      "fetch": "one",
      "extract": {
        "new_rt_id": "new_rt_id"
      }
    },
    {
      "type": "sql",
      "name": "Create Account for UIAPI-RT-001",
      "sql": "INSERT INTO Account (Id, Name, IsDeleted, SystemModstamp) VALUES (%s, %s, %s, %s)",
      "params": [
        "uiapirt1-acc-01",
        "UIAPI-RT-001 Account",
        0,
        "{db_timestamp}"
      ]
    },
    {
      "type": "sql",
      "name": "Create Order with RecordType for UIAPI-RT-001",
      "sql": "INSERT INTO `Order` (Id, AccountId, RecordTypeId, Status, StatusCode, EffectiveDate, IsDeleted, SystemModstamp) VALUES (%s, %s, %s, %s, %s, %s, %s, %s)",
      "params": [
        "uiapirt1-ord-01",
        "uiapirt1-acc-01",
        "{new_rt_id}",
        "Draft",
        "Draft",
        "2026-04-24",
        0,
        "{db_timestamp}"
      ]
    }
  ],
  "expects": {
    "status_code": 200
  },
  "response_assertions": [
    {
      "field": "records.uiapirt1-ord-01.fields.RecordType.displayValue",
      "operator": "eq",
      "value": "New"
    }
  ],
  "teardown": [
    {
      "type": "sql",
      "sql": "DELETE FROM `Order` WHERE Id = %s",
      "params": [
        "uiapirt1-ord-01"
      ]
    },
    {
      "type": "sql",
      "sql": "DELETE FROM Account WHERE Id = %s",
      "params": [
        "uiapirt1-acc-01"
      ]
    }
  ],
  "priority": "P0",
  "bug_ref": "#1860",
  "scene": "uiapi"
}
