One of the problems I’ve been trying to get around is how to make things divestable, while also having a central monorepo. This is harder problem than it looks. The core of the company is a set of Python scripts that generate the websites. and also other core things. The ventures may rely on this code, however, the problem is then that these ventures are dependent on the central code. However, each of the ventures should be split off at any point without a huge dependency on anything in the core.
I suppose the best way to fulfill this outcome is to just duplicate code. If a venture needs a particular piece of code then it should just be copied. This way any code that I decide to sell can be split off with minimal work. Further, it may make sense to use git subtree to track the changes in a remote repo as well. That way the remote repo is also divestable.
Essentially, my goal is to make selling a piece of code or business should be as easy as possible.