Repository navigation
Conversation
…te example Extends the confinement documentation to address issue agentrust-io#736's execution-scope question by defining a path-set model for protected effects. The model distinguishes: - Agent-side paths: originating from the agent/runtime, enforceable and testable by confinement machinery (e.g., gateway path, alternate endpoint, filesystem/subprocess) - Deployment-side paths: outside agent's enforcement domain, requiring independent deployment-level observation (e.g., external service writing to DB) Implements a worked example for order_create as the protected effect, demonstrating four distinct paths (P1-P4) with clear coverage status: - P1: ENFORCED/TESTED (gateway path, validated by test_confinement_and_fresh_restart) - P2: ENFORCED/TESTED (alternate endpoint, validated by network mutation tests) - P3: ENFORCED/TESTED (filesystem/subprocess, validated by filesystem mutation tests and network namespace inheritance blocking subprocess network escape) - P4: DECLARED/NOT ESTABLISHED (deployment-side, requires independent observation) Adds documentation linking this to EABC's NON_BYPASSABILITY(B,E) claim while explicitly noting that gateway mediation alone does not prove universal complete mediation. Updates test docstrings to map existing confinement tests to the path-set model, clarifying that test_linux.py validates agent-side path coverage (P1-P3) while deployment-side paths require separate deployment-level evidence. Generated with [Devin](https://devin.ai) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
|
Thanks for this, @omwei-org. Closing it for now, and it is not about the change itself. This repository asks first-time contributors to be vouched by a maintainer before opening a pull request. That is because agent-written contributions are easy to produce and expensive to review, and we would rather talk to you first than review something neither of us can explain. To get vouched: open an issue saying what you want to change and why, in your own words. A maintainer will reply, and add you with See CONTRIBUTING.md for the detail. |
rajnisht7
left a comment
There was a problem hiding this comment.
The PR direction looks good, but a few places overstate and needs to be tightened:
- “Addressed by declaring” - Declaring a path set only scopes the claim whereas it does not prove complete mediation. it can be stated directly
order_createvs tests : P1–P3 are marked ENFORCED/TESTED fororder_create, but the fixtures only uses synthetic tools and a canary. kindly call this an illustrative example of generic confinement coverage, not proof of order_create- “All alternate paths” : That test only covers the paths this fixture exercises. it would be good to drop “all” (the limits section already says coverage is partial).
- Network mutation proves the tested escapes (TCP/IPv6/DNS), not every possible route to order_create. kindly narrow the wording.
- File write and subprocess - network are different paths. kindly split them or only claim what was tested
- Listing P1–P4 does not show the list is complete. it will be good to separate “this path was tested” from “the set is complete"
- If P4 is NOT ESTABLISHED, kindly state that overall claim for that effect is also NOT ESTABLISHED
- Logging / sink - Those are confinement checks, not order_create paths. it will be good to keep them out of P1–P3.
- Mutation tests : They show a control was necessary when removed. kindly dont treat them alone as full path coverage
- it would be nice to link or briefly define EABC
NON_BYPASSABILITY(B,E)
|
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
Summary
This change introduces an explicit protected-effect path-set model and makes execution-scope coverage visible for the confinement documentation.
Key changes
Design rationale
The model explicitly distinguishes four different claims:
This avoids conflating authorization with universal complete mediation. The model supports a scoped NON_BYPASSABILITY claim; it does NOT establish universal complete mediation.
Test plan
Related issues
Generated with Devin: https://devin.ai