Hi Ambrose, checking this code:
(t/defn hydrate-patient
"Hydrate the patient from the specified event stream."
([events] :- (t/I common/PersistentVersionedSchema PatientDetailSchema)
(hydrate-patient {} events))
([patient :- (t/HMap)
events :- (t/Vec PatientRegisteredEventSchema)] :- (t/I common/PersistentVersionedSchema PatientDetailSchema)
(apply (partial model-common/consume-event patient) events)))
produced the following stack trace. Adding ^:no-check allows the check to pass. Do you need me to produce a narrower example?
Exception in thread "main" java.lang.AssertionError: Assert failed: (let [[derived-props derived-atoms] %] (and (every? (some-fn fl/ImpFilter? fl/OrFilter? fl/AndFilter?) derived-props) (every? (some-fn fl/TypeFilter? fl/NotTypeFilter?) derived-atoms))), compiling:(/private/var/folders/dm/t75q9b4s0x7b2w550z6g48xm0000gn/T/form-init8798007584064462922.clj:1:124)
at clojure.lang.Compiler.load(Compiler.java:7142)
at clojure.lang.Compiler.loadFile(Compiler.java:7086)
at clojure.main$load_script.invoke(main.clj:274)
at clojure.main$init_opt.invoke(main.clj:279)
at clojure.main$initialize.invoke(main.clj:307)
at clojure.main$null_opt.invoke(main.clj:342)
at clojure.main$main.doInvoke(main.clj:420)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at clojure.lang.Var.invoke(Var.java:383)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.Var.applyTo(Var.java:700)
at clojure.main.main(main.java:37)
Caused by: java.lang.AssertionError: Assert failed: (let [[derived-props derived-atoms] %] (and (every? (some-fn fl/ImpFilter? fl/OrFilter? fl/AndFilter?) derived-props) (every? (some-fn fl/TypeFilter? fl/NotTypeFilter?) derived-atoms)))
at clojure.core.typed.update$combine_props.invoke(update.clj:58)
at clojure.core.typed.update$env_PLUS_.invoke(update.clj:368)
at clojure.lang.ArrayChunk.reduce(ArrayChunk.java:58)
at clojure.core.protocols$fn__6093.invoke(protocols.clj:98)
at clojure.core.protocols$fn__6057$G__6052__6066.invoke(protocols.clj:19)
at clojure.core.protocols$seq_reduce.invoke(protocols.clj:31)
at clojure.core.protocols$fn__6078.invoke(protocols.clj:54)
at clojure.core.protocols$fn__6031$G__6026__6044.invoke(protocols.clj:13)
at clojure.core$reduce.invoke(core.clj:6289)
at clojure.core.typed.check$check _COLON_do17295.doInvoke(check.clj:1377)
at clojure.lang.RestFn.invoke(RestFn.java:423)
at clojure.lang.MultiFn.invoke(MultiFn.java:231)
at clojure.core.typed.check.fn_method_one$check_fn_method1$fn__15905.invoke(fn_method_one.clj:183)
at clojure.core.typed.check.fn_method_one$check_fn_method1.doInvoke(fn_method_one.clj:173)
at clojure.lang.RestFn.invoke(RestFn.java:464)
at clojure.core.typed.check.special.fn$check_anon$fn__16299.invoke(fn.clj:44)
at clojure.lang.AFn.applyToHelper(AFn.java:178)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.core$apply.invoke(core.clj:624)
at clojure.core$map$fn__4260.invoke(core.clj:2578)
at clojure.core$map$fn__4245.invoke(core.clj:2559)
at clojure.lang.LazySeq.sval(LazySeq.java:40)
at clojure.lang.LazySeq.seq(LazySeq.java:49)
at clojure.lang.Cons.next(Cons.java:39)
at clojure.lang.RT.next(RT.java:598)
at clojure.core$next.invoke(core.clj:64)
at clojure.core.protocols$fn__6086.invoke(protocols.clj:146)
at clojure.core.protocols$fn__6057$G__6052__6066.invoke(protocols.clj:19)
at clojure.core.protocols$seq_reduce.invoke(protocols.clj:31)
at clojure.core.protocols$fn__6078.invoke(protocols.clj:54)
at clojure.core.protocols$fn__6031$G__6026__6044.invoke(protocols.clj:13)
at clojure.core$reduce.invoke(core.clj:6289)
at clojure.core$into.invoke(core.clj:6341)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.core$apply.invoke(core.clj:626)
at clojure.core.contracts.constraints$apply_contract$fn__400.doInvoke(constraints.clj:175)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:29)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at clojure.core$mapv.doInvoke(core.clj:6360)
at clojure.lang.RestFn.invoke(RestFn.java:580)
at clojure.core.typed.check.special.fn$check_anon.invoke(fn.clj:31)
at clojure.core.typed.check.special.fn$check_special_fn$fn__16413.invoke(fn.clj:206)
at clojure.core.typed.check.special.fn$check_special_fn.invoke(fn.clj:199)
at clojure.core.typed.check$fn__17271.invoke(check.clj:1359)
at clojure.lang.MultiFn.invoke(MultiFn.java:231)
at clojure.core.typed.check$check _COLON_do17295.doInvoke(check.clj:1377)
at clojure.lang.RestFn.invoke(RestFn.java:410)
at clojure.lang.MultiFn.invoke(MultiFn.java:227)
at clojure.core.typed.check.def$check_normal_def.doInvoke(def.clj:59)
at clojure.lang.RestFn.invoke(RestFn.java:442)
at clojure.core.typed.check$check _COLON_def17430.doInvoke(check.clj:1670)
at clojure.lang.RestFn.invoke(RestFn.java:423)
at clojure.lang.MultiFn.invoke(MultiFn.java:231)
at clojure.core.typed.check$check_expr.doInvoke(check.clj:151)
at clojure.lang.RestFn.invoke(RestFn.java:410)
at clojure.core.typed.check$check_asts$iter__16664__16668$fn__16669$fn__16670.invoke(check.clj:120)
at clojure.core.typed.check$check_asts$iter__16664__16668$fn__16669.invoke(check.clj:119)
at clojure.lang.LazySeq.sval(LazySeq.java:40)
at clojure.lang.LazySeq.seq(LazySeq.java:49)
at clojure.lang.RT.seq(RT.java:484)
at clojure.core$seq.invoke(core.clj:133)
at clojure.core$dorun.invoke(core.clj:2855)
at clojure.core$doall.invoke(core.clj:2871)
at clojure.core.typed.check$check_asts.invoke(check.clj:119)
at clojure.core.typed.check.utils$check_ns_and_deps_STAR_.invoke(utils.clj:479)
at clojure.core.typed.check$check_ns_and_deps.invoke(check.clj:131)
at clojure.core.typed.check_ns_common$check_ns_info$fn__24001$fn__24002.invoke(check_ns_common.clj:81)
at clojure.core.typed.check_ns_common$check_ns_info$fn__24001.invoke(check_ns_common.clj:57)
at clojure.lang.AFn.applyToHelper(AFn.java:152)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.core$apply.invoke(core.clj:624)
at clojure.core$with_bindings_STAR_.doInvoke(core.clj:1862)
at clojure.lang.RestFn.invoke(RestFn.java:425)
at clojure.core.typed.check_ns_common$check_ns_info.doInvoke(check_ns_common.clj:42)
at clojure.lang.RestFn.invoke(RestFn.java:425)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.core$apply.invoke(core.clj:628)
at clojure.core.typed.check_ns_common$check_ns.doInvoke(check_ns_common.clj:111)
at clojure.lang.RestFn.invoke(RestFn.java:425)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.core$apply.invoke(core.clj:628)
at clojure.core.typed.check_ns_clj$check_ns.doInvoke(check_ns_clj.clj:23)
at clojure.lang.RestFn.invoke(RestFn.java:410)
at clojure.lang.AFn.applyToHelper(AFn.java:154)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.core$apply.invoke(core.clj:626)
at clojure.core.typed$check_ns.doInvoke(typed.clj:2241)
at clojure.lang.RestFn.invoke(RestFn.java:410)
at user$eval318$fn__319.invoke(form-init8798007584064462922.clj:1)
at user$eval318.invoke(form-init8798007584064462922.clj:1)
at clojure.lang.Compiler.eval(Compiler.java:6703)
at clojure.lang.Compiler.eval(Compiler.java:6693)
at clojure.lang.Compiler.load(Compiler.java:7130)
... 11 more
Subprocess failed