No global executors

What does this MR do?

Refactors the code to remove the executor registry.

This was done with OpenCode + Duo Claude Opus 4.6 + manual careful review and polishing.

The second commit fixes some test flakiness too that existed even before this refactoring.

Why was this MR needed?

Global state is evil. Let's remove it. 😁 We need to untangle things so that its easier to refactor the code for new features and introduce new cross-cutting concerns by injecting objects rather than introducing more global variables.

What's the best way to test this MR?

What are the relevant issue numbers?

Edited by Mikhail Mazurskiy

Merge request reports

Loading