48 lines
1.4 KiB
Markdown
48 lines
1.4 KiB
Markdown
# Task: Workspace approval configuration
|
|
|
|
## Feature
|
|
|
|
`docs/FEATURES/approval-workflow.md`
|
|
|
|
## Goal
|
|
|
|
Persist workspace-level approval workflow configuration and expose it to workspace settings.
|
|
|
|
## Scope
|
|
|
|
- Add workspace approval mode:
|
|
- `None`
|
|
- `Optional`
|
|
- `Required`
|
|
- `Multi-level`
|
|
- Add approval options:
|
|
- schedule posts automatically on approval
|
|
- lock content after approval
|
|
- send automatic reminders for pending approvals
|
|
- Return approval configuration from workspace APIs.
|
|
- Allow workspace managers/admins to update approval configuration.
|
|
- Replace static workflow settings UI with saved configuration controls.
|
|
|
|
## Constraints
|
|
|
|
- Do not implement workflow recalculation in this task.
|
|
- Do not implement multi-level step configuration in this task.
|
|
- Do not implement automatic scheduling, locking behavior, or reminders in this task; only persist the options.
|
|
- If backend contracts change, update OpenAPI when the backend is running.
|
|
|
|
## Done When
|
|
|
|
- [x] Workspace approval config is persisted with defaults.
|
|
- [x] Workspace API responses include approval config.
|
|
- [x] Workspace update accepts approval config and validates allowed modes.
|
|
- [x] Workspace settings UI can edit and save approval config.
|
|
- [x] Backend and frontend builds pass.
|
|
|
|
## Validation Commands
|
|
|
|
```bash
|
|
dotnet build backend/Socialize.slnx
|
|
dotnet test backend/Socialize.slnx
|
|
cd frontend && npm run build
|
|
```
|