| CPC G06Q 40/08 (2013.01) [G06F 11/3476 (2013.01); G06F 11/362 (2013.01); G06F 16/1734 (2019.01); G06F 16/258 (2019.01); G06Q 10/10 (2013.01); G06Q 20/401 (2013.01)] | 17 Claims |

|
1. A method comprising:
receiving a mutate command instructing the modification of an object from a first state to a second state, wherein the object is a digital document comprising policy data, and wherein the modification of the first state to the second state comprises a change to the policy data;
accessing an event log comprising an origin state of the object, wherein the origin state is the state in which the object was instantiated, and one or more previously executed mutation commands;
applying the one or more previously executed mutation commands to the origin state of the object to generate a current state object;
comparing the current state object to the first state, and if the current state object matches the first state, determining that the first state is valid;
in response to determining that the first state is valid:
executing the mutate command on the object to place the object in the second state; and
recording the mutate command in the event log as an additional previously executed mutation command.
|