"As soon as the source code is merged to the main branch, it should be considered published."
The reason this doesn't work is that people who write these open source libraries don't actually provide that guarantee. Often they don't want code to work this way.
If I'm building an open source library, sometimes I need to make a backwards breaking change and sometimes I need to make a security fix on an old version. I can't do both with a single 'main' branch .../4