I’ve encountered this a few times, and I finally worked out why
When a worker is tired, and they are trying to place down a bed, once the “sleep” function is sent out, the worker will drop a copy of the bed’s stockpile version (small place-able bed) on the ground at their position, place a bed down using a ‘ghost bed item’ and then fall asleep, leaving the small bed sitting there doing nothing.
When attempting to return that item to the stockpile, or moving the bed, the smaller bed item is removed.
I assume this happens when there is an empty bed and the worker is placing a bed, I’ll attach screenshot now.
~Item is highlighted, and the carpenter is sleeping in that items bed~
I haven’t tested this with an empty bed available, since it’s hard to time it correctly to exactly before they need to sleep, but I’ll do my best.