Flow/Release planning

The first release of Flow targets mostly experienced users on WikiProject talk pages. After this first release, we have a lot of potential directions to go. This doc is meant to capture thinking on personas, target namespaces, and feature buckets for post-MVP.

Article talk

 * New users
 * Reader/potential editor who wants to comment on an article.
 * New article creator who has had their article nominated for deletion and is being asked to contest deletion.
 * New editor interested in improving an article or suggesting improvements.


 * Existing users
 * Existing editor interested in improving an article or suggesting improvements.
 * Existing editor wants to get consensus for major changes to an article.

User talk

 * New users
 * New editor/article creator who has gotten feedback on their contribution from another user.
 * New editor who wants to ask for help and mentoring from experienced editors.
 * New editor wants to request unblock after being blocked.
 * Bots leaving messages for new users.
 * Experienced users leaving barnstars and/or wikilove for new users.


 * Existing users
 * Existing editor/article creator receiving messages from/discussing content with other users.
 * New page & recent changes patroller delivering welcomes/warnings to new users.
 * Admin blocking disruptive new users or answering unblock requests.
 * Bots leaving messages for experienced users (newsletters, notices, and other workflow messages)
 * Users leaving barnstars and/or wikilove for other experienced users.

Search/browse/filter

 * Granular ways to navigate discussions.
 * In-board search: I want to search through current and old topics on the board.
 * Search old page archives from pre-Flow transition, as part of Flow in-board search. I want to hunt for old discussions about the idea/problem that I have, to avoid WP:PEREN (perennial ideas).
 * I can search from the MW search box and get matches for Flow topics, so I can find a Flow board I came across.
 * I want to filter or re-order Flow topics by various criteria, including: "most recently active", "most active", "unsummarized/unresolved", "topics I've participated in", etc
 * Allow topics to categorize a board (as existing templates do)
 * Search/Browse by date range
 * Interactive and/or timeline view of board history (to see how boards/topics evolved step by step)
 * I want to add #tags to topics, so that they can be seen in context with related topics from other Boards.
 * As a user interested in learning about other users, I want to search for topics and or responses by a user, so that I can see their contributions in one place.

Smart Flow

 * More intuitive, responsive, customized for my preferences, beyond what talk pages can currently support.
 * content updates in real time (no need to refresh the page to see new topics/posts)
 * remembers my viewing history – shows read/unread state, sticky collapse. As an editor, I want to be able to see which posts I've already (probably) read, so that I can easily see new content without having to scan through the entire thread checking every post. This could involve remembering every topic's collapsed-state.
 * per-topic subscriptions. As an editor, I want to subscribe to individual topics, so that I can keep track of single discussions in very active pages, without being overwhelmed by everything else.
 * edit conflict avoidance (“user x is editing this post”). As an editor, I want to be able to see that someone else is editing/typing into a topic, so that I can wait until they finish to reply.
 * As a user who participated in a conversation which I am no longer interested in, I should be able to "mute" a conversation so that I will no longer get notifications which i don't care about. (Without un-watching it entirely)
 * Draft function: As an editor, if I'm interrupted while responding and must leave the conversation, I want to be able to save my partial response, so that I can come back and finish it later.
 * I want to keep myself updated on the activities on a particular board so that I don't miss something important, without following every topic's updates in-depth.
 * Easier permalinking (copy to clipboard, one click to share link in new post).
 * As someone who is confused by usernames like WOSHFKH89, I want to see those around me with more human-readable names so that I can easily recognize those I interact with most often, and be reminded they are people.
 * As an experienced patroller, I would like to be able to "template" users without relying on exactly the default text of the template (I want to be able to customize a use of a template, at time of use).
 * As an article writer, I want maintenance tags (eg. clarify) to link directly to the topic that discusses the issue. (Ie. utilize the ambox "|discuss=" parameter better)
 * Transclude a topic across multiple boards
 * Sticky topics that always stay at the top of the board
 * Show my posts, or topics where I've been mentioned, differently, to enable easier scanning of long pages.
 * As an experienced user using the wikitext interface, I want to use the edit-toolbar, to add markup (bold, strikeout, etc) and complex templates (eg properly formatting a citation template).

Widgets and workflows

 * widgets for topics/posts, including:
 * scratchpads. (perhaps in realtime, like etherpad? Main problem to avoid is them turning into "chatrooms")
 * to-do lists. As a new editor who is passionate about hurricane articles, I want to be able to know what other collaborators are currently working to improving hurricane articles so I can take part even though I came in late and feel connected with the editor community within this topic too.
 * thank user.
 * warn user.
 * Summarize. As an experienced user, I want to close and summarize topics and posts, so I can make a decision, or end long, heated debates
 * Topic/Header undo. As an experienced user (or admin), I want to be able to undo the most recent change to the content of the header/topic title so when there is vandalism, I don't have to copy/paste the old content.
 * widget interface or workflow toolbar. As a user of Flow, I want to understand that I have more options than just posting, so I can make use of workflows and widgets.
 * splitting/merging. As an experienced user, I want to split off tangents into separate discussion, so I can keep the focus on one discussion.
 * quoting. As an experienced user, I want to be able to easily quote parts of earlier discussions in my posts, so I can refer to them in my new post
 * polling and !voting support. As an experienced user, I want to engage in existing polling and !voting processes with greater ease, but retaining the flexibility that we currently have.
 * As an Oversighter, I need to have access to suppressing topics and individual elements (comments, usernames) within topics, as well as entire topics, and I need to be able to nuke all instances of those things with as few actions as possible. Oversighters work from page history to make operations.
 * As a new user, I want to be able to ask for unblock, so I can continue editing productively (and I am more comfortable filling in a form than being asked to generate this request myself).

Mobile and tablet

 * Making Flow truly cross-platform (Flow on the Go).
 * Alternatives for rollover-heavy design
 * As a new (mobile) user, I want to be able to read and reply to discussions, so I can stay in the loop across platforms
 * As a user who has received notifications on desktop and read them I want to see them marked as such no matter the platform, so that I don't have to clear read states per platform, and only see whats new
 * As an existing (mobile) user, I want to see all Flow topics I'm part of on mobile, so I don't have to load each whole page individually (mobile feed)
 * As a user who moves between desktop and mobile, I want my comment drafts sync'd between platforms so I can participate without wasting time. (difficult, we can't have user-specific content storage per legal. At best maybe stuffing them into User:Foo/some/subpage).

Other

 * Infrastructure and design
 * As a non-English user, I still want all of the Flow magic work fine in my own language (RTL support, non-latin characters).
 * As a user with accessibility requirements (bad eyesight, colorblind, unable to use mouse, etc), I still want to be able to view (visually or with the use of a screenreader) and use (both by mouse or keyboard) all of Flow so that I can partake in discussions & their moderation.
 * As a user with limited eyesight I want to be able to greatly magnify the interface in my browser without elements overlapping, covering each other, or being pushed off the screen because of fixed widths.
 * As a blind user, I want to be able to read (listen to) and contribute to Flow, with minimal problems.
 * As a user, I want to use the standard keyboard shortcuts (Keyboard shortcuts).
 * As an inexperienced editor, I want to be able to use Visual Editor so that I can make complex changes without having to learn wiki syntax.
 * As a user who has disabled javascript, or has no access to javascript (old browser, corporate restrictions, etc), I still want (all|most) of Flow to work.
 * As a user who moves between desktop/laptop/mobile, I want to see things like read and collapse states sync'd between platforms so I can participate without wasting time.
 * As an experienced editor, I want to be able to switch between wikitext and Visual Editor, so that I can post in wiki syntax if (I'm more comfortable with that syntax|Visual Editor does not yet support what I plan to do|etc) at will.
 * As an experienced editor, I want to change the default settings for how various things are displayed. (visual-density, display order, exact vs elapsed timestamps, mouseover effects vs static, etc.)
 * As an experienced user (or admin), I want to be able to configure threading differently on different kinds of pages, so I can adapt the page for different kinds of discussions.
 * As an experienced user (or admin), I want to be able to configure nesting changes (deeper threading/different visual representations of comment/reply hierarchy) on different kinds of pages, so I can adapt the page for different kinds of discussions.
 * rename/move boards.
 * As a multi-project user, I want to be able to keep track of, and contribute to, discussions on various wikis. (cross-wiki user feed)
 * As a multi-project user I want to see Echo notification get to me no matter what project I'm currently looking at so that I can respond quickly. (Blocked on SUL finalization)