fix issues with nested read; getting more test cases to pass#6
Conversation
|
Caution Review failedThe pull request is closed. WalkthroughThe changes introduce enhanced error context for policy enforcement, improved handling of nested relation selections in SQLite, and significant internal refactoring of policy expression transformation to support member filters and selections. The schema definition syntax is standardized, and a comprehensive test suite for deep nested policy scenarios is added. A new breaking change is documented. Changes
Sequence Diagram(s)sequenceDiagram
participant Client
participant PolicyHandler
participant Error
Note over PolicyHandler: During CRUD operation
Client->>PolicyHandler: Perform operation (create/update/read)
PolicyHandler->>PolicyHandler: Evaluate access policy
alt Policy denied
PolicyHandler->>Error: Throw RejectedByPolicyError(model, reason)
Error-->>Client: Error with model context
else Policy allowed
PolicyHandler-->>Client: Operation proceeds
end
sequenceDiagram
participant Client
participant SQLiteDialect
participant Database
Note over Client,SQLiteDialect: Nested relation select
Client->>SQLiteDialect: Query with nested select
SQLiteDialect->>SQLiteDialect: buildRelationJSON (recursive for nested relations)
SQLiteDialect->>Database: Execute SQL with nested JSON selection
Database-->>SQLiteDialect: Results
SQLiteDialect-->>Client: Nested results
Poem
📜 Recent review detailsConfiguration used: CodeRabbit UI 📒 Files selected for processing (11)
✨ Finishing Touches
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
Summary by CodeRabbit
New Features
Bug Fixes
Documentation
Refactor