Then
Move the tenant predicate below the handler
The durable fix was to stop expressing tenancy as something each handler remembers to add. The constraint moved into the data-access layer, applied to every query that touches a tenant-scoped table, sourced from the server-side session and not from anything in the request, so a handler that forgets now returns nothing, instead of returning somebody else’s row. The export worker resolves its scope the same way: from the session that owns the job, never from the parameters the job was queued with.