First off, you must not create a URLRequestContext in the browser process for security reasons, due to the rule of 2, and instead the network service should be accessed through a NetworkContext over a mojo pipe. More generally, though, you shouldn't be creating your own NetworkContext, either - If you do it directly, you'll get it wrong, and creating an entire instance of the network stack is an extremely heavy weight operation. There are, for the most part, two types of NetworkContexts in use by chrome. There's the per-profile, web-exposed on, hanging off of a StoragePartition, which has a cookie store (though you can make cookieless, isolated requests that are not cached using it, if that's the behavior you need - it will respect per-profile proxy settings), and for internal requests not associated with a profile, there's the global SystemNetworkContext. Since extensions are per-profile, I assume you want the former.
If you're still interested in the details of proxy configuration, the ChromeOS team actually owns components/proxy_config, which is used on all platforms, but I don't think the details are really relevant to what you should be doing there.