feat(action): opt-in resolution of the bot's own outdated review threads (#567) (#944)
* feat(action): opt-in resolution of the bot's own outdated review threads (#567) Adds a resolve_outdated input, default off, that resolves review threads GitHub has already marked outdated. No model is involved in the decision: the signal is GitHub's server-computed isOutdated, and five vetoes sit on top of it, each of which can only refuse to resolve a thread. Three modes: 'false' (no GraphQL calls at all), 'report' (log the verdict for every thread, mutate nothing), 'true'. * fix(action): address review on resolve_outdated - Veto by path instead of disabling the whole run: a finding with a path but no line is ordinary output and now costs only its own path, while a finding with no path at all still disables the run. - Normalize paths before the overlap veto, so ./src/a.js and src/a.js no longer compare unequal and resolve a thread over a live finding. - Resolve the authenticated login once per run rather than once per caller. - Validate resolve_outdated in the Validate inputs step, so a typo fails before the LLM runs rather than silently falling back to off. - Correct the permission documentation from measurement, and show the contents: write scope in a job that never checks out the pull request. - Split the overloaded unverified reason, fix the documented preview count, list the missing outputs, and replace the nested ternary with a Map.
C
chethanuk committed
cb6ea26292bf2226279cc70eb2fe6aa0f17f9724
Parent: 56bf03b
Committed by GitHub <noreply@github.com>
on 9/17/2026, 11:28:42 AM