Tasks
Tasks are the building blocks of your progress in Peaky Twins. Every action you take toward a Goal or Challenge is captured as a Task.
What is a Task?
A Task is a discrete action item — a single, concrete step you commit to completing. Every Task must be linked to exactly one of the following:
- A Goal — via the
goalIdfield. Use this when the task contributes to a personal objective you own. - A Challenge — via the
challengeIdfield. Use this when the task is part of a shared, time-boxed activity with your partner.
Important: A Task cannot be linked to both a Goal and a Challenge at the same time. Each Task belongs to one or the other — never both.
Due Dates and Recurrence
Tasks support two optional scheduling fields that help you stay on track:
dueDate— An optional date by which the Task should be completed. Tasks with a pastdueDatethat have not been completed are counted as missed, which affects your Karma score.recurrenceRule— An optional rule that causes the Task to repeat on a defined schedule (for example, daily or weekly). Recurring Tasks regenerate automatically so you always have the next occurrence ready to complete.
Both fields are optional. A Task with neither a dueDate nor a recurrenceRule is a one-off action item with no deadline.
Completion Tracking
Task completion is recorded per user. This means each user's completion of a Task is tracked independently — completing a Task marks it done for you and only you. Your partner's completion status is stored separately and does not affect yours.
This per-user model is what makes it possible for two partners to work through the same Challenge Tasks at their own pace while still seeing each other's progress.
Goal Tasks vs Challenge Tasks
The type of Task — Goal Task or Challenge Task — determines who can see and complete it:
Goal Tasks
Linked to a Goal via goalId
- •Private — only the owning user can see and complete their own Goal Tasks.
- •Your partner cannot view or interact with your Goal Tasks.
- •Completions count toward your Streak and Karma.
Challenge Tasks
Linked to a Challenge via challengeId
- •Shared — both partners complete the same tasks independently.
- •Each partner can see the other's completion progress, creating mutual accountability.
- •Completions count toward your Streak and Karma.
Examples
Goal Task example
Goal: "I want to run a marathon"
- Task: "Run 5 km without stopping" — linked via
goalId, with a weeklyrecurrenceRule - Only you can see and complete this task.
Challenge Task example
Challenge: "Let's both meditate every day for 30 days"
- Task: "Meditate for 10 minutes" — linked via
challengeId, with a dailyrecurrenceRule - Both you and your partner complete this task independently each day.
- You can each see how many times the other has completed it.
Quick Reference
| Field | Required? | Description |
|---|---|---|
goalId | One of the two | Links the Task to a Goal. Mutually exclusive with challengeId. |
challengeId | One of the two | Links the Task to a Challenge. Mutually exclusive with goalId. |
dueDate | Optional | Deadline for the Task. Missed tasks affect Karma. |
recurrenceRule | Optional | Schedule for repeating the Task (e.g., daily, weekly). |
