I tried rooting around the documentation but didn’t find anything which seemed to cover these two issues.
We’re considering a “merge bot” à la bors and I was looking at ng as something which might fit, but:
If there’s an emergency and it becomes necessary to manually commit to a branch — without going through PRs & ng — does ng handle this gracefully and just retry a pending staging to the branch when the fast-forward merge fails?
No. It cancels the entire queue and drops an error into the History table. It could be worse, but it honestly isn’t very good.
I’m not sure what that means in operational terms? Does that mean whoever did a direct commit will have to restart queue processing or something more involved? How does that meld with other projects which may perform automatic commits like transifex exporting updates to project translations?
It means that all of the running PRs would have to be r+-ed again. It’s not complicated, and you don’t need any special admin access, but it is kind of a pain.
Thanks for all the answers. Cheers.