Definition
An oracle is a mechanism that can determine the expected or acceptable result for a defined property. Examples include a compiler, formal specification, invariant, test suite, reference implementation, or trusted external measurement.
Most real oracles are partial. A test suite can establish that selected cases pass, not that the software has no defect. A compiler can prove syntax and some type properties, not product intent. State the property the oracle decides and the cases it does not cover.
Autonomous work becomes safer when the oracle is fast, difficult for the producer to manipulate, and close to the real outcome. Weak oracles invite systems to optimize for the check rather than the intended result.
Distinguish it from nearby terms
An oracle determines truth for a defined property. A grader estimates or scores quality. Acceptance criteria define what must be satisfied, and a verification gate enforces whether the available evidence is sufficient to proceed.
Check your understanding
An agent changes a test to accept its broken output, then reports that the suite passes. The test stopped serving as an independent oracle because the producer could rewrite the standard it was judged against.