- Drive all approved tasks to completion with VERDICT.md - Fix state machine: IMPLEMENTATION.md was never checked in determine_task_state() - Fix state machine: DOC_REVIEW.md priority wrong (checked after BUG_REPORT) - Fix board display: approved planning tasks now advance to Design group - Fix board display: rejected planning tasks move to Blocked group - Fix path traversal: review API validated task names against ../ injection - Fix URL encoding: unquote() task names in API path parsing - Fix comment parsing: robust REVIEW.md read/write, handle falsy comments - Fix dead code: KanbanBoard class missing COLUMNS and __init__ - Fix inotify: explicit error messages and polling fallback - Fix review API: validate task names, prevent path traversal - Update CHANGELOG.md with all changes
1.8 KiB
1.8 KiB
Implementation: Dashboard Task Review and Approval
Summary
Added a complete review/approval workflow to the dashboard. Tasks can be reviewed, approved, or flagged for changes directly from the UI.
Changes Made
Backend (app.py)
_get_review_status()— reads REVIEW.md from task folder, parses status/timestamp/comment_write_review()— writes REVIEW.md with approval status and optional comment_handle_review()— POST endpoint for review submission_serve_review_summary()— aggregate review metrics across all tasks- Integrated review data into task API responses
- Added unquote() for URL-encoded task names
Frontend (dashboard.js)
- Review status badge on each task card (🟡 pending, ✅ approved, ❌ changes requested)
- Review section in detail panel: status display, comment textarea, Approve/Request Changes buttons
submitReview()— posts review to API, closes modal on success- Review filter dropdown — filter board by review status
- Pending review count in header stats
getTaskDisplayGroup()— approved planning tasks move to Design column, rejected to Blocked
Styles (styles.css)
.review-badge— status indicator styling (approved/requested/pending colors).review-textarea— comment input styling.review-actions— button layout.review-comment— previous comment display.review-btn— approve/changes button styles
HTML (index.html)
- Review filter dropdown in filter bar
- Pending review count display in header
Files Modified
automaton/dashboard/ui/app.py— review API endpointsautomaton/dashboard/html/dashboard.js— review UI, display groupingautomaton/dashboard/html/styles.css— review component stylesautomaton/dashboard/html/index.html— review filter and stats