Database

[{_id:"some-long-id-1",name:"John Doe",activities:[{name:"Lunch",status:"SCHEDULED"},{name:"Playing Football",status:"COMPLETED"},{name:"Workout",status:"COMPLETED"},]},{_id:"some-long-id-2",name:"Jane Doe",activities:[{name:"Lunch",status:"COMPLETED"},{name:"Playing Football",status:"SCHEDULED"},{name:"Workout",status:"COMPLETED"},]}]

Query

db.collection.aggregate([{"$addFields":{"matched":{"$reduce":{"input":"$activities","initialValue":{"consecutiveFound":false,lastStatus:""},"in":{"$cond":{"if":{$or:[{$eq:["$$value.consecutiveFound",true]},{$and:[{$eq:["$$value.lastStatus","COMPLETED"]},{$eq:["$$this.status","COMPLETED"]}]}]},"then":{"consecutiveFound":true,lastStatus:"$$this.status"},"else":{"consecutiveFound":false,lastStatus:"$$this.status"}}}}}}},{$match:{"matched.consecutiveFound":true}},{"$project":{matched:false}}])

Result