Repository navigation
An Architect idea pauses Architect runs until it is triaged - #330
Merged
Merged
Conversation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…326) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This was referenced Oct 3, 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
An Architecture review with no Strong candidate now labels the issue it ends on an Architect idea, and that idea pauses later Architect runs until the Day shift triages it.
The skip reason on stderr is
Architect idea #<n> "<title>" is waiting for triage: <url>. A triage decision releases the pause: takingneeds-triageoff (whatever replaces it) or closing the issue. README (steps, No Strong candidate, the new "An Architect idea waits for triage" section, One Architect plan at a time) and the--helptext describe the label and the pause.Evidence
New and flipped end-to-end tests in
tests/architect_run.rs, run against the real binary with the fakegh/claude:a_review_that_files_an_idea_prints_its_url_and_changes_no_labelasserted the idea stays["needs-triage"], anda_review_whose_idea_is_already_filed_…asserted that GitHub was left unchanged.After:
cargo test: every suite passes.cargo clippy --all-targets: clean.Merge Danger
Door: two-way
Reverting this change stops the labelling and the skip. Any
architect-idealabels already put on issues stay behind, but they are harmless.Blast Radius: Architect runs
Once an Architect run has filed an idea, no later Architect run on that repository does anything until someone triages the idea. That is the intent, but an operator who never triages will see every Architect run skipped (exit
0, reason in the log). An "idea already filed" review now putsneeds-triageback on an issue that was already triaged. Pickup runs and Runs are unchanged.Unaddressed findings
Standards
run()holds a growing cascade of skip checks (lock, plan, idea). The reviewer suggested askip_reason(). Not done. The order is easy to read inrun()as it stands. The sibling slice of Weeding: Architect runs that follow each other as soon as the last plan is merged #311 that adds the Ready-issue skip is the right place to gather the checks, once all four are known.(IssueUrl, String)tuples inSkipped. Not done. The pattern predates this change (OpenPlans), and the new variant follows it. Changing it is a separate refactor.label_ideaandmark_plan_readyshare an interrupt → progress → ensure → set_labels shape. Not done. The checks and error context differ, and the reviewer called the extraction optional.Spec
a_plan_left_needing_triage_does_not_skip_the_architect_runkeeps the plan half. The idea half's new rule has dedicated tests: an idea waiting for triage skips, and one triaged or closed does not.Closes #326
🤖 Generated with Claude Code