Skip to content

ci: sign bestaxbot commits (SSH) and run the fix agent as bestaxbot - #234

Merged
allxsmith merged 1 commit into
mainfrom
claude/bestaxbot-signing-and-fix
Jul 7, 2026
Merged

allxsmith merged 1 commit into
mainfrom
claude/bestaxbot-signing-and-fix

Conversation

@allxsmith

@allxsmith allxsmith commented Jul 7, 2026 •

Copy link
Copy Markdown
Owner

Description

Completes the robobun-style machine identity for the loop.

1. SSH commit signing as bestaxbot (implement job) — Stage 1 flipped authorship to bestaxbot, but its user-PAT commits landed Unverified (committer bestaxbot@bestax.io isn't a GitHub-verifiable email), which blocks merges under "require signed commits". Adds ssh_signing_key + bot_name/bot_id so commits are signed as bestaxbot <300268469+bestaxbot@users.noreply.github.com> → Verified. (ssh_signing_key takes precedence over use_commit_signing.)

2. Stage 2 — run the fix agent as bestaxbot (claude-pr-loop.yml) — same github_token + SSH signing. The payoff: the fixer's refutation replies now come from a real user account, so CodeRabbit engages with them instead of "Skipped: comment is from another GitHub bot" — potentially auto-resolving contested threads rather than always escalating.

Reviewer separation preserved: deep review + verify stay claude[bot], keeping the ^claude state-machine filters intact — the exact robobun (author/fix) + claude[bot] (review) split Bun uses.

Affected package(s):

  • Other: CI / GitHub Actions (claude-implement.yml, claude-pr-loop.yml)

Related Issue(s)

Refs #188

Type of Change

  • Build tooling

Requires

  • Secret AI_LOOP_SSH_SIGNING_KEY = bestaxbot's SSH signing private key (✅ added by owner).
  • bestaxbot's SSH Signing Key (public) on its account (✅).

Checklist

  • Self-reviewed; both YAMLs validated; ssh_signing_key/bot_name/bot_id confirmed on implement + fix steps
  • Deep-review/verify identity unchanged (claude[bot]) → state machine intact

🤖 Generated with Claude Code

https://claude.ai/code/session_01NVR5yWevceZEFbTJmpviiM


Generated by Claude Code

Summary by CodeRabbit

  • Chores
    • Updated automated Claude workflows to use a consistent bot identity and signed commits.
    • Improved attribution for AI-generated commits so they appear under the same machine user across runs.
    • Added configuration to help automation interact more reliably during review and fix loops.

Two changes completing the robobun-style machine identity:

- SSH commit signing as bestaxbot on the implement job. Its user-PAT
  commits were landing Unverified (committer bestaxbot@bestax.io isn't a
  GitHub-verifiable email), which blocked merges under "require signed
  commits". ssh_signing_key + bot_name/bot_id sign commits as
  bestaxbot <300268469+bestaxbot@users.noreply.github.com> -> Verified.
  (Takes precedence over use_commit_signing.)

- Stage 2: run the fix agent as bestaxbot too (github_token + the same
  SSH signing). The payoff is that its refutation replies now come from a
  real user account, so CodeRabbit engages with them instead of "Skipped:
  comment is from another GitHub bot" — potentially auto-resolving
  contested threads instead of always escalating.

The deep review and verify jobs stay claude[bot], preserving reviewer
separation and the loop's ^claude thread/state-machine filters — the
same robobun (author/fix) + claude[bot] (review) split Bun uses.

Requires secret AI_LOOP_SSH_SIGNING_KEY (bestaxbot's SSH signing key).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NVR5yWevceZEFbTJmpviiM
@allxsmith
allxsmith merged commit 3cd9a38 into main Jul 7, 2026
8 of 9 checks passed
@coderabbitai

coderabbitai Bot commented Jul 7, 2026 •

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 4524a542-f978-4663-af43-3212264bf554

📥 Commits

Reviewing files that changed from the base of the PR and between 76bbe82 and 5523bc4.

📒 Files selected for processing (2)
  • .github/workflows/claude-implement.yml
  • .github/workflows/claude-pr-loop.yml

Walkthrough

Two GitHub Actions workflow files (claude-implement.yml and claude-pr-loop.yml) were updated to configure SSH commit signing and bot identity for the Claude action. Both now specify a bestaxbot identity with bot_id "300268469", and claude-pr-loop.yml also adds a dedicated github_token.

Changes

Claude Bot Identity and Signing Configuration

Layer / File(s) Summary
Bot identity and SSH signing setup
.github/workflows/claude-implement.yml, .github/workflows/claude-pr-loop.yml
Both workflow steps now set ssh_signing_key, bot_name: bestaxbot, and bot_id: "300268469"; the pr-loop fix job also adds a dedicated github_token (AI_LOOP_PAT) so CodeRabbit engages with the agent's replies instead of skipping bot comments.

Estimated code review effort: 1 (Trivial) | ~3 minutes

Possibly related PRs

  • allxsmith/bestax#216: Both PRs modify the same workflow files to configure the Claude loop's action run and commit-signing/bot identity behavior.
  • allxsmith/bestax#219: Both PRs wire AI_LOOP_PAT and bestaxbot identity into claude-implement.yml for authenticated actions.
  • allxsmith/bestax#227: Both PRs modify the same claude-pr-loop.yml "fix" job's Claude configuration block.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch claude/bestaxbot-signing-and-fix

Comment @coderabbitai help to get the list of available commands.

@github-actions

github-actions Bot commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

Preview Deployment

Preview URL: https://51ccce11.bestax.pages.dev

@github-actions

github-actions Bot commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

🎉 This PR is included in version 5.2.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

@github-actions

Copy link
Copy Markdown
Contributor

🎉 This PR is included in version 3.2.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

@github-actions

Copy link
Copy Markdown
Contributor

🎉 This PR is included in version 1.0.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

@bestax-release-bot

Copy link
Copy Markdown

🎉 This PR is included in version 1.0.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants