Add AST JSON representation for migration Version20260713195434

This commit introduces a new JSON file that contains the abstract syntax tree (AST) representation for the migration file Version20260713195434.php. The JSON includes nodes, edges, and raw calls, providing a structured overview of the migration's components and their relationships.
This commit is contained in:
hamed
2026-07-13 23:38:45 +03:30
parent 4678739d15
commit 852f163897
13 changed files with 2598 additions and 938 deletions
+138 -129
View File
@@ -1,16 +1,16 @@
# Graph Report - clinicpro (2026-07-13)
## Corpus Check
- 836 files · ~604,110 words
- 840 files · ~606,749 words
- Verdict: corpus is large enough that graph structure adds value.
## Summary
- 10215 nodes · 14479 edges · 813 communities (630 shown, 183 thin omitted)
- Extraction: 98% EXTRACTED · 2% INFERRED · 0% AMBIGUOUS · INFERRED: 323 edges (avg confidence: 0.8)
- 10263 nodes · 14587 edges · 814 communities (632 shown, 182 thin omitted)
- Extraction: 98% EXTRACTED · 2% INFERRED · 0% AMBIGUOUS · INFERRED: 335 edges (avg confidence: 0.8)
- Token cost: 0 input · 0 output
## Graph Freshness
- Built from commit: `665a210e`
- Built from commit: `4678739d`
- Run `git rev-parse HEAD` and compare to check if the graph is stale.
- Run `graphify update .` after code changes (no API cost).
@@ -812,18 +812,19 @@
- [[_COMMUNITY_Community 810|Community 810]]
- [[_COMMUNITY_Community 811|Community 811]]
- [[_COMMUNITY_Community 812|Community 812]]
- [[_COMMUNITY_Community 813|Community 813]]
## God Nodes (most connected - your core abstractions)
1. `ApiTestCase` - 102 edges
1. `ApiTestCase` - 108 edges
2. `BaseController` - 88 edges
3. `api` - 75 edges
4. `UserProfile` - 62 edges
5. `useAuthStore` - 60 edges
6. `Doctor` - 60 edges
7. `Clinic` - 50 edges
8. `ApiResponse` - 49 edges
9. `ErrorCodes` - 48 edges
10. `formatDate()` - 46 edges
7. `Appointment` - 50 edges
8. `Clinic` - 50 edges
9. `ApiResponse` - 49 edges
10. `ErrorCodes` - 48 edges
## Surprising Connections (you probably didn't know these)
- `PrivateRoute()` --calls--> `useAuthStore` [EXTRACTED]
@@ -840,15 +841,15 @@
## Import Cycles
- None detected.
## Communities (813 total, 183 thin omitted)
## Communities (814 total, 182 thin omitted)
### Community 0 - "Community 0"
Cohesion: 0.07
Nodes (23): ALLOWED_ROLES, PrivateRoute(), PublicRoute(), RoleRoute(), queryClient, toastStyle, BeforeInstallPromptEvent, usePwaInstall() (+15 more)
Cohesion: 0.06
Nodes (27): ALLOWED_ROLES, PrivateRoute(), PublicRoute(), RoleRoute(), queryClient, toastStyle, BeforeInstallPromptEvent, usePwaInstall() (+19 more)
### Community 1 - "Community 1"
Cohesion: 0.03
Nodes (43): AddressData, AddrForm, addrSchema, AVATAR_COLORS, BookingMeta, CityOpt, DateOverrideData, DEFAULT_BOOKING_META (+35 more)
Nodes (42): AddressData, AddrForm, addrSchema, AVATAR_COLORS, BookingMeta, CityOpt, DateOverrideData, DEFAULT_BOOKING_META (+34 more)
### Community 2 - "Community 2"
Cohesion: 0.10
@@ -867,16 +868,16 @@ Cohesion: 0.06
Nodes (3): UserProfile, self, User
### Community 6 - "Community 6"
Cohesion: 0.12
Nodes (12): SettlementController, SettlementRepository, WalletTransactionRepository, Settlement, JsonResponse, Request, User, ManagerRegistry (+4 more)
Cohesion: 0.17
Nodes (8): SettlementController, SettlementRepository, Settlement, JsonResponse, Request, User, ManagerRegistry, User
### Community 7 - "Community 7"
Cohesion: 0.05
Nodes (11): DoctorServiceController, DoctorService, Clinic, DoctorServiceRepository, Collection, Doctor, self, User (+3 more)
Cohesion: 0.06
Nodes (8): DoctorService, Clinic, DoctorServiceRepository, Collection, Doctor, self, User, ManagerRegistry
### Community 8 - "Community 8"
Cohesion: 0.06
Nodes (28): emptyFeatures(), FEATURE_KEYS, FEATURE_LABELS, PeriodForm, periodSchema, PLAN_DISPLAY, PlanForm, planSchema (+20 more)
Cohesion: 0.13
Nodes (13): emptyFeatures(), FEATURE_KEYS, FEATURE_LABELS, PeriodForm, periodSchema, PLAN_DISPLAY, PlanForm, planSchema (+5 more)
### Community 9 - "Community 9"
Cohesion: 0.04
@@ -891,12 +892,12 @@ Cohesion: 0.50
Nodes (4): UserActiveContextRepository, ManagerRegistry, User, UserActiveContext
### Community 12 - "Community 12"
Cohesion: 0.04
Nodes (47): Clinic Doctor Invitation API, DELETE `/api/v1/admin/clinic/invitation/{invUuid}`, Errors, Errors, Errors, Errors, Errors, Errors (+39 more)
Cohesion: 0.05
Nodes (42): Clinic Doctor Invitation API, DELETE `/api/v1/admin/clinic/invitation/{invUuid}`, Errors, Errors, Errors, Errors, Errors, Errors (+34 more)
### Community 13 - "Community 13"
Cohesion: 0.04
Nodes (62): get, get, patch, usePatient(), useUpdatePatient(), itemStyle(), menuForRole(), MenuRow() (+54 more)
Nodes (64): get, get, patch, usePatient(), useUpdatePatient(), itemStyle(), menuForRole(), MenuRow() (+56 more)
### Community 14 - "Community 14"
Cohesion: 0.10
@@ -907,8 +908,8 @@ Cohesion: 0.25
Nodes (7): PaymentController, Appointment, JsonResponse, Payment, Request, Response, User
### Community 16 - "Community 16"
Cohesion: 0.06
Nodes (8): PatientSession, SmsWallet, LogPruneService, Appointment, Collection, PatientRecord, self, SessionService
Cohesion: 0.09
Nodes (6): PatientSession, Appointment, Collection, PatientRecord, self, SessionService
### Community 17 - "Community 17"
Cohesion: 0.05
@@ -927,8 +928,8 @@ Cohesion: 0.12
Nodes (5): AdminApiController, RepresentationRepository, JsonResponse, Request, StreamedResponse
### Community 21 - "Community 21"
Cohesion: 0.06
Nodes (44): FreeVisitPrice(), Pricing, PaymentConfig, PaymentGatewayInfo, usePaymentConfig(), ApiResponse, formatNumber(), formatRial() (+36 more)
Cohesion: 0.04
Nodes (61): PaymentConfig, PaymentGatewayInfo, usePaymentConfig(), ApiResponse, formatNumber(), formatRial(), AdminCharts, AdminDashboard() (+53 more)
### Community 22 - "Community 22"
Cohesion: 0.15
@@ -955,16 +956,16 @@ Cohesion: 0.05
Nodes (40): 55. 🟢 `GET` all tag, 56. 🟢 `GET` supplementary_insurance, 57. 🟢 `GET` categories list, 58. 🟢 `GET` all state, 59. 🟢 `GET` all city, 60. 🟢 `GET` all specially doctor, 61. 🔵 `POST` post, 62. 🟡 `PATCH` patch (+32 more)
### Community 28 - "Community 28"
Cohesion: 0.08
Nodes (4): Appointment, Doctor, self, User
Cohesion: 0.06
Nodes (7): Appointment, ClinicStaff, Doctor, self, ServiceItem, ServiceSection, User
### Community 29 - "Community 29"
Cohesion: 0.06
Nodes (35): Bulk import / export, DELETE `/api/v1/admin/city/{id}`, DELETE `/api/v1/admin/province/{id}`, Errors, Errors, Errors, Errors, GET `/api/v1/admin/cities` (+27 more)
### Community 30 - "Community 30"
Cohesion: 0.05
Nodes (38): cn(), iranMobileOptionalSchema, iranMobileSchema, isValidIranMobile(), maskMobile(), sanitizeMobileInput(), toEnglishDigits(), toGregorianDate() (+30 more)
Cohesion: 0.08
Nodes (17): ClinicAddress, ClinicDetailPage(), ClinicDoctorItem, ClinicInvitation, EditForm, editSchema, HUES_LIST, INV_STATUS_MAP (+9 more)
### Community 31 - "Community 31"
Cohesion: 0.06
@@ -975,8 +976,8 @@ Cohesion: 0.06
Nodes (32): 10. Modal / Dialog, 11. Toast Notifications, 12. Empty States & Loading, 13. Page Header (هر صفحه), 14. تکنولوژی Stack, 15. Responsive Breakpoints, 16. Dark Mode (اختیاری — فاز دوم), 17. نمونه رنگ‌بندی صفحه داشبورد (+24 more)
### Community 33 - "Community 33"
Cohesion: 0.04
Nodes (47): CoverageRow, Draft, KIND, TenantInsurance, ServiceTariffModal(), TariffResponse, TariffRow, Contract (+39 more)
Cohesion: 0.03
Nodes (47): CoverageRow, Draft, KIND, TenantInsurance, ServiceTariffModal(), TariffResponse, TariffRow, Claim (+39 more)
### Community 34 - "Community 34"
Cohesion: 0.06
@@ -1003,8 +1004,8 @@ Cohesion: 0.12
Nodes (5): DoctorAddress, City, Doctor, Province, self
### Community 40 - "Community 40"
Cohesion: 0.09
Nodes (4): User, PasswordAuthenticatedUserInterface, self, UserInterface
Cohesion: 0.07
Nodes (6): SmsWallet, User, AppLog, PasswordAuthenticatedUserInterface, self, UserInterface
### Community 41 - "Community 41"
Cohesion: 0.11
@@ -1040,7 +1041,7 @@ Nodes (4): Payment, Appointment, self, User
### Community 49 - "Community 49"
Cohesion: 0.07
Nodes (22): AppointmentsPage(), BookingSlot, CancelledBadge(), DateNavigator(), EMPTY_ARR, getPersianWeekDay(), navBtnSx, NewAppointmentModal() (+14 more)
Nodes (21): AppointmentsPage(), BookingSlot, CancelledBadge(), DateNavigator(), EMPTY_ARR, getPersianWeekDay(), navBtnSx, NewAppointmentModal() (+13 more)
### Community 50 - "Community 50"
Cohesion: 0.07
@@ -1056,7 +1057,7 @@ Nodes (26): الزامات UI, باگ‌فیکس صفحه نوبت‌ها, با
### Community 53 - "Community 53"
Cohesion: 0.08
Nodes (18): AppLogRepository, PaymentLog, ClaimItemRepository, DoctorClaimRequestRepository, InvoiceItemRepository, PaymentLogRepository, PreRegistrationRepository, SessionServiceRepository (+10 more)
Nodes (14): AppLogRepository, ClaimItemRepository, DoctorClaimRequestRepository, DoctorInsuranceRepository, PreRegistrationRepository, SiteConfigRepository, ServiceEntityRepository, ManagerRegistry (+6 more)
### Community 54 - "Community 54"
Cohesion: 0.10
@@ -1091,16 +1092,16 @@ Cohesion: 0.22
Nodes (9): Create Patient Record, Create Session, Endpoints, Get Patient Record, List Patient Appointments, List Patient Sessions, List Patients, Update Patient Basic Info (+1 more)
### Community 62 - "Community 62"
Cohesion: 0.02
Nodes (111): PaginatedResponse, STATUS_FILTERS, CityForm, citySchema, ImportError, InsuranceForm, insuranceSchema, LogoUploadField() (+103 more)
Cohesion: 0.04
Nodes (56): PaginatedResponse, STATUS_FILTERS, AddForm, addSchema, ClinicsPage(), HUES_LIST, FILTERS, DoctorClaim (+48 more)
### Community 63 - "Community 63"
Cohesion: 0.06
Nodes (21): Attachment, Call, CallCenterTab(), CHANNEL_LABEL, GENDER_LABEL, MedicalItem, Message, PatientDetailPage() (+13 more)
Cohesion: 0.05
Nodes (31): formatDate(), VisitSummaryCard(), Attachment, Call, CallCenterTab(), CHANNEL_LABEL, GENDER_LABEL, MedicalItem (+23 more)
### Community 64 - "Community 64"
Cohesion: 0.29
Nodes (4): SmsWalletController, JsonResponse, Request, User
Cohesion: 0.19
Nodes (7): SmsWalletController, SmsSettingsRepository, SmsSettings, JsonResponse, Request, User, ManagerRegistry
### Community 65 - "Community 65"
Cohesion: 0.08
@@ -1171,8 +1172,8 @@ Cohesion: 0.07
Nodes (30): devDependencies, @babel/core, @babel/preset-env, @babel/preset-react, @babel/preset-typescript, core-js, @csstools/postcss-oklab-function, @hotwired/stimulus (+22 more)
### Community 86 - "Community 86"
Cohesion: 0.04
Nodes (21): AppointmentExpiryServiceTest, LowTierFixesTest, SendCodeMobileRateLimitTest, ClaimsListPaginationTest, CaptchaFlowTest, ServiceItemDeleteCleanupTest, ServiceItemMultiStaffTest, ServiceItemStaffOwnershipTest (+13 more)
Cohesion: 0.05
Nodes (17): AppointmentExpiryServiceTest, DateOverrideOwnershipTest, LowTierFixesTest, SendCodeMobileRateLimitTest, ClaimsListPaginationTest, CaptchaFlowTest, ServiceItemMultiStaffTest, ServiceItemStaffOwnershipTest (+9 more)
### Community 87 - "Community 87"
Cohesion: 0.10
@@ -1259,8 +1260,8 @@ Cohesion: 0.33
Nodes (6): AppointmentController, Appointment, Doctor, JsonResponse, Request, User
### Community 108 - "Community 108"
Cohesion: 0.10
Nodes (13): CaptchaController, BaseController, CategoryController, SiteConfigController, SiteContextController, JsonResponse, JsonResponse, Request (+5 more)
Cohesion: 0.11
Nodes (12): CaptchaController, BaseController, CategoryController, CategoryImportController, SiteContextController, JsonResponse, JsonResponse, Request (+4 more)
### Community 109 - "Community 109"
Cohesion: 0.29
@@ -1359,8 +1360,8 @@ Cohesion: 0.12
Nodes (16): Endpoint ها, GET /api/v1/representation/filter/{id}, GET /api/v1/representation/filter/{representationId}, GET /api/v1/representation/my-appointments/{id}, GET /api/v1/representation/{uuid}, GET /api/v1/representation/yearly-income/{id}, GET /api/v1/representation/yearly-income/{representationId}, POST /api/v1/representations/{id}/bank-accounts (+8 more)
### Community 135 - "Community 135"
Cohesion: 0.09
Nodes (22): Appointment Settings API, Available Locations, Day Index Convention, DELETE `/api/v1/booking-setting/{uuid}`, Errors, Errors, Errors, Errors (+14 more)
Cohesion: 0.12
Nodes (16): Day Index Convention, DELETE `/api/v1/booking-setting/{uuid}`, Errors, Errors, Errors, Errors, GET `/api/v1/appointment-settings/weekly-schedule/{uuid}`, PATCH `/api/v1/appointment-settings/weekly-schedule/{uuid}` (+8 more)
### Community 136 - "Community 136"
Cohesion: 0.12
@@ -1375,8 +1376,8 @@ Cohesion: 0.38
Nodes (4): BillingController, JsonResponse, Request, User
### Community 139 - "Community 139"
Cohesion: 0.18
Nodes (6): UserProfileController, InputValidator, JsonResponse, Request, User, UserProfile
Cohesion: 0.35
Nodes (5): UserProfileController, JsonResponse, Request, User, UserProfile
### Community 140 - "Community 140"
Cohesion: 0.12
@@ -1490,6 +1491,10 @@ Nodes (14): select listها, select بیمه در فرم مراجعه, تعدا
Cohesion: 0.10
Nodes (20): api.ir (استعلام هویت — Shahkar / IbanMatch), اتصال به دیتابیس‌های مستقل (الزامی), اسرار (الزامی — قبل از اولین دیپلوی), امنیت و منابع, بررسی سلامت, دامنه‌ها و CORS, دیپلوی‌های بعدی, راهنمای دیپلوی ClinicPro (Coolify + Docker Compose) (+12 more)
### Community 169 - "Community 169"
Cohesion: 0.16
Nodes (6): PatientFinancialsTest, WalletTransactionRepository, WalletTransactionsPaginationTest, ManagerRegistry, User, WalletTransaction
### Community 170 - "Community 170"
Cohesion: 0.13
Nodes (14): ایندکس‌ها, جدول: clinics, جدول: doctor_addresses, جدول: doctor_cities (ManyToMany pivot), جدول: doctor_secretaries, جدول: doctor_services (ManyToMany pivot), جدول: doctor_specialties (ManyToMany pivot), جدول: doctor_states (ManyToMany pivot) (+6 more)
@@ -1911,8 +1916,8 @@ Cohesion: 0.29
Nodes (4): ServiceItemRepository, ManagerRegistry, ServiceItem, ServiceSection
### Community 286 - "Community 286"
Cohesion: 0.09
Nodes (24): formatDate(), formatDateTime(), toDate(), ALL_STATUSES, AppointmentDetailPage(), timeOf(), VisitDetailModal(), PAYMENT_TYPE_LABELS (+16 more)
Cohesion: 0.06
Nodes (35): FreeVisitPrice(), Pricing, Contract, InsuranceOption, KIND_LABEL, cn(), formatDateTime(), iranMobileOptionalSchema (+27 more)
### Community 287 - "Community 287"
Cohesion: 0.31
@@ -1967,8 +1972,8 @@ Cohesion: 0.22
Nodes (9): require-dev, phpstan/phpstan, phpstan/phpstan-doctrine, phpstan/phpstan-symfony, phpunit/phpunit, symfony/browser-kit, symfony/css-selector, symfony/debug-bundle (+1 more)
### Community 300 - "Community 300"
Cohesion: 0.42
Nodes (3): PreRegistrationController, JsonResponse, Request
Cohesion: 0.19
Nodes (6): HealthController, PreRegistrationController, EntityManagerInterface, JsonResponse, Request, JsonResponse
### Community 301 - "Community 301"
Cohesion: 0.15
@@ -2079,8 +2084,8 @@ Cohesion: 0.22
Nodes (8): Query های جدید, بیماران منحصربه‌فرد در بازه, درآمد بر اساس روز (از patient_sessions), فروش اشتراک بر اساس پنل (admin), نوبت‌ها بر اساس روز (admin chart), نکات مهم, هیچ migration لازم نیست, پایگاه داده — تسک ۱۶: داشبورد هوشمند
### Community 333 - "Community 333"
Cohesion: 0.25
Nodes (7): DELETE `/api/v1/clinic-pro/doctor-address/{id}`, Doctor API, Errors, GET `/api/v1/doctors`, Query Parameters, Response `200`, Response `200`
Cohesion: 0.04
Nodes (49): DELETE `/api/v1/clinic-pro/doctor-address/{id}`, DELETE `/api/v1/doctor/{uuid}`, Doctor API, Errors, Errors, Errors, Errors, Errors (+41 more)
### Community 334 - "Community 334"
Cohesion: 0.25
@@ -2335,8 +2340,8 @@ Cohesion: 0.11
Nodes (17): بازطراحی معماری پرداخت — سرویس‌محور، امن، توسعه‌پذیر (Backend), تست دستی (ddev، در حالت `payment_test_mode=1`), خروجی نهایی (طبق spec — در گزارش اجرا ارائه شود), زمینه, فایل‌های مرتبط, مشکل / هدف, نکات مهم, وضعیت فعلی (+9 more)
### Community 407 - "Community 407"
Cohesion: 0.27
Nodes (8): MessageBusInterface, MockObject, SmsServiceLookupOnlyTest, SmsLogRepository, SmsMessageTemplateRepository, SmsService, SmsTextResolver, KavehNegarProvider
Cohesion: 0.17
Nodes (11): MessageBusInterface, MockObject, SmsLogRepository, SmsServiceLookupOnlyTest, SmsLog, SmsLogRepository, SmsMessageTemplateRepository, SmsService (+3 more)
### Community 410 - "Community 410"
Cohesion: 0.47
@@ -2348,12 +2353,16 @@ Nodes (20): edge cases, خلاصهٔ خطاها و اولویت, راه‌حل,
### Community 416 - "Community 416"
Cohesion: 0.06
Nodes (42): grid, PatientFormOptions, patientFormSchema, PatientFormValues, Props, baseValues, options, dateStrToTs() (+34 more)
Nodes (41): grid, PatientFormOptions, patientFormSchema, PatientFormValues, Props, baseValues, options, dateStrToTs() (+33 more)
### Community 418 - "Community 418"
Cohesion: 0.17
Nodes (11): دیپلوی ClinicPro روی Coolify (Docker Compose), رفع اشکال, مراحل دیپلوی, معماری دیپلوی, نکات عملیاتی, چند دامنه فرانت‌اند (مهم), ۱. ساخت Resource در Coolify, ۲. اختصاص دامنه (+3 more)
### Community 421 - "Community 421"
Cohesion: 0.18
Nodes (4): RanginehProvider, SmsService, SendSmsMessage, SmsProviderInterface
### Community 422 - "Community 422"
Cohesion: 0.12
Nodes (15): راه‌حل, راه‌حل, راه‌حل, رفع زوم نقشه در افزودن آدرس + کپچا و موبایل در claim + حذف پروفایل توسط مالک, ریشه‌ها, زمینه, فایل‌های مرتبط, نکات مهم (+7 more)
@@ -2371,21 +2380,17 @@ Cohesion: 0.12
Nodes (16): backend (آماده — فقط annotation/doc ناقص), افزودن فیلد «تاریخ شروع فعالیت» (سال تجربه) در پنل ادمین با تقویم شمسی, زمینه, فایل‌های مرتبط, فرم ساخت پزشک — `DoctorFormPage.tsx` (خط ~282), فرم ویرایش پزشک — `DoctorDetailPage.tsx` (وضعیت فعلی، بدون فیلد تاریخ), مشکل / هدف, نکات مهم (+8 more)
### Community 433 - "Community 433"
Cohesion: 0.05
Nodes (33): AbstractAuthenticator, AuthenticationException, ErrorCodes, AuthController, ClinicServiceController, PatientController, ExceptionSubscriber, SecurityHeadersSubscriber (+25 more)
Cohesion: 0.21
Nodes (7): ErrorCodes, PatientController, JsonResponse, PatientRecord, PatientSession, Request, User
### Community 435 - "Community 435"
Cohesion: 0.16
Nodes (10): Command, CancelExpiredAppointmentsCommand, FixIrimcNamesCommand, PruneLogsCommand, InputInterface, OutputInterface, InputInterface, OutputInterface (+2 more)
Cohesion: 0.18
Nodes (10): Command, CancelExpiredAppointmentsCommand, PruneLogsCommand, SeedSmsMessageTemplatesCommand, InputInterface, OutputInterface, InputInterface, OutputInterface (+2 more)
### Community 436 - "Community 436"
Cohesion: 0.43
Nodes (3): SmsTemplateRepository, SmsTemplate, ManagerRegistry
### Community 438 - "Community 438"
Cohesion: 0.23
Nodes (5): AbstractMigration, Schema, Version20260609134741, Schema, Version20260614181657
### Community 439 - "Community 439"
Cohesion: 0.17
Nodes (11): زمینه, صفحه Twig دعوت پزشک + کوتاه‌کردن URL پیامک, فایل‌های مرتبط, مشکل / هدف, نکات مهم, وضعیت فعلی, وظایف, ۱. کوتاه‌کردن توکن دعوت (+3 more)
@@ -2518,17 +2523,13 @@ Nodes (3): PatientMedicalRecord, PatientRecord, self
Cohesion: 0.12
Nodes (15): `Modal.tsx` (بدون Portal), `PersianCalendar.tsx` (buttonها بدون `type`) — نمونه‌ها, باگ ۱ — علت, باگ ۲ — علت, رفع دو باگ Modal و تقویم شمسی در پنل ادمین, زمینه, فایل‌های مرتبط, مشکل / هدف (+7 more)
### Community 492 - "Community 492"
Cohesion: 0.18
Nodes (4): KavehNegarProvider, SmsService, SendSmsMessage, SmsProviderInterface
### Community 493 - "Community 493"
Cohesion: 0.20
Nodes (9): Backend Audit Backlog — ClinicPro, ☐ CRITICAL, ✅ DONE (committed on backend-audit), ☐ EPICS (design debt — cross-repo, defer; do NOT quick-fix), ☐ HIGH, ☐ LOW, ☐ MEDIUM, Progress (this audit session) (+1 more)
### Community 494 - "Community 494"
Cohesion: 0.43
Nodes (3): CategoryImportController, JsonResponse, Request
Cohesion: 0.04
Nodes (44): ALL_STATUSES, AppointmentDetailPage(), timeOf(), Form, REFERRAL_OPTIONS, schema, EMPTY, TagDots() (+36 more)
### Community 495 - "Community 495"
Cohesion: 0.12
@@ -2670,6 +2671,10 @@ Nodes (15): `MellatGateway.php` — ثابت‌ها و مسیر prod فعلی (P
Cohesion: 0.15
Nodes (12): اجبار ارسال همه پیامک‌ها از طریق Kavenegar VerifyLookup (حذف مسیر send.json خام), زمینه, فایل‌های مرتبط, مشکل / هدف, نکات مهم, وضعیت فعلی, وظایف, پروژه (+4 more)
### Community 539 - "Community 539"
Cohesion: 0.06
Nodes (23): CityForm, citySchema, ImportError, InsuranceForm, insuranceSchema, LogoUploadField(), ProvinceForm, provinceSchema (+15 more)
### Community 543 - "Community 543"
Cohesion: 0.25
Nodes (8): ثبت‌نام دکتر — از طریق نماینده, ثبت‌نام دکتر — از طریق کلینیک, ثبت‌نام دکتر — مستقل, ۱. معرفی محصول, ۱.۱ نقش‌های سیستم, ۱.۲ فلوهای عملیاتی اصلی, ۱.۳ پلن‌های اشتراک, ۱.۴ سیستم پیامک
@@ -2818,6 +2823,10 @@ Nodes (3): Entity: Secretary, ساختار فایل‌ها, معماری — ت
Cohesion: 0.50
Nodes (3): Entity: Payment, ساختار فایل‌ها, معماری — تسک ۱۵: ماژول پرداخت
### Community 593 - "Community 593"
Cohesion: 0.22
Nodes (5): AuthController, RateLimiterFactory, JsonResponse, Request, User
### Community 596 - "Community 596"
Cohesion: 0.29
Nodes (3): FinancialBreakdown, Payment, User
@@ -2847,8 +2856,8 @@ Cohesion: 0.18
Nodes (10): ایمپورت پزشکان نظام پزشکی به کلینیک‌پرو و مدیریت مالکیت پروفایل, ۱. مسئله و محدودیت‌ها, ۲. مدل مالکیت پروفایل, ۳. راه‌حل انتخاب‌شده و دلیل آن, ۴. تغییرات بک‌اند (clinicpro), ۵. جریان کرالر (pipeline.py), ۶. نحوه‌ی اجرا, ۷. نکته‌ی مهم: captcha در لاگین (+2 more)
### Community 607 - "Community 607"
Cohesion: 0.34
Nodes (5): RepresentationController, JsonResponse, Representation, Request, User
Cohesion: 0.17
Nodes (6): RepresentationController, InputValidator, JsonResponse, Representation, Request, User
### Community 612 - "Community 612"
Cohesion: 0.67
@@ -2867,8 +2876,8 @@ Cohesion: 0.39
Nodes (4): FinancialBreakdown, FinancialBreakdownRepository, ManagerRegistry, Payment
### Community 633 - "Community 633"
Cohesion: 0.08
Nodes (28): useSubscription(), AdminLayout(), avatarBg(), buildSections(), HUES, Props, ROLE_LABELS, Section (+20 more)
Cohesion: 0.06
Nodes (37): useSubscription(), AdminLayout(), avatarBg(), buildSections(), HUES, Props, ROLE_LABELS, Section (+29 more)
### Community 634 - "Community 634"
Cohesion: 0.47
@@ -2919,8 +2928,8 @@ Cohesion: 0.20
Nodes (10): Errors (payment refund/reverse/detail), GET `/api/v1/admin/payments`, GET `/api/v1/admin/payments/{uuid}`, Payment Management, POST `/api/v1/admin/payments/{uuid}/refund`, POST `/api/v1/admin/payments/{uuid}/reverse`, Query Parameters, Query Parameters (تکمیل) (+2 more)
### Community 658 - "Community 658"
Cohesion: 0.48
Nodes (3): SmsSettingsRepository, SmsSettings, ManagerRegistry
Cohesion: 0.32
Nodes (6): ClinicServiceController, JsonResponse, Request, ServiceItem, ServiceSection, User
### Community 659 - "Community 659"
Cohesion: 0.31
@@ -2955,8 +2964,8 @@ Cohesion: 0.38
Nodes (5): Rate, RateRepository, Doctor, ManagerRegistry, User
### Community 681 - "Community 681"
Cohesion: 0.40
Nodes (5): Errors, GET `/api/v1/clinic/my-doctor/{doctorUuid}`, Path Parameters, Response `200`, Schedule Fields Notes
Cohesion: 0.29
Nodes (6): AbstractAuthenticator, Passport, PasswordAuthenticator, Request, Response, TokenInterface
### Community 684 - "Community 684"
Cohesion: 0.40
@@ -2970,6 +2979,10 @@ Nodes (5): GET `/api/v1/admin/comments`, GET `/api/v1/admin/rates`, Query Parame
Cohesion: 0.38
Nodes (3): PurgeDoctorsCommand, InputInterface, OutputInterface
### Community 689 - "Community 689"
Cohesion: 0.21
Nodes (6): AuthenticationException, ExceptionSubscriber, SecurityHeadersSubscriber, EventSubscriberInterface, ExceptionEvent, ResponseEvent
### Community 690 - "Community 690"
Cohesion: 0.50
Nodes (4): Error Codes, POST `/api/v1/pre-registration`, Request Body, Response `200`
@@ -2978,6 +2991,10 @@ Nodes (4): Error Codes, POST `/api/v1/pre-registration`, Request Body, Response
Cohesion: 0.12
Nodes (16): Errors, Errors, Errors, GET `/api/v1/admin/representations`, GET `/api/v1/admin/representations/{uuid}/appointments`, GET `/api/v1/admin/representations/{uuid}/doctors`, POST `/api/v1/admin/representations/{uuid}/doctors`, Query Parameters (+8 more)
### Community 694 - "Community 694"
Cohesion: 0.23
Nodes (5): AbstractMigration, Schema, Version20260610175105, Schema, Version20260615203529
### Community 695 - "Community 695"
Cohesion: 0.67
Nodes (3): DELETE `/api/v1/sms/template/{uuid}`, Errors, Response `200`
@@ -3015,16 +3032,16 @@ Cohesion: 0.50
Nodes (4): Errors, POST `/api/v1/user/register`, Request Body, Response `201`
### Community 715 - "Community 715"
Cohesion: 0.47
Nodes (3): SeedSmsMessageTemplatesCommand, InputInterface, OutputInterface
Cohesion: 0.36
Nodes (3): DoctorServiceController, JsonResponse, Request
### Community 716 - "Community 716"
Cohesion: 0.50
Nodes (4): Errors, GET `/oauth/userinfo`, Headers, Response `200`
### Community 717 - "Community 717"
Cohesion: 0.36
Nodes (3): TenantServiceCoverageRepository, ManagerRegistry, TenantServiceCoverage
Cohesion: 0.12
Nodes (6): ServiceItemDeleteCleanupTest, ServiceCoverageNPlusOneTest, TenantInsuranceCleanupTest, TenantServiceCoverageRepository, ManagerRegistry, TenantServiceCoverage
### Community 718 - "Community 718"
Cohesion: 0.50
@@ -3038,10 +3055,6 @@ Nodes (3): Altcha(), AltchaProps, IntrinsicElements
Cohesion: 0.50
Nodes (4): Errors, POST `/api/v1/admin/insurance`, Request Body (`application/json`), Response `201`
### Community 724 - "Community 724"
Cohesion: 0.40
Nodes (5): Errors, PATCH `/api/v1/doctor/{uuid}`, Path Parameters, Request Body (`application/json`), Response `200`
### Community 725 - "Community 725"
Cohesion: 0.40
Nodes (5): 32. 🔵 `POST` post, Request Body, مثال Request, هدرهای اضافی, پاسخ‌ها
@@ -3127,12 +3140,12 @@ Cohesion: 0.50
Nodes (4): Errors, PATCH `/api/v1/insurance/{id}`, Request Body, Response `200`
### Community 758 - "Community 758"
Cohesion: 0.05
Nodes (29): AdminCharts, AdminDashboard(), AdminRecent, AdminStats, APPT_CLS, APPT_COLOR, APPT_LABEL, ApptRow (+21 more)
Cohesion: 0.40
Nodes (3): Props, StatTone, TONE
### Community 759 - "Community 759"
Cohesion: 0.38
Nodes (3): RepositoryClassMappingTest, KernelTestCase, DbLoggerTest
Cohesion: 0.20
Nodes (4): RepositoryClassMappingTest, KernelTestCase, LoggerInterface, DbLoggerTest
### Community 760 - "Community 760"
Cohesion: 0.50
@@ -3155,8 +3168,8 @@ Cohesion: 0.43
Nodes (3): SmsMessageController, JsonResponse, Request
### Community 765 - "Community 765"
Cohesion: 0.48
Nodes (3): DoctorInsuranceRepository, DoctorInsurance, ManagerRegistry
Cohesion: 0.51
Nodes (3): AppointmentWorkflowFieldsTest, Appointment, Doctor
### Community 766 - "Community 766"
Cohesion: 0.40
@@ -3207,8 +3220,8 @@ Cohesion: 0.67
Nodes (3): Errors, POST `/api/v1/sms/send` — ⛔ غیرفعال (Deprecated), Response `422` (همیشه)
### Community 778 - "Community 778"
Cohesion: 0.43
Nodes (3): SmsLogRepository, SmsLog, ManagerRegistry
Cohesion: 0.36
Nodes (4): SiteConfigController, JsonResponse, Request, User
### Community 779 - "Community 779"
Cohesion: 0.67
@@ -3231,44 +3244,36 @@ Cohesion: 0.50
Nodes (4): 45. 🔵 `POST` post, مثال Request, هدرهای اضافی, پاسخ‌ها
### Community 787 - "Community 787"
Cohesion: 0.40
Nodes (5): Errors, PATCH `/api/v1/clinic-pro/doctor-address/{id}`, Path Parameters, Request Body, Response `200`
Cohesion: 0.22
Nodes (3): AppException, SlotTakenException, RuntimeException
### Community 789 - "Community 789"
Cohesion: 0.17
Nodes (5): Authentication, ClinicPro — API Documentation Index, Error Code Reference, Modules, Standard Response Envelope
### Community 790 - "Community 790"
Cohesion: 0.29
Nodes (6): Appointment Settings API, Available Locations, Errors, `GET /api/v1/appointment-settings/available-locations/{doctorUuid}`, Response `200`, Slot Calculation Logic (Reference)
### Community 791 - "Community 791"
Cohesion: 0.38
Nodes (3): FixIrimcNamesCommand, InputInterface, OutputInterface
### Community 794 - "Community 794"
Cohesion: 0.50
Nodes (4): DELETE `/api/v1/doctor/{uuid}`, Errors, Path Parameters, Response `200`
### Community 795 - "Community 795"
Cohesion: 0.50
Nodes (4): Errors, POST `/api/v1/doctor`, Request Body (`application/json`), Response `201`
### Community 796 - "Community 796"
Cohesion: 0.50
Nodes (4): Errors, GET `/api/v1/doctor/{uuid}`, Path Parameters, Response `200`
### Community 797 - "Community 797"
Cohesion: 0.50
Nodes (4): Errors, POST `/file/upload/clinic_pro/doctor/field_image`, Request, Response `200`
### Community 798 - "Community 798"
Cohesion: 0.50
Nodes (4): Errors, POST `/api/v1/clinic-pro/doctor-address`, Request Body, Response `201`
Cohesion: 0.43
Nodes (3): InvoiceItemRepository, InvoiceItem, ManagerRegistry
### Community 799 - "Community 799"
Cohesion: 0.50
Nodes (4): Errors, Path Parameters, POST `/api/v1/clinic-pro/doctor-address/from-clinic/{clinicUuid}`, Response `201`
Cohesion: 0.53
Nodes (3): PaymentLog, PaymentLogRepository, ManagerRegistry
### Community 801 - "Community 801"
Cohesion: 0.47
Nodes (6): formatPersianDate(), gToJ(), jFirstDayOfWeek(), PersianDateInput(), todayGregorian(), toPersianNums()
### Community 804 - "Community 804"
Cohesion: 0.67
Nodes (3): GET `/api/v1/clinic-pro/doctor-addresses/{doctorId}`, Path Parameters, Response `200`
Cohesion: 0.53
Nodes (3): SessionServiceRepository, ManagerRegistry, SessionService
### Community 805 - "Community 805"
Cohesion: 0.40
@@ -3282,6 +3287,10 @@ Nodes (5): DELETE `/api/v1/patient/call/{uuid}`, Errors, GET `/api/v1/patient/{u
Cohesion: 0.40
Nodes (5): Errors, GET `/api/v1/patient/{uuid}/payments`, GET `/api/v1/patient/{uuid}/wallet`, GET `/api/v1/patient/{uuid}/wallet/transactions`, مالی بیمار (Financials: پرداخت / تراکنش / کیف‌پول)
### Community 808 - "Community 808"
Cohesion: 0.40
Nodes (5): Errors, Path Parameters, POST `/api/v1/doctor/invitation/{invUuid}/respond`, Request Body, Response `200`
### Community 809 - "Community 809"
Cohesion: 0.40
Nodes (5): addMinutes(), calcSlotCount(), hasOverlap(), parseMinutes(), SessionEditor()
@@ -3301,22 +3310,22 @@ Nodes (3): 36. 🟢 `GET` get my rate, هدرهای اضافی, پاسخ‌ها
## Knowledge Gaps
- **4314 isolated node(s):** `ALLOWED_ROLES`, `Pricing`, `ImageCropModalProps`, `options`, `baseValues` (+4309 more)
These have ≤1 connection - possible missing edges or undocumented components.
- **183 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes.
- **182 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes.
## Suggested Questions
_Questions this graph is uniquely positioned to answer:_
- **Why does `Altcha` connect `Community 367` to `Community 485`, `Community 719`?**
_High betweenness centrality (0.081) - this node is a cross-community bridge._
- **Why does `BaseController` connect `Community 108` to `Community 764`, `Community 6`, `Community 7`, `Community 265`, `Community 138`, `Community 139`, `Community 14`, `Community 654`, `Community 655`, `Community 15`, `Community 20`, `Community 22`, `Community 26`, `Community 164`, `Community 295`, `Community 424`, `Community 300`, `Community 433`, `Community 59`, `Community 64`, `Community 75`, `Community 77`, `Community 607`, `Community 736`, `Community 480`, `Community 739`, `Community 230`, `Community 104`, `Community 107`, `Community 109`, `Community 494`, `Community 499`, `Community 245`, `Community 121`, `Community 122`, `Community 252`?**
_High betweenness centrality (0.050) - this node is a cross-community bridge._
- **Why does `Version20260705070546` connect `Community 646` to `Community 438`?**
_High betweenness centrality (0.030) - this node is a cross-community bridge._
_High betweenness centrality (0.078) - this node is a cross-community bridge._
- **Why does `BaseController` connect `Community 108` to `Community 764`, `Community 6`, `Community 265`, `Community 138`, `Community 778`, `Community 139`, `Community 14`, `Community 654`, `Community 655`, `Community 15`, `Community 658`, `Community 20`, `Community 22`, `Community 26`, `Community 164`, `Community 295`, `Community 424`, `Community 300`, `Community 433`, `Community 59`, `Community 64`, `Community 75`, `Community 715`, `Community 77`, `Community 593`, `Community 607`, `Community 736`, `Community 480`, `Community 739`, `Community 230`, `Community 104`, `Community 107`, `Community 109`, `Community 499`, `Community 245`, `Community 121`, `Community 122`, `Community 252`?**
_High betweenness centrality (0.041) - this node is a cross-community bridge._
- **Why does `Version20260705070546` connect `Community 646` to `Community 694`?**
_High betweenness centrality (0.029) - this node is a cross-community bridge._
- **What connects `ALLOWED_ROLES`, `Pricing`, `ImageCropModalProps` to the rest of the system?**
_4314 weakly-connected nodes found - possible documentation gaps or missing edges._
- **Should `Community 0` be split into smaller, more focused modules?**
_Cohesion score 0.07394957983193277 - nodes in this community are weakly interconnected._
_Cohesion score 0.06342780026990553 - nodes in this community are weakly interconnected._
- **Should `Community 1` be split into smaller, more focused modules?**
_Cohesion score 0.02857142857142857 - nodes in this community are weakly interconnected._
_Cohesion score 0.028985507246376812 - nodes in this community are weakly interconnected._
- **Should `Community 2` be split into smaller, more focused modules?**
_Cohesion score 0.09523809523809523 - nodes in this community are weakly interconnected._