chore: update graphify graph

This commit is contained in:
hamed
2026-07-16 10:10:56 +03:30
parent 4642506c0f
commit 08aa3a78b8
13 changed files with 1902 additions and 1211 deletions
+111 -162
View File
@@ -1,16 +1,16 @@
# Graph Report - clinicpro (2026-07-16)
## Corpus Check
- 965 files · ~678,683 words
- 967 files · ~679,847 words
- Verdict: corpus is large enough that graph structure adds value.
## Summary
- 11292 nodes · 16584 edges · 876 communities (679 shown, 197 thin omitted)
- Extraction: 98% EXTRACTED · 2% INFERRED · 0% AMBIGUOUS · INFERRED: 364 edges (avg confidence: 0.8)
- 11314 nodes · 16632 edges · 869 communities (668 shown, 201 thin omitted)
- Extraction: 98% EXTRACTED · 2% INFERRED · 0% AMBIGUOUS · INFERRED: 367 edges (avg confidence: 0.8)
- Token cost: 0 input · 0 output
## Graph Freshness
- Built from commit: `3e8126c5`
- Built from commit: `4642506c`
- Run `git rev-parse HEAD` and compare to check if the graph is stale.
- Run `graphify update .` after code changes (no API cost).
@@ -848,13 +848,8 @@
- [[_COMMUNITY_Community 847|Community 847]]
- [[_COMMUNITY_Community 848|Community 848]]
- [[_COMMUNITY_Community 849|Community 849]]
- [[_COMMUNITY_Community 850|Community 850]]
- [[_COMMUNITY_Community 851|Community 851]]
- [[_COMMUNITY_Community 852|Community 852]]
- [[_COMMUNITY_Community 853|Community 853]]
- [[_COMMUNITY_Community 854|Community 854]]
- [[_COMMUNITY_Community 855|Community 855]]
- [[_COMMUNITY_Community 856|Community 856]]
- [[_COMMUNITY_Community 857|Community 857]]
- [[_COMMUNITY_Community 858|Community 858]]
- [[_COMMUNITY_Community 859|Community 859]]
@@ -868,15 +863,13 @@
- [[_COMMUNITY_Community 867|Community 867]]
- [[_COMMUNITY_Community 868|Community 868]]
- [[_COMMUNITY_Community 869|Community 869]]
- [[_COMMUNITY_Community 870|Community 870]]
- [[_COMMUNITY_Community 871|Community 871]]
- [[_COMMUNITY_Community 872|Community 872]]
- [[_COMMUNITY_Community 873|Community 873]]
- [[_COMMUNITY_Community 874|Community 874]]
- [[_COMMUNITY_Community 875|Community 875]]
## God Nodes (most connected - your core abstractions)
1. `ApiTestCase` - 134 edges
1. `ApiTestCase` - 136 edges
2. `api` - 107 edges
3. `BaseController` - 92 edges
4. `useAuthStore` - 79 edges
@@ -885,32 +878,32 @@
7. `formatRial()` - 61 edges
8. `Doctor` - 60 edges
9. `formatDate()` - 57 edges
10. `Appointment` - 50 edges
10. `Appointment` - 53 edges
## Surprising Connections (you probably didn't know these)
- `PrivateRoute()` --calls--> `useAuthStore` [EXTRACTED]
assets/admin/App.tsx → assets/admin/stores/authStore.ts
- `PublicRoute()` --calls--> `useAuthStore` [EXTRACTED]
assets/admin/App.tsx → assets/admin/stores/authStore.ts
- `RoleRoute()` --calls--> `useAuthStore` [EXTRACTED]
assets/admin/App.tsx → assets/admin/stores/authStore.ts
- `PatientCaseBanner()` --calls--> `formatDate()` [EXTRACTED]
assets/admin/components/PatientCaseBanner.tsx → assets/admin/lib/utils.ts
- `digits()` --calls--> `toEnglishDigits()` [EXTRACTED]
assets/admin/components/inventory/AddItemModal.tsx → assets/admin/lib/utils.ts
- `AddPackageModal()` --calls--> `formatRial()` [EXTRACTED]
assets/admin/components/inventory/AddPackageModal.tsx → assets/admin/lib/utils.ts
- `Props` --references--> `InventoryItem` [EXTRACTED]
assets/admin/components/inventory/InventoryActionsMenu.tsx → assets/admin/hooks/useInventory.ts
- `PackageCard()` --calls--> `formatRial()` [EXTRACTED]
assets/admin/components/inventory/PackagesView.tsx → assets/admin/lib/utils.ts
- `PatientTagsCell()` --calls--> `formatNumber()` [EXTRACTED]
assets/admin/components/PatientTagsCell.tsx → assets/admin/lib/utils.ts
## Import Cycles
- None detected.
## Communities (876 total, 197 thin omitted)
## Communities (869 total, 201 thin omitted)
### Community 0 - "Community 0"
Cohesion: 0.05
Nodes (43): Breadcrumb(), PatientCaseBanner(), Tag, SessionCardData, SessionServiceCard(), ArrowLeftD(), ArrowLeftPH(), FilesServiceCalendar() (+35 more)
Cohesion: 0.04
Nodes (51): Breadcrumb(), PatientCaseBanner(), Tag, EMPTY, PatientFilters, PricingInsurance, TenantTag, PatientTagsCell() (+43 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
@@ -929,16 +922,16 @@ Cohesion: 0.06
Nodes (3): UserProfile, self, User
### Community 6 - "Community 6"
Cohesion: 0.17
Nodes (8): SettlementController, SettlementRepository, Settlement, JsonResponse, Request, User, ManagerRegistry, User
Cohesion: 0.09
Nodes (13): SettlementController, PatientFinancialsTest, SettlementRepository, WalletTransactionRepository, Settlement, JsonResponse, Request, User (+5 more)
### Community 7 - "Community 7"
Cohesion: 0.07
Nodes (5): Clinic, Collection, Doctor, self, User
Cohesion: 0.06
Nodes (8): DoctorService, Clinic, DoctorServiceRepository, Collection, Doctor, self, User, ManagerRegistry
### Community 8 - "Community 8"
Cohesion: 0.03
Nodes (70): TenantTag, get, patch, usePatient(), useUpdatePatient(), emptyFeatures(), FEATURE_KEYS, FEATURE_LABELS (+62 more)
Cohesion: 0.06
Nodes (23): CityForm, citySchema, ImportError, InsuranceForm, insuranceSchema, LogoUploadField(), ProvinceForm, provinceSchema (+15 more)
### Community 9 - "Community 9"
Cohesion: 0.04
@@ -958,7 +951,7 @@ Nodes (42): Clinic Doctor Invitation API, DELETE `/api/v1/admin/clinic/invitatio
### Community 13 - "Community 13"
Cohesion: 0.02
Nodes (117): ALLOWED_ROLES, PrivateRoute(), PublicRoute(), RoleRoute(), queryClient, toastStyle, appt, get (+109 more)
Nodes (111): appt, get, openMenu(), patch, get, post, renderDrawer(), get (+103 more)
### Community 14 - "Community 14"
Cohesion: 0.10
@@ -970,7 +963,7 @@ Nodes (7): PaymentController, Appointment, JsonResponse, Payment, Request, Respo
### Community 16 - "Community 16"
Cohesion: 0.06
Nodes (8): AppointmentCreateReserveTest, PatientSession, SmsWallet, Appointment, Collection, PatientRecord, self, SessionService
Nodes (8): PatientSession, SmsWallet, AppointmentExpiryService, Appointment, Collection, PatientRecord, self, SessionService
### Community 17 - "Community 17"
Cohesion: 0.05
@@ -990,11 +983,11 @@ Nodes (5): AdminApiController, RepresentationRepository, JsonResponse, Request,
### Community 21 - "Community 21"
Cohesion: 0.06
Nodes (41): grid, PatientFormOptions, patientFormSchema, PatientFormValues, Props, baseValues, options, dateStrToTs() (+33 more)
Nodes (42): grid, PatientFormOptions, patientFormSchema, PatientFormValues, Props, baseValues, options, dateStrToTs() (+34 more)
### Community 22 - "Community 22"
Cohesion: 0.12
Nodes (10): RatingController, Like, CommentListNPlusOneTest, LikeRepository, JsonResponse, Request, User, Comment (+2 more)
Cohesion: 0.15
Nodes (9): RatingController, Like, LikeRepository, JsonResponse, Request, User, Comment, ManagerRegistry (+1 more)
### Community 23 - "Community 23"
Cohesion: 0.05
@@ -1018,15 +1011,15 @@ Nodes (40): 55. 🟢 `GET` all tag, 56. 🟢 `GET` supplementary_insurance, 57.
### Community 28 - "Community 28"
Cohesion: 0.06
Nodes (7): Appointment, ClinicStaff, Doctor, self, ServiceItem, ServiceSection, User
Nodes (8): Appointment, ClinicStaff, Collection, 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.20
Nodes (7): Money, BillingCalculator, InvoiceService, CoverageRule, ShareBreakdown, Invoice, PatientSession
Cohesion: 0.33
Nodes (3): InvoiceService, Invoice, PatientSession
### Community 31 - "Community 31"
Cohesion: 0.06
@@ -1038,7 +1031,7 @@ Nodes (32): 10. Modal / Dialog, 11. Toast Notifications, 12. Empty States & Load
### Community 33 - "Community 33"
Cohesion: 0.05
Nodes (33): DoctorTab, StatDef, TurnsStats, td, th, CANCELLED_STATUSES, EMPTY_SLOT_CONFIG, STATUS (+25 more)
Nodes (31): DoctorTab, td, th, CANCELLED_STATUSES, EMPTY_SLOT_CONFIG, STATUS, turnStatusConfig, emptySlot (+23 more)
### Community 34 - "Community 34"
Cohesion: 0.06
@@ -1101,8 +1094,8 @@ Cohesion: 0.11
Nodes (4): Payment, Appointment, self, User
### Community 49 - "Community 49"
Cohesion: 0.04
Nodes (56): AppointmentInfoModal(), ModalKind, PickedPatient, PickerOption, toEpoch(), TransferReserveModal(), WalletChargeLink(), addMinutes() (+48 more)
Cohesion: 0.03
Nodes (54): ServiceSlot, AppointmentInfoModal(), ModalKind, PickedPatient, PickerOption, toEpoch(), TransferReserveModal(), WalletChargeLink() (+46 more)
### Community 50 - "Community 50"
Cohesion: 0.07
@@ -1118,7 +1111,7 @@ Nodes (26): الزامات UI, باگ‌فیکس صفحه نوبت‌ها, با
### Community 53 - "Community 53"
Cohesion: 0.07
Nodes (17): DoctorService, AppLogRepository, ClaimItemRepository, DoctorClaimRequestRepository, DoctorServiceRepository, PreRegistrationRepository, SessionServiceRepository, SiteConfigRepository (+9 more)
Nodes (18): AppLogRepository, PaymentLog, ClaimItemRepository, DoctorClaimRequestRepository, DoctorInsuranceRepository, InvoiceItemRepository, PaymentLogRepository, PreRegistrationRepository (+10 more)
### Community 54 - "Community 54"
Cohesion: 0.10
@@ -1153,12 +1146,12 @@ 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.13
Nodes (19): BANK_KEY, BankAccount, BankAccountInput, Pos, POS_KEY, PosInput, useBankAccounts(), useCreateBankAccount() (+11 more)
Cohesion: 0.12
Nodes (20): BANK_KEY, BankAccount, BankAccountInput, Pos, POS_KEY, PosInput, useBankAccounts(), useCreateBankAccount() (+12 more)
### Community 63 - "Community 63"
Cohesion: 0.02
Nodes (92): ServiceSlot, BookingService, BookingServicesData, Props, ApiResponse, PaginatedResponse, formatDate(), STATUS_FILTERS (+84 more)
Cohesion: 0.03
Nodes (105): ALLOWED_ROLES, PrivateRoute(), PublicRoute(), RoleRoute(), queryClient, toastStyle, PaginatedResponse, formatDate() (+97 more)
### Community 64 - "Community 64"
Cohesion: 0.19
@@ -1234,7 +1227,7 @@ Nodes (30): devDependencies, @babel/core, @babel/preset-env, @babel/preset-react
### Community 86 - "Community 86"
Cohesion: 0.04
Nodes (22): AppointmentExpiryServiceTest, BookingServicesPublicTest, DateOverrideOwnershipTest, LowTierFixesTest, SendCodeMobileRateLimitTest, ClaimsListPaginationTest, CaptchaFlowTest, ServiceItemDeleteCleanupTest (+14 more)
Nodes (21): AppointmentExpiryServiceTest, BookingServicesPublicTest, LowTierFixesTest, SendCodeMobileRateLimitTest, ClaimsListPaginationTest, CaptchaFlowTest, ServiceItemDeleteCleanupTest, ServiceItemStaffOwnershipTest (+13 more)
### Community 87 - "Community 87"
Cohesion: 0.10
@@ -1305,8 +1298,8 @@ Cohesion: 0.11
Nodes (18): `AdminApiController::paymentDetail` — الان فقط GET, `MellatGateway.php` — الگوی موجود REST/SOAP (پس از کار sandbox), `PaymentGatewayInterface.php`, `PaymentManager.php` — الگوی log و transaction, برگشت/استرداد وجه ملت از پنل ادمین (bpReversalRequest / bpRefundRequest), زمینه, فایل‌های مرتبط, نکات مهم (+10 more)
### Community 104 - "Community 104"
Cohesion: 0.35
Nodes (3): TagController, JsonResponse, Request
Cohesion: 0.18
Nodes (6): TagController, TagRepository, JsonResponse, Request, ManagerRegistry, Tag
### Community 105 - "Community 105"
Cohesion: 0.11
@@ -1669,8 +1662,8 @@ Cohesion: 0.14
Nodes (13): Endpoint ها, PATCH /api/v1/secretary/{uuid}, POST /api/v1/secretary, تسک ۱۴: ماژول منشی, توضیح, زمان تخمینی, ساختار JSON, سیستم مجوزها — Resource-Based Permissions (مقیاس‌پذیر) (+5 more)
### Community 200 - "Community 200"
Cohesion: 0.15
Nodes (6): PatientFinancialsTest, WalletTransactionRepository, WalletTransactionsPaginationTest, ManagerRegistry, User, WalletTransaction
Cohesion: 0.04
Nodes (37): Invoice, InvoiceItem, InvoiceSummaryModal(), STATUS_LABEL, CoverageRow, Draft, KIND, TenantInsurance (+29 more)
### Community 201 - "Community 201"
Cohesion: 0.10
@@ -1685,12 +1678,8 @@ Cohesion: 0.15
Nodes (12): Clinic Services API, DELETE /api/v1/service-item/{uuid}, DELETE /api/v1/service-section/{uuid}, GET /api/v1/service-items/{sectionUuid}, GET /api/v1/service-items/{uuid}/tariffs, GET /api/v1/service-sections, PATCH /api/v1/service-item/{uuid}, PATCH /api/v1/service-section/{uuid} (+4 more)
### Community 204 - "Community 204"
Cohesion: 0.04
Nodes (40): useSubscription(), AdminLayout(), avatarBg(), HUES, ProfileMenu(), Role, ROLE_LABELS, settingsPath() (+32 more)
### Community 205 - "Community 205"
Cohesion: 0.21
Nodes (4): SeedDemoDataCommand, InputInterface, OutputInterface, SymfonyStyle
Cohesion: 0.08
Nodes (30): AdminLayout(), avatarBg(), HUES, ProfileMenu(), Role, ROLE_LABELS, settingsPath(), logoutMock (+22 more)
### Community 206 - "Community 206"
Cohesion: 0.06
@@ -2013,8 +2002,8 @@ Cohesion: 0.20
Nodes (9): AdminApiController — dashboardCharts با بازه زمانی, DashboardController — اضافه کردن from/to, date range selector component:, تغییر Backend, تغییر Frontend — DashboardPage.tsx, فایل‌هایی که تغییر می‌کنند, معماری — تسک ۱۶: داشبورد هوشمند, نصب dependency: (+1 more)
### Community 294 - "Community 294"
Cohesion: 0.33
Nodes (4): PatientAttachment, PatientAttachmentRepository, ManagerRegistry, PatientRecord
Cohesion: 0.21
Nodes (5): PatientAttachmentTest, PatientAttachment, PatientAttachmentRepository, ManagerRegistry, PatientRecord
### Community 295 - "Community 295"
Cohesion: 0.20
@@ -2053,8 +2042,8 @@ Cohesion: 0.12
Nodes (16): آماده‌سازی پروژه ClinicPro برای دیپلوی روی Coolify با Docker Compose, زمینه, فایل‌های مرتبط, نکات مهم (محدودیت‌ها و edge caseها), هدف, وظایف, ۱. ساخت `Dockerfile` چندمرحله‌ای, ۱۰. ساخت راهنمای `docs/deploy/coolify.md` (+8 more)
### Community 304 - "Community 304"
Cohesion: 0.22
Nodes (9): 30. 🟢 `GET` get 🆕, 33. 🔵 `POST` image_clinic, 36. 🟢 `GET` get my rate, 6. کلینیک (Clinic), هدرهای اضافی, هدرهای اضافی, پاسخ‌ها, پاسخ‌ها (+1 more)
Cohesion: 0.04
Nodes (56): 29. 🟢 `GET` clinic list 🆕, 30. 🟢 `GET` get 🆕, 31. 🟡 `PATCH` patch, 33. 🔵 `POST` image_clinic, 34. 🔵 `POST` image logo, 35. 🟡 `PATCH` patch, 36. 🟢 `GET` get my rate, 38. 🟢 `GET` Unapproved comments (+48 more)
### Community 306 - "Community 306"
Cohesion: 0.07
@@ -2405,20 +2394,20 @@ Cohesion: 0.11
Nodes (17): بازطراحی معماری پرداخت — سرویس‌محور، امن، توسعه‌پذیر (Backend), تست دستی (ddev، در حالت `payment_test_mode=1`), خروجی نهایی (طبق spec — در گزارش اجرا ارائه شود), زمینه, فایل‌های مرتبط, مشکل / هدف, نکات مهم, وضعیت فعلی (+9 more)
### Community 407 - "Community 407"
Cohesion: 0.24
Cohesion: 0.27
Nodes (8): MessageBusInterface, MockObject, SmsServiceLookupOnlyTest, SmsLogRepository, SmsMessageTemplateRepository, SmsService, SmsTextResolver, KavehNegarProvider
### Community 410 - "Community 410"
Cohesion: 0.03
Nodes (64): FreeVisitPrice(), Pricing, buildInsurancePayload(), Contract, contractToForm(), EMPTY_FORM, InsuranceFormValues, InsuranceModal() (+56 more)
Cohesion: 0.04
Nodes (57): FreeVisitPrice(), Pricing, buildInsurancePayload(), Contract, contractToForm(), EMPTY_FORM, InsuranceFormValues, InsuranceModal() (+49 more)
### Community 414 - "Community 414"
Cohesion: 0.10
Nodes (20): edge cases, خلاصهٔ خطاها و اولویت, راه‌حل, راه‌حل, راه‌حل, راه‌حل, رفع خطاهای لاگ سرور (production) — ۱۴۰۵/۰۴/۲۰, ریشه (+12 more)
### Community 416 - "Community 416"
Cohesion: 0.09
Nodes (28): EMPTY_CATS, EMPTY_ITEMS, EMPTY_META, EMPTY_PACKAGES, EMPTY_STATS, InventoryItem, InventoryMeta, InventoryPackage (+20 more)
Cohesion: 0.05
Nodes (44): EMPTY_CATS, EMPTY_ITEMS, EMPTY_META, EMPTY_PACKAGES, EMPTY_STATS, InventoryItem, InventoryMeta, InventoryPackage (+36 more)
### Community 418 - "Community 418"
Cohesion: 0.17
@@ -2434,7 +2423,7 @@ Nodes (15): راه‌حل, راه‌حل, راه‌حل, رفع زوم نقشه
### Community 424 - "Community 424"
Cohesion: 0.03
Nodes (88): Invoice, InvoiceItem, InvoiceSummaryModal(), STATUS_LABEL, PatientTagsCell(), ServiceTariffModal(), TauriStatCards(), InventoryStats (+80 more)
Nodes (78): TauriStatCards(), PaymentConfig, PaymentGatewayInfo, usePaymentConfig(), AddPackageModal(), formatNumber(), formatRial(), emptyFeatures() (+70 more)
### Community 428 - "Community 428"
Cohesion: 0.31
@@ -2449,12 +2438,12 @@ 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.18
Nodes (10): Command, CancelExpiredAppointmentsCommand, PruneLogsCommand, SeedSmsMessageTemplatesCommand, InputInterface, OutputInterface, InputInterface, OutputInterface (+2 more)
Cohesion: 0.12
Nodes (13): Command, BackfillSurrogateRoleCommand, CancelExpiredAppointmentsCommand, CreateAdminCommand, PruneLogsCommand, InputInterface, OutputInterface, InputInterface (+5 more)
### Community 436 - "Community 436"
Cohesion: 0.12
@@ -2462,7 +2451,7 @@ Nodes (16): `book()` عمومی — الگوی درستِ موجود (کپی ا
### Community 438 - "Community 438"
Cohesion: 0.16
Nodes (7): AbstractMigration, Schema, Version20260614181657, Schema, Version20260615203529, Schema, Version20260628153625
Nodes (7): AbstractMigration, Schema, Version20260615203529, Schema, Version20260624123236, Schema, Version20260713195434
### Community 439 - "Community 439"
Cohesion: 0.17
@@ -2472,6 +2461,10 @@ Nodes (11): زمینه, صفحه Twig دعوت پزشک + کوتاه‌کردن
Cohesion: 0.11
Nodes (18): [F10] راهنمای کهنه در `CLAUDE.md`: endpoint `categorys/{bundle}` منتقل شده, [F11] داشبورد دکتر `GET /api/v1/dashboard/doctor` همیشه 500 (فیلد ناموجود در DQL) — ✅ رفع شد, [F1] phpstan: مقایسهٔ همیشه‌درست در محاسبهٔ estimated SMS — ✅ رفع شد, [F2] تست‌های PHPUnit به API خارجی Kavenegar درخواست واقعی می‌زنند, [F3] دیتابیس تست seed نشده — فقط کاربر ادمین وجود دارد, [F4] اسکریپت seeder `create_test_users.php` وجود ندارد, [F5] ادمین با JWT معتبر به `/api/doc` (Swagger UI) دسترسی ندارد (401), [F6] ناسازگاری کدهای خطا بین دامنه‌ها (+10 more)
### Community 442 - "Community 442"
Cohesion: 0.13
Nodes (12): AbstractAuthenticator, AuthenticationException, ExceptionSubscriber, SecurityHeadersSubscriber, EventSubscriberInterface, ExceptionEvent, Passport, ResponseEvent (+4 more)
### Community 444 - "Community 444"
Cohesion: 0.50
Nodes (3): Altcha(), AltchaProps, IntrinsicElements
@@ -2488,6 +2481,10 @@ Nodes (27): Bank accounts, Body, Body, Errors, Errors, Errors, Errors, Errors (+
Cohesion: 0.15
Nodes (3): DoctorClaimRequest, Doctor, User
### Community 455 - "Community 455"
Cohesion: 0.22
Nodes (5): AuthController, RateLimiterFactory, JsonResponse, Request, User
### Community 456 - "Community 456"
Cohesion: 0.15
Nodes (12): رفع افتادن مودال‌ها به پایین صفحه (portal برای همه مودال‌ها), زمینه, فایل‌های مرتبط, مشکل / هدف, نکات مهم, وضعیت فعلی, وظایف, پروژه (+4 more)
@@ -2725,8 +2722,8 @@ Cohesion: 0.13
Nodes (14): Doctor Profile Claim API (تصاحب پروفایل پزشک ایمپورت‌شده), env های مرتبط, Errors, GET `/api/v1/admin/doctor-claims`, GET `/api/v1/doctor/{uuid}/claim-info`, POST `/api/v1/admin/doctors/{uuid}/transfer`, POST `/api/v1/doctor/{uuid}/claim`, Request (+6 more)
### Community 527 - "Community 527"
Cohesion: 0.39
Nodes (3): TagRepository, ManagerRegistry, Tag
Cohesion: 0.32
Nodes (6): ClinicServiceController, JsonResponse, Request, ServiceItem, ServiceSection, User
### Community 528 - "Community 528"
Cohesion: 0.33
@@ -2937,16 +2934,16 @@ Cohesion: 0.29
Nodes (3): FinancialBreakdown, Payment, User
### Community 597 - "Community 597"
Cohesion: 0.29
Nodes (7): Configuration, Errors, GET `/api/v1/admin/sms/templates`, GET `/api/v1/sms/template/{uuid}`, Response `200`, Response `200`, SMS API
Cohesion: 0.20
Nodes (10): Configuration, Errors, GET `/api/v1/admin/sms/templates`, POST `/api/v1/admin/sms/template/{uuid}/approve`, POST `/api/v1/sms/send` — ⛔ غیرفعال (Deprecated), Request Body (`application/json`), Response `200`, Response `200` (+2 more)
### Community 599 - "Community 599"
Cohesion: 0.67
Nodes (3): Errors, POST `/api/v1/sms/template/{uuid}/submit`, Response `200`
### Community 602 - "Community 602"
Cohesion: 0.08
Nodes (25): InvoiceRowStatus, MY_PAYMENTS_LIMIT, PatientInvoiceRow, PatientInvoicesPayload, PaymentFilters, PaymentRow, PaymentRowStatus, get (+17 more)
Cohesion: 0.04
Nodes (38): InvoiceRowStatus, MY_PAYMENTS_LIMIT, PatientInvoiceRow, PatientInvoicesPayload, PaymentFilters, PaymentRow, PaymentRowStatus, get (+30 more)
### Community 603 - "Community 603"
Cohesion: 0.67
@@ -2989,8 +2986,8 @@ Cohesion: 0.12
Nodes (16): Runbook — تشخیص «ری‌استارت» سرور: recycle عادی یا خرابی واقعی؟, اقدامات تکمیلی روی سرور (خارج از repo), تأیید روی سرور — اسکریپت آماده, جدول تفسیر خروجی اسکریپت, خلاصه یک‌خطی, علامت مشکل, چرا این اتفاق می‌افتاد (و فیکس اعمال‌شده), چک‌لیست رفع (+8 more)
### Community 636 - "Community 636"
Cohesion: 0.09
Nodes (18): formatDateTime(), LogsPage(), VisitDetailModal(), SettlementDetail, SettlementDetailPage(), SmsPage(), AdminUserDetail, AVATAR_COLORS (+10 more)
Cohesion: 0.13
Nodes (12): AdminUserDetail, AVATAR_COLORS, EditForm, editSchema, GENDER_LABELS, getPrimaryRole(), MARITAL_LABELS, MEDICAL_SECTIONS (+4 more)
### Community 640 - "Community 640"
Cohesion: 0.38
@@ -3009,8 +3006,8 @@ Cohesion: 0.14
Nodes (13): اصلاح فیلتر شهر/استان در لیست عمومی پزشکان (`GET /api/v1/doctors`), زمینه, فایل‌های مرتبط, مشکل / هدف, نکات مهم, وضعیت فعلی, وظایف, پروژه (+5 more)
### Community 648 - "Community 648"
Cohesion: 0.11
Nodes (6): BillingCalculatorTest, BillingCalculator, MellatGatewayTest, ErrorCodesTest, TimezoneTest, TestCase
Cohesion: 0.15
Nodes (6): MellatGatewayTest, ErrorCodesTest, TimezoneTest, KavehNegarProviderTest, TestCase, KavehNegarProvider
### Community 649 - "Community 649"
Cohesion: 0.14
@@ -3025,8 +3022,8 @@ Cohesion: 0.31
Nodes (6): DashboardController, Clinic, DoctorSecretary, JsonResponse, Request, User
### Community 655 - "Community 655"
Cohesion: 0.37
Nodes (5): MyAppointmentsController, Doctor, JsonResponse, Request, User
Cohesion: 0.17
Nodes (6): MyAppointmentsController, InputValidator, Doctor, JsonResponse, Request, User
### Community 656 - "Community 656"
Cohesion: 0.25
@@ -3041,8 +3038,8 @@ 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 659 - "Community 659"
Cohesion: 0.43
Nodes (3): InvoiceItemRepository, InvoiceItem, ManagerRegistry
Cohesion: 0.16
Nodes (6): BillingCalculatorTest, BillingCalculator, Money, BillingCalculator, CoverageRule, ShareBreakdown
### Community 660 - "Community 660"
Cohesion: 0.25
@@ -3124,6 +3121,10 @@ Nodes (8): Error Codes, Errors, POST `/api/v1/user/change-password`, POST `/api/
Cohesion: 0.12
Nodes (15): API کامپوننت `SearchableSelect` (مرجع — تغییرش نده), الگوی A — controlled با `value` + `onChange` (بیشترین), الگوی B — گزینه‌های وابسته / disabled, الگوی C — React Hook Form با `register` (خاص — نیازمند Controller), جایگزینی همه‌ی `<select>` بومی پنل ادمین با `SearchableSelect`, زمینه, فایل‌های دارای `<select>` بومی (۱۶ فایل، ~۳۵ مورد), نکات مهم (+7 more)
### Community 710 - "Community 710"
Cohesion: 0.35
Nodes (4): AppointmentMultiServiceTest, Appointment, Doctor, ServiceItem
### Community 716 - "Community 716"
Cohesion: 0.12
Nodes (15): رفع باگ: نوبت‌های رزروشده در سایت عمومی «آزاد» نمایش داده می‌شوند, زمینه, فایل‌های مرتبط, مشکل / هدف, نکات مهم, وضعیت فعلی, وظایف, پروژه (+7 more)
@@ -3136,6 +3137,10 @@ Nodes (3): TenantServiceCoverageRepository, ManagerRegistry, TenantServiceCovera
Cohesion: 0.21
Nodes (6): ClaimAmountBoundsTest, ClaimsListNPlusOneTest, ClaimItem, Claim, Doctor, User
### Community 724 - "Community 724"
Cohesion: 0.22
Nodes (3): AppException, SlotTakenException, RuntimeException
### Community 725 - "Community 725"
Cohesion: 0.43
Nodes (3): SmsTemplateRepository, SmsTemplate, ManagerRegistry
@@ -3157,8 +3162,8 @@ Cohesion: 0.15
Nodes (12): call siteهای فعلی PersianDateInput (نباید تغییر کنند — فقط برای اطمینان از سازگاری Props), زمینه, فایل‌های مرتبط, مشکل / هدف, نکات مهم, همه‌ی تقویم‌های پنل ادمین باید شمسی باشند (رفع تقویم میلادی PersianDateInput), وضعیت فعلی (کد مشکل‌دار), وظایف (+4 more)
### Community 734 - "Community 734"
Cohesion: 0.40
Nodes (5): 31. 🟡 `PATCH` patch, Request Body, مثال Request, هدرهای اضافی, پاسخ‌ها
Cohesion: 0.39
Nodes (4): FinancialBreakdown, FinancialBreakdownRepository, ManagerRegistry, Payment
### Community 738 - "Community 738"
Cohesion: 0.50
@@ -3189,8 +3194,8 @@ Cohesion: 0.50
Nodes (4): Errors, POST `/api/v1/user/send-code`, Request Body, Response `200`
### Community 751 - "Community 751"
Cohesion: 0.38
Nodes (3): RepositoryClassMappingTest, KernelTestCase, DbLoggerTest
Cohesion: 0.15
Nodes (8): HealthController, RepositoryClassMappingTest, EntityManagerInterface, KernelTestCase, DbLoggerTest, InputInterface, OutputInterface, JsonResponse
### Community 752 - "Community 752"
Cohesion: 0.43
@@ -3245,21 +3250,13 @@ Cohesion: 0.40
Nodes (5): addMinutes(), calcSlotCount(), hasOverlap(), parseMinutes(), SessionEditor()
### Community 773 - "Community 773"
Cohesion: 0.12
Nodes (6): InventoryPackage, InventoryPackageItem, InventoryService, Collection, self, InventoryPackage
Cohesion: 0.17
Nodes (4): InventoryPackage, InventoryPackageItem, Collection, self
### Community 774 - "Community 774"
Cohesion: 0.50
Nodes (4): Errors, POST `/oauth/token`, Request Body, Response `200`
### Community 776 - "Community 776"
Cohesion: 0.38
Nodes (3): CreateAdminCommand, InputInterface, OutputInterface
### Community 777 - "Community 777"
Cohesion: 0.67
Nodes (3): Errors, POST `/api/v1/sms/send` — ⛔ غیرفعال (Deprecated), Response `422` (همیشه)
### Community 778 - "Community 778"
Cohesion: 0.43
Nodes (5): BeforeInstallPromptEvent, usePwaInstall(), PwaInstallBanner(), detectIOS(), PwaLoginCard()
@@ -3273,8 +3270,8 @@ Cohesion: 0.24
Nodes (4): InventoryPackageItem, InventoryItem, InventoryPackage, self
### Community 782 - "Community 782"
Cohesion: 0.14
Nodes (8): UniqueConstraintsTest, FinancialBreakdown, FinancialBreakdownRepository, CommissionService, ManagerRegistry, Payment, Payment, Representation
Cohesion: 0.47
Nodes (3): CommissionService, Payment, Representation
### Community 783 - "Community 783"
Cohesion: 0.31
@@ -3304,21 +3301,13 @@ Nodes (4): Errors, POST `/api/v1/auth/switch-context`, Request Body, Response `2
Cohesion: 0.40
Nodes (5): 37. 🔵 `POST` post, Request Body, مثال Request, هدرهای اضافی, پاسخ‌ها
### Community 795 - "Community 795"
Cohesion: 0.38
Nodes (3): BackfillSurrogateRoleCommand, InputInterface, OutputInterface
### Community 796 - "Community 796"
Cohesion: 0.50
Nodes (4): Errors, POST `/api/v1/notification-mobile/verify`, Request Body, Response `200`
### Community 797 - "Community 797"
Cohesion: 0.40
Nodes (5): 41. 🟡 `PATCH` patch, Request Body, مثال Request, هدرهای اضافی, پاسخ‌ها
### Community 799 - "Community 799"
Cohesion: 0.53
Nodes (3): PaymentLog, PaymentLogRepository, ManagerRegistry
Cohesion: 0.47
Nodes (3): SeedSmsMessageTemplatesCommand, InputInterface, OutputInterface
### Community 801 - "Community 801"
Cohesion: 0.50
@@ -3352,17 +3341,13 @@ Nodes (5): Errors, GET `/api/v1/clinic/my-doctor/{doctorUuid}`, Path Parameters,
Cohesion: 0.43
Nodes (3): SmsMessageController, JsonResponse, Request
### Community 816 - "Community 816"
Cohesion: 0.67
Nodes (3): POST `/api/v1/admin/sms/template/{uuid}/approve`, Request Body (`application/json`), Response `200`
### Community 817 - "Community 817"
Cohesion: 0.40
Nodes (5): Errors, PATCH `/api/v1/doctor/{uuid}`, Path Parameters, Request Body (`application/json`), Response `200`
### Community 820 - "Community 820"
Cohesion: 0.48
Nodes (3): DoctorInsuranceRepository, DoctorInsurance, ManagerRegistry
Cohesion: 0.53
Nodes (3): SessionServiceRepository, ManagerRegistry, SessionService
### Community 823 - "Community 823"
Cohesion: 0.40
@@ -3380,10 +3365,6 @@ Nodes (5): Error Responses, GET `/api/v1/my/appointment/patient-lookup`, Query P
Cohesion: 0.40
Nodes (5): Errors, PATCH `/api/v1/appointment/{uuid}/status`, Path Parameters, Request Body, Response `200`
### Community 827 - "Community 827"
Cohesion: 0.40
Nodes (5): 35. 🟡 `PATCH` patch, Request Body, مثال Request, هدرهای اضافی, پاسخ‌ها
### Community 828 - "Community 828"
Cohesion: 0.50
Nodes (4): GET `/api/v1/admin/secretaries`, Query Parameters, Response `200`, Secretary Management
@@ -3440,46 +3421,18 @@ Nodes (4): Errors, GET `/api/v1/representation/doctors`, Query Parameters, Respo
Cohesion: 0.67
Nodes (3): GET `/api/v1/clinic-pro/doctor-addresses/{doctorId}`, Path Parameters, Response `200`
### Community 844 - "Community 844"
Cohesion: 0.50
Nodes (4): 38. 🟢 `GET` Unapproved comments, هدرهای اضافی, پارامترهای Query, پاسخ‌ها
### Community 846 - "Community 846"
Cohesion: 0.50
Nodes (4): 39. 🟡 `PATCH` Comment confirmation, مثال Request, هدرهای اضافی, پاسخ‌ها
### Community 847 - "Community 847"
Cohesion: 0.50
Nodes (4): 40. 🔵 `POST` post, مثال Request, هدرهای اضافی, پاسخ‌ها
### Community 848 - "Community 848"
Cohesion: 0.50
Nodes (4): 44. 🟢 `GET` list comment, هدرهای اضافی, پارامترهای Query, پاسخ‌ها
### Community 849 - "Community 849"
Cohesion: 0.50
Nodes (4): 45. 🔵 `POST` post, مثال Request, هدرهای اضافی, پاسخ‌ها
### Community 850 - "Community 850"
Cohesion: 0.50
Nodes (4): 46. 🟡 `PATCH` patch, مثال Request, هدرهای اضافی, پاسخ‌ها
### Community 851 - "Community 851"
Cohesion: 0.67
Nodes (3): 34. 🔵 `POST` image logo, هدرهای اضافی, پاسخ‌ها
Nodes (3): Errors, GET `/api/v1/sms/template/{uuid}`, Response `200`
### Community 852 - "Community 852"
Cohesion: 0.40
Nodes (5): DELETE `/api/v1/billing/tenant-insurances/{uuid}`, GET `/api/v1/billing/tenant-insurances`, PATCH `/api/v1/billing/tenant-insurances/{uuid}`, POST `/api/v1/billing/tenant-insurances`, TenantInsurance — قراردادهای بیمه‌ی tenant (فاز ۱ سیستم صورتحساب)
### Community 853 - "Community 853"
Cohesion: 0.67
Nodes (3): 42. 🔴 `DELETE` delete, هدرهای اضافی, پاسخ‌ها
### Community 854 - "Community 854"
Cohesion: 0.67
Nodes (3): 43. 🟢 `GET` get, هدرهای اضافی, پاسخ‌ها
### Community 857 - "Community 857"
Cohesion: 0.50
Nodes (4): GET `/api/v1/admin/settlements`, Query Parameters, Response `200`, Settlement Management
@@ -3548,28 +3501,24 @@ Nodes (3): GET `/api/v1/insurances`, Query Parameters, Response `200`
Cohesion: 0.67
Nodes (3): POST `/api/v1/admin/insurance/{id}/upload-logo`, Request, Response `200`
### Community 875 - "Community 875"
Cohesion: 0.67
Nodes (3): 29. 🟢 `GET` clinic list 🆕, پارامترهای Query, پاسخ‌ها
## Knowledge Gaps
- **4581 isolated node(s):** `ALLOWED_ROLES`, `get`, `patch`, `appt`, `ModalKind` (+4576 more)
These have ≤1 connection - possible missing edges or undocumented components.
- **197 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes.
- **201 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 444`, `Community 485`?**
_High betweenness centrality (0.106) - this node is a cross-community bridge._
- **Why does `ApiTestCase` connect `Community 86` to `Community 775`, `Community 779`, `Community 652`, `Community 782`, `Community 16`, `Community 784`, `Community 531`, `Community 22`, `Community 534`, `Community 535`, `Community 539`, `Community 541`, `Community 674`, `Community 809`, `Community 685`, `Community 431`, `Community 562`, `Community 819`, `Community 818`, `Community 565`, `Community 315`, `Community 574`, `Community 575`, `Community 318`, `Community 710`, `Community 200`, `Community 715`, `Community 719`, `Community 594`, `Community 82`, `Community 855`, `Community 856`, `Community 480`, `Community 609`, `Community 737`, `Community 482`, `Community 484`, `Community 486`, `Community 743`, `Community 744`, `Community 497`, `Community 625`, `Community 633`, `Community 765`?**
_High betweenness centrality (0.038) - this node is a cross-community bridge._
_High betweenness centrality (0.102) - this node is a cross-community bridge._
- **Why does `BaseController` connect `Community 108` to `Community 6`, `Community 646`, `Community 265`, `Community 138`, `Community 139`, `Community 14`, `Community 527`, `Community 654`, `Community 529`, `Community 655`, `Community 15`, `Community 20`, `Community 275`, `Community 22`, `Community 26`, `Community 676`, `Community 295`, `Community 300`, `Community 815`, `Community 433`, `Community 690`, `Community 314`, `Community 59`, `Community 699`, `Community 64`, `Community 577`, `Community 455`, `Community 75`, `Community 77`, `Community 607`, `Community 739`, `Community 230`, `Community 104`, `Community 107`, `Community 109`, `Community 761`, `Community 245`, `Community 121`, `Community 122`, `Community 252`?**
_High betweenness centrality (0.061) - this node is a cross-community bridge._
- **What connects `ALLOWED_ROLES`, `get`, `patch` to the rest of the system?**
_4581 weakly-connected nodes found - possible documentation gaps or missing edges._
- **Should `Community 0` be split into smaller, more focused modules?**
_Cohesion score 0.05028248587570622 - nodes in this community are weakly interconnected._
_Cohesion score 0.0406885758998435 - 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._
- **Should `Community 3` be split into smaller, more focused modules?**