Shouldn't this be in its own `adaptative_buffer.ml` ?