A declared issue dependency is still open
A declared issue dependency is still open
blocked by #10 and #11.Check whether the named prerequisite is actually still open:Blocks #123 or Required by #123, is read as an outbound relation and does not block the run.If the run says a dependency could not be resolved, that is not the same as closed. Fix GitHub authentication or repository access, then retry.PRFlow could not reproduce the bug
PRFlow could not reproduce the bug
cannot reproduce: followed by the obstacle it hit.Reproduction is a hard gate for a bug issue. PRFlow will not plan a fix for a defect it has not seen happen, because a fix aimed at a guess is worse than no fix. It records the obstacle instead of inventing one.Read what it recorded:Current Behavior section: the exact steps, the input that triggers the defect, the environment it happens on and the output you actually see against the output you expect. If the defect only happens in one environment, say which. If a fact genuinely cannot be established, write that down rather than leaving it out.Start the run again once the issue carries reproduction steps a second person could follow.The issue has no acceptance criteria
The issue has no acceptance criteria
_(none provided in issue body)_.Check whether the issue has the section at all:Acceptance criteria are written as prose or a numbered list
Acceptance criteria are written as prose or a numbered list
- [ ], - [x], * [ ] or * [x]. Bold paragraphs such as **AC1 — ...** and numbered lists such as 1. ... parse to zero items, exactly as an absent section would.Count the checkbox rows in the issue:The working tree has uncommitted changes
The working tree has uncommitted changes
setup.install command leave tracked files unchanged (for example, a lockfile your package manager rewrites), and match your repository’s line-ending and .gitattributes normalization.Local runs. The rest of this entry applies.PRFlow reaches this point still on your base branch, before any feature branch exists. Rather than sweep your uncommitted changes into a stray commit on the base branch, it stops and leaves your tree untouched.List what it found:The feature branch is checked out in another worktree
The feature branch is checked out in another worktree
branch-live-in-other-worktree), naming that worktree’s path when it can be read. The run does not switch into that worktree. It continues on the branch it was started on when that branch belongs to this issue, and otherwise on a new branch cut from the base. If that recovery also stops, the run ends Blocked.A worktree in the middle of a rebase or bisect of the branch counts too. git worktree list shows that worktree as detached and the report names no path; finish or abort the rebase or bisect there to free the branch.List your worktrees and find the one holding the branch:git worktree remove --force only when you are sure that worktree holds nothing you want.A resumed branch cannot be brought to its pushed commits
A resumed branch cannot be brought to its pushed commits
Branch setup stopped: landing stopped, no recovery: resume-precheck-checkout-did-not-land; <reason>.When a run resumes an open pull request, or a branch an earlier run pushed, it brings your local branch of the same name to the commits already pushed for it: it moves the branch only when no commit is lost, and keeps a branch that already contains those commits as it is. When it cannot do this safely, or cannot set the branch to track its pushed branch, it stops instead of continuing on the wrong commits, unless the cause is another worktree holding the branch (see the previous section). The <reason> names the cause:local-branch-diverged: Your local branch holds commits that are on no branch fetched fromorigin, and the pushed branch holds commits your local branch lacks.move-refused: The move was refused and your local branch is still where it was, typically because an uncommitted or untracked file in your working tree would be overwritten.branch-fetch-failed: The branch could not be fetched from the remote.fetched-tip-lacks-pr-head: The fetched branch does not contain the pull request’s head commit, for example after a force-push during setup.checkout-refused,git-state-unestablishedorupstream-not-set: Git refused the checkout; a repository state the check needs could not be established (for example, a git read failed, a shallow clone could not be deepened, or the base branch could not be fetched); or the branch could not be set to track its own remote branch.
< are commits only your local branch has; lines marked > are commits only the pushed branch has.Keep any local-only commits you want on a branch of your own, commit or stash conflicting files, then start the run again. A fetch failure or a force-push during setup usually clears on a plain re-run.The branch-state check refuses to adopt the branch
The branch-state check refuses to adopt the branch
Every required change is under .github/workflows/
Every required change is under .github/workflows/
Contents: write and Workflows: write. See Cloud Setup. If only part of the work is workflow-bound, PRFlow can defer that part and ship the rest.CI verification wait printed FAILED
CI verification wait printed FAILED
FAILED <request-id> run=<run-id> url=<url> conclusion=failure, then failed-job: and recap: lines, or recap-status: unestablished — <reason>.The helper already named the failed jobs and the suite identifiers. Do not treat a recap-status: line as a test identifier. Repair each recap: identifier and each failed-job: name, re-run the covering checks on the current tree, then request CI again.When the helper could not fetch jobs or logs, open the run URL from the FAILED line:Failure recap: block whose - bullets match the identifiers a current helper would print as recap: lines.The first FAILED line and exit status 7 are unchanged. PASSED, CANCELLED, SUPERSEDED and PENDING are also unchanged.CI verification wait printed CANCELLED, SUPERSEDED or STALLED
CI verification wait printed CANCELLED, SUPERSEDED or STALLED
wait exits 6 with a CANCELLED, SUPERSEDED or STALLED line. STALLED <request-id> run=<run-id> url=<url> queued-for=<n>s cancel=ok job=<job name> means a job waited for a runner for at least the --cancel-queued-after bound, so PRFlow cancelled the run. cancel=failed means the cancel call did not succeed: unless an earlier wait for that request printed CANCELLED, SUPERSEDED or STALLED … cancel=ok, a later request without --force-dispatch reuses the newest unsettled run it has correlated for that head, normally that same run, and the next wait --cancel-queued-after retries the cancel if a job is still queued past the bound. You can also cancel the run yourself from its URL.None of these carries a verdict on the change. Request CI again for the same head.A verification command was denied
A verification command was denied
The run stopped midway
The run stopped midway