Skip to main content

ADR 0049: Stop Inspection At Decision Sufficiency

Status

Accepted.

Context

STAGE already required the smallest relevant project path, bounded visual questions, terminal stop conditions, and zero inspection after an unqualified route rejection. It did not define when a valid positive investigation had enough evidence to move from orientation to a plan or discriminating runtime check.

The 0.5.12 Lanternworks visual-diagnosis probe followed the correct production route and identified a plausible readability risk. It also consumed 72 action calls and more than one million aggregate input tokens before ending at the same live Game-view check. A retrospective repository search surfaced the decisive Almanac, projection, world-view, motion, and test paths immediately. That does not identify an exact point at which every later action became unnecessary, but it demonstrates that correct routing alone does not bound corroboration cost.

A fixed command, file, token, or elapsed-time limit would create a different failure. Hard diagnoses, unfamiliar ownership, failed verification, and broad release audits legitimately require different search depths. The useful boundary is whether unresolved uncertainty can still change the engineering decision.

Decision

  • Drive inspection from a concrete decision or diagnosis question.
  • Follow the strongest available information scent to authoritative project evidence and update the unresolved uncertainty after each material step.
  • Continue only while another inspection step can plausibly change ownership, implementation, evidence, authority, diagnosis, or material risk.
  • Stop orientation when remaining uncertainty cannot materially change the smallest complete plan or the next discriminating check.
  • Do not collect adjacent or repeated corroboration only for reassurance.
  • Reopen or broaden inspection when evidence conflicts, authority or ownership remains unresolved, the blast radius is unclear, a required production consumer is missing, verification fails, or broad coverage is itself the requested outcome.
  • Do not impose a universal action budget.
  • For bounded named questions, search the subject first instead of automatically reading whole maps, architecture guides, product briefs, and neighboring systems.
  • Once owner, decision or diagnosis, and next check are supported, require a named missing material fact before another inspection batch.
  • Treat unavailable live observation or human judgment as an endpoint for source inspection, not as a reason to accumulate substitute corroboration.

Consequences

  • Positive investigations gain an explicit stopping rule without weakening consumer-complete verification.
  • The agent must be able to state what unresolved question an expanded search is expected to answer.
  • Trace counts remain diagnostic measures rather than conformance thresholds.
  • Broad audits remain valid when their coverage is the named product, release, or audit result.
  • A correct but wasteful investigation can now be recorded as a method failure even when its final diagnosis is sound.

Evidence Boundary

This decision is supported by one STAGE behavior probe, a same-revision retrospective source search, established information-foraging research, and bounded-rationality reasoning. It has not yet been shown to reduce time or tokens across independent projects, models, or task classes. Future probes must judge semantic sufficiency and missed risk, not merely count actions.

The first installed 0.5.13 candidate probe preserved the correct diagnosis but still used 57 action calls and 1,239,429 aggregate input tokens. Its own progress messages identified the production owner, likely risk, and live check well before it stopped, then continued through general settings, UI, editor lock, and corroborating test reads. That failure motivated the target-first pass and explicit sufficiency checkpoint above. It does not establish that a particular action count is universally sufficient.

A second installed candidate reduced the trace to 52 action calls and 659,631 aggregate input tokens while reaching the same owner, visual risk, and native check. It still read the project map before the exact subject, queried process state even though it would not perform the live check, never stated the required checkpoint, and continued source corroboration after acknowledging that runtime observation was the remaining discriminator. This showed that a late inspection rule still competed with the full delivery workflow. The packaged skill therefore gives bounded named diagnosis a front-loaded terminal fast path rather than another advisory paragraph inside general inspection.

The third candidate exercised that fast path. It searched the named subject before project guidance, avoided editor-process inspection, preserved the target, and stopped at the truthful live Game-view check with the same supported diagnosis. Its trace fell to 29 action calls and 405,961 aggregate input tokens. It still expressed sufficiency only through informal progress updates rather than the prescribed checkpoint and read additional composition and camera context before stopping. STAGE records this as a material routing improvement and incomplete checkpoint compliance, not proof of an optimal inspection depth or causal efficiency gain.