Skip to content

Implement Problem Status Workflow #14

Description

@Mkalbani

Description

Add status lifecycle for problems (open → in-progress → resolved → archived).

Current Issue

  • Problems are just "active" or "inactive"
  • No way to mark problem as solved

Proposed Statuses

enum ProblemStatus {
  OPEN = 'OPEN',           // Accepting solutions
  IN_PROGRESS = 'IN_PROGRESS', // Solution being implemented
  RESOLVED = 'RESOLVED',   // Problem solved
  ARCHIVED = 'ARCHIVED'    // No longer relevant
}

Acceptance Criteria

  • Add status field to MeshNode
  • PATCH /api/v1/mesh-nodes/:id/status (owner only)
  • Cannot submit solutions to RESOLVED/ARCHIVED problems
  • When marking RESOLVED, must select winning solution
  • Add status filters to GET /api/v1/mesh-nodes?status=OPEN

Files to Change

  • src/mesh-nodes/entities/mesh-node.entity.ts
  • src/mesh-nodes/dto/update-status.dto.ts
  • src/mesh-nodes/mesh-nodes.service.ts

ETA: 6 hours

Metadata

Metadata

Assignees

No one assigned

    Labels

    GrantFox OSSIssue tracked in GrantFox OSSMaybe RewardedIssue may be eligible for a GrantFox rewardOfficial CampaignCampaign: Official Campaign

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions