はい、addItemが進行中であることを示すために、houseModelをより適切にロックする必要があります。
問題は、複数のリクエストがfindByIdを呼び出して、samehouse.items.lengthを確認し、それぞれがその(古い)スナップショットに基づいて、もう1つのアイテムを追加しても問題ないと判断できることです。アトミック性のnodejs境界はコールバックです。非同期呼び出しとそのコールバックの間で、他のリクエストを実行できます。
簡単な解決策の1つは、家の中のアイテムの数だけでなく、意図されたaddItemの数も追跡することです。 addItemに入るときに、「さらに追加したい」カウントを増やして、それをテストします。