Context
#73 added the collector-side data needed for stronger obsolete-candidate detection: per-issue closing_prs and optional top-level closed_issues. triage-stale.js still uses only inactivity and explicit labels, so the richer snapshot fields are not yet used for stale decisions.
Desired change
Add conservative stale/obsolete candidates based on snapshot-v2 fields.
Candidate signals:
- open issue has a merged closing PR in
closing_prs
- open issue appears to duplicate a recently closed issue from
closed_issues
Acceptance Criteria
Context
#73 added the collector-side data needed for stronger obsolete-candidate detection: per-issue
closing_prsand optional top-levelclosed_issues.triage-stale.jsstill uses only inactivity and explicit labels, so the richer snapshot fields are not yet used for stale decisions.Desired change
Add conservative stale/obsolete candidates based on snapshot-v2 fields.
Candidate signals:
closing_prsclosed_issuesAcceptance Criteria
closing_prsevidence and include PR number/url/mergedAt in candidate evidence.closed_issuesis present.