ci: automatically track verified ASAPPlanner main - #767
Merged
Merged
Conversation
3 tasks
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.
Why
Keep backend main automatically aligned with ASAPPlanner main without landing incompatible Planner changes.
Before this PR
Four workspace Planner dependencies and Cargo.lock stay at 10d93846 until someone updates them manually.
After this PR
The daily/manual workflow extracted unchanged from #765 resolves Planner main, pins all four dependencies to the same SHA, refreshes Cargo.lock, and maintains one update PR. The existing MVP CI runs with --locked. A successful run for the exact update head and unchanged main baseline triggers a squash merge, subject to branch protection. Failed updates stay open.
The dependency pin stays at the current main revision. Trialing Planner main
2ec3fc80compiled but failed 51 of 425 control-plane tests. #761 owns the corresponding Planner #455 evidence/cost semantic adaptation; this PR deliberately does not duplicate it.How
The script
scripts/sync-asapplanner-main.shand.github/workflows/sync-asapplanner-main.ymlare identical to #765. Keeping their paths and automation branch identical avoids duplicate schedulers when #765 lands. This lets synchronization reach main independently of the query-DAG stack.Reuse ASAP_CI_REPO_TOKEN for dependency access and PR creation so pull_request CI actually triggers. A separate workflow_run handler, using GITHUB_TOKEN, merges only the same-repository automation/sync-asapplanner-main PR, and only when its diff contains Cargo.toml/Cargo.lock. It never checks out PR content. No repository-wide auto-merge setting change is needed.
Verification
Limitations and follow-up
Schedules start after this PR lands on main and GitHub may delay scheduled runs. ASAP_CI_REPO_TOKEN already exists, but its secret value/scopes cannot be inspected: it needs private dependency read plus backend Contents/Pull requests write permissions. If those permissions are missing, the update workflow fails visibly. Upstream semantic/API incompatibilities require a follow-up fix; they are not auto-merged. In particular, latest Planner main cannot currently land on backend main until the #761 adaptation (and its stack) is ready.
Human review — do not complete with an agent