You could watch the DocumentParseDataChanged event and request a new completion session if that event fires and a completion session is currently open (check the editor.IntelliPrompt.Sessions collection). The problem there is that it will lead to some flickering as the completion list closes and reopens, and the scroll state might be slightly different.
One thing that might help is if you track the original snapshot when the completion session started. Only request the new session if you get parse data changed event for that snapshot. That way you only refresh it up to once and if it's the exact parse data you want.
A similar idea would be to watch for the DocumentParseDataChanged event for the specific original snapshot as above, but instead of requesting a new session, add any new completion items to the existing completion session. That might reduce the brief close/open flicker, but is a lot more work than the first idea.