update compile-filter-fn to only act on existing vars, update :optional to apply filter post-join op