Build failing due to "GetBool is not allowed to be called during serialization"

Whenever I try to build, Unity spits out the following error:

GetBool is not allowed to be called during serialization, call it from Awake or Start instead. Called from MonoBehaviour ‘PlanetObj’ on game object ‘PlanetA’.

I’ve posted the entirety of the script it’s complaining about below, and I’m not doing any of the things you’re not supposed to do with script constructors. No unity API calls, nothing. I didn’t implement an explicit constructor (in this, or in its parent class NomadObj). NomadObj does derive from MonoBehaviour, but its an abstract class with (currently) only 2 methods.

Anyone have any idea where I’m going wrong?

using UnityEngine;

public class PlanetObj : NomadObj
{
    public PlanetInfo Info;
    public GameObject PlanetMesh;

    private Vector3 spawnPos;
    // positive y offset because the planet's root is already at -10 from being parented to the sun
    private float yoffset = 1;

    private void Start()
    {
        spawnPos = new Vector3();
    }

    public override void ApplyInfo()
    {
        PlanetMesh.transform.localScale = new Vector3(Info.Scale, 1, Info.Scale);
        spawnPos.x = Info.OrbitDistance;
        spawnPos.y = yoffset;
        spawnPos.z = 0;

        PlanetMesh.transform.position = spawnPos;

        int rotationOffset = Random.Range(0, 360);
        transform.rotation = Quaternion.Euler(0, rotationOffset, 0);
    }

    public GameObject GetPlanetMesh()
    {
        return PlanetMesh;
    }

    public override void SetInfo<T>(T info)
    {
        Info = info as PlanetInfo;
        ApplyInfo();
    }

    private void FixedUpdate()
    {
        transform.Rotate(Vector3.up * (Info.RotationSpeed * Time.deltaTime));
    }
}

I can inconsistently get around this issue, but further investigation has pointed to the following info:

GetBool is not allowed to be called during serialization, call it from Awake or Start instead. Called from MonoBehaviour 'PlanetObj' on game object 'PlanetA'.
See "Script Serialization" page in the Unity Manual for further details.
UnityEditor.EditorPrefs:GetBool(String, Boolean)
SyntaxTree.VisualStudio.Unity.Bridge.Configuration.GlobalConfiguration:get_SendConsoleToVisualStudio()
SyntaxTree.VisualStudio.Unity.Bridge.Configuration.ActiveConfiguration:get_SendConsoleToVisualStudio()
SyntaxTree.VisualStudio.Unity.Bridge.VisualStudioIntegration:OnLog(String, String, LogType)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

This seems to definitely NOT be an issue with my code, but something inside unity, or the bridge to visual studio?

Unity tries serialize some uncorrect for serialization vars.
mark as System.NonSerialized Attribute all suspicious vars , remove {get;set;} from MonoBehavior,
maybe something same on this direction