Since detecting FB-refreshes is impossible, unless you wait for Rip to be refreshed a 4th time by mangle/shred, or go for a more reliable approach of checking if it ends when it shoud, I've decided to use a different way and do a preprocess phase of the combat log, where I only look for FB/Rip durations. This allows me to pre-flag the FB events as "refreshes" and makes the analysis code less messy.
Alternatively, I could go for some on-the-fly log editing, adding AURA_REFRESH events for Rips where they should be. I'll try both approaches. Whatever the result, having a preprocess phase will make life easier for several other things (I could consider moving the OOC use detection there, for example).
The Coming March Update in New Eden
16 minutes ago