finish: close a referenced issue when its last open dependency closes #805

Closed
opened 2026-10-19 02:54:18 +00:00 by hexajon · 1 comment
Owner

When I finish a branch for an issue that still has an open dependency, finish references the issue and does not close it. That part is right. But nothing closes the issue later, when its last open dependency closes. So a built issue stays open, and I must find and close each one by hand. In one repo I found 15 such issues.

Today:

  • ClassifyBranchIssues gives ShouldClose: false when an issue has any open dependency (internal/service/workflow/classify.go:71-76).
  • The classification runs only inside finish. No later step checks a skipped close again.

What I want: when madtea closes an issue, it checks each issue that depends on it. If one of those issues had its close skipped only because of open dependencies, and it now has none, madtea closes it with a note that names the PR that built it.

Acceptance:

  • A test: finish of issue A with an open dependency B references A. When madtea then closes B, A closes too, with a note that names A's PR.
  • This step never closes an issue that had no skipped close.
When I finish a branch for an issue that still has an open dependency, finish references the issue and does not close it. That part is right. But nothing closes the issue later, when its last open dependency closes. So a built issue stays open, and I must find and close each one by hand. In one repo I found 15 such issues. Today: - `ClassifyBranchIssues` gives `ShouldClose: false` when an issue has any open dependency (`internal/service/workflow/classify.go:71-76`). - The classification runs only inside finish. No later step checks a skipped close again. What I want: when madtea closes an issue, it checks each issue that depends on it. If one of those issues had its close skipped only because of open dependencies, and it now has none, madtea closes it with a note that names the PR that built it. Acceptance: - A test: finish of issue A with an open dependency B references A. When madtea then closes B, A closes too, with a note that names A's PR. - This step never closes an issue that had no skipped close.
Author
Owner

Superseded by #825, which covers this close-later step plus a catch-up check, through a madtea/held label queue, for blockers closed outside madtea. It rests on the forge probes in internal/testforge/closeprobe.

Superseded by #825, which covers this close-later step plus a catch-up check, through a madtea/held label queue, for blockers closed outside madtea. It rests on the forge probes in internal/testforge/closeprobe.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
sixfold-space/madtea#805
No description provided.