Database
[{"stateHistory":[{"taskState":"DONE"},{"taskState":"START"},{"taskState":"FINISH"}],}]
Query
db.collection.aggregate([{"$project":{"stateHistory":1,"lastElt":{"$arrayElemAt":["$stateHistory",-1]}}},{"$project":{"stateHistory":{"$cond":{"if":{"$in":["$lastElt.taskState",["FINISH"]]},"then":"$stateHistory","else":[]}}}},{"$unwind":"$stateHistory"},{"$replaceRoot":{"newRoot":"$stateHistory"}}])