Moved to Tableau Developer community where this is more likely to get a response.
Can you put a try/catch on this in order to see the actual exception as returned by Tableau?
It's pretty rare to filter on a single date as you're doing above. Most will filter using applyRelativeDateFilterAsync() or applyRangeFilterAsync() vs. passing in a single date to this method - so your scenario is a tiny bit unnatural... I actually haven't seen too many people attempting it. In fact, help indicates that the method you're using shouldn't be applied when using date datatypes:
values: object or object,
Applies a simple categorical filter (non-date). See the filtering examples for more details on these functions. Returns the
fieldNamethat was filtered.
So, I'm guessing that this doesn't work at all. Other things you might want to try would be to wrap your date value in pound symbols - you're passing it as a string right now.
This is going against an MSAS cube. When I set the dimension as a date and set it to continuous, I couldn't get the numbers anywhere near what they should have been otherwise. Regardless, even ignoring the wrong results, the asyncRangeFilter (or whatever it's called) worked, or failed exactly the same as the way I'm doing it now. Full disclosure, I have very little experience using cubes and Tableau together.
Realizing full well this was a bit weird, I went with an easier filter, gender. Again, exact same issue. It works sometimes, other times it doesn't.
Interestingly enough, IE11 works the majority of the time whereas Chrome doesn't.
The error that pops up is "Error: Invalid filter field name or value". Before the async filter call I iterate over the entire workbook and all the filters in the worksheets and console.log them. That filter field name is there and the filter value is valid.
For all the gory details (code, server side error callstack, client side callstack and more): 00953897.