# گزارش اعتبارسنجی تحویل

تاریخ اجرا: ۱۴۰۵/۰۵/۲۳ (۲۰۲۶-۰۸-۱۴)

## نتایج خودکار

- ESLint: موفق.
- TypeScript `tsc --noEmit`: موفق.
- build production شامل TypeScript، Tailwind و assetهای محلی: موفق.
- Vitest: ۸ فایل تست، ۱۹ آزمون، همگی موفق.
- Playwright Chromium: یک سناریوی end-to-end سه‌نقشی، موفق با exit code صفر.

سناریوی مرورگر:

1. مدیر کل وارد شد و فاکتور دستی بدون ردیف ساخت.
2. مدیر تأمین وارد شد؛ انتخاب‌گر درخواست‌کننده، انبار و تأیید کامل را انجام داد.
3. انباردار فقط صف انبار خود را دید و تحویل را ثبت کرد.
4. مدیر کل دوباره وارد شد و رویداد تحویل را در timeline تغییرناپذیر دید.

## نمونهٔ Excel

فایل واقعی `xlsm` که در شرح به آن اشاره شده بود در attachmentهای قابل دسترس این جلسه موجود نبود. بنابراین ادعای تست روی فایل واقعی نشده است. به‌جای آن fixture مستند هم‌ساخت با مشخصات زیر در تست یکپارچه استفاده شد:

- ۱۸۰ ردیف معتبر.
- ۱۱۰ شماره فاکتور یکتا.
- ۱۹ کد کالای یکتا.
- حفظ صفر ابتدای شماره‌ها و کدها.
- یک footer جمع نامعتبر برای آزمون رد ردیف.
- import تکراری، نسخهٔ دوم تغییرکرده، diff و مغایرت.

پیش از go-live، واحد مالی باید فایل مرجع واقعی را در staging بارگذاری کند و preview، CSV خطا و تعداد ۱۸۰/۱۱۰/۱۹ را تأیید کند. اگر نام header یا ساختار sheet با fixture تفاوت داشت، alias جدید باید همراه test regression اضافه شود.

## بررسی بصری

صفحهٔ ورود، داشبورد روشن/تیره و نمای desktop در عرض‌های ۱۳۶۶، ۱۴۴۰ و ۱۹۲۰ پیکسل بررسی شد؛ overflow افقی مشاهده نشد. هویت رنگی سرمه‌ای/آبی/فیروزه‌ای، لوگوی ماندگار، Vazirmatn و RTL در مرورگر واقعی کنترل شد.

## محدودیت محیط تحویل

Docker در میزبان ساخت حاضر نبود؛ بنابراین فایل‌های Compose/Dockerfile از نظر ساختار و configuration بررسی شده‌اند اما image در همین میزبان build نشد. pipeline استقرار باید `docker compose config`، build، healthcheck و smoke staging را پیش از production اجرا کند.
