Help with CFraming welds

Hello I have an odd issue here that has me stumped. I f you watch the video below, you will see that the pink ring are causing the player character to bounce, when they should not.

The rings are attached to the character and animated using the following code:

    local character = initPlayer.Character
    if not character then return end

    local HRP = character:FindFirstChild("HumanoidRootPart")
    if not HRP then return end

    for count = 1, TICK_COUNT do

        local shockRing = ReplicatedStorage.EffectParts.Abilities.BasicAbility.GravityShift.ShockRing:Clone()
        shockRing.CFrame = HRP.CFrame
        shockRing.Parent = Workspace.RenderedEffects

        local newWeld = Instance.new("Weld")
        newWeld.C1 =  CFrame.new(0, 0, 0)
        newWeld.Part0 = HRP
        newWeld.Part1 = shockRing
        newWeld.Parent = shockRing

        local moveTween = TweenService:Create(newWeld,TweenInfo.new(TICK_DURATION),{C1 = CFrame.new(0, -3, 0)})
        moveTween.Completed:Connect(function()
            shockRing:Destroy()
        end)
        moveTween:Play()

        wait(TICK_DURATION)

    end

The ring part is un-anchored, and CanCollide off. The funny thing is I have done this exact thing dozens of times and this one isn’t working! You can even see the character welded to the player works find without moving the character and it uses identical code.

I also tried doing the same thing with Motor6D and the results were the same.

Really stumped!