Fix toggling Flow to false in BetaFeatures (opt-out)
Closed, ResolvedPublic

Description

See https://phabricator.wikimedia.org/T98270#1614412 .

@Etonkovidova:

There are some problems with opting-out.

Straighforward scenario

Create a User talk page and enter some text
Then enable "Flow on user talk" in Preferences - Beta
User talk page is converted to Flow without any problem. The previous page content is archived at User_talk:username/Archive_1
Go back to Preferences - Beta and disable "Flow on user talk" . The User_talk page keeps displaying Flow board and all Flow board's functionality is there.
 
deployment-fluorine /a/mw-log/exception.log consistently displays the following error :

2015-09-07 17:45:44 deployment-mediawiki02 enwiki exception ERROR: [da2719b3] /wiki/Special:Preferences Flow\Exception\FlowException from line 88 of /srv/mediawiki/php-master/extensions/Flow/includes/BoardMover.php: Main discussion workflow for 127519 not found {"exception":"[Exception Flow\\Exception\\FlowException] (/srv/mediawiki/php-master/extensions/Flow/includes/BoardMover.php:88) Main discussion workflow for 127519 not found
[stacktrace]
#0 /srv/mediawiki/php-master/extensions/Flow/Hooks.php(1587): Flow\\BoardMover->prepareMove(integer, Title)
#1 /srv/mediawiki/php-master/includes/Hooks.php(204): FlowHooks::onTitleMove(Title, Title, User)
#2 /srv/mediawiki/php-master/includes/MovePage.php(231): Hooks::run(string, array)
#3 /srv/mediawiki/php-master/extensions/Flow/includes/Import/OptInController.php(137): MovePage->move(User, NULL, boolean)
#4 /srv/mediawiki/php-master/extensions/Flow/includes/Import/OptInController.php(112): Flow\\Import\\OptInController->movePage(Title, Title)
#5 /srv/mediawiki/php-master/extensions/Flow/includes/Import/OptInUpdate.php(50): Flow\\Import\\OptInController->disable(Title)
#6 /srv/mediawiki/php-master/includes/deferred/DeferredUpdates.php(119): Flow\\Import\\OptInUpdate->doUpdate()
#7 /srv/mediawiki/php-master/includes/MediaWiki.php(706): DeferredUpdates::doUpdates(string)
#8 /srv/mediawiki/php-master/includes/MediaWiki.php(526): MediaWiki->restInPeace(string)
#9 [internal function]: Closure$MediaWiki::doPostOutputShutdown()
#10 {main}
"}

DannyH renamed this task from Fix toggling Flow to false in BetaFeatures to Fix toggling Flow to false in BetaFeatures (opt-out).Sep 9 2015, 5:39 PM

Change 237350 had a related patch set uploaded (by Matthias Mullie):
Fix toggling Flow to false in BetaFeatures (opt-out)

https://gerrit.wikimedia.org/r/237350

Change 237350 merged by jenkins-bot:
Fix toggling Flow to false in BetaFeatures (opt-out)

https://gerrit.wikimedia.org/r/237350

Has this been merged? I just tried it on Beta -- opt-in works, but opt-out doesn't.

Here's the account that I used: it currently has Flow unchecked in Beta features but still has Flow on the page.

http://en.wikipedia.beta.wmflabs.org/wiki/User_talk:Strangepenguin

Yes, it has been merged, so it looks like it didn't fix the issue. Moving back to in-dev.

Change 238414 had a related patch set uploaded (by Matthias Mullie):
Clear title caches after moving old talk page

https://gerrit.wikimedia.org/r/238414

Change 238414 merged by jenkins-bot:
Clear title caches after moving old talk page

https://gerrit.wikimedia.org/r/238414

Change 238503 had a related patch set uploaded (by Matthias Mullie):
Clear LinkCache when failing to fetch Flow board

https://gerrit.wikimedia.org/r/238503

Change 238503 merged by jenkins-bot:
Clear LinkCache when failing to fetch Flow board

https://gerrit.wikimedia.org/r/238503

Change 238601 had a related patch set uploaded (by Matthias Mullie):
Make it seem like new workflow creation has no page

https://gerrit.wikimedia.org/r/238601

Change 238601 merged by jenkins-bot:
Make it seem like new workflow creation has no page

https://gerrit.wikimedia.org/r/238601

It took a couple of patches, but it seems to works now :)

One scenario doesn't seem to work:

Re-opt-in ( features/opt-in.feature:37 )

  1. You have a wikitext talk page
  2. You opt-in, opt-out, and opt-in again
  3. The flow board description should contain a template with a link to your archived wikitext talk page

It looks like modifying the board description the second time to add the template doesn't work on beta. It works locally.

Related ticket T112938 Opt-out: the opt-in guided tour displayed again when a user reverts 'Flow on user talk' option

Checked in betalabs.