| # Phase III Self-Test & Auto-Fix Report | |
| ## AI Todo Agent - Comprehensive Testing | |
| --- | |
| ## π§ͺ Test Environment: | |
| - **Backend:** https://ammaraak-todo-app-backend.hf.space | |
| - **Frontend:** https://frontend-cpmn4soug-ammar-ahmed-khans-projects-6b1515e7.vercel.app | |
| - **Test User:** autotest@example.com | |
| - **JWT Token:** eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiI3MjBhMDE4YS03ZTAwLTRjN2QtYjMyOS0xMjRmOGRmZjNlMTkiLCJleHAiOjE3Njk5NzcxOTV9.vZDod2BUcCEI9a6p0wKLR6x8fx6eAdhIJVZLK2KIrr0 | |
| --- | |
| ## π Test Results: | |
| ### β Test 1: User Signup | |
| ```json | |
| { | |
| "step": "User Registration", | |
| "status": "PASS", | |
| "response": "User created successfully with JWT token", | |
| "user_id": "720a018a-7e00-4c7d-b329-124f8dff3e19", | |
| "error": null, | |
| "fix_applied": "no" | |
| } | |
| ``` | |
| --- | |
| ### π Test 2: AI Chat - Create Task (English) | |
| **Request:** | |
| ```bash | |
| POST /api/chat | |
| { | |
| "message": "Add a task to buy groceries", | |
| "conversation_id": null | |
| } | |
| ``` | |
| **Expected:** | |
| - AI understands English | |
| - Invokes `create_task` MCP tool | |
| - Returns success in English | |
| - Saves conversation to DB | |
| --- | |
| ### π Test 3: AI Chat - Create Task (Urdu) | |
| **Request:** | |
| ```bash | |
| POST /api/chat | |
| { | |
| "message": "Ψ―Ψ§Ψ€Ω ΩΩΪ― Ϊ©Ω ΩΨ§Ψ¦Ϋ", | |
| "conversation_id": "<previous>" | |
| } | |
| ``` | |
| **Expected:** | |
| - AI detects Urdu language | |
| - Invokes `create_task` with Urdu text | |
| - Returns response in Urdu | |
| - Links to same conversation | |
| --- | |
| ### π Test 4: List Tasks | |
| **Request:** | |
| ```bash | |
| POST /api/chat | |
| { | |
| "message": "Show my tasks", | |
| "conversation_id": "<previous>" | |
| } | |
| ``` | |
| **Expected:** | |
| - Invokes `list_tasks` MCP tool | |
| - Returns all user's tasks | |
| - Response in matching language | |
| --- | |
| ### π Test 5: Complete Task | |
| **Request:** | |
| ```bash | |
| POST /api/chat | |
| { | |
| "message": "Mark task 1 as done", | |
| "conversation_id": "<previous>" | |
| } | |
| ``` | |
| **Expected:** | |
| - Invokes `update_task` with status=completed | |
| - Confirms completion | |
| - Task marked completed in DB | |
| --- | |
| ### π Test 6: JWT Security - Cross-User Access | |
| **Request:** | |
| ```bash | |
| POST /api/todos | |
| Headers: Authorization: Bearer <token_user_a> | |
| Get todos for user_b | |
| ``` | |
| **Expected:** | |
| - β Returns only user_a's todos | |
| - β Cannot access user_b's data | |
| --- | |
| ### π Test 7: Memory Persistence | |
| **Action:** | |
| - Start conversation | |
| - Create 3 tasks | |
| - Get new conversation_id | |
| - Resume with same conversation_id | |
| **Expected:** | |
| - β Conversation history loaded | |
| - β Previous context maintained | |
| - β Can reference earlier tasks | |
| --- | |
| ### π Test 8: Language Matching | |
| **Action:** | |
| - User sends English message | |
| - AI responds in English | |
| - User sends Urdu message | |
| - AI responds in Urdu | |
| **Expected:** | |
| - β Response language matches input | |
| - β No language mixing | |
| --- | |
| ### π Test 9: MCP Tool Enforcement | |
| **Verify:** | |
| - AI NEVER reasons about tools | |
| - ONLY invokes MCP tools | |
| - Tools execute atomically | |
| **Expected:** | |
| - β Qwen prompt enforces tool usage | |
| - β No direct SQL/manipulation by AI | |
| --- | |
| ### π Test 10: Error Handling | |
| **Tests:** | |
| - Invalid JWT | |
| - Expired JWT | |
| - Malformed task data | |
| - Non-existent task ID | |
| **Expected:** | |
| - β Graceful error messages | |
| - β No server crashes | |
| - β Proper HTTP status codes | |
| --- | |
| ## π Summary (In Progress): | |
| **Total Tests:** 10 | |
| **Passed:** 1 (β Signup) | |
| **Failed:** 0 | |
| **Pending:** 9 | |
| **Fixes Applied:** 0 | |
| --- | |
| ## β³ Testing Status: | |
| Currently running comprehensive Phase III tests... | |
| Backend: β RUNNING | |
| Frontend: β CONNECTED | |
| Database: β CONNECTED | |
| --- | |
| **Next:** Running AI chat tests... | |