AFAIK, local storage settings (WebInspector.Setting) are only saved to local storage when the inspector closes.
It's really easy to blow away your breakpoints if the inspector crashes. We should save this more often. Perhaps we can coalesce to do this every few seconds after a setting change.
On investigation, settings are set to local storage immediately, but there is no namespacing for different inspection levels. Retitling to fix this bug first.
There seems to be a separate bug about breakpoints not being saved to persistent storage in many cases (especially Inspector^2 when using Cmd-Q). I'll investigate that further after we use separate settings per inspection level.
Created attachment 266090 [details]
Created attachment 266100 [details]
How WK1 inspection levels are computed
I attached a drawing that shows how InspectorFrontendClientLocal computes inspection levels. The WK2 case is, surprisingly, much simpler to reason about.
Created attachment 266102 [details]
Comment on attachment 266102 [details]
Clearing flags on attachment: 266102
Committed r192756: <http://trac.webkit.org/changeset/192756>
All reviewed patches have been landed. Closing bug.