On Tue, Oct 21, 2025 at 04:13:28PM +0200, Patrick Steinhardt wrote:
We basically have three different ways to execute repository
maintenance:
1. Manual maintenance via `git maintenance run`.
2. Automatic maintenance via `git maintenance run --auto`.
3. Scheduled maintenance via `git maintenance run --schedule=`.
At the moment, maintenance strategies only have an effect for the last
type of maintenance. This is about to change in subsequent commits, but
to do so we need to be able to skip some tasks depending on how exactly
maintenance was invoked.
Thanks for writing this down; my initial thought when reading this patch
was that we could distinguish between scheduled tasks and manual ones
based on their "schedule" field. But this makes sense: some of the
scheduled tasks might (or might not) be appropriate for manual runs, so
distinguishing as you do in this patch makes a ton of sense to me.
The rest makes sense and looks good.
Thanks,
Taylor