There are two main entry paths,
/app/cutting-edge. If the core version in the user agent string does not fit the current protocol in the default repository, the user agent is redirect to the correct location. For each existing protocol ( which actually maps to a core version ) there is also a direct path without any redirects, e.g.
If Dragonfly is loaded and the protocol announced by the host does not fit the current one, Dragonfly loads a list from the server with available version and tries to load the appropriate one. This is mainly the fall-back mechanism for all kind of devices with not up to date core versions.
Each path will also contain a
./zips path, e.g.
|core version||x - n||x||x + n|
|default path||loaded dynamically||redirected to |
|cutting edge path||loaded dynamically||redirected to |
|state default path||stable||stable||snapshot - weekly|
|state cutting edge path||stable||weekly - stable||snapshot|
loaded dynamically means that the protocol version announced by the host will always be checked. If needed an appropriate DF version will be loaded.
redirected to means that we will do user agent sniffing on the server ( for Presto/x.x. ) If the core version is higher then the current default one we will redirect to