anchor.diff:  
   green(info, {nodeup, Node}, Data) ->
       State = state(),
  -    {ok, JoinStatus} = join(State),
  -    cmkit:log({cmcluster, State, nodeup, Node, JoinStatus}),
  +    cmkit:log({cmcluster, State, nodeup, Node}),
       {next_state, State, Data};
   
   green(info, {nodedown, Node}, Data) ->
  
positive.code:     gen_statem:start_link({local, ?MODULE}, ?MODULE, [], []).
  
  all_nodes() -> 
      Members = pg2:get_members(cmcluster),
      {ok, [ gen_statem:call(M, nodes) || M <- Members ]}.
  
  init([]) ->
      pg2:create(cmcluster),
      net_kernel:monitor_nodes(true),
      net_adm:world(),
      case length(expected_nodes()) of
          1 -> 
              join(green),
              cmkit:log({cmcluster, green, standalone}),
              {ok, green, #data{}};
          _ -> 
  
negative.code: 
  yellow(info, {nodeup, Node}, Data) ->
      State = state(),
      cmkit:log({cmcluster, State, nodeup, Node}),
      {next_state, State, Data};
  
  yellow(info, {nodedown, Node}, Data) ->
  