fix(ci): declare the failing-job list before the branch that can skip it - #9
Merged
Conversation
github-actions Bot
pushed a commit
that referenced
this pull request
Aug 27, 2026
…now (#52) CLAUDE.md called the PyQt beacon and dashboard "the core product". Neither file has existed for months: the dashboard was deleted in 9717cf2 ("kill dashboard") and claude-popup.py was renamed in 8fa7ea7. Every session opening this repo was being briefed on a product that is gone, and told to test it with a command that cannot run. What was actually left behind pointed at ~/dev/cockpit, a directory that stopped existing when that repo became fleetcrown: - beacon.py exec'd ~/dev/cockpit/scripts/beacon.py -> deleted - lib.sh sourced ~/dev/cockpit/scripts/agent-hook-lib.sh -> deleted - notification.sh exec'd a fleetcrown-beacon bridge that is also gone, so the wired Notification hook failed every pause -> no-op, matching stop.sh, which has been a documented no-op since 2026-06-11 .bashrc carried the same rot, plus a duplicate-definition bug: claude() and codex() were each defined twice, ~130 lines apart, so the first copy of each never ran. Removed the dead copies, cockpit() (cd into the missing dir), and the zellij-tab project detection — _agent_resolve_project_dir mapped the focused tab name through claude-projects.conf and silently cd'd there, which the global standards already declare retired. It was provably dead: tabs read "Tab #9" and match nothing, and 5 of the conf's 22 entries pointed at directories that no longer exist. Verified with --norc that the three removed functions are gone and every live one still resolves. The close_session prompt was the last consumer of that mapping, and the reason a file literally named "Tab #1" is sitting in ~/.claude/sessions. It now derives the project from the git repo root, so worktrees resolve to their repo instead of the worktree name. Gitignored fleetcrown-*.sh: Fleet Runner generates and rewrites them, so they are FleetCrown's output, not this repo's source. CLAUDE.md and README.md now say what is true — this is the environment plus the fleet's central audits, and agent dispatch belongs to FleetCrown. Claude-Session: https://claude.ai/code/session_01AZCNYHwjEeqxNpYCUk6Yna Co-authored-by: Mao Nakamoto <41178744+maonakamoto@users.noreply.github.com> Co-authored-by: Claude Opus 5 (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.
Follow-up to the red-base carve-out: it declared the failing-job list inside
the
elsebranch of the "does the base have CI history?" check, butset -uison and the merge site always reads it.
So on a base branch with no CI history at all, the sweep took the
"proceeding" path and died:
That is auto-merge dead for every PR in the repo, not a degraded path. Latent
here because this base does have CI history — but it is one fresh repo away from
being real, and it was introduced by my own change.
Fixed by declaring it once, before the branch that can skip the assignment.
Covered upstream by a regression test that runs the real script against a
ghreporting no CI history.
🤖 Generated with Claude Code