Skip to content

ADR-006: Challenges and Point System

Status

Accepted

Context

Touli needs a system to manage challenges and assign points.

Decision

Implement a challenge-based point system where points are awarded only for completing a challenge, not for completing individual tasks. There are multipliers for predefined scenarios such as completing all tasks, monthly streaks, and category diversity, plus a decay penalty for repeating the same challenge too often.

Consequences

  • Tasks are only marked as completed — no points are awarded for them. but per task point values are currently saved in the challenge_tasks table for future use.
  • Points are awarded solely for completing a challenge, currently at a base rate of 55 points per hour. Points in the challenge_tasks table are not used for point calculation.
  • At least one task must be completed to complete a challenge and earn points.
  • The verification multiplier is currently on hold due to a conflict between the verification flow and multiplier calculation. Verification is performed per task, while multipliers are applied when a challenge is completed. As a result, a single challenge can contain multiple tasks with different verification statuses, making it unclear how the verification multiplier should be applied.