feat: open PRs as ready by default + pr-maintenance draft promotion#1
Merged
feat: open PRs as ready by default + pr-maintenance draft promotion#1
Conversation
When cron invoked the script every 15 min, PATH was the minimal
/usr/bin:/bin. archon (installed at ~/.bun/bin/archon) was not
findable, so every "launching archon" step died with:
/mnt/ext-fast/archon/scripts/pr-maintenance-cron.sh: line 59:
archon: command not found
As a result PRs that needed conflict resolution stopped being
processed — they just accumulated as DIRTY or UNKNOWN.
Prepend $HOME/.bun/bin, $HOME/.local/bin, and /usr/local/bin to PATH
at the top of the script. Works from cron and from an interactive
shell unchanged.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Archon workflows previously created PRs with --draft, which meant even a
CI-green PR would sit idle until a human marked it ready. Combined with the
Phase 1 merge filter in pr-maintenance-cron.sh (which skips drafts), a green
draft could linger indefinitely.
This change removes --draft from all three unconditional gh pr create
invocations so PRs open ready-for-review by default:
- .archon/workflows/defaults/archon-fix-github-issue.yaml
- .archon/workflows/defaults/archon-piv-loop.yaml
- .archon/workflows/defaults/archon-ralph-dag.yaml
Also includes the already-in-tree pr-maintenance-cron.sh additions that
complement this:
- Phase 0: promote any CLEAN draft PRs to ready (belt-and-suspenders
for PRs that still open as drafts from other sources).
- Surface gh pr merge stderr to the cron log so real failures (perms,
branch protection, etc.) are diagnosable instead of silently swallowed.
Together these eliminate "green draft sitting idle" as a failure mode.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2 tasks
alexsiri7
added a commit
that referenced
this pull request
Apr 20, 2026
* chore(homebrew): update formula to v0.3.6 * feat: open PRs as ready by default + pr-maintenance draft promotion (#1) * Fix pr-maintenance cron: prepend user bins to PATH When cron invoked the script every 15 min, PATH was the minimal /usr/bin:/bin. archon (installed at ~/.bun/bin/archon) was not findable, so every "launching archon" step died with: /mnt/ext-fast/archon/scripts/pr-maintenance-cron.sh: line 59: archon: command not found As a result PRs that needed conflict resolution stopped being processed — they just accumulated as DIRTY or UNKNOWN. Prepend $HOME/.bun/bin, $HOME/.local/bin, and /usr/local/bin to PATH at the top of the script. Works from cron and from an interactive shell unchanged. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * feat: open PRs as ready by default + pr-maintenance draft promotion Archon workflows previously created PRs with --draft, which meant even a CI-green PR would sit idle until a human marked it ready. Combined with the Phase 1 merge filter in pr-maintenance-cron.sh (which skips drafts), a green draft could linger indefinitely. This change removes --draft from all three unconditional gh pr create invocations so PRs open ready-for-review by default: - .archon/workflows/defaults/archon-fix-github-issue.yaml - .archon/workflows/defaults/archon-piv-loop.yaml - .archon/workflows/defaults/archon-ralph-dag.yaml Also includes the already-in-tree pr-maintenance-cron.sh additions that complement this: - Phase 0: promote any CLEAN draft PRs to ready (belt-and-suspenders for PRs that still open as drafts from other sources). - Surface gh pr merge stderr to the cron log so real failures (perms, branch protection, etc.) are diagnosable instead of silently swallowed. Together these eliminate "green draft sitting idle" as a failure mode. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * scripts: remove pr-maintenance-cron (moved to interstellarai.net) This script was never archon-specific — it was a cron wrapper that invokes archon workflows. It's been moved to alexsiri7/interstellarai.net:ops/cron/pr-maintenance-cron.sh where the rest of the pipeline cron scripts live, in PR coleam00#12 there. The old copy here also sourced a now-dead gt/mayor lib path, so removing it also clears a latent bug. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Rasmus Widing <rasmus.widing@gmail.com> Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
alexsiri7
added a commit
that referenced
this pull request
Apr 20, 2026
* chore(homebrew): update formula to v0.3.6 * feat: open PRs as ready by default + pr-maintenance draft promotion (#1) * Fix pr-maintenance cron: prepend user bins to PATH When cron invoked the script every 15 min, PATH was the minimal /usr/bin:/bin. archon (installed at ~/.bun/bin/archon) was not findable, so every "launching archon" step died with: /mnt/ext-fast/archon/scripts/pr-maintenance-cron.sh: line 59: archon: command not found As a result PRs that needed conflict resolution stopped being processed — they just accumulated as DIRTY or UNKNOWN. Prepend $HOME/.bun/bin, $HOME/.local/bin, and /usr/local/bin to PATH at the top of the script. Works from cron and from an interactive shell unchanged. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * feat: open PRs as ready by default + pr-maintenance draft promotion Archon workflows previously created PRs with --draft, which meant even a CI-green PR would sit idle until a human marked it ready. Combined with the Phase 1 merge filter in pr-maintenance-cron.sh (which skips drafts), a green draft could linger indefinitely. This change removes --draft from all three unconditional gh pr create invocations so PRs open ready-for-review by default: - .archon/workflows/defaults/archon-fix-github-issue.yaml - .archon/workflows/defaults/archon-piv-loop.yaml - .archon/workflows/defaults/archon-ralph-dag.yaml Also includes the already-in-tree pr-maintenance-cron.sh additions that complement this: - Phase 0: promote any CLEAN draft PRs to ready (belt-and-suspenders for PRs that still open as drafts from other sources). - Surface gh pr merge stderr to the cron log so real failures (perms, branch protection, etc.) are diagnosable instead of silently swallowed. Together these eliminate "green draft sitting idle" as a failure mode. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * workflows: downshift routine nodes to haiku, keep opus for heavy reasoning (#3) Applied a systematic model audit to the 15 default workflows. Moved routine nodes (create-pr, fix-failures, loop counters, status reports) from Sonnet/Opus to Haiku 4.5. Kept Opus for: - The 5 security-audit analysis agents (injection, auth, privacy, config-deps, logic) + synthesize - archon-adversarial-dev's core GAN loop - All `implement` / `implement-tasks` nodes in feature-dev, idea-to-pr, plan-to-pr, ralph-dag, fix-github-issue Upgraded archon-adversarial-dev's `plan` to Opus (spec-writing from scratch in an adversarial context needs depth Sonnet doesn't provide). Expected impact: ~35-40% cost reduction on the routine nodes that dominate cron-driven archon runs, without sacrificing quality on the heavy-reasoning paths. * workflows: add custom workflows + auto-merge phases Adds three custom archon workflows that were living untracked in the working tree (pr-maintenance, security-audit, test-audit). Applies the same haiku/sonnet downshifts from #3 to their routine nodes (create-pr, fix-failures, fix-security, coverage-gap-agent, flaky-test-agent). Also commits the Phase 11 prepare-merge + Phase 12 watch-and-merge auto-merge additions to archon-fix-github-issue.yaml (watch-and-merge uses haiku — polling loop, not reasoning) and the Phase 9 auto-merge step in archon-idea-to-pr.yaml. Gitignores *.jks — keystore files must never be committed. * deps: add @openai/codex-sdk For using Codex as a provider in archon workflows alongside Claude. Also bumps internal workspace versions 0.3.5 → 0.3.6 (bun regenerated on install). --------- Co-authored-by: Rasmus Widing <rasmus.widing@gmail.com> Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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
--draftfrom all three unconditionalgh pr createinvocations in archon workflow YAMLs so new PRs open ready-for-review.scripts/pr-maintenance-cron.shadditions: Phase 0 promotes CLEAN draft PRs to ready, and stderr ongh pr mergeis now surfaced to the cron log.Together these close the "green draft sitting idle" failure mode — new PRs default to ready so pr-maintenance Phase 1 can merge them immediately, and the Phase 0 promoter handles any legacy/external drafts.
Files changed
.archon/workflows/defaults/archon-fix-github-issue.yaml— drop--draftfrom step 6.archon/workflows/defaults/archon-piv-loop.yaml— drop--draftfrom PR-create instruction.archon/workflows/defaults/archon-ralph-dag.yaml— drop--draftfrom Phase 6 PR-create instructionscripts/pr-maintenance-cron.sh— Phase 0 draft-promotion +2>&1error surfacing on mergeTest plan
--draftCo-Authored-By: Claude Opus 4.7 (1M context) noreply@anthropic.com