fix: Force account_id in the query (#13388)

### What

Forces `account_id` to be applied consistently in queries and message creation paths.

### Why

Some queries were missing `account_id`, leading to cross-account scans and slow performance in large datasets.

### Changes

* Added `account_id` to the relevant query columns.
* Ensured messages are always created within the correct account scope.
* Updated `created_at` handling where required for consistency.

### Impact

* Prevents cross-account queries.
* Improves query performance.
* Reduces risk of incorrect data access across accounts.

### Notes

No functional behavior change for end users. This is a performance and safety fix.
This commit is contained in:
Pranav
2026-01-28 14:51:24 -08:00
committed by GitHub
parent 2a69b37958
commit 0d9c0b2ed2
3 changed files with 13 additions and 9 deletions

View File

@@ -65,6 +65,6 @@ class Conversations::MessageWindowService
end
def last_incoming_message
@last_incoming_message ||= @conversation.messages&.incoming&.last
@last_incoming_message ||= @conversation.messages.where(account_id: @conversation.account_id).incoming&.last
end
end