داشبورد هوشمندی

v3: فاز ۲۳

نمای بصریِ خروجیِ CLI: نه یک سرویسِ محاسبه‌گر. داشبورد هیچ چیزی را خودش تحلیل نمی‌کند؛ شما با CLI روی ریپازیتوریِ محلیِ خودتان یک خروجیِ هوشمندی می‌سازید و اینجا آپلودش می‌کنید تا بصری، قابلِ تاریخچه‌گیری و قابلِ مقایسه شود.

باز کردنِ داشبورد ←

مسیرِ مستقیم: /dashboard: فعلاً بدونِ ورود/لاگین در دسترس است.

روند کار

  1. ساختِ خروجی در ریپازیتوریِ خودتان

    حداقل خروجیِ اول لازم است؛ خروجیِ دوم اختیاری است و فقط برایِ پرشدنِ برگهٔ «تحلیلِ AI» لازم می‌شود.

    dig export-health --json > export.json
    dig doctor --json > doctor.json
  2. بازکردنِ داشبورد

    به /dashboard بروید، یک نامِ پروژه بدهید (مثلاً نامِ ریپازیتوری) و محتوایِ دو فایلِ بالا را در دو کادرِ متنی بچسبانید.

  3. تحلیل و ذخیره

    دکمهٔ «تحلیل و ذخیره» ابتدا شکلِ داده را اعتبارسنجی می‌کند (API داخلیِ داشبورد)، بعد نتیجه را در تاریخچهٔ همان پروژه ذخیره می‌کند.

بخش‌های داشبورد

نمای کلی
تعدادِ کامپوننت‌ها، نرخِ پذیرش، نیازمندِ توجه، ریسکِ وابستگی
کامپوننت‌های پرتأثیر (بیشترین dependencyImpact) هم همین‌جا فهرست می‌شوند.
کامپوننت‌ها
جدولِ کامپوننت / استفاده / چرخهٔ حیات / مهاجرت / ریسک
وابستگی
کامپوننت‌هایی که بیشترین کامپوننتِ دیگر را تحتِ تأثیر می‌گذارند
مهاجرت‌ها
کامپوننت / نوعِ تغییر / استفادهٔ تحتِ‌تأثیر
نسخهٔ نصب‌شده/هدف در قراردادِ export نیست؛ برایِ آن از dig migrate <component> --plan استفاده کنید.
تحلیلِ AI
یافته/شدت/پیشنهاد: فقط اگر doctor.json آپلود شده باشد
داشبورد هرگز خودش AI صدا نمی‌زند، فقط همان چیزی را نشان می‌دهد که در CLI شما (رجوع به پیکربندیِ ارائه‌دهندهٔ AI) تولید شده.
تاریخچه
همهٔ آپلودهای یک پروژه + مقایسهٔ دوبه‌دو
مقایسه فقط تفاضلِ نرخِ پذیرش/مهاجرت‌های در انتظار/کامپوننت‌های منسوخ را نشان می‌دهد — هیچ عددِ تازه‌ای محاسبه نمی‌شود.

ذخیره‌سازی و دسترسی: وضعیتِ فعلی

تاریخچهٔ آپلودها در localStorageِ همان مرورگر نگه داشته می‌شود — هنوز پایگاه‌دادهٔ مشترک یا حسابِ کاربری وجود ندارد، پس تاریخچه بینِ دستگاه‌ها/همکاران به‌اشتراک گذاشته نمی‌شود.

ورود/لاگین فعلاً غیرفعال است، هرکسی که آدرسِ /dashboard را داشته باشد می‌تواند آپلود/مشاهده کند. نسخهٔ بعدی قرار است لاگینِ سوپرادمین اضافه کند تا دسترسی کنترل‌شده باشد؛ تا آن زمان، داده‌های حساس (اگر export شما شاملِ نام‌های داخلیِ پروژه است) را فقط در محیط‌های امن به اشتراک بگذارید.

امنیت

فقط دادهٔ تجمیعی رد‌وبدل می‌شود: نامِ کامپوننت، شمارش‌ها، boolean‌ها. هیچ کدِ منبع، هیچ محتوای فایل، هیچ کلیدِ API از سمتِ داشبورد ارسال یا نمایش داده نمی‌شود، چون dig export-health از اساس این‌ها را در خروجی‌اش ندارد.

POST /api/dashboard-intelligence
{
  "export": {
    "system": {},
    "health": {},
    "components": []
  },
  "doctor": {
    "summary": "...",
    "findings": []
  }
}