plan(web_v2): Update task list

Generated by: Planning Agent
Timestamp: 2025-11-21T23:45:59.732016+00:00
Component: web_v2
This commit is contained in:
AI Agent 2025-11-21 23:45:59 +00:00
parent 341a78774f
commit 1f9e1c7a86

View file

@ -1,9 +1,287 @@
{ {
"project": "mnemo_cards_web_v2", "project": "mnemo_cards_web_v2",
"component": "web_v2", "component": "web_v2",
"version": "1.2", "version": "1.3",
"generated_at": "2025-01-21T23:27:35.316993+00:00", "generated_at": "2025-01-21T23:44:42.027316+00:00",
"generated_by": "planning_agent", "generated_by": "planning_agent",
"tasks": [ "tasks": [
{
"id": "WEB-001",
"title": "Redesign Authorization Page to Match App Design",
"priority": "high",
"status": "pending",
"estimated_hours": 2.5,
"description": "Redesign the auth_page.dart to match the app's black/white minimalistic design with bold fonts (FontWeight.w700). Update colors, spacing, and layout to be consistent with AppTheme. Remove the test ad button and improve overall visual consistency.",
"acceptance_criteria": [
"Auth page uses AppTheme colors (black/white scheme)",
"All text uses FontWeight.w700 as per app theme",
"Layout is clean and minimalistic matching app style",
"Test ad button removed",
"Error messages use SelectableText.rich with red color",
"Buttons follow app's elevated button theme",
"Visual consistency with other pages (home, tasks)",
"Responsive design works on all screen sizes",
"Linter passes with zero warnings"
],
"dependencies": [],
"files_to_modify": [
"mnemo_cards_web_v2/lib/presentation/pages/auth/auth_page.dart"
],
"component": "web_v2"
},
{
"id": "WEB-002",
"title": "Create Task Creation Form UI",
"priority": "high",
"status": "pending",
"estimated_hours": 3.0,
"description": "Create a new page/widget for task creation with form fields: title, description, type, difficulty, rewards, expiration date, instructions, tags. Include validation and proper error handling. Follow app design patterns.",
"acceptance_criteria": [
"Task creation form page created",
"All required fields implemented with validation",
"Form follows app theme (black/white, bold fonts)",
"Error messages displayed using SelectableText.rich",
"Form validation prevents invalid submissions",
"UI is responsive and accessible",
"Form integrates with TasksStateManager",
"Linter passes with zero warnings"
],
"dependencies": [],
"files_to_modify": [
"mnemo_cards_web_v2/lib/presentation/pages/tasks/create_task_page.dart",
"mnemo_cards_web_v2/lib/presentation/widgets/task_form.dart"
],
"component": "web_v2"
},
{
"id": "WEB-003",
"title": "Add Task Creation API Integration",
"priority": "high",
"status": "pending",
"estimated_hours": 2.5,
"description": "Add createTask method to HttpRepositoryV2 and TasksRepository. Integrate with backend API endpoint for task creation. Handle API errors properly.",
"acceptance_criteria": [
"createTask method added to HttpRepositoryV2",
"createTask method added to TasksRepository",
"API integration handles all error cases",
"Created tasks are automatically added to state",
"Proper error messages for validation failures",
"Network errors handled gracefully",
"5+ unit tests pass with >80% coverage",
"Mock tests don't make real API calls"
],
"dependencies": ["WEB-002"],
"files_to_modify": [
"mnemo_cards_web_v2/lib/domain/services/http_repository_v2.dart",
"mnemo_cards_web_v2/lib/domain/services/tasks_repository.dart",
"mnemo_cards_web_v2/lib/domain/state/tasks_state_manager.dart",
"mnemo_cards_web_v2/test/domain/services/tasks_repository_test.dart"
],
"component": "web_v2"
},
{
"id": "WEB-004",
"title": "Add Proof Upload Functionality for Tasks",
"priority": "high",
"status": "pending",
"estimated_hours": 2.5,
"description": "Implement proof upload functionality for external tasks. Allow users to upload images/videos as proof of task completion. Integrate with file picker and image upload service.",
"acceptance_criteria": [
"File picker integration for images/videos",
"Image upload service integration",
"Proof URL stored in task model",
"UI for selecting and previewing proof files",
"File size and type validation",
"Upload progress indicator",
"Error handling for upload failures",
"5+ unit tests pass with >80% coverage"
],
"dependencies": ["WEB-003"],
"files_to_modify": [
"mnemo_cards_web_v2/lib/presentation/pages/tasks/create_task_page.dart",
"mnemo_cards_web_v2/lib/presentation/widgets/proof_upload_widget.dart",
"mnemo_cards_web_v2/lib/domain/services/tasks_repository.dart"
],
"component": "web_v2"
},
{
"id": "WEB-005",
"title": "Enhance Task Execution Tracking",
"priority": "high",
"status": "pending",
"estimated_hours": 2.0,
"description": "Improve task execution tracking by adding start time tracking, progress indicators, and better state management for in-progress tasks. Add ability to pause/resume tasks.",
"acceptance_criteria": [
"Task start time tracked and displayed",
"Progress indicators for long-running tasks",
"Pause/resume functionality for tasks",
"Better visual feedback for task status changes",
"State updates properly reflect execution progress",
"3+ unit tests pass with >80% coverage"
],
"dependencies": [],
"files_to_modify": [
"mnemo_cards_web_v2/lib/domain/models/task_models.dart",
"mnemo_cards_web_v2/lib/domain/state/tasks_state_manager.dart",
"mnemo_cards_web_v2/lib/presentation/widgets/task_card.dart"
],
"component": "web_v2"
},
{
"id": "WEB-006",
"title": "Add Task Completion Verification Dialog",
"priority": "medium",
"status": "pending",
"estimated_hours": 2.0,
"description": "Enhance the task completion flow with a better verification dialog that shows task details, proof requirements, and confirmation. Improve UX for completing external tasks.",
"acceptance_criteria": [
"Enhanced completion dialog with task details",
"Proof upload option in completion dialog",
"Clear instructions displayed",
"Confirmation prevents accidental completions",
"Dialog follows app design theme",
"Accessible and responsive",
"3+ widget tests pass"
],
"dependencies": ["WEB-004"],
"files_to_modify": [
"mnemo_cards_web_v2/lib/presentation/pages/tasks/tasks_page.dart",
"mnemo_cards_web_v2/lib/presentation/widgets/task_completion_dialog.dart"
],
"component": "web_v2"
},
{
"id": "WEB-007",
"title": "Add Task Rewards Distribution System",
"priority": "medium",
"status": "pending",
"estimated_hours": 2.5,
"description": "Implement automatic reward distribution when tasks are completed. Update user XP, coins, and achievements. Show reward animation/notification. Integrate with user state manager.",
"acceptance_criteria": [
"Rewards automatically distributed on task completion",
"XP and coins added to user profile",
"Achievements unlocked and tracked",
"Reward notification/celebration shown",
"User state updated correctly",
"Rewards persist across sessions",
"5+ unit tests pass with >80% coverage"
],
"dependencies": ["WEB-003"],
"files_to_modify": [
"mnemo_cards_web_v2/lib/domain/state/tasks_state_manager.dart",
"mnemo_cards_web_v2/lib/presentation/widgets/reward_notification_widget.dart"
],
"component": "web_v2"
},
{
"id": "WEB-008",
"title": "Fix api_exception_test.dart",
"priority": "medium",
"status": "pending",
"estimated_hours": 1.5,
"description": "Review and fix any issues in api_exception_test.dart. Ensure all tests pass, remove any TODOs or skipped tests, improve test coverage if needed.",
"acceptance_criteria": [
"All tests in api_exception_test.dart pass",
"No skipped or failing tests",
"Test coverage >80%",
"No TODO or FIXME comments",
"Tests follow best practices",
"Linter passes with zero warnings"
],
"dependencies": [],
"files_to_modify": [
"mnemo_cards_web_v2/test/domain/exceptions/api_exception_test.dart"
],
"component": "web_v2"
},
{
"id": "WEB-009",
"title": "Fix card_flipper_responsive_test.dart",
"priority": "medium",
"status": "pending",
"estimated_hours": 2.0,
"description": "Review and fix any issues in card_flipper_responsive_test.dart. Ensure all tests pass, improve test coverage, fix any responsive design test issues.",
"acceptance_criteria": [
"All tests in card_flipper_responsive_test.dart pass",
"No skipped or failing tests",
"Test coverage >80%",
"Responsive design tests work correctly",
"No TODO or FIXME comments",
"Linter passes with zero warnings"
],
"dependencies": [],
"files_to_modify": [
"mnemo_cards_web_v2/test/presentation/widgets/card_flipper/card_flipper_responsive_test.dart"
],
"component": "web_v2"
},
{
"id": "WEB-010",
"title": "Add Navigation to Task Creation from Tasks Page",
"priority": "medium",
"status": "pending",
"estimated_hours": 1.5,
"description": "Add a floating action button or navigation option to create new tasks from the tasks page. Integrate with router and ensure proper navigation flow.",
"acceptance_criteria": [
"FAB or button added to tasks page for creating tasks",
"Navigation to create task page works correctly",
"Router integration properly configured",
"Button follows app design theme",
"Accessible and responsive",
"2+ widget tests pass"
],
"dependencies": ["WEB-002"],
"files_to_modify": [
"mnemo_cards_web_v2/lib/presentation/pages/tasks/tasks_page.dart",
"mnemo_cards_web_v2/lib/presentation/router/app_router.dart"
],
"component": "web_v2"
},
{
"id": "WEB-011",
"title": "Add Task Details Page",
"priority": "medium",
"status": "pending",
"estimated_hours": 2.5,
"description": "Create a detailed task view page that shows full task information, instructions, rewards, progress, and allows task actions (start, complete, etc.).",
"acceptance_criteria": [
"Task details page created",
"All task information displayed clearly",
"Action buttons (start/complete) functional",
"Proof upload available for external tasks",
"Page follows app design theme",
"Responsive and accessible",
"Navigation from task cards works",
"5+ widget tests pass"
],
"dependencies": ["WEB-004"],
"files_to_modify": [
"mnemo_cards_web_v2/lib/presentation/pages/tasks/task_details_page.dart",
"mnemo_cards_web_v2/lib/presentation/router/app_router.dart"
],
"component": "web_v2"
},
{
"id": "WEB-012",
"title": "Improve Task Filtering and Search",
"priority": "low",
"status": "pending",
"estimated_hours": 2.0,
"description": "Enhance task filtering with search functionality, tag filtering, and better filter UI. Add ability to save filter preferences.",
"acceptance_criteria": [
"Search functionality added to tasks page",
"Tag-based filtering implemented",
"Filter preferences saved to local storage",
"Filter UI improved and more intuitive",
"Performance optimized for large task lists",
"3+ unit tests pass"
],
"dependencies": [],
"files_to_modify": [
"mnemo_cards_web_v2/lib/presentation/pages/tasks/tasks_page.dart",
"mnemo_cards_web_v2/lib/domain/state/tasks_state_manager.dart"
],
"component": "web_v2"
}
] ]
} }