"Multiple projections emitting to the same stream detected" after recreating a projection

The reason projections exclusively own their streams is because if they didn’t they would lose all predictability. We would no longer have any idea what should be in that stream.

An example of this is when a projection starts up from a checkpoint. It first goes through any events after that checkpoint and checks them against the emitted stream.

By doing this, we can tell where the projection got up to last and can continue from where we left off. On top of that, the projection can verify that everything is in order, no events missing etc.

If anyone can write to the emitted streams, then the projection would have no idea where it got to last in terms of processing.

We can no longer trust that the projection itself emitted that event or if something else did.