The connections service was extended from talks_to connections to also handle hosted_by connections.
The intention with talks_to was that cycles would be allowed. However, for hosted_by I can't think of a situation where this would make sense. It also would make sense for one thing to be hosted by two things.
The connection service must check for and prevent the creation of hosted_by data structures which don't make sense.
The connections service was extended from talks_to connections to also handle hosted_by connections.
The intention with talks_to was that cycles would be allowed. However, for hosted_by I can't think of a situation where this would make sense. It also would make sense for one thing to be hosted by two things.
The connection service must check for and prevent the creation of hosted_by data structures which don't make sense.