         (funcall continuation response)
       (funcall continuation nil))))
 
-(defun fstar-subp--info-wrapper (continuation pos)
+(defun fstar-subp--lookup-wrapper (continuation pos)
   "Handle the results of a lookup query at POS.
 If response is valid, forward results to CONTINUATION.  With nil POS, this
 function can also handle results of position-less lookup queries."
   (fstar-subp--pos-check-wrapper pos
     (lambda (response)
-      (-if-let* ((info (and response (if (fstar--has-feature 'interactive-json)
+      (-if-let* ((info (and response (if (fstar--has-feature 'json-subp)
                                          (fstar-subp-json--parse-info response)
                                        (fstar-subp-legacy--parse-info response)))))
           (funcall continuation info)

(defun fstar-insert-match (type)
  "Insert a match on TYPE at point."
  (interactive (list (fstar--read-type-name)))
  (fstar-subp--ensure-available #'user-error 'match)
  (fstar-subp--query (fstar-subp--show-match-query type)
                (fstar-subp--pos-check-wrapper (point)
                  (apply-partially #'fstar--insert-match-continuation type))))

  (format "| %s -> $$" (replace-regexp-in-string "\\`(\\(.*\\))\\'" "\\1" branch)))

(defun fstar--insert-match-continuation (type response)
  "Handle RESPONSE to a `show-match' query.
TYPE is used in error messages"
  (-if-let* ((branches (and response
                            (if (fstar--has-feature 'json-subp)
                                response
                              (split-string response "\n")))))
      (let* ((name-str (car branches))
