async def METHOD_NAME(self, handle: Handle[Item]) -> None:
    """Mark an item, referred to by `handle`, as done."""
    assert handle in self._in_progress, "handle is not in progress"
    async with self._lock:
        self._in_progress.remove(handle)
        self._eof.notify_all()
        self._new_items.notify_all()
    if _logger.isEnabledFor(logging.DEBUG):
        stats = self.stats()
        _logger.debug("status: " + ", ".join(f"{key}: {val}" for key, val in stats.items()))