       (js/setTimeout #(send* [:remote (rest query)] cb)
                      ms-until-retried-run-retrieved))
     (doseq [expr query]
-      (if (branch-crumb-ast? (om-parser/expr->ast (first (de-alias-expression expr cb))))
+      (if (resolvers-can-handle? expr)
         (let [ch (resolve {:resolvers resolvers} [expr] (chan))]
           (go-loop []
             (when-let [novelty (<! ch)]

        (-> expr-ast
            (expr-ast/get-in [:organization/project :project/branch])
            (expr-ast/has-children? #{:branch/name})))))

(defn- get-branch-name [cb expr-ast query]
  (let [branch-name (-> expr-ast
                        (expr-ast/get-in [:organization/project :project/branch])
                        :params
                        :branch/name)
        novelty {:circleci/organization
                 {:organization/project
                  {:project/branch
                   {:branch/name branch-name}}}}]
    (cb novelty query)))

(defn- branch-runs-ast?
  "returns true if the ast is for an expression rendering the branch

        (let [[expr cb] (de-alias-expression expr cb)
              ast (om-parser/expr->ast expr)]
          (cond
            (= {:app/current-user [{:user/organizations [:organization/name :organization/vcs-type :organization/avatar-url]}]}
               expr)
            (let [ch (callback-api-chan
