Page MenuHomePhabricator

Validate campaign configuration format
Closed, ResolvedPublic5 Estimated Story Points

Description

As a developer,
I want to prevent accidental errors,
so that I can safely A/B test new features

Acceptance Criteria:

  • There is a command added to the FundraisingFrontend console that validates the camapigns.yml file according to the following criteria:
    • The indentation is correct
    • All required parameters are present
    • The start and end dates must be quoted and in the format YYYY-MM-DD or YYYY-MM-DD H:i:s. All dates are considered to be in the Europe/Berlin timezone.
    • The end date must be after the start date.
    • The default_bucket must be part of the buckets definition.
    • Bucket names beginning with digits (e.g. 10h16) must be quoted, both for buckets and default_bucket.
    • Ensure that all buckets are unique
  • The validation command is added to the CI ( ci task in the Makefile)

Background:
Basic checks for required parameters and correct structure of the file are already done by the CategoryConfiguration class.

This task is different from T196929: Create code analysis tool that checks all A/B tests are implemented, which is about checking if the code actually implements the campaigns described in the configuration file.

Event Timeline

kai.nissen set the point value for this task to 5.Jun 18 2018, 10:22 AM
Tim_WMDE moved this task from Doing to Review on the WMDE-FUN-Sprint-2018-06-25 board.
Tim_WMDE subscribed.
Vvjjkkii renamed this task from Validate campaign configuration format to 84aaaaaaaa.Jul 1 2018, 1:04 AM
Vvjjkkii triaged this task as High priority.
Vvjjkkii updated the task description. (Show Details)
Vvjjkkii removed the point value for this task.
Vvjjkkii removed a subscriber: Aklapper.
kai.nissen renamed this task from 84aaaaaaaa to Validate campaign configuration format.Jul 2 2018, 7:09 AM
kai.nissen lowered the priority of this task from High to Medium.
kai.nissen updated the task description. (Show Details)
kai.nissen set the point value for this task to 5.
kai.nissen added a subscriber: Aklapper.