Task 001: dockerized monorepo foundation
This commit is contained in:
@@ -0,0 +1,59 @@
|
||||
# Task 016: Final Approval Gate
|
||||
|
||||
Development description: Implement the final review gate that prevents publishing until the editor has approved the exact draft version, assets, evidence state, metadata, and publishing settings.
|
||||
|
||||
## Implementation Details
|
||||
|
||||
- Backend endpoints:
|
||||
- `POST /api/articles/{article_id}/final-approval`
|
||||
- `POST /api/articles/{article_id}/final-revision-request`
|
||||
- Final approval checklist:
|
||||
- Plan followed.
|
||||
- Evidence reviewed.
|
||||
- No high-risk unsupported claims remain.
|
||||
- SEO metadata approved.
|
||||
- Images/assets approved.
|
||||
- Tables and diagrams approved.
|
||||
- Internal links approved.
|
||||
- Frontmatter fields selected.
|
||||
- Content path selected.
|
||||
- Author selected.
|
||||
- Publishing mode selected.
|
||||
- Approval records:
|
||||
- Actor.
|
||||
- Timestamp.
|
||||
- Exact draft version.
|
||||
- Selected publishing settings.
|
||||
- Revision request returns workflow to `FINAL_REVISION_REQUIRED`.
|
||||
|
||||
## Public Interface
|
||||
|
||||
- Editor sees final review checklist.
|
||||
- Editor cannot approve while hard blockers remain.
|
||||
- Approved article moves to `PUBLISH_DRY_RUN_REQUIRED`.
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
- [ ] TDD pre-requirement: before implementation, write one failing behavior test proving high-risk unsupported claims block final approval; proceed one checklist behavior at a time and record evidence in `Result`.
|
||||
- [ ] Final approval requires an exact draft version.
|
||||
- [ ] High-risk unsupported claims block approval.
|
||||
- [ ] Missing required publishing settings block approval.
|
||||
- [ ] Unapproved required assets block approval.
|
||||
- [ ] Approval writes a workflow event with actor, timestamp, draft version, and publishing settings.
|
||||
- [ ] Revision request writes event and moves article to `FINAL_REVISION_REQUIRED`.
|
||||
- [ ] UI shows blockers and completed checklist items.
|
||||
|
||||
## Verification
|
||||
|
||||
- Run final approval API tests.
|
||||
- Run frontend final review tests.
|
||||
- Run smoke flow showing blocked and successful approval paths.
|
||||
|
||||
## Result
|
||||
|
||||
- Status: Pending execution.
|
||||
- TDD plan: To be filled during execution.
|
||||
- Red evidence: To be filled during execution.
|
||||
- Green evidence: To be filled during execution.
|
||||
- Refactor notes: To be filled during execution.
|
||||
- Verification output: To be filled during execution.
|
||||
Reference in New Issue
Block a user