Extension:BetaFeatures/Roadmap

Not started

 * Unit testing for new developments in hooks
 * Mark


 * Unit testing for job queue business
 * Mark


 * Unit testing for field types
 * Mark


 * Unit testing for convenience function
 * Mark


 * Unit testing for mundane hooks
 * Mark (maybe not necessary)


 * Animations for checkboxes
 * (JS? CSS transforms?)


 * Add 1 to user count on the page when a user enables a feature
 * (cute) (may be buggy in 0.1% of cases due to l10n failings)


 * Notice about requiring JavaScript for certain experiments
 * (other tech requirements? CSS3, certain browser versions, etc.)


 * Change the page display live when experiments are enabled?
 * Maybe dim screen and reload asynchronously? Maybe just a message about how you can see the change?


 * Smooth out the process for moving from a beta feature to a non-beta feature, maybe
 * (right now it’s just removing the beta-preference registration and removing the preference check, but maybe we could make it even easier?)


 * QUnit testing
 * Hell yeah


 * Sortable feature list
 * Maybe alphabetical, or by magical sort keys defined by hooks or something (beware the z-index fights)

In development

 * New Agora-style checkboxes in core


 * Put the feature field in core


 * Echo notifications
 * Started, but complicated - not sure when it will be ready.

Deployment
Deployment TODO list

Not started

 * Come up with a sane deployment strategy
 * Fabrice and Mark - add it to


 * Actually deploy
 * Give it time...

In progress

 * Poke various people in Features/Mobile/Platform to add features
 * A bunch of people are working on it - waiting on patches to flow in.

Finished

 * Open tracking bug per Review queue
 * Bug 53865


 * Get final design walkthrough/review
 * Finished


 * Bother various Platform people to complete the tracking bug
 * Reviews done, waiting on the deploy strategy and the security fixes to be in.

Minimum viable product
What needs to happen (in the code) before we deploy

Not started

 * Links should be localised in the framework
 * Links should be localised in the framework


 * Align borders between sections - use div for header, div for body
 * Align borders between sections - use div for header, div for body

Finished

 * Initial implementation
 * and


 * Better separations of divs (i.e. closer to the intended design)


 * Count of people who have it enabled


 * Convenience functions for checking whether a preference is enabled


 * Link in top right toolbar, next to preferences link


 * Throw errors on missing fields in the preference registration hook


 * Remove white border from auto-enroll screenshot and make it CSSy


 * Unit testing!


 * Make the descriptions in the i18n files a little shorter and more international


 * Design changes to feature fields in follow-up patch


 * Usability issues with portlet links


 * Increment and decrement the cache on preference changes


 * Auto-enroll framework (plus tests)


 * Dependency management


 * Final design changes


 * Final security fixes