ja, du har brug for bedre låsning på husmodellen, for at indikere, at en tilføjelse er i gang.
Problemet er, at flere anmodninger kan kalde findById og se samehouse.items.length, og derefter bestemmer hver forespørgsel baseret på det (forældede) øjebliksbillede, at det er ok at tilføje et element mere. Nodejs grænse for atomicitet er tilbagekaldet; mellem et asynkront opkald og dets tilbagekald, kan andre anmodninger køre.
En nem løsning er at spore ikke kun antallet af genstande i huset, men også antallet af tilsigtede tilføjelsesgenstande. Når du går ind i addItem, skal du støde på antallet af "ønsker tilføje mere" og teste det.