A method comprising: determining, by a controller device that manages a plurality of network devices, that one or more stateless intents of a deployed graph model including a first set of stateless intents used to manage the plurality of network devices have changed, wherein stateless intents comprise fully declarative descriptions of an intended state of a network including the network devices, state of one or more of the network devices, or state of storage for the network; maintaining, by the controller device, both the deployed graph model and an undeployed graph model including a second set of stateless intents including the one or more changed stateless intents, version values for the deployed graph model and the undeployed graph model, version values for vertices of the deployed graph model, and version values for vertices of the undeployed graph model; determining, by the controller device, whether an existing global version is greater than a new global version; if the existing global version is greater than the new global version: recompiling, by the controller device, the changed stateless intents of the undeployed graph model to generate low-level configuration data for the network devices, and configuring, by the controller device, the network devices using the low-level configuration data; or if the existing global version is not greater than the new global version, updating low-level resources and the version value for the deployed graph model. determining, by a controller device that manages a plurality of network devices, that one or more stateless intents of a deployed graph model including a first set of stateless intents used to manage the plurality of network devices have changed, wherein stateless intents comprise fully declarative descriptions of an intended state of a network including the network devices, state of one or more of the network devices, or state of storage for the network; maintaining, by the controller device, both the deployed graph model and an undeployed graph model including a second set of stateless intents including the one or more changed stateless intents, version values for the deployed graph model and the undeployed graph model, version values for vertices of the deployed graph model, and version values for vertices of the undeployed graph model; determining, by the controller device, whether an existing global version is greater than a new global version; if the existing global version is greater than the new global version: recompiling, by the controller device, the changed stateless intents of the undeployed graph model to generate low-level configuration data for the network devices, and configuring, by the controller device, the network devices using the low-level configuration data; or recompiling, by the controller device, the changed stateless intents of the undeployed graph model to generate low-level configuration data for the network devices, and configuring, by the controller device, the network devices using the low-level configuration data; or if the existing global version is not greater than the new global version, updating low-level resources and the version value for the deployed graph model.