anchor.diff:                 end,
       State2 = State#state{unknown=Unknown2},
       add_node_capabilities(Node, Capabilities, State2);
  -add_node2(Node, Capabilities, State) ->
  -    add_node_capabilities(Node, Capabilities, State).
  +add_node(Node, Capabilities, State1) ->
  +    State2 = add_node_capabilities(Node, Capabilities, State1),
  +    filter_removed_caps(Node, Capabilities, State2).
   
   %% Remove supported capabilities for a node where it no longer appears in the
   %% rings capabilities for the node.
  
positive.code:                 last_ring_id :: term(),
                  supported :: [{node(), [{capability(), [mode()]}]}],
                  unknown :: [node()],
                  negotiated :: [{capability(), mode()}]
                 }).
  
  -define(ETS, riak_capability_ets).
  
negative.code: %% to determine capabilities through RPC to the node. If RPC fails, use
  %% default values. However, unresolved nodes will be marked as such and RPC
  %% re-attempted at the next server tick.
  add_node(Node, [], State=#state{unknown=Unknown}) ->
      {Capabilities, Resolved} = query_capabilities(Node, State),
      Unknown2 = case Resolved of
                     true ->
  