A developer is designing the guardrail policy for a deployment agent that can perform four actions: (1) read repository files, (2) create feature branches, (3) force-push to the main branch, and (4) deploy to the production environment. How should these four actions be classified by risk level for the purpose of autonomy assignment?
Select an answer to reveal the explanation.
Short Explanation and Infographic
Risk classification follows reversibility and blast radius. Reading files is read-only — zero impact. Creating branches is reversible — delete the branch. Force-pushing to main overwrites history and affects every developer — high damage, hard to undo. Deploying to production affects live users immediately — critical blast radius. Risk = irreversibility × scope of impact.
Full explanation below image
Full Explanation
Risk classification for agent actions is based on two primary dimensions: reversibility (how easily can the action be undone?) and blast radius (how many people/systems are affected if something goes wrong?).
Read repository files: Read-only operations carry minimal risk. No state is changed; no data is written. The agent gains information but cannot cause harm through reading alone.
Create feature branches: Low risk. Branches are isolated from main development lines by design. A wrongly created branch can be deleted without affecting other developers or production systems. The impact scope is contained.
Force-push to main branch: High risk. Force-pushing rewrites git history on the primary branch, potentially destroying commits, breaking other developers' local branches, and violating code review processes. It is difficult to fully recover from without careful git archaeology. Scope affects the entire team.
Deploy to production: Critical risk. Production deployments immediately affect live users. A bad deployment can cause downtime, data loss, security vulnerabilities, or incorrect behavior for all users. Rollback is possible but may not be instant and has its own risk.
Why the other options fail: - Option A (all equally low risk) ignores the fundamental difference between read-only and write operations, between reversible and irreversible actions, and between local and global scope. - Option C inverts the classification of force-push and branch creation. Creating branches is isolated and reversible; force-pushing to main is the opposite of both. - Option D (reading is high risk) misunderstands risk classification. Read operations do not modify state and cannot cause outages or data loss. Classifying reads as high risk would make normal agent operation impossible.
Proper risk classification is the prerequisite for assigning appropriate autonomy levels — actions with higher risk classifications require higher levels of human oversight.