Firefox/Projects/Automatic Recovery: Difference between revisions

(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…')
 
 
(2 intermediate revisions by the same user not shown)
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).


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>  


<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>  


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>
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. Here is another example: {{bug|513419}}<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}}  
{{bug|513419}} Close Firefox dialog


== Team  ==
== Team  ==


Simon Bünzli: about:sessiorestore<br>
Simon Bünzli: about:sessiorestore<br>  


Michael Kohler: launching into safe mode<br>
Michael Kohler: launching into safe mode<br>  


(otherwise the project as a whole is currently inactive)<br>
(otherwise the project as a whole is currently inactive)<br>
 
<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>
<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