Hasta donde yo sé, los valores dinámicos en la expresión de filtro no se admiten actualmente con índices parciales y la expresión de filtro solo admite un subconjunto de operadores de consulta regulares de mongo (y ese subconjunto no incluye el $date
operador).
Una forma de aproximarse al comportamiento deseado es creando un shouldIndex
campo booleano en sus documentos, tenga {shouldIndex: true}
sea su expresión de filtro y haga que un script actualice ese campo una vez al día para los documentos anteriores a current_date - 30
.