Skip to content

Workspace filter OR that empties the desk

The corpus prior

Agents write SQL-shaped filters in DSL: status = held or status = confirmed. Training data treats or as first-class boolean algebra. Workspace region filters historically pushed only AND equality to SQL; OR was a silent no-op or wrong path — empty or unbounded desks.

Wrong shape

show_ops:
  source: HoldRequest
  filter: status = held or priority = high   # mixed fields
  display: list

or assuming arbitrary nested OR works without checking validate warnings.

Right shape

Same-field equality OR (supported — lowers to status__in):

filter: status = held or status = confirmed

Preferred clarity — split regions:

held:
  source: HoldRequest
  filter: status = held
confirmed:
  source: HoldRequest
  filter: status = confirmed

Mixed-field OR is fail-closed (empty) and validate warns (#1630). Do not trust residual alone if a region uses or.

Why this matters here

Silent empty regions are the same false green family as scope drift: validate passes, residual may pass, UI is empty. Agents should prefer simple filters and know the supported OR shape before inventing compound logic.