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.