In the new type checker beta, an optional type inside a table will be converted to non-optional if there is an if statement check if it exists. This makes sense, however this will cause the type checker to issue a warning when trying to set it to nil within that if statement. This does not happen for an optional type outside of a table.
This code can be used to replicate:
type typeA = {Model:Model?}
local array:typeA = {["Model"] = Instance.new("Model")}
if array.Model then
array.Model = nil
--The above line gives a warning "Type 'nil' could not be converted into 'Model'"
end
array.Model = nil
--The above line does not warn
type typeB = Model?
local model:typeB = Instance.new("Model")
if model then
model = nil
--The above line does not warn
end