def METHOD_NAME(session, node_id):
    """
    Gets the upwards hierarchy of parents, ordered by level, for a given node
    Returns SQLAlchemy rows of (node_id, parent_node_id, level, cluster)
    """
    parents = (
        select(Node.id, Node.parent_node_id, literal(0).label("level"))
        .where(Node.id == node_id)
        .cte("parents", recursive=True)
    )
    subquery = select(
        parents.union(
            select(Node.id, Node.parent_node_id, (parents.c.level + 1).label("level")).join(
                parents, Node.id == parents.c.parent_node_id
            )
        )
    ).subquery()
    return session.execute(
        select(subquery, Cluster)
        .join(Cluster, Cluster.parent_node_id == subquery.c.id)
        .where(Cluster.is_official_cluster)
        .order_by(subquery.c.level.desc())
    ).all()