Skip to content

fix(tcfeed): finish a pair the run left half-open - #127

Merged
ralyodio merged 1 commit into
masterfrom
worktree-tcfeed-finish-pair
Aug 13, 2026
Merged

ralyodio merged 1 commit into
masterfrom
worktree-tcfeed-finish-pair

Conversation

@ralyodio

Copy link
Copy Markdown
Contributor

GitHub returned 502s for a stretch this afternoon and two repositories came out of it with an issue and no pull request:

· DingTalk-Real-AI/dingtalk-workspace-cli — could not fork: HTTP 502
· GSF-001/ARCLUX — failed: failed to push some refs

Their issues say "I am opening a pull request alongside this so the diff is there to read", which is now untrue — a promise made to a maintainer and then not kept.

The issue dedup added with the issue-first flow was too coarse to repair it: any issue, in any state, meant never ask again.

The two states mean opposite things

Reaching that check means no pull request exists in any state, so an issue on its own says which of two things happened:

  • closed — they answered, and the answer was no. Exactly what the issue is for, and it must never be followed by a pull request.
  • open — the pair was interrupted between the two calls. Finishing it is not a second ask; it is the first one, completed.

An open issue is now carried out of prTarget so the run reuses it instead of opening a duplicate, and says so.

Verified both directions

tsc --strict --noEmit clean.

Resumes onto the existing issue:

$ tcfeed pr GSF-001/ARCLUX --dry-run
· GSF-001/ARCLUX — finishing https://github.com/GSF-001/ARCLUX/issues/299, which has no request yet
· GSF-001/ARCLUX — dry run

And a repository that already answered still skips:

$ tcfeed pr GlassHaven/Haven --dry-run
· GlassHaven/Haven — skipped: already asked — closed, https://github.com/GlassHaven/Haven/pull/532

🤖 Generated with Claude Code

GitHub returned 502s for a stretch this afternoon, and two repositories
came out of it with an issue and no pull request:

  DingTalk-Real-AI/dingtalk-workspace-cli — fork failed, HTTP 502
  GSF-001/ARCLUX                          — push failed

Their issues say "I am opening a pull request alongside this so the diff
is there to read", which is now untrue. That is a promise made to a
maintainer and then not kept, and the issue dedup added with the
issue-first flow was too coarse to let it be repaired: any issue at all,
in any state, meant never ask again.

An issue on its own says which of two things happened, and the states
mean opposite things. Reaching that check means no pull request exists in
any state, so:

  closed — they answered, and the answer was no. Exactly what the issue
           is for, and it must never be followed by a pull request.
  open   — the pair was interrupted between the two calls. Finishing it
           is not a second ask; it is the first one, completed.

An open issue is now carried out of prTarget so the run reuses it instead
of opening a duplicate, and says so: "finishing <url>, which has no
request yet".

Verified both directions: ARCLUX resumes onto its existing issue, and a
repository that answered still skips.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@ralyodio
ralyodio merged commit 3d8eb36 into master Aug 13, 2026
11 checks passed
@ralyodio
ralyodio deleted the worktree-tcfeed-finish-pair branch August 13, 2026 15:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant