Firefox/Projects/Automatic Recovery: Difference between revisions

no edit summary
(Created page with '== Summary == The purpose of this project is to reframe how Firefox deals with failures.<br> <br> Currently our process is:<br>-The user notices undesirable symptoms (like "f…')
 
No edit summary
Line 1: Line 1:
== Summary  ==
== Summary  ==


The purpose of this project is to reframe how Firefox deals with failures.<br>
The purpose of this project is to reframe how Firefox deals with failures.<br>  


<br>


Currently our process is:<br>-The user notices undesirable symptoms (like "firefox won't start").<br>-The user has to seek out the solution on their own (go to a support form, learn about safe mode, follow the various steps).


<br>
'''Currently our process is:'''<br>-The user notices undesirable symptoms (like "firefox won't start").<br>-The user has to seek out the solution on their own (go to a support form, learn about safe mode, follow the various steps).


Proposed approach:<br>-Firefox detects what is happening (notices that it crashed repeatedly and before displaying about:sessionrestore)<br>-Firefox automatically takes the logical course of action (launches into safe mode).<br>
<br>  


<br>
'''Proposed approach:'''<br>-Firefox detects what is happening (notices that it crashed repeatedly and before displaying about:sessionrestore)<br>-Firefox automatically takes the logical course of action (launches into safe mode).<br>  


The idea is to apply this model of automatic recovery to as many errors as we can, launching into Safe Mode is just one instance of the new approach.<br>
<br>
 
The idea is to apply this model of automatic recovery to as many errors as we can, launching into Safe Mode is just one instance of the new approach.<br>  


== Current Status  ==
== Current Status  ==


Complete<br>
'''Complete'''<br>  


*Automatically restart on crash (fixed in Shiretoko)<br>
*Automatically restart on crash (fixed in Shiretoko)<br>  
*Auomatically show about:sessionrestore on two start up crashes (Fixed in Shiretoko)<br>
*Auomatically show about:sessionrestore on two start up crashes (Fixed in Shiretoko)<br>


<br>
<br>  


== Next Steps ==
== Next Steps ==


*Automaticaly launch into Safe Mode when about:session restore can't even load (third sequential start up crash).
*Automaticaly launch into Safe Mode when about:session restore can't even load (third sequential start up crash).  
*Identify additional areas where where we can do an automated recovery (fourth start up crash?&nbsp; locked places file? etc.)
*Identify additional areas where where we can do an automated recovery (fourth start up crash?&nbsp; locked places file? etc.)


 
<br>


== Related Bugs  ==
== Related Bugs  ==


{{bug|347680}}  
{{bug|347680}}  


== Team  ==
== Team  ==


Simon Bünzli: about:sessiorestore<br>
Simon Bünzli: about:sessiorestore<br>
 
Michael Kohler: launching into safe mode<br>
 
(otherwise the project as a whole is currently inactive)<br>  


Michael Kohler: launching into safe mode<br>


(otherwise the project as a whole is currently inactive)<br>


== Designs  ==
== Designs  ==


[https://bug347680.bugzilla.mozilla.org/attachment.cgi?id=336775 Automatically dealing with start up crashes] (kind of old, but shows general idea)<br>
[https://bug347680.bugzilla.mozilla.org/attachment.cgi?id=336775 Automatically dealing with start up crashes] (kind of old, but shows general idea)<br>  


<br>
<br>  


== Goals/Use Cases  ==
== Goals/Use Cases  ==


*Firefox "Just Works," even when it is actually rather broken.<br>
*Firefox "Just Works," even when it is actually rather broken.<br>


== Non Goals  ==
== Non Goals  ==


*Telling the user what went wrong on a implementation level<br>
*Telling the user what went wrong on a implementation level<br>  
*Telling the user how Firefox works or should work on an implementaiton level<br>
*Telling the user how Firefox works or should work on an implementaiton level<br>  
*Telling the user what support articles they need to read<br>
*Telling the user what support articles they need to read<br>  
*Telling the user what steps they need to take
*Telling the user what steps they need to take  
*Branding a tool for recovery (like calling it "Safe Mode")<br>
*Branding a tool for recovery (like calling it "Safe Mode")<br>


<br>
<br>
497

edits