At the moment the component moves the origin of all unparented game objects matching the LayerMask that you have provided. This means that when objects are pooled that it will move the entire pool instead of the individual (active) items.
This behaviour should be changed to move active objects inside of the pool instead of the pool itself.