Repository navigation
The Claim: a Run or Spec run marks its issue in-progress - #291
Merged
Merged
Conversation
…f ready-for-agent Once its preflight checks pass and before its worktree is created, a Run or a Spec run that is not a child Run swaps the issue's ready-for-agent for in-progress in one request, keeping its other labels and creating the label if the repository lacks it. A Ticket's Run in a Spec run and a Base fix make none, and an issue already Claimed is left as it is. A Claim that can't be made stops the Run before any work. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… Claim on StartedBy, the selection test off the Claim's calls, more Claim cases Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This was referenced Oct 1, 2026
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The Claim: a Run or a Spec run labels its issue
in-progress, in place ofready-for-agent, once its preflight checks pass and before its worktree is created.run, so the Architect plan endsarchitect-planandin-progress.github::set_labels_addingis now the one home for "these labels, plus those, in one request", shared with the Architect run's mark-ready step.in-progress.thirdshift helphas a paragraph on it too.ghneeded nothing new. The test support gainedrepo_has_labels,repo_labelsandgh_fails.Evidence
Before: the new cases fail on
issue-212, for example:After:
cargo test --no-fail-fastpasses in full (104 unit tests and every integration test file), withcargo fmt --checkandcargo clippy --all-targets -- -D warningsclean.End-to-end cases, one per acceptance criterion:
ready-for-agent, keeps other labelsfresh_run:a_fresh_run_claims_the_issue_in_place_of_ready_for_agent_and_keeps_its_other_labelsready-for-agentstill addsin-progressfresh_run:a_run_on_an_issue_with_no_ready_for_agent_label_still_claims_itfresh_run:the_claim_is_made_in_one_request_before_the_worktree_is_createdspec_run:a_spec_run_claims_the_spec_and_its_tickets_runs_change_no_labelbase_fix:a_base_fix_changes_no_label_on_its_issue_while_the_run_claims_its_ownarchitect-planarchitect_run: the single-Ticket, Spec and failed-dispatch casesfresh_run:the_in_progress_label_is_created_when_the_repository_lacks_it, and its counterpart for a repository that has itpreflight:a_run_stopped_by_a_preflight_check_changes_no_label,a_spec_run_stopped_by_a_preflight_check_changes_no_labelcontinuation:a_continuation_on_an_issue_already_claimed_leaves_its_labels_as_they_arefresh_run:a_run_whose_claim_cannot_be_made_stops_before_any_work_naming_the_causeMerge Danger
Door: two-way
Reverting the commit stops new Claims. Issues already labelled
in-progresskeep the label until someone removes it by hand.Blast Radius: labels
in-progresslabel in the repository. That is three moreghcalls before the worktree, and aghfailure there now fails the Run.in-progressoff yet, by design: releasing and removing it is the next Ticket. Until then the label stays on issues after their Run ends, closed ones included.Unaddressed findings
Standards
docs/agents/triage-labels.mdandAGENTS.mddon't mentionin-progress. Pickup runs: thirdshift takes ready-for-agent issues on its own #212 puts that doc change with whatready-for-agentmeans on a Spec, which is outside this Ticket.fn label_in_progresscarries only[`make`], its failure as `gh` gave itas its doc. I renamed it fromswap_labels, but left the behaviour documented onmake, aschild_run::start_fromand its neighbours do.Spec
thirdshift helpdescribes the Claim, which The Claim: a Run or Spec run marks its issue in-progress #280 doesn't ask for. Kept: Pickup runs: thirdshift takes ready-for-agent issues on its own #212's story 50 asks for it, and help's Architect run paragraph would otherwise leave out what the dispatch does to the plan's labels.labelling #<n> in-progress[, in place of ready-for-agent], which The Claim: a Run or Spec run marks its issue in-progress #280 doesn't specify. Kept: every other label change thirdshift makes has a progress line.in-progresslabel. Not fixed: the next Run uses it, and deleting it would be a second request that can fail too.gh issue viewinside the Claim. The fake fails calls by their first two arguments, so that one would fail the preflight check first. The label list, label create and PUT failures are covered, and all four share one error path.in-progressoff yet, whileCONTEXT.md's Claim entry describes the release. Left: the README describes what this branch does, and the next Ticket adds the release.Closes #280
🤖 Generated with Claude Code