arcade
arcade copied to clipboard
Consider a rewrite for testablity and efficiency
Background Motivation
The current arcade publishing infrastructure is not well-tested and is complex due to the various tasks it needs to handle efficiently. A rewrite is needed to improve testability and simplify the code.
Suggested Approach
The proposed design involves dividing the publishing process into distinct stages: determining artifact information, deciding artifact destinations, gathering artifacts, and publishing them. Each stage should be abstracted with strong contracts and use Dependency Injection (DI) for better testability.
Advantages
This approach will make the code more modular, easier to test, and maintain. It will also allow for parallelization and better control over the publishing flow.