I've been working on a big patch for a while now. However you only need to understand a small chunk of it to find the problem. Its job is to observe Live's transport and record/fire/stop clips at predetermined times. It works sometimes, but is also plagued by the infamous "Cannot set ID's with notifications" error. Worse, this error is unpredictable.
To replicate these errors, it's going to take you a few steps, but not too bad:
1) Download both attached files.
2) Open Untitled2.maxpat in Live, on the Master track.
3) Click the button on the right, when prompted for a file, give it the path to hurt_you.json
4) Click the button on the left.
Now open the Max window, then press play on Live. hurt_you.json provides start and stop times, and you'll see that the errors come when actions are executed at those times (which reflect the current beat of Live's transport). If you click on the errors you can see where they get produced.
Now if you replicate step 4) and keep restarting the track, you'll see that the error doesn't always come from the same place.
My best guess is that I need to properly apply deferlow, yet I have not figure out where. I can't seem to convince Max that it's not observing notifications with any number of deferlows.
Does anybody out there have the golden solution to this problem?