Skip to content

Latest commit

 

History

History
31 lines (25 loc) · 1.68 KB

README.md

File metadata and controls

31 lines (25 loc) · 1.68 KB

Planner main updates

The backend keeps reproducible Planner revisions in Cargo.toml and Cargo.lock. Sync ASAPPlanner main checks upstream main daily (or on manual dispatch), updates both Planner dependencies (asap-planner, asap-executor) together, and opens or refreshes automation/sync-asapplanner-main against backend main. GitHub scheduled runs can be delayed.

The existing ASAP_CI_REPO_TOKEN secret must have read access to private dependency repositories and Contents and Pull requests write access to this backend repo. The updater uses this token to create its PR so GitHub triggers MVP CI. The merge workflow uses the repository's GITHUB_TOKEN and does not require GitHub's optional auto-merge feature to be enabled.

MVP CI uses --locked and runs the updater tests, formatting, the workspace check, Clippy and the workspace tests. Only a successful run for the current update PR head can trigger the merge workflow; it also verifies the repository, branch, base, and that main has not advanced since that run and only the two Cargo files changed. Branch protection remains in force. Failed updates stay open and main retains its last verified version. Fix an upstream incompatibility separately, or let the next upstream update refresh the PR. An automation failure is visible in Actions; check token permissions there.

Locally, run ./scripts/sync-asapplanner-main.sh from the repository root, then run the same checks as MVP CI. Updater unit tests run with:

python3 -m unittest discover -s scripts/ci -p 'test_*.py'
node scripts/ci/test_planner_merge.js

There is one updater: this script, the scheduled workflow and the automation/sync-asapplanner-main branch.