One pet peeve I have with KisSignalCompressor, esp. with FIRST_ACTIVE, is that it produces quite some overhead as compared to using a repeating QTimer; yes, this is related to moving D8418 to KisSignalCompressor :-)
Currently, during drawing and thus in FIRST_ACTIVE mode for updating the canvas, Krita spends a couple of percents (usually 1% to 3%) with starting and stopping timers (multiply by two if you only look at the main thread, i.e. 2% to 6%). Here are two sample profiler occurences, but it's called in more places and it varies:
This patch is an experiment to eliminate this overhead. It relaxes the guarantees when a timeout() happens to up to 2 * m_delay. That makes it possible to use one steady timer (called monitor) that runs over a whole signal burst period (i.e. the period during which signals come in without pauses longer than m_delay). As such, it completely eliminates any timer starts and stops during the signal burst phase. The compressor state is quite complex now though (I don't like that).