Skip to content

Extract score set domain logic from the router into services #891

Description

@bencap

Problem

routers/score_sets.py is about 2,800 lines, and its handlers mix HTTP handling with domain logic: creation, variant upload, publishing and supersession. The logic can only be tested through the routes, and the three long-lived branches conflict in this file.

Scope

Acceptance criteria

  • No handler in routers/score_sets.py is longer than about 40 lines.
  • The services have unit tests that don't go through HTTP.
  • Router tests pass unchanged.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    app: backendTask implementation touches the backend

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions