Пока что траблы которые с екшинсами заметил, это то что если ты делаешь тест который кондишинал, то ты не можешь сделать его обязтельным
github actions для очень простых кейсов. Jenkins очень гибкий, но сложный. Но с монорепой вам из коробки никакая CI проблем не решит, тут либо скрипты писать, которые могут определить где что изменилось, и в зависимости от этого запускать тесты. Либо какой-нибудь bazel (который очень непрост, но с монорепой хорош)