A link to the instigating mailing list post: https://groups.google.com/forum/#!topic/clojure-core-typed/Af650Di0VT4.
The following is a sketch of what I think should be possible. (adapted from java.jdbc)
In particular, note how the body of get-connection-string "knows" that the value of (add-connection s conn) will contain a string for the key :connection-string.
Unclear how to proceed.