Unfortunately, it suffers from serious limitations:
• You can record a menu action which displays a native modal dialog, but you cannot record what you do in that dialog! So the playback mechanism only recalls the original dialog box, and waits until the user validates before continuing.
• You can only record MenuAction events (or the corresponding keyboard shortcuts). You cannot record direct inputs of text —except for some special characters—, mouse gestures, or other panel-based actions. It's far from possible to do everything in InDesign by only using regular menus!
Note. — InDesign CS5 introduced a number of new events at every DOM object level. Especially, it is now possible to listen to AFTER_SELECTION_CHANGED andAFTER_SELECTION_ATTRIBUTE_CHANGED from the app object. Therefore, it would be theoretically possible to spy on selection changes and attribute changes by extending the ActionManager, and to playback the corresponding operations on relevant targets. In practice, however, it sounds like a mammoth task!