Phabricator/February 2016 upgrade

This page collates for convenience decisions that arise in this discussion, related to the pending T120013 "significant upgrade of Phabricator".

Most of these details are currently under discussion in conpherence: https://phabricator.wikimedia.org/conpherence/308/

What are the big new features and behavioral changes?

 * Custom Forms
 * They will be available but will not have any immediate impact on any team unless they configure them.
 * Sub-projects and milestones:
 * Sub project and milestones will be available for the #acl*project-admins. However we have not developed norms around these. We should not use them until norms have been established. Doing so too early could cause sharing or access problem for some projects.
 * Integrating story points into phab itself (rather than relying on the Sprint Extension)
 * It is still unclear what this UI looks like beside the sprint extension or if we will keep the sprint extension after this upgrade.
 * The conpherence chat indicates that all numbered story points can be converted from the extension to the new phacility UI. However 3 tasks in the WMF instance will not be compatible. They contain strings. They will either need to be set too 0 or left empty.
 * Tasks affected: T96994, T101531, T96997
 * All numeric story points have been transitioned to the new field, the old story points field is now disabled.
 * Username autocompletion now works in task descriptions


 * IGNORE THIS: When tasks are added to a project, they will appear at the bottom of the default column, rather than the top
 * This was a bug, not an intentional feature, and upstream is fixing it.

What will our norms be around custom forms?

 * Phacility information: https://secure.phabricator.com/book/phabricator/article/forms/
 * Many teams have valid use cases for them. The risk of cluttering the UI can be minimized by keeping forms visible only to members of team projects.
 * Forms support hiding fields, locking values and supplying defaults for all of the fields. They also support custom header text (and markup) so there is a great deal of flexibility.
 * David Strine volunteers to add final documentation to the appropriate mediawiki pages.
 * There is no problem with creating many forms as long as they don't appear in the global menus. Forms that are not marked as 'default' or 'edit' forms will not clutter up the UI. Individual teams can publicize the URL for their own custom forms and phabricator projects let you add custom menu items to the project menu. This way individual projects can integrate their own custom forms easily and fairly seamlessly into the project profile page.
 * Phabricator Admins will be responsible for creating forms. There are some mild security implications if the forms are not set up correctly, therefore someone knowledgeable about phabricator's security model needs to make sure they are created correctly. We can create a separate acl* group for forms-admins if this becomes a bottleneck due to many requests.

What will our norms be around projects, subprojects and milestones?

 * See T123078
 * David Strine volunteers to add final documentation to the appropriate mediawiki pages.
 * How will this data be made available in the public dump that Phlogiston uses?

How will we support projects using the Sprint Extension?

 * Keep sprint extension enabled for now. However future updates from phacility may make it incompatible. We can't predict when that will be.
 * Christopher is trying to updated the Sprint Extension to keep it compatible.

What will our norms be around Story Points on all tasks?

 * Agile methodologies warn against point comparison between teams
 * The person or team who estimates a task should be the ones who will eventually do the task
 * There may be confusion with tasks that span teams and project.