a useful thing to search for in clojurians slack to see these issues discussed is "ordered" because of
https://github.com/clj-commons/ordered a library for insertion ordered variants of clojure collections that provides tagged literals. If you are allergic to premature solution discussion, be warned I am there doing that.