Upstream Synchronization
Policy
- Prefer tagged upstream releases.
- Never auto-merge upstream.
- Never mirror-push after the initial import.
- Keep
originprivate andupstreamfetch-only. - Use one
sync/bento-vX.Y.Zbranch per reviewed update. - Preserve upstream ancestry; do not squash the upstream merge itself.
- Publish downstream artifacts only after checks and PR review pass.
Procedure
git fetch upstream --tags
git switch main
git pull --ff-only origin main
git switch -c sync/bento-vX.Y.Z
git rev-parse vX.Y.Z
git merge --no-ff vX.Y.Z
Then:
- Record tag and commit SHA.
- Review dependency, network, format, build, license, and notice changes.
- Resolve conflicts without discarding Anuva adapters or contracts.
- Run upstream build and convergence tests.
- Run Anuva contract, player/editor, template, packaging, and consumer checks.
- Update the upstream-base record and downstream changelog.
- Push the sync branch and open a reviewed PR into
main.
Bootstrap rehearsal
ANU-9 rehearses this workflow from the imported v1.0.8 baseline. Because
main already equals v1.0.8, the rehearsal is expected to be a no-op merge-base
verification plus a normal disposable sync branch, not a history rewrite.
The rehearsal passed on 2026-07-24. v1.0.8, local main, upstream/main, and
private origin/main all resolved to
0c9600d220668a6f447bbd2edf3567558b3652ea. The disposable local branch was
removed after verification; no remote ref was created, replaced, or deleted.