   (walk/postwalk
    (fn [form]
      (if (and (map? form)
-              (contains? #{:expound.problem/alt-group
-                           :expound.problem/value-group} (:expound.spec.problem/type form))
+              (contains? #{:expound.problem-group/many-values
+                           :expound.problem-group/one-value} (:expound.spec.problem/type form))
               (= 1 (count (:problems form))))
        (first (:problems form))
        form))

                                vals
                                (map (fn [grp]
                                       (if (= 1 (count grp))
                                         {:expound.spec.problem/type :expound.problem/value-group

                                          :path-prefix               (:expound/path (first grp))
                                          :problems                  grp}
                                         {:expound.spec.problem/type :expound.problem/value-group
                                          :path-prefix               (apply lcs1 (map :expound/path grp))
                                          :problems                  grp}))))]
    (->> grouped-by-in-path

     "\n\nor\n\n"
     (map #(expected-str* spec-name % opts) grouped-subproblems))))

(defmethod value-str :expound.problem-group/one-value [type spec-name val path problems opts]
  (s/assert ::singleton problems)
  (let [problem (first problems)
        subproblems (:problems problem)]
