I suggest the following should be added to events on_force_created and oninit.
Additionally, this would need to be run if surface is created for the first time in function get_secret_surface.
local name = "secret_companion_surface_please_dont_touch"
local surface = game.surfaces[name]
if surface then
for _, force in pairs(game.forces) do
force.set_surface_hidden(surface,true)
end
end
So the hidden surface doesn't appear in remote view.