Is erroring on the server on an unexpected client action bad?

In other words, if I type check the arguments passed by the client to a remote event, should I use assert()?

local Event = Instance.new("RemoteEvent")
Event.Name = "RemoteTest"
Event.Parent = game:GetService("ReplicatedStorage")
Event.OnServerEvent:Connect(function(Player, Position)
	assert(typeof(Position) == "Vector3")
	-- ...
end)

Use assert in conjunction with pcall/xpcall as to appropriately handle any potential errors.