Imported from `client/TODO.md`. ## Kanban - Column: Backlog - Area: Client ### 4.2 Problem Contribution & Admin - [ ] Admin problem management page (`/admin/problems`): - [ ] List all problems with status (ACTIVE, DRAFT, REJECTED) - [ ] Search + filter by difficulty, status, tags - [ ] Create / Edit / Delete buttons - [ ] Problem creation form (`/admin/problems/new`): - [ ] Fields: title, description (markdown editor), difficulty, tags, constraints, expected complexity, hints - [ ] Test cases editor: add/remove input/output pairs, toggle hidden - [ ] Starter code editors: one Monaco editor per language (tabs) - [ ] Editorial/solution editor (markdown + code) - [ ] Save as DRAFT or publish as ACTIVE - [ ] Problem testing sandbox (`/admin/problems/:id/test`): - [ ] Full Monaco editor - [ ] Language selector - [ ] 'Run Tests' button → calls `POST /api/problems/:id/execute` - [ ] Shows test results (passed/failed per test case, output vs expected) - [ ] Ability to test with ALL test cases (including hidden) - [ ] Verify problem is solvable before publishing - [ ] Community review queue (`/admin/review`): - [ ] List of problems in DRAFT status submitted by community - [ ] Review interface: see problem + test cases + starter code - [ ] 'Test in Sandbox' button - [ ] 'Approve' / 'Reject with reason' buttons - [ ] Contributor attribution - [ ] Documentation page for contributors: - [ ] How to structure a problem folder - [ ] Required fields and format - [ ] Example problem folder structure - [ ] Link to `/problems` directory in repo - [ ] **Success Criteria:** Admin can create, test, and publish problems; community problems can be reviewed ✅
Imported from
client/TODO.md.Kanban
4.2 Problem Contribution & Admin
/admin/problems):/admin/problems/new):/admin/problems/:id/test):POST /api/problems/:id/execute/admin/review):/problemsdirectory in repo