diff --git a/.ai_agency/memory/backlog.json b/.ai_agency/memory/backlog.json index bc420e5..b6c4263 100644 --- a/.ai_agency/memory/backlog.json +++ b/.ai_agency/memory/backlog.json @@ -1,296 +1,114 @@ [ { "id": "TASK-101", - "title": "پیاده‌سازی متاتگ‌های داینامیک و Structured Data (JSON-LD) برای سئوی محصولات و صفحات اصلی", + "title": "Prisma Schema & Database Indexing Optimization (PostgreSQL)", "priority": "HIGH", - "assigned_role": "05_dev_frontend", - "status": "completed", - "max_file_count": 3, - "estimated_minutes": 15, + "assigned_role": "04_dev_backend", + "status": "pending", + "max_file_count": 2, + "estimated_minutes": 20, "dependency_task_ids": [], "acceptance_criteria": [ - "افزوده شدن متاتگ‌های داینامیک OpenGraph و Schema.org Product در app/shop/[slug]/page.tsx", - "اعتبارسنجی تگ‌های JSON-LD برای گوگل Rich Snippet" + "افزودن ایندکس روی فیلدهای پرکاربرد جستجو نظیر categorySlug و suitableFor در مدل Product", + "اعتبارسنجی ارجاعات ریلیشن‌ها و پشتیبانی متوازن از فیلدهای B2B/Wholesale" ] }, { "id": "TASK-102", - "title": "تکمیل و بهینه‌سازی سیستم راهنمای تعاملی گام‌به‌گام (Pet Recommendation Wizard) بر اساس محصولات واقعی", + "title": "Seed Data & Official Catalog Sync in Prisma (backend/prisma/seed.ts)", "priority": "HIGH", - "assigned_role": "05_dev_frontend", - "status": "completed", - "max_file_count": 3, - "estimated_minutes": 15, - "dependency_task_ids": [], + "assigned_role": "04_dev_backend", + "status": "pending", + "max_file_count": 2, + "estimated_minutes": 25, + "dependency_task_ids": ["TASK-101"], "acceptance_criteria": [ - "طراحی فرم چند مرحله‌ای انتخاب پت (سگ/گربه)، وزن، سن و عارضه", - "محاسبه دوز دقیق مصرفی و نمایش پیشنهاد محصول واقعی با دکمه افزودن مستقیم به سبد خرید" + "همگام‌سازی کامل ۳۰ محصول کاتالوگ رسمی Canina آلمان با قیمت‌های دقیق تک‌فروشی و قیمت عمده همکار", + "اجرای موفقیت‌آمیز npx prisma db seed بدون خطا" ] }, { "id": "TASK-103", - "title": "طراحی فرم درخواست احراز هویت خریدار عمده (پت‌شاپ‌ها و کلینیک‌های دامپزشکی)", + "title": "NestJS Global DTO Validation Pipes & Sanitization (backend/src/main.ts)", "priority": "HIGH", - "assigned_role": "05_dev_frontend", - "status": "completed", + "assigned_role": "04_dev_backend", + "status": "pending", "max_file_count": 3, "estimated_minutes": 15, - "dependency_task_ids": [], + "dependency_task_ids": ["TASK-102"], "acceptance_criteria": [ - "ایجاد فرم ثبت درخواست حساب عمده‌فروشی شامل شماره نظام دامپزشکی / پروانه کسب و آپلود مدرک", - "اتصال فرم به سرویس احراز هویت / ثبت نام و مدیریت استیت در Zustand" + "فعال‌سازی ValidationPipe سراسری با whitelist و forbidNonWhitelisted", + "تنظیم Global Exception Filter برای ساختار استاندارد پاسخ به خطاهای API" ] }, { "id": "TASK-104", - "title": "پیاده‌سازی پنل و جدول سفارش حجمی (Bulk Order Matrix) برای خریداران عمده تاییدشده", + "title": "NestJS Auth & B2B Wholesale Role Guard Verification (backend/src/auth)", "priority": "HIGH", - "assigned_role": "05_dev_frontend", - "status": "completed", + "assigned_role": "04_dev_backend", + "status": "pending", "max_file_count": 3, - "estimated_minutes": 15, + "estimated_minutes": 20, "dependency_task_ids": ["TASK-103"], "acceptance_criteria": [ - "طراحی جدول ماتریسی محصولات با ورودی تعداد ثبت سریع سفارش حجمی برای نقش‌های Wholesale", - "محاسبه مجموع فاکتور عمده با اعمال تخفیف‌های ویژه همکار" + "پیاده‌سازی گارد دسترسی RolesGuard برای نقش‌های User_Wholesale و ADMIN", + "مخفی‌سازی قیمت عمده در سرویس محصولات در صورت عدم تایید گارد احراز هویت" ] }, { "id": "TASK-105", - "title": "ریدیزاین بصری UI/UX و ارتقای حس استریم‌لاین دارویی و لوکس فروشگاه کانینا", - "priority": "MEDIUM", - "assigned_role": "05_dev_frontend", - "status": "completed", + "title": "NestJS Admin Orders & B2B Document Approval Service (backend/src/admin)", + "priority": "HIGH", + "assigned_role": "04_dev_backend", + "status": "pending", "max_file_count": 3, - "estimated_minutes": 15, - "dependency_task_ids": [], + "estimated_minutes": 20, + "dependency_task_ids": ["TASK-104"], "acceptance_criteria": [ - "ارتقای انیمیشن‌های ورود، دکمه‌ها، کارت‌های محصولات و هدر/فوتر با بالاترین استانداردهای بصری", - "تضمین پاسخگویی ۱۰۰٪ در رزولوشن‌های دسکتاپ، تبلت و موبایل" + "ایجاد سرویس تایید مدارک و پروانه کسب خریداران عمده جهت تغییر نقش به User_Wholesale", + "پیاده‌سازی کنترلرهای تغییر وضعیت سفارشات عمده و صادرات فاکتور" ] }, { "id": "TASK-106", - "title": "ایجاد مجموعه تست‌های خودکار کامپوننت‌ها و استورهای اصلی (Testing Suite - Vitest/Jest)", + "title": "Backend Unit & Integration Test Suite (Jest)", "priority": "HIGH", "assigned_role": "06_qa_engineer", - "status": "completed", + "status": "pending", "max_file_count": 3, - "estimated_minutes": 15, - "dependency_task_ids": [], + "estimated_minutes": 20, + "dependency_task_ids": ["TASK-105"], "acceptance_criteria": [ - "ایجاد تست‌های واحد برای صحت کارکرد محاسبه دوز در SmartAdvisor", - "ایجاد تست‌های واحد برای مدیریت سبد خرید و اعمال تخفیف همکار در cartStore" + "نوشتن تست‌های واحد کنترلرهای Auth و Products با Jest", + "تضمین درصد پوشش تست (Code Coverage) بالای ۸۰٪ برای سرویس‌های اصلی بک‌اند" ] }, { "id": "TASK-107", - "title": "بهینه‌سازی کارایی تصاویر و تبدیل تمام تگ‌های img به next/image در SafeImage", - "priority": "HIGH", - "assigned_role": "05_dev_frontend", - "status": "completed", - "max_file_count": 3, - "estimated_minutes": 15, - "dependency_task_ids": [], - "acceptance_criteria": [ - "انتقال تمام تگ‌های HTML img به کامپوننت بهینه‌شده Image از next/image", - "تضمین لودینگ سریع، کاهش LCP و هندلینگ صحیح خطاهای لودینگ تصویر" - ] - }, - { - "id": "TASK-108", - "title": "ایجاد لایه‌های loading.tsx و error.tsx استاندارد در Next.js App Router", - "priority": "MEDIUM", - "assigned_role": "05_dev_frontend", - "status": "completed", - "max_file_count": 3, - "estimated_minutes": 15, - "dependency_task_ids": [], - "acceptance_criteria": [ - "ایجاد app/loading.tsx با اسکلتون‌های مدرن و استریمینگ", - "ایجاد app/error.tsx جهت مدیریت خطاهای غیرمنتظره و دکمه تلاش مجدد" - ] - }, - { - "id": "TASK-109", - "title": "تکمیل مدیریت خریداران عمده و پروانه‌های ثبت‌شده در پنل مدیریت (Admin Panel)", - "priority": "HIGH", - "assigned_role": "05_dev_frontend", - "status": "completed", - "max_file_count": 3, - "estimated_minutes": 15, - "dependency_task_ids": [], - "acceptance_criteria": [ - "افزوده شدن تب تایید مدارک خریداران عمده در صفحه Users پنل مدیریت", - "قابلیت تایید مدرک و ارتقای نقش کاربر به User_Wholesale" - ] - }, - { - "id": "TASK-110", - "title": "بهینه‌سازی فنی سئو، Sitemap داینامیک و Robots.txt", - "priority": "MEDIUM", - "assigned_role": "05_dev_frontend", - "status": "completed", - "max_file_count": 3, - "estimated_minutes": 15, - "dependency_task_ids": [], - "acceptance_criteria": [ - "به‌روزرسانی sitemap.ts برای شامل شدن تمام slugs واقعی محصولات دیتابیس", - "اعتبارسنجی فایل robots.ts برای موتورهای جستجو" - ] - }, - { - "id": "TASK-111", - "title": "افزودن فیلتر محصولات در صفحه لیست مکمل‌ها بر اساس نسخه دامپزشکی و گروه‌بندی تخصصی", - "priority": "HIGH", - "assigned_role": "05_dev_frontend", - "status": "completed", - "max_file_count": 3, - "estimated_minutes": 15, - "dependency_task_ids": [], - "acceptance_criteria": [ - "افزودن فیلتر محصولات نیازمند نسخه در ArchivePage و SearchResultsPage", - "امکان فیلتر سریع مکمل‌های خانگی بدون نسخه در کنار مکمل‌های تجویزی" - ] - }, - { - "id": "TASK-112", - "title": "افزودن مدال ثبت مستقیم نسخه دامپزشکی و ارسال تصاویر نسخه برای خرید سریع بدون معطلی", - "priority": "HIGH", - "assigned_role": "05_dev_frontend", - "status": "completed", - "max_file_count": 3, - "estimated_minutes": 15, - "dependency_task_ids": ["TASK-111"], - "acceptance_criteria": [ - "ایجاد PrescriptionUploadModal جهت آپلود تصویر نسخه پزشکی", - "امکان ارسال سریع درخواست مشاوره/تامین داروی تجویزی برای خریداران دارای نسخه" - ] - }, - { - "id": "TASK-113", - "title": "افزودن قابلیت دانلود PDF و اکسل لیست قیمت عمده‌فروشی Canina در B2BPortal برای پتشاپها و کلینیکها", - "priority": "HIGH", - "assigned_role": "05_dev_frontend", - "status": "completed", - "max_file_count": 3, - "estimated_minutes": 15, - "dependency_task_ids": ["TASK-112"], - "acceptance_criteria": [ - "افزودن دکمه دریافت کاتالوگ و لیست قیمت B2B به صورت اکسل/CSV و آماده‌سازی برای چاپ", - "امکان خروجی گرفتن سریع از لیست سفارش حجمی برای همکاران و پت‌شاپ‌های تاییدشده" - ] - }, - { - "id": "TASK-114", - "title": "افزودن نشانگر نشان‌دار بودن محصولات رسمی کاتالوگ Canina و لینک دانلود کاتالوگ پی‌دی‌اف در هدر و فوتر", - "priority": "MEDIUM", - "assigned_role": "05_dev_frontend", - "status": "completed", - "max_file_count": 3, - "estimated_minutes": 15, - "dependency_task_ids": ["TASK-113"], - "acceptance_criteria": [ - "افزودن دکمه دانلود کاتالوگ رسمی PDF برند Canina در فوتر و منوی اصلی", - "نمایش بنر اصالت کاتالوگ رسمی محصولات در صفحات جزئیات محصول" - ] - }, - { - "id": "TASK-115", - "title": "افزودن ماشین‌حساب محاسبه دوز دقیق و هزینه دوره درمانی مکمل‌ها در ProductPage برای پت‌دارها", - "priority": "HIGH", - "assigned_role": "05_dev_frontend", - "status": "completed", - "max_file_count": 3, - "estimated_minutes": 15, - "dependency_task_ids": ["TASK-114"], - "acceptance_criteria": [ - "محاسبه تعداد قوطی/بسته مورد نیاز دوره درمانی بر اساس وزن پت", - "نمایش تخمین هزینه دوره درمانی و تعداد روزهای تامین مکمل" - ] - }, - { - "id": "TASK-116", - "title": "افزودن سیستم پشتیبانی آنی تیکت و مشاوره آنلاین دامپزشک در پنل کاربری Dashboard", - "priority": "HIGH", - "assigned_role": "05_dev_frontend", - "status": "completed", - "max_file_count": 3, - "estimated_minutes": 15, - "dependency_task_ids": ["TASK-115"], - "acceptance_criteria": [ - "افزودن بخش تیکت پشتیبانی و استعلام نسخه در UserDashboard", - "امکان پیگیری پاسخ‌های متخصص دامپزشک Canina برای کاربران" - ] - }, - { - "id": "TASK-117", - "title": "افزودن بنر گارانتی اصالت کاتالوگ Canina آلمان و پشتیبانی تلفنی فوری در CartDrawer و CheckoutPage", - "priority": "MEDIUM", - "assigned_role": "05_dev_frontend", - "status": "completed", - "max_file_count": 3, - "estimated_minutes": 15, - "dependency_task_ids": ["TASK-116"], - "acceptance_criteria": [ - "افزودن نشان گارانتی اصالت کالا و مشاوره رایگان قبل خرید در کشوی سبد خرید", - "ارتقای اعتماد پت‌دارها و خریداران سریع در هنگام تسویه‌حساب" - ] - }, - { - "id": "TASK-118", - "title": "افزودن راهنمای متنی و نشان ویژه نحوه نگهداری داروها و شرایط ذخیره‌سازی مکمل‌ها در ProductPage", - "priority": "LOW", - "assigned_role": "05_dev_frontend", - "status": "completed", - "max_file_count": 3, - "estimated_minutes": 15, - "dependency_task_ids": ["TASK-117"], - "acceptance_criteria": [ - "افزودن باکس اطلاعات شرایط نگهداری (دمای نگهداری، دور از نور و رطوبت) بر اساس کاتالوگ رسمی", - "نمایش هشدارهای مصرف و منع مصرف (Contraindications) در صفحه جزئیات محصول" - ] - }, - { - "id": "TASK-119", - "title": "افزودن بنر و فیلتر سریع محصولات بدون قند و فاقد گلوتن در کاتالوگ و دانشنامه علمی برای پت‌های دارای حساسیت", - "priority": "MEDIUM", - "assigned_role": "05_dev_frontend", - "status": "completed", - "max_file_count": 3, - "estimated_minutes": 15, - "dependency_task_ids": ["TASK-118"], - "acceptance_criteria": [ - "امکان فیلتر سریع محصولات فاقد آلرژن و مناسب رژیم‌های حساس پزشکی", - "نمایش نشان‌های استاندارد سلامت در کارت‌های محصولات کاتالوگ" - ] - }, - { - "id": "TASK-120", - "title": "افزودن قابلیت به اشتراک‌گذاری سریع دوزها و مشخصات دارویی مکمل‌ها در پیام‌رسان‌ها در ProductPage", - "priority": "LOW", - "assigned_role": "05_dev_frontend", - "status": "completed", - "max_file_count": 3, - "estimated_minutes": 15, - "dependency_task_ids": ["TASK-119"], - "acceptance_criteria": [ - "افزودن دکمه اشتراک‌گذاری سریع مشخصات دارویی و لینک محصول برای دامپزشک یا پت‌دار", - "ارتقای تجربه کاربری اطلاع‌رسانی سریع نسخه و دوز" - ] - }, - { - "id": "TASK-121", - "title": "افزودن راهنمای سریع و مدال جدول دوزهای کلی کاتالوگ رسمی Canina آلمان در SmartAdvisor", + "title": "Frontend Error Boundaries & Global Loading Skeletal Streaming", "priority": "MEDIUM", "assigned_role": "05_dev_frontend", "status": "pending", "max_file_count": 3, "estimated_minutes": 15, - "dependency_task_ids": ["TASK-120"], + "dependency_task_ids": ["TASK-106"], "acceptance_criteria": [ - "افزودن دکمه راهنمای سریع جدول دوز استاندارد کاتالوگ آلمان در SmartAdvisor", - "ارتقای آگاهی پت‌دارها برای مصرف صحیح بدون نیاز به نسخه" + "تقویت ErrorBoundary در لایه‌های حساس مانند ProductPage و B2BPortal", + "ارتقای تجربه کاربری با اسکلتون‌های استریمینگ متوازن" + ] + }, + { + "id": "TASK-108", + "title": "B2B Wholesale Matrix & Prescription Direct Quick Order Optimization", + "priority": "MEDIUM", + "assigned_role": "05_dev_frontend", + "status": "pending", + "max_file_count": 3, + "estimated_minutes": 20, + "dependency_task_ids": ["TASK-107"], + "acceptance_criteria": [ + "ارتباط آنی پورتال B2B به سرویس احراز هویت بک‌اند", + "بهینه‌سازی ثبت سفارشات حجمی (Bulk Order) با تخفیف ۳۰٪ برای همکاران تاییدشده" ] } ] diff --git a/.ai_agency/memory/state.json b/.ai_agency/memory/state.json index 15d1dfb..a938cc8 100644 --- a/.ai_agency/memory/state.json +++ b/.ai_agency/memory/state.json @@ -1,13 +1,13 @@ { - "project_name": "Canina Veterinary E-Commerce", + "project_name": "Canina Veterinary E-Commerce System", "project_mode": "BROWNFIELD", - "status": "IN_PROGRESS", + "status": "AWAITING_USER_APPROVAL", "checkpoint": { - "stage": "TASK_EXECUTION", - "active_agent": "05_dev_frontend", - "current_ticket_id": "TASK-121", - "sub_step_index": 10, - "total_sub_steps": 10 + "stage": "AUDIT_AND_PRIORITIZATION_COMPLETED", + "active_agent": "02_product_manager", + "current_ticket_id": "TASK-101", + "sub_step_index": 0, + "total_sub_steps": 8 }, "execution_guards": { "retry_count": 0, @@ -20,7 +20,7 @@ "last_healthy_commit": "HEAD" }, "context_buffer": { - "last_agent_summary": "All 10 tickets across Phase 1 (Product & UX Features) and Phase 2 (Deep Engineering & Refactoring) successfully completed, QA verified, and merged into develop." + "last_agent_summary": "Full project audit completed by 00_auditor and 02_product_manager. Backlog re-prioritized focusing first on Prisma DB, NestJS backend validation/guards, Admin approval, and Jest tests before frontend feature polish." }, - "last_updated": "2026-07-26T14:59:00Z" + "last_updated": "2026-07-26T16:20:00Z" }