Repository navigation
feat(server): execute buffered guarded operations - #2405
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
|
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository: NVIDIA-NeMo/Guardrails/.coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (3)
Included review availability: This review used your included allowance. Your plan provides up to 12 included reviews per hour; 10 remain after this review. 📝 WalkthroughWalkthroughThe change adds buffered guarded-operation execution. It checks projected request and response messages when inspection is enabled, and returns stage-specific outcomes for blocking decisions, checker failures, and unsupported modifications. ChangesBuffered guarded execution
Priority: ⬇️ Low Estimated code review effort: 3 (Moderate) | ~20 minutes Change: Feature Sequence Diagram(s)sequenceDiagram
participant Caller
participant execute_buffered_operation
participant ContentChecker
participant dispatch
Caller->>execute_buffered_operation: operation, checker, request, dispatch
execute_buffered_operation->>ContentChecker: check projected user message when input inspection is enabled
ContentChecker-->>execute_buffered_operation: input decision
execute_buffered_operation->>dispatch: request when input check allows or input inspection is disabled
dispatch-->>execute_buffered_operation: response
execute_buffered_operation->>ContentChecker: check projected assistant message when output inspection is enabled
ContentChecker-->>execute_buffered_operation: output decision
execute_buffered_operation-->>Caller: completion or stage-specific outcome
Merge Risk: ⚪ Minimal · up to No actionable merge-blocking risk remains for the buffered executor after normal checks. 🚥 Pre-merge checks | ✅ 5 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (5 passed)
✨ Finishing Touches 💡 2📝 Generate docstrings 💡
🛠️ Fix failing CI checks 💡
🧪 Generate unit tests (beta)
Comment |
tgasser-nv
left a comment
There was a problem hiding this comment.
Looks good! Just a couple of naming nits
08a97ed to
4ef0fea
Compare
Signed-off-by: Pouyanpi <13303554+Pouyanpi@users.noreply.github.com>
Signed-off-by: Pouyanpi <13303554+Pouyanpi@users.noreply.github.com>
Signed-off-by: Pouyanpi <13303554+Pouyanpi@users.noreply.github.com>
Signed-off-by: Pouyanpi <13303554+Pouyanpi@users.noreply.github.com>
4ef0fea to
9417302
Compare
Description
Phase A establishes the private provider-neutral foundations for transparent provider proxying. This PR adds the buffered execution ordering on top of the contracts introduced by PR 1.
The executor:
The implementation remains independent of FastAPI, HTTPX, provider payloads, configuration resolution, and streaming.
Stable and temporary parts
The fail-closed execution order and semantic outcomes are intended to remain as the shared buffered execution primitive.
This executor is deliberately narrower than a complete provider pipeline:
Provider integration composes these responsibilities around the executor rather than replacing or duplicating its ordering.
Review focus
Non-goals
Phase A stack
Review every PR against its parent branch rather than against
develop, except for PR 1.pouyanpi/transparent-proxy-kernel-1developpouyanpi/transparent-proxy-buffered-kernel-2pouyanpi/transparent-proxy-kernel-1pouyanpi/transparent-proxy-http-kernel-3pouyanpi/transparent-proxy-buffered-kernel-2pouyanpi/transparent-proxy-projection-outcomes-4pouyanpi/transparent-proxy-http-kernel-3AI Assistance
Checklist