anchor.diff:  %%--------------------------------------------------------------------
   -spec pop_msg() -> Any :: term() | timeout.
   pop_msg() ->
  -    pop_msg(timer:seconds(5)).
  +    pop_msg(timer:seconds(1)).
   
   
   %%--------------------------------------------------------------------
  
positive.code:     ])}, Msg).
  
  
  write_should_pass_errors(_) ->
      ?_assertThrow(#error{reason = enoent},
          onepanel_env:write([a1, k1], v9, "/nonexistent/p2")).
  
  
  migrate_should_rename_key(_) ->
      ?assertEqual(true, onepanel_env:migrate(service1, [a1, k2], [a1, k9])),
      Expected = {ok, ?FILE_CONTENT([
          {a1, [{k1, v1}, {k3, v3}, {k4, v4}, {k9, v2}]},
          {a2, ?APP_CONFIG_2}
      ])},
      Result = pop_msg(),
      ?_assertEqual(Expected, Result).
  
  
  migrate_should_ignore_missing(_) ->
      ?assertEqual(false, onepanel_env:migrate(service1, [a1, missing], [a1, k9])),
      % no write happens when there is no change
      Msg = pop_msg(),
      ?_assertEqual(timeout, Msg).
  
  
  read_effective_does_not_read_whole_config(_) ->
      ?assertError(badarg, onepanel_env:read_effective([], s1)),
      ?_assertError(badarg, onepanel_env:read_effective([a1], s1)).
  
  
  read_effective_follow_priority() ->
      % not overridden
      ?assertEqual({ok, v3}, onepanel_env:read_effective([a1, k3], service1)),
      ?assertEqual({ok, v4}, onepanel_env:read_effective([a2, k4], service1)),
  
negative.code:     ])}, pop_msg()),
      ?assertEqual(ok, onepanel_env:write([a2, k5, k9], v9, "p1")),
      Msg = pop_msg(),
      ?assertEqual({ok, ?FILE_CONTENT([
          {a1, ?APP_CONFIG_1},
          {a2, [
              {k4, v4},
  