Pathfinding NPC still moving to the old part after it was replaced with a new part

I need help on a pathfinding code I made
Its about a pathfinding script from one of the articles of pathfinding
I’m struggling on the past hour because of this
It always keeps going to the same position rather than the new part (when I deleted the part and made a part with the same name it will go to the part that was deleted before)
the function is from the character pathfinding article

local function followPath(destination)
	-- Compute the path
	local success, errorMessage = pcall(function()
		path:ComputeAsync(character.PrimaryPart.Position, destination)
	end)

	if success and path.Status == Enum.PathStatus.Success then
		-- Get the path waypoints
		waypoints = path:GetWaypoints()

		-- Detect if path becomes blocked
		blockedConnection = path.Blocked:Connect(function(blockedWaypointIndex)
			-- Check if the obstacle is further down the path
			if blockedWaypointIndex >= nextWaypointIndex then
				-- Stop detecting path blockage until path is re-computed
				blockedConnection:Disconnect()
				-- Call function to re-compute new path
				followPath(destination)
			end
		end)

		-- Detect when movement to next waypoint is complete
		if not reachedConnection then
			reachedConnection = humanoid.MoveToFinished:Connect(function(reached)
				if reached and nextWaypointIndex < #waypoints then
					-- Increase waypoint index and move to next waypoint
					nextWaypointIndex += 1
					humanoid:MoveTo(waypoints[nextWaypointIndex].Position)
				else
					reachedConnection:Disconnect()
					blockedConnection:Disconnect()
				end
			end)
		end

		-- Initially move to second waypoint (first waypoint is path start; skip it)
		nextWaypointIndex = 2
		humanoid:MoveTo(waypoints[nextWaypointIndex].Position)
	else
		warn("Path not computed!", errorMessage)
	end
end

while true do
	if not game:GetService('Workspace'):FindFirstChild('a block to pathfind') then
		TEST_DESTINATION = game:GetService('Workspace'):WaitForChild('a block to pathfind').Position
	end
	followPath(TEST_DESTINATION)
end

fixed by not checking the position of the block. Instead i used a vector3 value on argument 2 of computeasync