anchor.diff:  -record(fsm, {
      socket = undefined :: #socket{}       %% http i/o streams
     ,queue  = undefined :: datum:q()       %% queue of in-flight request
  -  ,peer  = undefined :: uri:uri()        %% identity of remote peer
  -  ,trace     = undefined :: pid()        %% knet stats function
  +  ,trace  = undefined :: pid()        %% knet stats function
   }).
   
   %%
  
positive.code: 
  %%
  %%
  http_request_log(#http{is = eof, http = {response, _}, state = #fsm{queue = Q, peer = Peer}} = Http) ->
     #req{
        http = {_, {Mthd,  Url, HeadA}}, 
        code = {_, {Code, _Msg, HeadB}}, 
  
negative.code:    } = deq:head(Q),
     ?access_http(#{
        req  => {Mthd, Code}
       % ,peer => Peer
       ,peer => undefined
       ,addr => request_url(Url, HeadA)
       ,ua   => opts:val('User-Agent', opts:val('Server', undefined, HeadB), HeadA)
       ,time => tempus:diff(T)
     }),
     Http;
  
  http_request_log(#http{is = upgrade, http = {_, {_, Url, Head}}} = Http) ->
     Upgrade = lens:get(lens:pair('Upgrade'), Head),
     ?access_http(#{
        req  => {upgrade, Upgrade}
       % ,peer => Peer
       ,peer => undefined
       ,addr => request_url(Url, Head)
       ,ua   => opts:val('User-Agent', undefined, Head)
     }),
  