Skip to content

Add TaskLevel Model for Complexity & Prerequisites #1760

@arkid15r

Description

@arkid15r

Describe the solution you'd like

We want to introduce a TaskLevel model to help categorize tasks by their complexity and context. This model will be used to:

  • Link each Task to a level of difficulty
  • Define prerequisites (needs) using a self-referential many-to-many field
  • Map levels to specific GitHub labels

This will make it easier to assign appropriate tasks to mentees and create a structured progression system.

Goals:

  • Introduce a flexible TaskLevel model
  • Link each Task to a TaskLevel
  • Use GitHub labels to reflect task levels externally

Possible structure:

class TaskLevel(models.Model):
    name = models.CharField()
    description = models.TextField()
    github_labels = models.JSONField(default=list)
    module = models.ForeignKey(Module...)
    needs = models.ManyToManyField("self"...)


class Task(models.Model):
    ...
    level = models.ForeignKey(TaskLevel...)

A mentor needs to have a UI to manage TaskLevels for a specific module. The labels field can be populated on existing repository labels

Metadata

Metadata

Assignees

Type

No type

Projects

Status

Backlog

Relationships

None yet

Development

No branches or pull requests

Issue actions