anchor.diff:  -define(ARTIFACT_MESSAGE,  artifact).
   
   %% State record.
  --record(state, {attempted_nodes, running_nodes, graph}).
  +-record(state, {attempted_nodes, graph}).
   
   %%%===================================================================
   %%% API
  
positive.code:     EvalIdentifier = lasp_config:get(evaluation_identifier, undefined),
      EvalTimestamp = lasp_config:get(evaluation_timestamp, 0),
      atom_to_list(Simulation) ++ "-" ++ atom_to_list(EvalIdentifier) ++ "-" ++ integer_to_list(EvalTimestamp).
  
negative.code: 
      timer:send_after(?ARTIFACT_INTERVAL, ?ARTIFACT_MESSAGE),
      {noreply, State};
  handle_info(?BUILD_GRAPH_MESSAGE, State) ->
      %% Get all running nodes, because we need the list of *everything*
      %% to analyze the graph for connectedness.
      Nodes = sets:union(clients_from_marathon(), servers_from_marathon()),
  
      %% Build the graph.
      Graph = digraph:new(),
  
  