# Task: Align content lifecycle statuses

## Feature

`docs/FEATURES/approval-workflow.md`

## Goal

Align `ContentItem.Status` with the fixed lifecycle states defined by the approval workflow spec.

## Scope

- Replace older review/rework/publishing statuses with the fixed lifecycle set:
  - `Draft`
  - `In production`
  - `In approval`
  - `Approved`
  - `Scheduled`
  - `Published`
- Update backend status validation and approval side effects.
- Update development seed content statuses.
- Update frontend status filters, labels, and manual status actions that referenced retired statuses.

## Constraints

- Do not redesign the approval data model in this task.
- Do not implement workspace approval configuration, multi-level approval, comments, reminders, or magic links in this task.
- Keep the current approval request endpoints working as a compatibility layer until the workflow data model task replaces them.

## Done When

- [x] Backend accepts only the fixed lifecycle statuses for manual content status updates.
- [x] Creating an approval request moves content to `In approval`.
- [x] Recording an approved decision moves content to `Approved`.
- [x] Frontend no longer offers or filters against retired content statuses.
- [x] Development seed data uses fixed lifecycle statuses.

## Validation Commands

```bash
dotnet build backend/Socialize.slnx
cd frontend && npm run build
```
