def METHOD_NAME(self, task_id: str, future: Future) -> None:
    """
    Set up the done() callback for the provided future.
    The done callback handles
    Callback to post result to the passthrough queue
    Parameters
    ----------
    future: Future for which the callback is triggerd
    """
    exec_beg = TaskTransition(  # Reminder: used by *closure*, below
        timestamp=time.time_ns(),
        actor=ActorName.INTERCHANGE,
        state=TaskState.WAITING_FOR_LAUNCH,
    )
    def _done_cb(f: Future):
        if f.exception():
            exc = f.exception()
            code, user_message = get_result_error_details(exc)
            error_details = {"code": code, "user_message": user_message}
            exec_end = TaskTransition(
                timestamp=time.time_ns(),
                actor=ActorName.INTERCHANGE,
                state=TaskState.EXEC_END,
            )
            result_message = dict(
                task_id=task_id,
                data=get_error_string(exc=exc),
                exception=get_error_string(exc=exc),
                error_details=error_details,
                task_statuses=[exec_beg, exec_end],  # only transition info we have
            )
            packed = messagepack.pack(Result(**result_message))
        else:
            packed = f.result()
        self.results_passthrough.put({"task_id": task_id, "message": packed})
    future.add_done_callback(_done_cb)