anchor.diff:  
   %% function handling POST to _replicate
   replicate({Props}=PostBody, UserCtx) ->
  -    {BaseId, Extension} = make_replication_id(PostBody, UserCtx),
  +    BaseId = make_replication_id({Props}, UserCtx, ?REP_ID_VERSION),
  +    Extension = maybe_append_options(
  +        [<<"continuous">>, <<"create_target">>], Props),
       Replicator = {BaseId ++ Extension,
           {gen_server, start_link, [?MODULE, [BaseId, PostBody, UserCtx], []]},
           temporary,
  
positive.code:         end
      end, [], Options).
  
  make_replication_id({Props}, UserCtx) ->
      %% funky algorithm to preserve backwards compatibility
      {ok, HostName} = inet:gethostname(),
      % Port = mochiweb_socket_server:get(couch_httpd, port),
      Src = get_rep_endpoint(UserCtx, couch_util:get_value(<<"source">>, Props)),
      Tgt = get_rep_endpoint(UserCtx, couch_util:get_value(<<"target">>, Props)),
      Base = [HostName, Src, Tgt] ++
          case couch_util:get_value(<<"filter">>, Props) of
          undefined ->
              case couch_util:get_value(<<"doc_ids">>, Props) of
  
negative.code: 
  -include("couch_db.hrl").
  
  -define(REP_ID_VERSION, 2).
  
  -record(state, {
      changes_feed,
      missing_revs,
  