Page MenuHomePhabricator

Donor badge experiment: Define and setup codebase environment
Closed, ResolvedPublic1 Estimated Story Points

Description

Background

This task identifies where the development environment will live. Done up front, before variant implementation begins.

Requirements

Technical

  • Scaffold badge module under the agreed extension or skin directory.
  • Configure Jest/(Vitest?) for unit tests; confirm integration with existing CI pipeline.
  • Confirm mobile browser targets/JS/No-JS requirements with the team before implementation starts.

Documentation

  • Local development setup documented so other engineers can onboard without help.
  • Document module purpose, local setup steps, how to toggle variants locally, and how to run tests (README, … tbd).

Setup for TestKitchen experiment

mw.user.clientPrefs.set( 'minerva-badge', '1' )
mw.testKitchen.overrideExperimentGroup( 'donor-delight-badge', 'treatment' );
mw.testKitchen.overrideExperimentGroup( 'donor-delight-badge', 'control' );

Acceptance Criteria for done

  • Badge experiment location clarified. ==> WikimediaCustomizations
  • Linting and test runner pass in CI on empty code location.
  • Local setup documented and verified by a second engineer.

Event Timeline

With @Jdlrobson pointing out in today's sprint planning that

Volker_E set the point value for this task to 1.May 7 2026, 1:06 AM

Change #1285917 had a related patch set uploaded (by VolkerE; author: VolkerE):

[mediawiki/skins/MinervaNeue@master] Provide a badge container and class (for e.g. donor badge)

https://gerrit.wikimedia.org/r/1285917

Change #1285917 merged by jenkins-bot:

[mediawiki/skins/MinervaNeue@master] Provide a badge container and class (for e.g. donor badge)

https://gerrit.wikimedia.org/r/1285917