The 'Check Duplicate Issues' workflow has been failing with
json.decoder.JSONDecodeError: Unterminated string starting at: line 1 column 2792467
whenever an open issue body contains a Unicode line/paragraph separator
(U+2028 / U+2029).
Root cause: fetch_open_issues() called 'gh api --paginate' and then
str.splitlines() on the raw output. gh concatenates JSON pages without
any separator (...][...), so the entire output is one logical line --
unless a U+2028/U+2029 character inside a string body trips splitlines(),
which splits mid-JSON-string and yields an unterminated array fragment.
Switch to 'gh issue list --json number,title --state open --limit 100000'
which returns a single well-formed JSON array and already excludes pull
requests, removing both pitfalls in one go.
Verified locally: the script now fetches 1355 open issues and runs the
single-issue and --scan modes without errors.
Co-authored-by: Krrish Dholakia <krrish-berri-2@users.noreply.github.com>
Add a Python script that detects duplicate issues using title similarity
(difflib.SequenceMatcher) and closes them via the gh CLI. Two-tier system:
- 0.6 threshold: informational comment via existing wow-actions step
- 0.85 threshold: auto-close with comment, label, and not_planned reason
Includes a workflow_dispatch workflow for one-time batch scans and
integrates auto-close into the existing check_duplicate_issues workflow
for newly opened issues.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* Add auto issue labelling for llm_translation
* Add logging
* make the formatting better
* make the formatting better
* make the formatting better
* make the formatting better