human
I wrote the below code

    from twisted.internet import task
    d = defer.Deferred()
    def check():
        res = predicate()
        if res:
            d.callback(res)
    call = task.LoopingCall(check)
    def stop(result):
        call.stop()
        return result
    d.addCallback(stop)
    d2 = call.start(interval)
    d2.addErrback(d.errback)
    return d

What's a good function header?

=====
Here's a good function header?
assistant
#Here's a good function header.

def loopUntil(predicate, interval=0):