From MozillaWiki
< Labs‎ | PAC
Jump to: navigation, search
Please use "Edit with form" above to edit this page.


Delta aka "F2" aka the Streams Mediator
Stage Draft
Status In progress
Release target `
Health OK
Status note `


Product manager `
Directly Responsible Individual `
Lead engineer `
Security lead `
Privacy lead `
Localization lead `
Accessibility lead `
QA lead `
UX lead `
Product marketing lead `
Operations lead `
Additional members `

Open issues/risks

  • Do we provide our own Activity Stream server?
  • How is caching handled?

Stage 1: Definition

1. Feature overview

It's helpful to be able to control your site-based communications from a single location and allow different sites to access the activities from other sites.

This feature will provide a way to read from user's various activity streams (posting is already covered by F1, although small modifications may be required to make the two features work well together). It will provide an API much like F1, adding options for filtering by source site, destination site, author, recipients, content type, priority, time, tags, and possibly others.

While the intended use of this feature will primarily be application-to-application, it will also trivially allow for a centralized, multi-channel "inbox" of a user's various activity streams (although significant UX work will need to be done to complete this feature if it is desired, as centralized inboxes and aggregators have consistently failed in the market).

2. Users & use cases

  • For consumers, provide a centralized access point for a user's activity streams across various sites
  • For consumers, empower users to control these access relationships, connecting streams as they see fit
  • For developers, provide a way to publicize a user's activity in your app
  • For developers, Provide a way to pull down activity relevant to a user and to your app for in-app presentation of social activity

3. Dependencies


4. Requirements

  • We need to document existing stream data sources and APIs to make a natural and comprehensible API for developers
  • These API and data type definitions will drive mappings to the user interface
  • UI for both configuration and use must be designed carefully and with user studies
  • Security and authenticity of the configuration UI must be verified and accessible to users.
  • Plans for pulling data from streams and caching for responsiveness
  • API "translators" (so a request to Delta's API makes the correct call to, say, Facebook's API)



Stage 2: Design

5. Functional specification


6. User experience design

The site-based prefs will be implemented in content at an about page (about:streams). It will be in-content (much like [about:addons]), and is intended to build off of the mechanisms of the Site-based data management UI as appropriate.

Stage 3: Planning

7. Implementation plan

  • Define API
  • Build mediator
  • Build caching protocol
  • Build our server

8. Reviews

Security review


Privacy review


Localization review




Quality Assurance review


Operations review


Stage 4: Development

9. Implementation


Stage 5: Release

10. Landing criteria


Feature details

Priority Unprioritized
Rank 999
Theme / Goal `
Roadmap `
Secondary roadmap `
Feature list `
Project `
Engineering team `

Team status notes

  status notes
Products ` `
Engineering ` `
Security ` `
Privacy ` `
Localization ` `
Accessibility ` `
Quality assurance ` `
User experience ` `
Product marketing ` `
Operations ` `