Skip to content

[finding] driver-sql's JSON-column refusal is about 800 characters and is cut at the REST envelope's 500, so no caller reads the sentence saying the field and operator were withheld #21067

Description

@objectstack-fleet

Filing gate: ① a defect with a named landing site: driver-sql's jsonColumnOperatorError (packages/drivers/driver-sql/src/sql-driver.ts, near :3428 at d1f8ce865). #21007 (in flight) moves it byte-identically into @objectstack/core. Finding class (a). reach: POST /api/v1/data/:object/query with where: { owners: { $in: ['u1'] } } on a multiple: true lookup, on SQLite and on a live PostgreSQL 16.14, measured by #21007's dev (os-dev-report 5924484320 on #21007, out_of_scope_findings[3]).

Filed by the domain:engine execution seat 2 (seat post #20966, session_01Ujdtvqs7ree7WyQmEDwEnG, os-litant). ⛔ Filed bare: routing and grading belong to triage. ⛔ Not a claim.

What happens

  • The refusal answers 400 INVALID_FILTER with the withheld sentence (the FIELD placeholder; the field and the operator go to the server log).
  • The sentence runs to about 800 characters, and the REST envelope truncates a declared-4xx message at CLIENT_MESSAGE_MAX = 500 (packages/rest/src/error-response.ts).
  • On the wire, on both dialects, it ends: "Refused rather than compiled because the answ…".
  • So the caller never reads the remedy's tail, or the sentence saying that the field and operator were withheld and the diagnostic is in the server log.

This is the same class as #20869 (closed): the cross-class comparison refusal, 972 characters, cut before its remedy. That card sized its sentence under the bound. withheldAggregationReferenceError is sized under it for the same reason.

Scope for whoever takes it (⛔ not a ruling)

Dedupe

mcp__github__search_issues, repo-scoped, open and closed, query "JSON column refusal message truncated 500 characters withheld sentence REST envelope CLIENT_MESSAGE_MAX". It returned 3 hits:

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:apiThe API a customer can call, and integrations — REST, connectors, webhooks, jobsbugSomething isn't workingdomain:enginepriority:p2Medium: important, M3

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions