This article is an answer to customers who are wondering:
"Why was my software updated in repair service eventhough I already had the latest version of Sailfish installed?"
Devices are always reflashed in Warranty repair service. Often this procedure is reported as "software updated", which is a tad inaccurate.
OK, so what is "reflashing"?
Flashing device is not just about updating the Software. In addition to programming the executable code of SailfishOS again to the device, the flashing process also cleans up the memory and rebuilds the file system, including the boot loader.
You could compare flashing to demolishing a house, and then building another house (according to the exact same blueprints) in its place: sure it will look the same, but the structure materials will be new and it won't look like its been lived in before (and, in the case of Sailfish it will contain all the latest improvements!).
By comparisant updating the software is like renovating your existing house. 9/10 times this is enough! Unless there is a problem with the foundations, for example.
There is also some analogy between flashing and the format operation done on PC’s – it really turns every bit in the memory chips in contrast to a deleteing operation which only removes files from the File Allocation Table, but does not remove the file contents from the disk – it just sets the file area to status ‘free’. The end result, however means that all data on the device has been wiped and is unretrievable.
So why is flashing done every time a device is in repair service?
The main reason for doing this is ensuring a good quality of service, and that you won't have to send your device in for repair again soon after.
Reflashing the software is a way to ensure that the device is in a known good state when it leaves the service company. Even in case of issues which look like mechanical there may sometimes be some software related issues going on in the background, or additional undetected errors. By reflashing the device we attempt to eliminate or at least mitigate these risks.