Skip to content

Missing requested PR review decision

Apply when mode=pr and REQUESTED_REPORT=true has no eligible completed report, including +review, +report, report aliases and explicit PR report paths. Missing, incomplete, unavailable, invalid or unpromoted evidence reaches this checkpoint only after compatibility assessment and feasible automatic recovery; closed disposition remains terminal. For existing-only report requests, ask for the remaining substantive review decision before continuation, even when usable current-online/user findings or preliminary hypotheses exist. For joined +review or another bound authorization to perform the review step, carry that authorization into Code Review and execute the feasible update or fresh-review route below without asking again; do not silently downgrade to available findings. A version mismatch or repairable derived artifact alone does not trigger this question. Continuing without a completed report requires explicit user confirmation; existing remediation authorization alone does not supply that decision. Retain requested-report intent and all missing proof. Normal source verification and scope selection still precede edits. A previously selected fresh-review-first route remains binding; never silently override it. Bare PR online-only intake does not ask this question. Current-session review and local report intake keep their separate finding-evidence contracts.

Freeze the PR target and retain the exact lookup/admission diagnostic in the run notes. For PR-scoped decisions, include the PR number and canonical URL inside the question itself, using [PR #<number>](<canonical PR URL>) or the plain URL when Markdown links are unsupported; derive both from the frozen target. A retrieval failure does not establish nonexistence when access may be unavailable. When a substantive recovery decision is still needed, the remediation parent uses Incomplete review decision: one native question naming the linked PR, applying its interrupted-check/ordering Continue/Skip exception first and otherwise offering exactly New review, Resume last one, Stop. Explain the retained evidence, missing proof and feasibility of each route. Honor existing bound authorization instead of asking again; a new pause identifies the changed blocker. Missing source-finding selection or runtime permission remains a separate decision. Never offer continued remediation as an implicit substitute for the requested completed review.

Before either permitted review route retries missing dependencies, the remediation parent applies Project Dependency Preparation for the complete selected test environment, even before finding selection. Return the prepared interpreter and evidence to the nested review without transferring the parent’s permissions. Finish review validation and resume this remediation after admission.

  • Resume last one: explicitly authorizes the bounded work named by the compatibility assessment. Invoke Code Review recovery at the first unmet checkpoint, retaining authentic still-valid source and reviewer evidence; add the missing checks or coverage under normal producer gates. Preserve the original report and do not substitute a full rerun without authorization. Complete both artifact validators, normal promotion and --complete-run; then admit that exact canonical result and resume this same remediation run under the fresh-review return rules below. If the proposed repair proves infeasible, retain the diagnostic and ask only for the changed substantive decision.
  • New review: explicitly authorizes the normal full code-review workflow for this PR, with a fresh-review entry decision. Invoke ../../code-review/SKILL.md end-to-end under Nested review delivery, retaining this remediation run and the unchanged PR target. Complete source collection, normal reviewer coverage, ordered completion gates, both artifact validators, promotion and --complete-run.
  • a. Set FINDINGS_SOURCE to that exact returned canonical result path; admit it with find-review-report.py --result <path> and the recorded producer thread/rollout coordinates when required. Do not repeat latest-report discovery or the fresh-review question. --complete-run completes the review's own validated result even if a newer run exists; --result still enforces newest-run eligibility for remediation intake and may reject a concurrently superseded report.
  • b. Then resume this same remediation run, only after an eligible completed result is admitted; continue fresh source collection, normal inventory, remediation scope selection, fixes and closing gates. An admitted report with status=fail from quality gates or a nonapproval recommendation still continues to remediation. Review completion does not replace remediation completion. If branch verification fails on return, continue through Source drift recovery; do not end with the child review’s final answer. An admitted report recording execution_mode="serial-fallback" or a failed multi-role status is a completed nonapproval report: carry its disclosed coverage limit as a named residual limit in remediation notes and the final handoff, never as independent review coverage, and do not rerun the review for it.
  • c. A failed or incomplete review lifecycle checkpoint keeps remediation at report admission while Code Review applies Reviewer validation recovery or GitHub Read Execution at the actual failed checkpoint. Do not ask for a new message merely to resume already-authorized recovery; the retained answer does not reset retry limits or override a runtime denial. Ask only for a genuinely missing decision or capability after permitted recovery is exhausted. Do not silently switch to available findings or treat preliminary checks as a completed report.
  • d. A review that completes but cannot be admitted keeps its terminal status. closed (matching-review-closed-not-remediable) ends remediation with that close disposition and no edits. unavailable or supersession retains the exact admission diagnostic and reaches the same three-option Incomplete review decision only when another substantive choice is needed. Explain the actual collection failure or newer-run identity; never call unavailable closure a completed source review. Preserve prior answers and stopped-route limits; neither a new run nor a resume choice waives them.
  • Explicit free-text instruction to continue with available findings: explicitly authorizes continuing current-online/user findings and eligible preliminary records through the existing source, selection and verification gates. Acknowledge that fresh review was declined and completed-review proof remains unavailable. Retain requested_report=true, the diagnostic and preliminary/unavailable admission limits; do not silently clear requested review intent or claim complete report-backed remediation. If no usable finding exists, ask for concrete missing finding evidence next.
  • Stop: stop the joined workflow, retain artifacts and changes, and do not continue remediation. A dismissed or unanswered prompt authorizes none of its options.