Your team wants an AI agent's success criteria to be automatically verifiable, not just described in prose. Which approach makes success criteria machine-readable and directly usable as an evaluation gate?
Select an answer to reveal the explanation.
Short Explanation and Infographic
Prose success criteria are like a recipe described in words — executable acceptance tests are the actual dish. When the tests pass the required status check, the machine confirms success without human interpretation.
Full explanation below image
Full Explanation
Machine-readable success criteria must be evaluatable by a computer without human interpretation. Executable acceptance tests — written in a testing framework like pytest, Jest, or Cucumber — satisfy this requirement: they produce a deterministic pass/fail result that can be enforced as a required status check on the pull request. The merge gate cannot be bypassed until all tests pass, making success criteria enforceable at the workflow level.
Option A (numbered list in PR description) is human-readable documentation, not a machine evaluation gate. A human must manually check each item, introducing subjectivity and delay.
Option C (GitHub Wiki page) is reference documentation. It is not linked to any workflow event or CI check, so it provides zero automated enforcement.
Option D (JSON field in system prompt) allows the agent to read its own success criteria, which is useful for the agent's planning phase, but it does not create an external evaluation gate. The agent itself cannot objectively verify its own output against these criteria — an external test runner must do that.
The SDLC best practice is to convert the agent's stated success criteria into acceptance tests before implementation begins. This is the same test-driven development (TDD) discipline applied to agentic workflows: tests are written first, the agent implements until tests pass, and the required status check enforces the gate.