Closed Bug 1104194 Opened 10 years ago Closed 10 years ago

[OTA] Bookmark migration tutorial page is not displayed when upgraded from 2.0 to 2.2


(Firefox OS Graveyard :: Gaia::First Time Experience, defect)

Gonk (Firefox OS)
Not set


(blocking-b2g:2.2+, b2g-v2.1 unaffected, b2g-v2.2 fixed)

2.2 S2 (19dec)
blocking-b2g 2.2+
Tracking Status
b2g-v2.1 --- unaffected
b2g-v2.2 --- fixed


(Reporter: ychung, Assigned: sfoster)




(Whiteboard: [systemsfe][2.1-exploratory-3][2.2-flame-reduced-run])


(3 files)

After OTA upgrade from Flame 2.0 to 2.2, the bookmark migration tutorial page is NOT shown ("Your bookmarks have been moved to the homescreen. When editing, tap a bookmark to edit or rename it"). Instead, the default 2.2 tutorial pages are displayed.
Repro Steps:
1) Update a Flame device to v.2.0 BuildID: 20141124000201.
2) Change update channel and url on device to appropriate 2.2 build (20141124040203).
3) Perform OTA update.
4) When the update is complete, observe the tutorial pages.
The default FTU tutorial pages are shown.
The bookmark migration tutorial page is shown.

(Before OTA)
Device: Flame 2.0 (319mb, KK, Shallow Flash)
BuildID: 20141124000201
Gaia: 124c2f85f1b956e9e8429dab5121de702a3bc197
Gecko: fc90ac008cc1
Version: 32.0 (2.0) 
Firmware Version: v188
User Agent: Mozilla/5.0 (Mobile; rv:32.0) Gecko/32.0 Firefox/32.0

(After OTA)
Device: Flame 2.2 Master
BuildID: 20141124040203
Gaia: c5bad6d78c5fe168e3bb894fc5cb70902c9b19b1
Gecko: 8c02f3280d0c
Version: 36.0a1 (2.2 Master)
Firmware: V188
User Agent: Mozilla/5.0 (Mobile; rv:36.0) Gecko/36.0 Firefox/36.0
Repro frequency: 100%,
See attached: video clip, logcat
This issue does NOT reproduce when upgrading from 2.0 to 2.1.

Result: The bookmark migration tutorial page is shown.

(After OTA)
Device: Flame 2.1
BuildID: 20141124001201
Gaia: f93f2b92c7410815b785f6d8b286593d703a65d9
Gecko: 1de2c2a21068
Version: 34.0 (2.1)
Firmware: V188
User Agent: Mozilla/5.0 (Mobile; rv:34.0) Gecko/34.0 Firefox/34.0
QA Whiteboard: [QAnalyst-Triage?]
Flags: needinfo?(ktucker)
Thanks for filing this. We will be bringing the tutorial up to date for 2.2, including the various OTA scenarios. It may happen under another bug (which I've currently misplaced) and I'll dupe this if that turns out to be the case.
Component: Gaia::System → Gaia::First Time Experience
Nominating 2.2? since the tutorial should be shown after an OTA.
blocking-b2g: --- → 2.2?
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(ktucker)
OTA bug.
blocking-b2g: 2.2? → 2.2+
Flags: needinfo?(dharris)
Whiteboard: [2.1-exploratory-3][systemsfe] → [systemsfe][2.1-exploratory-3][2.2-flame-reduced-run]
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage?]
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(dharris)
Assignee: nobody → sfoster
Not a regression. We always have to specify this for a new release.
Keywords: regression
First step to update tutorial config for 2.2: remove pre-2.0 (we only support updates 2 minor versions back, so e.g 1.3 update will go to 2.0 then 2.2) and add 2.0 to 2.2 steps. The 2.1 to 2.2 steps are placeholder, this has not yet been spec'd and will get fixed in bug 1111139
Attachment #8537966 - Flags: review?(fernando.campo)
Blocks: 1111139
No longer depends on: 1111139
Hey Sam, code looks ok, that should fix it, but I'm not sure how to test it? 
I installed a 2.0, waited for the 2.2 OTA, and tried to stop the process after the last reboot to apply the patch and install the new FTU, but so far no luck, adb is not recognized till it's too late. 
Is creating a custom OTA the only way?
Flags: needinfo?(sfoster)
Try this: 
1) Use WebIDE/App-Manager to connect to device and debug the system app. 
2) In the console do: 
   navigator.mozSettings.createLock().set({ 'deviceinfo.os': '2.0'});
3) Restart the device (or stop/start b2g)
4) You should see the 'Start your phone tour' screen and the relevant tour

During startup, the existing deviceinfo.os is moved to deviceinfo.previous_os, see
The VersionInfo utility that is used to drive what update tutorial if any is shown simply compares the deviceinfo.previous_os to the deviceinfo.os during the bootstrap phase, and looks in the config file for steps to play in the tutorial.
Flags: needinfo?(sfoster)
Comment on attachment 8537966 [details] [review]
PR: Add 2.0..2.2 upgrade tutorial configs, remove <2.0

\o/ Thanks for the tip! is way easier to do it this way than create a custom OTA :D

And patch works great, so let's throw it to the autolander
Attachment #8537966 - Flags: review?(fernando.campo) → review+
Merged to master:
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → 2.2 S2 (19dec)
Yeojin, could you help verify this?
Flags: needinfo?(ychung)
We can't test OTA from 2.0 to 2.2 or 2.1 to 2.2 as of now because according to bug 1151006 comment 4, our current method is invalid.

Please needinfo :nhirata if you need further assistance.
Flags: needinfo?(ychung)
I was able to upgrade OTA from Flame 2.0 to 2.2, although I got a broken homescreen. However, the bookmark migration tutorial page DID appear during FTU after the upgrade.

Marking the bug as verified fixed.

[Before OTA]
Environmental Variables:
Device: Flame 2.0 (KK, 319mb, full flash)
Build ID: 20150415000204
Gaia: 84898cadf28b1a1fcd03b726cff658de470282f0
Gecko: de92ad41847a
Gonk: ebad7da532429a6f5efadc00bf6ad8a41288a429
Version: 32.0 (2.0)
Firmware Version:  v18D-1
User Agent: Mozilla/5.0 (Mobile; rv:32.0) Gecko/32.0 Firefox/32.0

[After OTA]
Environmental Variables:
Device: Flame 2.2
Build ID: 20150415002502
Gaia: 0b2e2f7c022554d57bf2afed36ba6788249197dd
Gecko: 2356b82e9a50
Gonk: ebad7da532429a6f5efadc00bf6ad8a41288a429
Version: 37.0 (2.2)
Firmware Version: v18D-1
User Agent: Mozilla/5.0 (Mobile; rv:37.0) Gecko/37.0 Firefox/37.0
QA Whiteboard: [QAnalyst-Triage+] → [QAnalyst-Triage?]
Flags: needinfo?(ktucker)
Keywords: verifyme
QA Whiteboard: [QAnalyst-Triage?] → [QAnalyst-Triage+]
Flags: needinfo?(ktucker)
You need to log in before you can comment on or make changes to this bug.