I tried to create a mission kinda like this. It wasn't really that the player decided when the objective was completed, it was more or less the player decided what objective he needed to do because he kept getitng radio messages telling him stuff needed to be done at different towns across the map and obviously he can only be in one place at a time so he had to decide where to go and then the mission changed based on that.
I got about 30% done with that. I had the 3 towns set up and all 3 were suppose to be under attack when the mission starts as the player is at a base. HQ Radios him and says they need backup in Town A, but then as he is heading out he gets two more radio messages about attacks on Town B and C, all requesting more backup so he has to decide if he should keep going to the first town, or divert off his path and go to another town to help them.
And then once he got to each town different things would happen. For example if he picked Town A then maybe he would be radioed to cancel reinforcements to Town B as they have it under control. Or maybe he would arrive in Town C and face a relatively weak force, then get messages that Towns A and B are being overrun and they really need backup, etc. But all I got done was setting up the forces in each town and creating about half the radio messages when I stopped working on it.
So if someone wanted to try to use this idea too, you can have it set where the player not only decides what objectives to do, but when they are done (like originally posted) to make it very replayable because you could literally have a completely different mission each time you play the same game.