Is it safe running scavenge operation while EventStore is used by app?

Will scavenge break any operations that might be executed? Should we stop the app during scavenging operation?

Its designed to be run while other things are executing as well. It is
an online operation.

Logical follow-up question: ARE there any offline operations in GES? I can't think of any other than re-configuration.

Yes a deposed master is a case where offline is done (truncation). For
these things the node will commit suicide if needed (supervisor
restarts->offline done->back online)