#360 — [Bug]: /widgets/static doesn’t validate condition type for target column type and hides SQL errors

Repo: Twill-AI/facade State: closed | Status: done Assignee: raymondehizoba, sparsh-twillpayments

Created: 2025-06-04 · Updated: 2025-06-05

Description

Steps to reproduce

  1. In staging open OpenAPI UI on “POST /widgets/static” and login under tenant with some payments data from PayEngine.
  2. Put
{
  "type": "transaction",
  "code": {
    "filters_params": {
      "conditions": {
        "3DS": {
          "contains": [
            true
          ]
        }
      },
      "orderBy": [],
      "pagination": {
        "size": 10
      }
    }
  }
}

into request body and execute 3. See server logs and response.

Expected behavior

  1. 400 response code with explanation like “wrong operator ‘contains’ for ‘boolean’ type column ‘3DS’“.
  2. If SQL query execution fails API returns 500 with explanation.

Actual behavior

  1. 200 response with no data. By logs we see that resulting SQL contains transaction.used_3ds LIKE '%True%' which causes issue as in https://twill-network.slack.com/archives/C07TPN6FCBX/p1748984725557869.
  2. Having issue with SQL query API still returns 200 response.

Notes

Add implementation notes, blockers, and context here

Add wikilinks to related people, meetings, or other tickets