I'm struggling a bit with the right way to model ambiguous references.
I've got {:job/origin "some string", :job/destination "other string"}, and
(pbir/alias-resolver :job/origin :client/id)
(pbir/alias-resolver :job/destination :client/id)
and I'm not sure how to write a resolver that needs data from something downstream of :client/id, and specify that it needs to be the :job/origin one. I'm not even sure that's possible.I got this working, after a fashion, by dropping the aliases and instead wrapping them up:
{:job/origin {:client/id "some string"}, ...}
and then capturing that in the ::pco/input.
(for some reason, destructuring {{something :that/depends-on-client-id} :job/origin} doesn't infer fully. I have to specify {::pco/input [{:job/origin [:that/depends-on-client-id]}]} explicitly.)