[failproofai-555] ci(bump): bump the failproofai/oss pointer in agenteye too#558
Conversation
The bump job only knew about platform, so agenteye's new failproofai/oss submodule would pin its initial commit forever. Turn the single job into a matrix over the downstream repos that carry the submodule. Both downstreams sit behind the same org-level failproofai-rules ruleset, so the existing version-bot bypass covers agenteye with no new credentials. The token stays scoped per matrix leg, concurrency is keyed per repo so the two bumps never queue behind each other, and fail-fast is off so one downstream failing does not cancel the other. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThe submodule bump workflow now processes both ChangesDownstream submodule bump workflow
Estimated code review effort: 2 (Simple) | ~10 minutes Possibly related PRs
Suggested reviewers: Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.github/workflows/bump-platform-submodule.yml:
- Around line 44-52: Add the minimum required App token permissions to the
create-github-app-token step identified by app-token, explicitly granting
contents: write via the action’s permission input while preserving the existing
owner and repository scoping; include additional permissions only if required by
later workflow steps.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 872e9cda-83a2-44bf-9554-2f322db7e49c
📒 Files selected for processing (1)
.github/workflows/bump-platform-submodule.yml
bump-platform-submodule.ymlonly knew aboutplatform. AgentEye now carries the samefailproofai/osssubmodule, so withoutthis its pointer would pin its initial commit forever. This turns the single job into a
matrix over the downstream repos that carry the submodule.
Merge agenteye#410 first. The step
hard-fails when
failproofai/ossisn't a gitlink on the downstream'smain— a deliberateinvariant, so silently dropping a removed submodule can't go unnoticed. Until #410 lands,
agenteye has no gitlink and the
agenteyematrix leg would go red on every merge tomain.The
platformleg is unaffected either way (fail-fast: false).Why a matrix rather than a second workflow
Everything except the repo name was already downstream-agnostic — same submodule path
(
failproofai/oss), same auth, same race-safe push loop. A matrix keeps one copy of thatlogic; adding a third downstream later is a one-word change to
repo: [platform, agenteye].What changed
platformplatform,agenteye(matrix)repositories: platformrepositories: ${{ matrix.repo }}— still one repo per legbump-submodule-${{ matrix.repo }}fail-fast: falseConcurrency moved from workflow-level to job-level so it can key off
matrix.repo.This is a small behaviour change and an intentional one: previously all bumps serialized
against each other, so a slow platform bump delayed agenteye's. Now each downstream
serializes independently, which preserves the original "back-to-back merges produce
sequential bumps, not a race that loses one" guarantee per repo while letting the two repos
proceed in parallel.
No new credentials needed
agenteye and platform are governed by the same org-level ruleset object —
failproofai-rules,id
18809960— on which the version-bot App (Integration 4278985) hasbypass_mode: always.So the existing bypass that lets the bot push to platform
maincovers agenteyemainunchanged. The App is already installed on agenteye (its own release workflows mint
self-scoped tokens with the same
VERSION_BOT_*secrets).Verification
repositories,repository, theconcurrency group, and
DOWNSTREAM_REPO).matrixis a legal context in job-levelconcurrency— confirmed against GitHub'scontext-availability table:
jobs.<job_id>.concurrency→github, needs, strategy, matrix, inputs, vars.(It is not legal in
jobs.<job_id>.strategy, which is why the matrix list itself stays literal.)so renaming would orphan this workflow's history. The header comment notes it.
🤖 Generated with Claude Code
Summary by CodeRabbit