Page MenuHomePhabricator

Re-enable the Graph Extension for use at all Wikimedia Wikis
Closed, DeclinedPublic

Description

This is tracking task to coordinate the work involved with re-enabling the Graph Extension at all Wikimedia Wikis.

Roadmap

The below is borrowed from Extension:Graph/Plans.

PhaseNameObjectiveTicket(s)Status
0.Invite volunteers to review roadmapEnsure volunteers understand and are sufficiently supportive of Phases 1 -5 so that we (staff and volunteers) can efficiently make decisions/tradeoffs as they emerge through implementation. In progress (as of 6 Nov 2023)
1.Validate Security of Sandboxing ApproachEnsure the sandboxed iFrame is sufficiently secure by 1) implementing the Graph Extension using Vega 5 on the Beta Cluster and 2) publishing the documentation and tooling necessary for volunteers and staff to assess its security.
2a.Transition Graph Extension to Vega 5Ready the Graph Extension for Vega 5 by re-implementing Vega 2 features using the Vega 5-compatible syntax so that, going forward, all new graphs will benefit from Vega 5's security, accessibility, and syntax improvements.
2b.Backport Vega 2 SupportIf we decide to move forward with Vega 2 support, backport it to the framework we will have built for sandboxed Vega 5 so that existing graphs will “work” and can be used as references for porting.
3.Define maintenance responsibilities and security/incident responseDefine what level of maintenance support volunteers can expect, who will be responsible for providing that support, and how we will respond to security/incident response going forward so that staff can feel confident deploying the extension and volunteers can feel confident depending on it.
4.Deploy Graph Extension (Vega 2 + 5) in a Sandboxed iFrame with a restrictive content security policy to productionOffer volunteers access to the information and capabilities disabling the Graph Extension has left them without.
5.Optimize the Graph Extension's longevityOptimize the Graph Extension's longevity and support the community building graphs on Wikimedia projects.

Open questions

  • 1. Will we restore most of the pseudo-protocols that were used to fetch data live from the action API, the REST API, WDQS etc. that were removed when re-deplying the extension after it was initially disabled?
  • 2. How long after the Graph Extension is re-enabled with support for Vega 2 will we strive to have existing graphs ported to Vega 5?
  • 3. What does the work of porting graphs from Vega 2 to Vega 5 look like? How might the WMF make this process easier on volunteers?
  • 4. How might we introduce more sustainable error handling code so that A) we can more quickly track and fix issues and B) relieve readers of wondering why a graph is not displaying?
  • 5. What on-wiki templates generate <graph> content which would need to be updated, and roughly how many pages use them?

Related Objects

StatusSubtypeAssignedTask
DuplicateNone
OpenNone
StalledJdlrobson
StalledBUG REPORTNone
DeclinedNone
DeclinedFeatureTgr
DeclinedNone
OpenNone
OpenNone
DeclinedNone
OpenFeatureJdlrobson
ResolvedBawolff
DeclinedNone
DeclinedNone
DeclinedNone
Resolved Jseddon
ResolvedJdlrobson
ResolvedJdlrobson
Resolvedsbassett
ResolvedFeatureJdlrobson
DeclinedFeatureNone
DeclinedJdlrobson
OpenNone
DeclinedNone

Event Timeline