set! can take 3 arguments, as in (set! o -prop val) per CLJS-198.
The docstring could be updated to reflect this, perhaps by adding this to the list of forms near the top of the docstring:
Implementation guidance:
The docstring is driven by the forms meta here https://github.com/clojure/clojurescript/blob/6eedd0a08c49f7b0d4dcb30977b2fb38c90577bd/src/main/clojure/cljs/repl.cljc#L1207
For Eugene's CA status see CLJS-2729.
With CLJS-2924.patch:
CLJS-2924.patch LGTM and passes in CI.
CLJS-2924.patch added to Patch Tender