                   (act multi-change actx
                        (doseq [res ress]
                          (aput multi-change res-ch (merge res-m res)))
-                       (aput-close multi-change res-ch (merge res-m {:status :ok})))
+                       (aput-close multi-change res-ch (assoc res-m :status :ok)))
                   [(assoc-in state [:kvss (:name kvs)] next-kvs) nil]))]
        (kvs-do actx state-ch res-ch (kvs-checker m cb))))
 

                         (when-let [entry (get-entry kc k v)]
                           (when (or include-deleted (not (:deleted entry)))
                             (aput scan-work res-ch
                                   (merge m {:more true :status :ok
                                             res-key key :entry entry})))))
                       (aput-close scan-work res-ch (merge m {:status :ok}))))
                nil)]
       (kvs-do actx state-ch res-ch
               (fn [state] ((kvs-checker m cb) (or kvs-snapshot state)))))))

      (if-let [kvs (get-in state [:kvss name])]
        (if (= uuid (:uuid kvs))
          (cb state kvs)
          [state (assoc m :status :mismatch :status-info [:wrong-uuid (:kvs-ident m)])])
        [state (assoc m :status :not-found :status-info [:no-kvs (:kvs-ident m)])])
      [state (assoc m :status :invalid :status-info :missing-kvs-ident-arg)])))

(defn kvs-do [actx state-ch res-ch cb]
  (act kvs-do actx
