Are the photos that are uploaded by this script isolated from other DAM Assets. So in your example in /path/to/our/photos - are there other assets managed by users, or is that path just photos uploaded by your script. If they are just photos uploaded by your script you could create copy of the standard DAM asset workflow and add an activation step at the end. This approach assumes you can create the right patterns in your launchers to achieve this.
Another option would be if there was some other way to identify the fact that the image was uploaded by script (meta-data for example) you could add a conditional step at the end of standard DAM asset workflow and if the asset met the conditions then trigger replication.
If the photos managed by this script aren't isolated from a path perspective you could consider having you script make restful calls to the author server and check to see if all the renditions have been created. That will make for a much more complicated script but doing that is really the only way to ensure that the renditions are all created.
To summarize the best option is to figure out how to trigger the replication in workflow instead via script. If you can't find a way to do that then you have to actually code your script to check on the renditions in a loop until they are all created.