Skip to content
AbloAblo
Esc
navigateopen⌘Jpreview
On this page

v0.44.0

A scope denial names the wall it hit

capability_scope_denied now distinguishes the Ablo capability allowlist from the customer database’s row-level security. The error carries the required capability, the resolved operations, the participant and user principal, the branch, the organization and project, and any applied session settings, so “permission denied” is a diagnosis instead of a dead end: you can see whether your grant was missing a verb or whether your own database’s row policy rejected the session context Ablo applied.

Write failures carry their request id

A WebSocket write failure now carries the requestId the server logged it under, and a wait: 'confirmed' write rejects with the complete typed error rather than a bare failure, so the error you catch is the error the server recorded.

doctor reports readiness, not destiny

doctor now says infrastructure is ready rather than promising a write will succeed, because database constraints and row-level security still apply at write time. The debugging guide explains how to read the new diagnostics, and documents that list() may answer from the local pool while list({ type: 'complete' }) waits for the server round trip.

Was this page helpful?