Which is a common anti-pattern when adding agents to the SDLC?
Why D is the answer
Letting an agent change code with no check on its plan or output
Unchecked autonomy is the anti-pattern. The other three are the practices that prevent it.
In detail
- Changing code with no check on the plan or output is the anti-pattern.
- Keep agent work in the review flow you already trust.
Use case
An illustrative scenario, not a real incident.
An agent commits straight to a shared branch, with no plan or output check, and a bad change reaches staging. Adding plan and pull request checks stops it.
See it in different ways
sequenceDiagram
participant A as Agent
participant V as Validation
participant R as Repository
A->>V: Structured plan
alt Plan passes
V->>A: Go ahead
A->>R: Makes changes in a branch
else Plan fails
V-->>A: Fix the plan first
endflowchart TD
Q{"Are the plan and output checked?"}
Q -->|"Yes"| A0["Safe pattern"]
Q -->|"No"| A1["Anti-pattern"]Key point: Do not let agents change code unchecked.
Why the other options are wrong
- A. Keeping agent work in pull requests that people can review
- Reviewable pull requests are good practice.
- B. Writing success criteria before the agent starts a task
- Writing success criteria first is good practice.
- C. Giving each agent the narrowest scope that its task allows
- Narrow scope is good practice.

