fix: properly traverse validator for block expressions