If you get an error when running an operation for a repository the operation will continue to execute until all repositories have either succeeded or failed. However, currently when a repository does fail the repositories that did succeed are not stored in the state, making it very hard to track which repos are safe to rerun if an operation isn't idempotent. We should look into improving interaction with immer to ensure that the mutated state is stored even if an error is thrown.
We could potentially use createDraft and finishDraft to properly handle immer drafts within a try/catch block.
If you get an error when running an operation for a repository the operation will continue to execute until all repositories have either succeeded or failed. However, currently when a repository does fail the repositories that did succeed are not stored in the state, making it very hard to track which repos are safe to rerun if an operation isn't idempotent. We should look into improving interaction with
immer
to ensure that the mutated state is stored even if an error is thrown.We could potentially use
createDraft
andfinishDraft
to properly handleimmer
drafts within a try/catch block.