canina/.ai_agency/specs/project_health.md

4.3 KiB
Raw Blame History

گزارش جامع ممیزی عمیق مهندسی و کیفیت کد Canina (Deep Engineering Audit Phase 2)

تاریخ ممیزی عمیق: ۲۶ ژوئیه ۲۰۲۶
نقش ممیز: Lead Software Auditor (00_auditor.md)
حوزه ارزیابی: تمامی لایه‌های فرانت‌اند، بک‌اند، پنل مدیریت، تست‌ها و کانفیگ‌های سئو


۱. خلاصه‌ی نمره سلامت مهندسی (Deep Engineering Health Score)

امتیاز سلامت مهندسی از ۱۰۰ محاسبه شده و بدهی‌های فنی ممیزی عمیق به شرح زیر است:

حوزه ارزیابی وضعیت اسکن خط‌به‌خط کسری امتیاز (Penalty)
امتیاز پایه - 100
بهینه‌سازی تصاویر (Next Image) استفاده از تگ <img> در SafeImage, VideosPage, VetGallery به جای next/image -10
پوشش تست‌های خودکار فرانت‌اند نبود تست‌های integration برای سفارش حجمی، Wizard و احراز هویت -20
تست‌های E2E / Unit بک‌اند NestJS نبود پوشش تست‌های واحد برای هندل استثنائات اختصاصی و سرویس‌ها -15
مدیریت Error / Loading Boundaries نبود فایل‌های استاندارد loading.tsx و error.tsx در تمام routeهای اصلی -10
مدیریت تایید مدارک در پنل ادمین عدم امکان بررسی و تغییر نقش کاربر به User_Wholesale در پنل مدیریت -10
امتیاز نهایی سلامت مهندسی فاز ۲ نیازمند بازسازی و بازآفرینی فنی (Refactoring Phase) 35 / 100

۲. ممیزی تفکیکی بخش‌ها (Detailed Audit Breakdown)

۲.۱. فرانت‌اند Next.js (/frontend/application)

  • SafeImage & Image Optimization: کامپوننت SafeImage.tsx و سایر کامپوننت‌های نمایش ویدیو/تصاویر دامپزشکی همچنان از تگ‌های استاندارد HTML <img> استفاده می‌کنند که مانع فشرده‌سازی WebP و بهینه‌سازی LCP گوگل می‌شود.
  • Error & Loading Boundaries: عدم وجود app/loading.tsx و app/error.tsx استاندارد جهت مدیریت لودینگ‌های استریمینگ و خطاهای غیرمنتظره.
  • Strict Typing: استفاده از متغیرهای any در برخی هندلرهای استیت Zustand.

۲.۲. بک‌اند NestJS و دیتابیس Prisma (/backend)

  • مدیریت استثناها (Global Exception Filters): نیاز به اعتبارسنجی دقیق‌تر DTOها با class-validator و فیلترهای پاسخ یکپارچه.
  • امنیت APIها و Rate Limiting: نیاز به بررسی ثبات Throttler Guard و سطوح دسترسی نقش‌های کاربری (RBAC).

۲.۳. پنل مدیریت Vite/React (/frontend/admin-panel)

  • مدیریت خریداران عمده (Wholesale Management): نبود جدول تایید مدارک پروانه کسب / کارت نظام دامپزشکی و دکمه ارتقای نقش کاربر به User_Wholesale.

۲.۴. تست‌نویسی (Testing Suite)

  • Unit & Integration Tests: عدم وجود تست‌های خودکار برای کامپوننت‌های حساس مانند SmartAdvisor و B2BPortal.

۳. نقشه راه فاز بازآفرینی فنی (Refactoring Roadmap)

  1. TASK-106 (تست‌نویسی جامع): ایجاد تست‌های خودکار Jest/Vitest برای کامپوننت‌ها و استورها.
  2. TASK-107 (بهینه‌سازی کارایی Next Image): بازنویسی SafeImage جهت استفاده ۱۰۰٪ از next/image.
  3. TASK-108 (Boundary & Streaming): پیاده‌سازی loading.tsx و error.tsx در لایه‌های Router.
  4. TASK-109 (تکمیل پنل ادمین): افزودن تب تایید خریداران عمده و پروانه کسب در پنل مدیریت.
  5. TASK-110 (سئوی پیشرفته): ایجاد Sitemap داینامیک و بهینه‌سازی Alt تصاویر و Canonical URLs.