Covering array index with arbitrary predicates

Array predicates are complex and it will not possible to cover.
Array Index can only index single element from array. If you have dynamic nature you need to create separate index for each one. If need to cover that you must include outside array as scalar index key as trailing index key.

Also checkout Covering index for nested array