Add AST JSON representation for DisplayName.php with method and import details

This commit is contained in:
hamed
2026-07-19 08:38:34 +03:30
parent d780b5cbb6
commit 7e4e4b9157
14 changed files with 2802 additions and 1959 deletions
+2 -1
View File
@@ -983,5 +983,6 @@
"981": "Community 981",
"982": "Community 982",
"983": "Community 983",
"984": "Community 984"
"984": "Community 984",
"985": "Community 985"
}
+186 -186
View File
@@ -1,16 +1,16 @@
# Graph Report - clinicpro (2026-07-19)
## Corpus Check
- 1130 files · ~806,671 words
- 1134 files · ~808,195 words
- Verdict: corpus is large enough that graph structure adds value.
## Summary
- 13315 nodes · 20691 edges · 985 communities (759 shown, 226 thin omitted)
- Extraction: 98% EXTRACTED · 2% INFERRED · 0% AMBIGUOUS · INFERRED: 424 edges (avg confidence: 0.8)
- 13350 nodes · 20736 edges · 986 communities (760 shown, 226 thin omitted)
- Extraction: 98% EXTRACTED · 2% INFERRED · 0% AMBIGUOUS · INFERRED: 434 edges (avg confidence: 0.8)
- Token cost: 0 input · 0 output
## Graph Freshness
- Built from commit: `bd66b213`
- Built from commit: `44b89d7a`
- Run `git rev-parse HEAD` and compare to check if the graph is stale.
- Run `graphify update .` after code changes (no API cost).
@@ -436,7 +436,6 @@
- [[_COMMUNITY_Community 418|Community 418]]
- [[_COMMUNITY_Community 419|Community 419]]
- [[_COMMUNITY_Community 420|Community 420]]
- [[_COMMUNITY_Community 421|Community 421]]
- [[_COMMUNITY_Community 422|Community 422]]
- [[_COMMUNITY_Community 423|Community 423]]
- [[_COMMUNITY_Community 424|Community 424]]
@@ -983,9 +982,10 @@
- [[_COMMUNITY_Community 982|Community 982]]
- [[_COMMUNITY_Community 983|Community 983]]
- [[_COMMUNITY_Community 984|Community 984]]
- [[_COMMUNITY_Community 985|Community 985]]
## God Nodes (most connected - your core abstractions)
1. `ApiTestCase` - 202 edges
1. `ApiTestCase` - 204 edges
2. `api` - 134 edges
3. `BaseController` - 96 edges
4. `formatRial()` - 88 edges
@@ -1011,7 +1011,7 @@
## Import Cycles
- None detected.
## Communities (985 total, 226 thin omitted)
## Communities (986 total, 226 thin omitted)
### Community 0 - "Community 0"
Cohesion: 0.06
@@ -1019,7 +1019,7 @@ Nodes (18): ClinicOwnerScheduleAccessTest, ClinicDoctorPermissionTest, ClinicDoc
### Community 1 - "Community 1"
Cohesion: 0.02
Nodes (78): grid, patientFormSchema, Props, latinDigitsField(), NumericFieldProps, wrap(), cn(), digitsOnly() (+70 more)
Nodes (57): ClinicDoctorsManager(), ClinicInvitation, HUES_LIST, INV_STATUS_MAP, ApiError, { refreshMock, logoutMock }, replaceMock, latinDigitsField() (+49 more)
### Community 2 - "Community 2"
Cohesion: 0.10
@@ -1030,24 +1030,24 @@ Cohesion: 0.10
Nodes (20): `RepresentationActionController` — welcome به‌صورت inline (بدون تمپلت), `SmsMessageTemplate::DEFAULTS` (فاقد نام تمپلت و نگاشت token), `SmsService::sendNow` — انتخاب بین lookup و متن‌آزاد, الگوی فعلی همه‌ی call-siteها (به‌جز OTP) — متن‌آزاد، بدون `templateCode`, تبدیل همه‌ی پیامک‌های سیستمی به VerifyLookup کاوه‌نگار (تمپلت نام‌دار), تنها جای درست (OTP) — که باید الگوی بقیه شود, زمینه, فایل‌های مرتبط (+12 more)
### Community 4 - "Community 4"
Cohesion: 0.06
Nodes (5): Doctor, Collection, self, User, WeeklySchedule
Cohesion: 0.07
Nodes (4): Doctor, Collection, self, User
### Community 5 - "Community 5"
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.35
Nodes (4): SettlementController, JsonResponse, Request, User
### Community 7 - "Community 7"
Cohesion: 0.06
Nodes (8): DoctorService, Clinic, DoctorServiceRepository, Collection, Doctor, self, User, ManagerRegistry
Cohesion: 0.07
Nodes (5): Clinic, Collection, Doctor, self, User
### Community 8 - "Community 8"
Cohesion: 0.04
Nodes (56): AppointmentLike, ConfirmAppointmentModal(), METHOD_OPTIONS, Props, rowStyle, ServiceItem, ReplaceAppointmentModal(), toEpoch() (+48 more)
Cohesion: 0.02
Nodes (130): AppointmentLike, ConfirmAppointmentModal(), METHOD_OPTIONS, Props, rowStyle, ServiceItem, AppointmentInfoModal(), ModalKind (+122 more)
### Community 9 - "Community 9"
Cohesion: 0.04
@@ -1058,16 +1058,16 @@ Cohesion: 0.17
Nodes (12): Clinic Address Management, `DELETE /api/v1/clinic/{clinicUuid}/address/{addressUuid}`, Errors, Errors, `GET /api/v1/clinic/{clinicUuid}/addresses`, `PATCH /api/v1/clinic/{clinicUuid}/address/{addressUuid}`, `POST /api/v1/clinic/{clinicUuid}/address`, Removed endpoint (+4 more)
### Community 11 - "Community 11"
Cohesion: 0.50
Nodes (4): UserActiveContextRepository, ManagerRegistry, User, UserActiveContext
Cohesion: 0.05
Nodes (29): AdminCharts, AdminDashboard(), AdminRecent, AdminStats, APPT_CLS, APPT_COLOR, APPT_LABEL, ApptRow (+21 more)
### Community 12 - "Community 12"
Cohesion: 0.04
Nodes (49): Account provisioning, Clinic Doctor Invitation API, Console: `app:invitations:repair`, DELETE `/api/v1/admin/clinic/invitation/{invUuid}`, Errors, Errors, Errors, Errors (+41 more)
Cohesion: 0.05
Nodes (39): Account provisioning, Clinic Doctor Invitation API, Console: `app:invitations:repair`, DELETE `/api/v1/admin/clinic/invitation/{invUuid}`, Errors, Errors, Errors, Errors (+31 more)
### Community 13 - "Community 13"
Cohesion: 0.02
Nodes (157): RoleRoute(), PickedService, ServicePick, ServiceSlot, ServiceSlotPicker(), get, services, appt (+149 more)
Nodes (135): appt, get, openMenu(), patch, ClinicDoctorItem, get, get, put (+127 more)
### Community 14 - "Community 14"
Cohesion: 0.09
@@ -1098,12 +1098,12 @@ Cohesion: 0.12
Nodes (5): AdminApiController, RepresentationRepository, JsonResponse, Request, StreamedResponse
### Community 21 - "Community 21"
Cohesion: 0.02
Nodes (112): Invoice, InvoiceItem, InvoiceSummaryModal(), SessionConsumable, SessionData, SessionPayment, STATUS_LABEL, PatientTagsCell() (+104 more)
Cohesion: 0.03
Nodes (80): Invoice, InvoiceItem, InvoiceSummaryModal(), SessionConsumable, SessionData, SessionPayment, STATUS_LABEL, PatientTagsCell() (+72 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
@@ -1146,8 +1146,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.17
Nodes (9): AbstractAuthenticator, AuthenticationException, ExceptionSubscriber, ExceptionEvent, Passport, PasswordAuthenticator, Request, Response (+1 more)
Cohesion: 0.29
Nodes (6): AbstractAuthenticator, Passport, PasswordAuthenticator, Request, Response, TokenInterface
### Community 34 - "Community 34"
Cohesion: 0.06
@@ -1210,8 +1210,8 @@ Cohesion: 0.11
Nodes (4): Payment, Appointment, self, User
### Community 49 - "Community 49"
Cohesion: 0.13
Nodes (12): AdminUserDetail, AVATAR_COLORS, EditForm, editSchema, GENDER_LABELS, getPrimaryRole(), MARITAL_LABELS, MEDICAL_SECTIONS (+4 more)
Cohesion: 0.10
Nodes (21): buildInsurancePayload(), Contract, contractToForm(), EMPTY_FORM, InsuranceFormValues, InsuranceModal(), InsuranceOption, KIND_LABEL (+13 more)
### Community 50 - "Community 50"
Cohesion: 0.07
@@ -1227,7 +1227,7 @@ Nodes (26): الزامات UI, باگ‌فیکس صفحه نوبت‌ها, با
### Community 53 - "Community 53"
Cohesion: 0.06
Nodes (20): ClaimStatusLog, AppLogRepository, ClaimItemRepository, ClaimStatusLogRepository, DoctorClaimRequestRepository, InvoiceItemRepository, PreRegistrationRepository, ProvinceRepository (+12 more)
Nodes (21): ClaimStatusLog, AppLogRepository, ClaimItemRepository, ClaimStatusLogRepository, DoctorClaimRequestRepository, PreRegistrationRepository, SessionServiceRepository, SiteConfigRepository (+13 more)
### Community 54 - "Community 54"
Cohesion: 0.10
@@ -1262,16 +1262,16 @@ Cohesion: 0.17
Nodes (12): Add Session Payment (تسویه چندتکه), Create Patient Record, Create Session, Edit Session Payment, Endpoints, Get Patient Record, List Patient Appointments, List Patient Sessions (+4 more)
### Community 62 - "Community 62"
Cohesion: 0.09
Nodes (28): MethodOption, Props, QUICK_TOMANS, WalletModalSubmit, WalletMode, WalletTransactionModal(), BANK_KEY, BankAccount (+20 more)
Cohesion: 0.11
Nodes (26): MethodOption, Props, QUICK_TOMANS, WalletModalSubmit, WalletMode, WalletTransactionModal(), BANK_KEY, BankAccount (+18 more)
### Community 63 - "Community 63"
Cohesion: 0.02
Nodes (161): ALLOWED_ROLES, PrivateRoute(), PublicRoute(), queryClient, toastStyle, PaginatedResponse, numericField(), formatDate() (+153 more)
Cohesion: 0.01
Nodes (176): ALLOWED_ROLES, PrivateRoute(), PublicRoute(), queryClient, toastStyle, PaymentConfig, PaymentGatewayInfo, usePaymentConfig() (+168 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
@@ -1329,6 +1329,10 @@ Nodes (3): SubscriptionPlan, Collection, self
Cohesion: 0.09
Nodes (23): dependencies, @ckeditor/ckeditor5-build-classic, @ckeditor/ckeditor5-react, @fontsource/vazirmatn, @heroicons/react, @hookform/resolvers, jalaali-js, leaflet (+15 more)
### Community 82 - "Community 82"
Cohesion: 0.07
Nodes (8): CategoryImportTest, Connection, RepositoryClassMappingTest, KernelTestCase, DbLogger, CategoryImporter, DbLoggerTest, Stringable
### Community 83 - "Community 83"
Cohesion: 0.09
Nodes (21): Backend, CSS / UI, Frontend, روند اجرای هر قابلیت, قبل از شروع — تحلیل پرامپت و ساخت Todo, قوانین اجرا (اجباری — هیچ استثنایی ندارد), قوانین خاص این پروژه, مثال اجرا (+13 more)
@@ -1343,7 +1347,7 @@ Nodes (30): devDependencies, @babel/core, @babel/preset-env, @babel/preset-react
### Community 86 - "Community 86"
Cohesion: 0.03
Nodes (24): BookingModeImmutableTest, BookingServicesPublicTest, DateOverrideOwnershipTest, ScheduleOwnershipTest, LowTierFixesTest, SendCodeMobileRateLimitTest, ClaimsListPaginationTest, CaptchaFlowTest (+16 more)
Nodes (24): BookingServicesPublicTest, ScheduleOwnershipTest, LowTierFixesTest, SendCodeMobileRateLimitTest, ClaimsListPaginationTest, CaptchaFlowTest, ServiceItemDeleteCleanupTest, ServiceItemMultiStaffTest (+16 more)
### Community 87 - "Community 87"
Cohesion: 0.10
@@ -1366,7 +1370,7 @@ Cohesion: 0.10
Nodes (20): DELETE `/api/v1/admin/users/{uuid}`, Errors, Errors, GET `/api/v1/admin/users`, GET `/api/v1/admin/users/stats`, GET `/api/v1/admin/users/{uuid}`, POST `/api/v1/admin/users/{uuid}/status`, PUT `/api/v1/admin/users/{uuid}` (+12 more)
### Community 92 - "Community 92"
Cohesion: 0.09
Cohesion: 0.10
Nodes (21): Bulk import / export, DELETE `/api/v1/admin/doctor-service/{id}`, Doctor Service API, Errors, Errors, Errors, Errors, GET `/api/v1/admin/doctor-services` (+13 more)
### Community 93 - "Community 93"
@@ -1406,7 +1410,7 @@ Cohesion: 0.10
Nodes (19): Backend — endpoint اشتراک, Frontend — App.tsx, Frontend — authStore, Frontend — Sidebar, اعمال محدودیت‌های اشتراک در پنل ادمین (Frontend Gate), ترتیب اجرا, زمینه, فایل‌های مرتبط (+11 more)
### Community 102 - "Community 102"
Cohesion: 0.08
Cohesion: 0.07
Nodes (26): Bulk import / export, DELETE `/api/v1/admin/tag/{id}`, DELETE `/api/v1/tenant-tag/{uuid}`, Errors, Errors, Errors, Errors, Errors (+18 more)
### Community 103 - "Community 103"
@@ -1414,8 +1418,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
@@ -1426,12 +1430,12 @@ Cohesion: 0.11
Nodes (18): Endpoint ها, gate check در تسک‌های بعدی, GET /api/v1/subscription/my, GET /api/v1/subscription/plans, POST /api/v1/admin/subscription/period, POST /api/v1/subscription-payment (موجود), POST /api/v1/subscription/trial, POST /api/v1/subscription/trial (خطا — قبلاً استفاده شده) (+10 more)
### Community 107 - "Community 107"
Cohesion: 0.14
Nodes (13): AppointmentConfirmationService, AppointmentController, AutoCreateSessionOnConfirmTest, Appointment, Clinic, Doctor, JsonResponse, Request (+5 more)
Cohesion: 0.23
Nodes (8): AppointmentController, Appointment, Clinic, Doctor, JsonResponse, Request, User, WeeklySchedule
### Community 108 - "Community 108"
Cohesion: 0.09
Nodes (16): CaptchaController, BaseController, CategoryController, CategoryImportController, DoctorImportController, SiteContextController, JsonResponse, JsonResponse (+8 more)
Cohesion: 0.08
Nodes (17): CaptchaController, BaseController, CategoryController, DoctorImportController, SiteConfigController, SiteContextController, JsonResponse, JsonResponse (+9 more)
### Community 109 - "Community 109"
Cohesion: 0.29
@@ -1626,12 +1630,12 @@ Cohesion: 0.12
Nodes (15): Endpoint ها, GET /api/v1/payment/{uuid}, POST /api/v1/payment, POST /api/v1/payment/callback/mellat, Strategy Pattern برای درگاه‌ها, Subscription Payment — POST /api/v1/subscription-payment, ⚠ امنیت: IP Whitelist برای Callback, ⚠ امنیت: جلوگیری از Open Redirect (+7 more)
### Community 160 - "Community 160"
Cohesion: 0.07
Nodes (28): Access rule, Appointment Settings API, Available Locations, Booking context (`clinic_uuid`), Context additions (2026-07), Date Overrides, Date overrides are always per-context, DELETE `/api/v1/appointment-settings/date-override/{uuid}` (+20 more)
Cohesion: 0.13
Nodes (15): Date Overrides, DELETE `/api/v1/appointment-settings/date-override/{uuid}`, Errors, Errors, GET `/api/v1/appointment-settings/date-override/list/{doctorUuid}`, GET `/api/v1/appointment-settings/date-override/{uuid}`, PATCH `/api/v1/appointment-settings/date-override/{uuid}`, POST `/api/v1/appointment-settings/date-override` (+7 more)
### Community 161 - "Community 161"
Cohesion: 0.07
Nodes (19): ClaimAmountBoundsTest, ClaimsByPatientTest, ClaimsListNPlusOneTest, ClaimItem, ClaimSubmitterInterface, ClaimService, ManualClaimSubmitter, Claim (+11 more)
Cohesion: 0.11
Nodes (11): ClaimAmountBoundsTest, ClaimsByPatientTest, ClaimsListNPlusOneTest, ClaimItem, Claim, Doctor, User, Doctor (+3 more)
### Community 162 - "Community 162"
Cohesion: 0.10
@@ -1662,8 +1666,8 @@ Cohesion: 0.10
Nodes (20): api.ir (استعلام هویت — Shahkar / IbanMatch), اتصال به دیتابیس‌های مستقل (الزامی), اسرار (الزامی — قبل از اولین دیپلوی), امنیت و منابع, بررسی سلامت, دامنه‌ها و CORS, دیپلوی‌های بعدی, راهنمای دیپلوی ClinicPro (Coolify + Docker Compose) (+12 more)
### Community 169 - "Community 169"
Cohesion: 0.17
Nodes (5): ErrorCodesTest, TimezoneTest, KavehNegarProviderTest, TestCase, KavehNegarProvider
Cohesion: 0.11
Nodes (8): UserProfileDemographicsTest, MellatGatewayTest, ErrorCodesTest, TimezoneTest, KavehNegarProviderTest, TestCase, UserProfile, KavehNegarProvider
### Community 170 - "Community 170"
Cohesion: 0.13
@@ -1713,6 +1717,10 @@ Nodes (4): PatientRecord, Collection, self, User
Cohesion: 0.20
Nodes (4): WeeklySchedule, Clinic, Doctor, self
### Community 182 - "Community 182"
Cohesion: 0.09
Nodes (3): AppointmentCreateReserveTest, SmsSettings, self
### Community 183 - "Community 183"
Cohesion: 0.14
Nodes (13): `UserDetailPage.tsx` — فقط user query, زمینه, فایل‌های مرتبط, قرارداد پروفایل (`UserProfile.toArray`), مشکل / هدف, نمایش پروفایل کاربر در صفحه‌ی جزئیات کاربرِ پنل ادمین, نکات مهم, وضعیت فعلی (کد واقعی) (+5 more)
@@ -1783,7 +1791,7 @@ Nodes (13): Endpoint ها, PATCH /api/v1/secretary/{uuid}, POST /api/v1/secretar
### Community 200 - "Community 200"
Cohesion: 0.04
Nodes (37): DoctorTab, td, th, CANCELLED_STATUSES, EMPTY_SLOT_CONFIG, STATUS, turnStatusConfig, EMPTY_REASON_TEXT (+29 more)
Nodes (50): DoctorTab, PickedService, ServicePick, ServiceSlot, ServiceSlotPicker(), get, services, td (+42 more)
### Community 201 - "Community 201"
Cohesion: 0.10
@@ -1798,16 +1806,16 @@ Cohesion: 0.12
Nodes (16): Clinic Services API, DELETE /api/v1/service-item/{uuid}, DELETE /api/v1/service-section/{uuid}, GET /api/v1/service-item/{uuid}, GET /api/v1/service-item/{uuid}/audit-logs, GET /api/v1/service-items, GET /api/v1/service-items/{sectionUuid}, GET /api/v1/service-items/{uuid}/tariffs (+8 more)
### Community 204 - "Community 204"
Cohesion: 0.08
Nodes (30): AdminLayout(), avatarBg(), HUES, ProfileMenu(), Role, ROLE_LABELS, settingsPath(), logoutMock (+22 more)
Cohesion: 0.04
Nodes (46): RoleRoute(), usePermissions(), useSubscription(), AdminLayout(), avatarBg(), HUES, ProfileMenu(), Role (+38 more)
### Community 205 - "Community 205"
Cohesion: 0.21
Nodes (4): SeedDemoDataCommand, InputInterface, OutputInterface, SymfonyStyle
### Community 206 - "Community 206"
Cohesion: 0.08
Nodes (14): MellatGateway, MockGateway, SepGateway, SoapClient, PaymentGatewayInterface, PaymentInitResult, PaymentRefundResult, PaymentVerifyResult (+6 more)
Cohesion: 0.06
Nodes (17): GatewayFactory, MellatGateway, MockGateway, SepGateway, MellatGateway, SepGateway, SoapClient, PaymentGatewayInterface (+9 more)
### Community 207 - "Community 207"
Cohesion: 0.15
@@ -2095,7 +2103,7 @@ Nodes (4): ServiceItemRepository, ManagerRegistry, ServiceItem, ServiceSection
### Community 286 - "Community 286"
Cohesion: 0.08
Nodes (22): CalendarIcon(), CardIcon(), CardTickIcon(), ChevronDownIcon(), S, UserAddIcon(), ApptRow, HEAD (+14 more)
Nodes (23): CalendarIcon(), CardIcon(), CardTickIcon(), ChevronDownIcon(), S, UserAddIcon(), ApptRow, HEAD (+15 more)
### Community 287 - "Community 287"
Cohesion: 0.27
@@ -2150,8 +2158,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.12
Nodes (17): InvoiceRowStatus, MY_PAYMENTS_LIMIT, PatientInvoiceRow, PatientInvoicesPayload, PaymentFilters, PaymentRow, PaymentRowStatus, get (+9 more)
Cohesion: 0.07
Nodes (31): EMPTY, PatientFilters, PricingInsurance, TenantTag, InvoiceRowStatus, MY_PAYMENTS_LIMIT, PatientInvoiceRow, PatientInvoicesPayload (+23 more)
### Community 301 - "Community 301"
Cohesion: 0.15
@@ -2166,8 +2174,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): 29. 🟢 `GET` clinic list 🆕, 30. 🟢 `GET` get 🆕, 33. 🔵 `POST` image_clinic, 6. کلینیک (Clinic), هدرهای اضافی, پارامترهای Query, پاسخ‌ها, پاسخ‌ها (+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
@@ -2203,7 +2211,7 @@ Nodes (4): InsuranceRepository, Insurance, InsuranceType, ManagerRegistry
### Community 314 - "Community 314"
Cohesion: 0.02
Nodes (104): AppointmentCardData, AppointmentTurnCard(), base, Breadcrumb(), PatientCaseBanner(), Tag, PAYMENT_LABELS, SessionPaymentAccordion() (+96 more)
Nodes (107): AppointmentCardData, AppointmentTurnCard(), base, Breadcrumb(), PatientCaseBanner(), Tag, PAYMENT_LABELS, SessionPaymentAccordion() (+99 more)
### Community 315 - "Community 315"
Cohesion: 0.20
@@ -2213,6 +2221,10 @@ Nodes (6): AuthController, RateLimiterFactory, ClinicDoctorPermission, JsonRespo
Cohesion: 0.12
Nodes (15): mapping صفحات clinicpro → فریم فیگما, الف-۱. توکن‌های رنگ (light + dark), الف-۲. سلکتور رنگ کاربر, الف-۳. ابعاد و رفتار layout, الف-۴. شعاع‌ها و input/button, الف-۵. کامپوننت‌های مشترک مطابق فیگما, ایندکس فریم‌های فیگما (۴ section، node-id دسکتاپ), بخش الف — سیستم طراحی مشترک (یک‌بار، پایه‌ی همه‌ی صفحات) (+7 more)
### Community 317 - "Community 317"
Cohesion: 0.29
Nodes (3): CorsRegexEnvProcessor, EnvVarProcessorInterface, CorsRegexEnvProcessorTest
### Community 318 - "Community 318"
Cohesion: 0.32
Nodes (4): PatientListFilterTest, Doctor, PatientRecord, TenantTag
@@ -2262,8 +2274,8 @@ Cohesion: 0.22
Nodes (8): Query های جدید, بیماران منحصربه‌فرد در بازه, درآمد بر اساس روز (از patient_sessions), فروش اشتراک بر اساس پنل (admin), نوبت‌ها بر اساس روز (admin chart), نکات مهم, هیچ migration لازم نیست, پایگاه داده — تسک ۱۶: داشبورد هوشمند
### Community 333 - "Community 333"
Cohesion: 0.04
Nodes (50): `city` / `state` در پاسخ لیست, DELETE `/api/v1/clinic-pro/doctor-address/{id}`, DELETE `/api/v1/doctor/{uuid}`, Doctor API, Errors, Errors, Errors, Errors (+42 more)
Cohesion: 0.50
Nodes (4): Errors, POST `/api/v1/doctor`, Request Body (`application/json`), Response `201`
### Community 334 - "Community 334"
Cohesion: 0.25
@@ -2390,8 +2402,8 @@ Cohesion: 0.25
Nodes (7): ادمین, دکتر نمونه کامل — تبریز, دکتران bulk (۱۵۰۰ دکتر در ۱۵ شهر), ساخت مجدد, منشی دکتر نمونه, کاربران تستی, کلینیک نمونه — تبریز
### Community 367 - "Community 367"
Cohesion: 0.24
Nodes (3): Altcha, AltchaService, altcha
Cohesion: 0.16
Nodes (6): Altcha, AltchaService, altcha, Altcha(), AltchaProps, IntrinsicElements
### Community 368 - "Community 368"
Cohesion: 0.36
@@ -2526,8 +2538,8 @@ Cohesion: 0.06
Nodes (30): انتقال برنامه کاری، اصلاح فرم تنظیمات نوبت، فیلدهای عددی لاتین، رفع باگ هزینه ویزیت در مودال، و لاگ/تایم‌لاین لغو نوبت, تسک ۱ — انتقال کامل «برنامه کاری» از پروفایل به تنظیمات نوبت‌دهی, تسک ۲ — اصلاح چیدمان دکمه ذخیره در صفحه تنظیمات نوبت‌دهی, تسک ۳ — اجبار ورودی لاتین در همه فیلدهای عددی سراسری, تسک ۴ — رفع باگ: ثبت نوبت هنگام الزامی بودن هزینه ویزیت (۴۲۲), تسک ۵ — ثبت لاگ و رویداد Timeline هنگام لغو نوبت, زمینه, فایل‌های مرتبط (+22 more)
### Community 407 - "Community 407"
Cohesion: 0.16
Nodes (9): MessageBusInterface, MockObject, SmsTextResolver, SmsServiceLookupOnlyTest, SmsLogRepository, SmsMessageTemplateRepository, SmsService, SmsTextResolver (+1 more)
Cohesion: 0.12
Nodes (14): MessageBusInterface, MockObject, SmsLogRepository, SmsService, SmsServiceLookupOnlyTest, SmsLog, SmsLogRepository, SmsMessageTemplateRepository (+6 more)
### Community 410 - "Community 410"
Cohesion: 0.08
@@ -2538,17 +2550,13 @@ Cohesion: 0.10
Nodes (20): edge cases, خلاصهٔ خطاها و اولویت, راه‌حل, راه‌حل, راه‌حل, راه‌حل, رفع خطاهای لاگ سرور (production) — ۱۴۰۵/۰۴/۲۰, ریشه (+12 more)
### Community 416 - "Community 416"
Cohesion: 0.05
Nodes (47): EMPTY_CATS, EMPTY_ITEMS, EMPTY_META, EMPTY_PACKAGES, EMPTY_STATS, InventoryItem, InventoryMeta, InventoryPackage (+39 more)
Cohesion: 0.04
Nodes (52): EMPTY_CATS, EMPTY_ITEMS, EMPTY_META, EMPTY_PACKAGES, EMPTY_STATS, InventoryItem, InventoryMeta, InventoryPackage (+44 more)
### Community 418 - "Community 418"
Cohesion: 0.17
Nodes (11): دیپلوی ClinicPro روی Coolify (Docker Compose), رفع اشکال, مراحل دیپلوی, معماری دیپلوی, نکات عملیاتی, چند دامنه فرانت‌اند (مهم), ۱. ساخت Resource در Coolify, ۲. اختصاص دامنه (+3 more)
### Community 421 - "Community 421"
Cohesion: 0.03
Nodes (64): Option, STATUS_OPTIONS, ClinicDoctorItem, ClinicDoctorsManager(), ClinicInvitation, HUES_LIST, INV_STATUS_MAP, addMinutes() (+56 more)
### Community 422 - "Community 422"
Cohesion: 0.12
Nodes (15): راه‌حل, راه‌حل, راه‌حل, رفع زوم نقشه در افزودن آدرس + کپچا و موبایل در claim + حذف پروفایل توسط مالک, ریشه‌ها, زمینه, فایل‌های مرتبط, نکات مهم (+7 more)
@@ -2574,16 +2582,16 @@ Cohesion: 0.18
Nodes (8): ErrorCodes, PatientController, JsonResponse, PatientRecord, PatientRecordScope, PatientSession, Request, User
### Community 435 - "Community 435"
Cohesion: 0.13
Nodes (13): Command, CancelExpiredAppointmentsCommand, PruneLogsCommand, SeedCategoriesCommand, SystemOwnerCommand, InputInterface, OutputInterface, InputInterface (+5 more)
Cohesion: 0.09
Nodes (16): Command, AuditScheduleLocationsCommand, CreateAdminCommand, FixIrimcNamesCommand, SeedCategoriesCommand, SeedSmsMessageTemplatesCommand, InputInterface, OutputInterface (+8 more)
### Community 436 - "Community 436"
Cohesion: 0.12
Nodes (16): `book()` عمومی — الگوی درستِ موجود (کپی از `AppointmentController::book`, خط ۲۴۲–۲۶۳), زمینه, فایل‌های مرتبط, فرم — بدون فیلد کد ملی (کپی از `AppointmentCreatePage.tsx`), مسیر ادمین — بیمار فقط با موبایل (کپی از `MyAppointmentsController::createAppointment`, خط ۸۱–۸۷), نوبت‌دهی ادمین بر اساس کد ملی + موبایل (پرونده یکتا با کد ملی), نکات مهم, هدف (+8 more)
### Community 437 - "Community 437"
Cohesion: 0.24
Nodes (5): NumericFieldNormalizerSubscriber, SecurityHeadersSubscriber, EventSubscriberInterface, RequestEvent, ResponseEvent
Cohesion: 0.15
Nodes (8): AuthenticationException, ExceptionSubscriber, NumericFieldNormalizerSubscriber, SecurityHeadersSubscriber, EventSubscriberInterface, ExceptionEvent, RequestEvent, ResponseEvent
### Community 438 - "Community 438"
Cohesion: 0.26
@@ -2614,13 +2622,17 @@ Cohesion: 0.18
Nodes (9): Body, DELETE `/api/v1/inventory-package/{uuid}`, GET `/api/v1/inventory-packages`, Inventory API, Packages, PATCH `/api/v1/inventory-package/{uuid}`, POST `/api/v1/inventory-package`, Response `200` (+1 more)
### Community 447 - "Community 447"
Cohesion: 0.26
Cohesion: 0.25
Nodes (5): ClinicInvitationService, Clinic, ClinicDoctorInvitation, Doctor, User
### Community 448 - "Community 448"
Cohesion: 0.07
Nodes (27): Bank accounts, Body, Body, Errors, Errors, Errors, Errors, Errors (+19 more)
### Community 451 - "Community 451"
Cohesion: 0.37
Nodes (5): AppointmentConfirmationService, AutoCreateSessionOnConfirmTest, Appointment, Clinic, Doctor
### Community 452 - "Community 452"
Cohesion: 0.15
Nodes (3): DoctorClaimRequest, Doctor, User
@@ -2714,7 +2726,7 @@ Cohesion: 0.10
Nodes (20): book() فعلی فقط slot_start/slot_end می‌گیرد, overlap واقعی از قبل درست است, زمینه, ساخت اسلاتِ ثابت (حالت فعلی = slot mode), فایل‌های مرتبط, متای برنامهٔ هفتگی, مدت خدمت — هست ولی استفاده نمی‌شود, نوبت‌دهی بر اساس مدت سرویس (Service-based booking) — Backend + Admin (+12 more)
### Community 479 - "Community 479"
Cohesion: 0.16
Cohesion: 0.14
Nodes (6): Authentication, ClinicPro — API Documentation Index, Error Code Reference, Modules, Persian digit normalization (global), Standard Response Envelope
### Community 481 - "Community 481"
@@ -2750,8 +2762,8 @@ 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.36
Nodes (4): SiteConfigController, JsonResponse, Request, User
Cohesion: 0.24
Nodes (8): ClaimSubmitterInterface, ClaimService, ManualClaimSubmitter, Claim, Invoice, User, Claim, ClaimSubmissionResult
### Community 495 - "Community 495"
Cohesion: 0.12
@@ -2865,10 +2877,6 @@ Nodes (12): ارسال پیامک OTP فقط از طریق Kavenegar VerifyLooku
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.10
Nodes (9): ClinicDoctor, EMPTY_PERMISSIONS, FormState, groupBySecretary(), ModalMode, MySecretariesPageContent(), PERMISSION_SECTIONS, PermSection (+1 more)
### Community 528 - "Community 528"
Cohesion: 0.33
Nodes (4): PatientMedicalRecord, PatientMedicalRecordRepository, ManagerRegistry, PatientRecord
@@ -2877,13 +2885,17 @@ Nodes (4): PatientMedicalRecord, PatientMedicalRecordRepository, ManagerRegistry
Cohesion: 0.36
Nodes (4): ClinicInvitationWebController, ClinicDoctorInvitation, Request, Response
### Community 530 - "Community 530"
Cohesion: 0.29
Nodes (4): SettlementRepository, Settlement, ManagerRegistry, User
### Community 532 - "Community 532"
Cohesion: 0.16
Nodes (3): BankAccount, self, User
### Community 533 - "Community 533"
Cohesion: 0.19
Nodes (6): BaseKernel, Closure, CorsRegexEnvProcessor, EnvVarProcessorInterface, MicroKernelTrait, Kernel
Cohesion: 0.31
Nodes (4): BaseKernel, Closure, MicroKernelTrait, Kernel
### Community 534 - "Community 534"
Cohesion: 0.30
@@ -2978,8 +2990,8 @@ Cohesion: 0.50
Nodes (4): Errors, POST `/api/v1/admin/sms/template/{uuid}/reject`, Request Body, Response `200`
### Community 559 - "Community 559"
Cohesion: 0.22
Nodes (6): SmsMessageController, SmsMessageTemplateRepository, SmsMessageTemplate, JsonResponse, Request, ManagerRegistry
Cohesion: 0.25
Nodes (4): SmsMessageTemplateRepository, SmsTextResolver, SmsMessageTemplate, ManagerRegistry
### Community 560 - "Community 560"
Cohesion: 0.50
@@ -3030,8 +3042,8 @@ Cohesion: 0.25
Nodes (8): ۲.۲ انواع دسته‌بندی (Category Types), ۲.۲.۱ تگ (Tag), ۲.۲.۲ استان (State), ۲.۲.۳ شهر (City), ۲.۲.۴ بیمه پایه (Basic Insurance), ۲.۲.۵ بیمه مکمل (Supplementary Insurance), ۲.۲.۶ تخصص دکتر (Doctor Specialty), ۲.۲.۷ خدمات دکتر (Doctor Services)
### Community 577 - "Community 577"
Cohesion: 0.07
Nodes (38): PatientFormOptions, PatientFormValues, baseValues, options, setup(), dateStrToTs(), EDUCATION_OPTS, formValuesToPayload() (+30 more)
Cohesion: 0.08
Nodes (35): PatientFormValues, useIssueInvoice(), dateStrToTs(), EDUCATION_OPTS, formValuesToPayload(), GENDER_OPTS, MARITAL_OPTS, profileToFormValues() (+27 more)
### Community 578 - "Community 578"
Cohesion: 0.36
@@ -3122,8 +3134,8 @@ Cohesion: 0.34
Nodes (5): RepresentationController, JsonResponse, Representation, Request, User
### Community 608 - "Community 608"
Cohesion: 0.19
Nodes (6): BackfillAppointmentSessionsCommand, HealthController, EntityManagerInterface, InputInterface, OutputInterface, JsonResponse
Cohesion: 0.38
Nodes (3): BackfillAppointmentSessionsCommand, InputInterface, OutputInterface
### Community 612 - "Community 612"
Cohesion: 0.67
@@ -3150,12 +3162,12 @@ Cohesion: 0.42
Nodes (4): WalletService, PatientSession, User, WalletTransaction
### Community 641 - "Community 641"
Cohesion: 0.11
Nodes (14): Money, BillingCalculator, InvoiceService, PatientService, CoverageRule, ShareBreakdown, Invoice, PatientSession (+6 more)
Cohesion: 0.08
Nodes (16): BillingCalculatorTest, BillingCalculator, Money, BillingCalculator, InvoiceService, PatientService, CoverageRule, ShareBreakdown (+8 more)
### Community 646 - "Community 646"
Cohesion: 0.13
Nodes (3): NumericFieldNormalizerTest, PersianTextTest, PersianText
Cohesion: 0.12
Nodes (7): DoctorClaimRequest, DoctorClaimService, NumericFieldNormalizerTest, PersianTextTest, Doctor, User, PersianText
### Community 647 - "Community 647"
Cohesion: 0.14
@@ -3314,8 +3326,8 @@ Cohesion: 0.12
Nodes (15): رفع باگ: نوبت‌های رزروشده در سایت عمومی «آزاد» نمایش داده می‌شوند, زمینه, فایل‌های مرتبط, مشکل / هدف, نکات مهم, وضعیت فعلی, وظایف, پروژه (+7 more)
### Community 717 - "Community 717"
Cohesion: 0.11
Nodes (6): ServiceCoverageNPlusOneTest, TenantInsuranceCleanupTest, TenantServiceCoverageRepository, TenantInsuranceCleanupService, ManagerRegistry, TenantServiceCoverage
Cohesion: 0.20
Nodes (4): TenantServiceCoverageRepository, TenantInsuranceCleanupService, ManagerRegistry, TenantServiceCoverage
### Community 718 - "Community 718"
Cohesion: 0.36
@@ -3330,12 +3342,12 @@ Cohesion: 0.33
Nodes (5): DoctorImportResult, DoctorImportService, Collection, Doctor, User
### Community 725 - "Community 725"
Cohesion: 0.38
Nodes (3): FixIrimcNamesCommand, InputInterface, OutputInterface
Cohesion: 0.33
Nodes (4): AuditPollutedRecordsCommand, InputInterface, OutputInterface, SymfonyStyle
### Community 726 - "Community 726"
Cohesion: 0.06
Nodes (31): addMinutes(), BookingMeta, calcSlotCount(), DateOverrideData, DEFAULT_BOOKING_META, DEFAULT_SESSION, DURATION_OPTS, EMPTY_NEW_SCHEDULE (+23 more)
Nodes (30): addMinutes(), BookingMeta, calcSlotCount(), DateOverrideData, DEFAULT_BOOKING_META, DEFAULT_SESSION, DURATION_OPTS, EMPTY_NEW_SCHEDULE (+22 more)
### Community 728 - "Community 728"
Cohesion: 0.50
@@ -3353,10 +3365,6 @@ Nodes (12): call siteهای فعلی PersianDateInput (نباید تغییر ک
Cohesion: 0.19
Nodes (5): UniqueConstraintsTest, FinancialBreakdown, FinancialBreakdownRepository, ManagerRegistry, Payment
### Community 735 - "Community 735"
Cohesion: 0.16
Nodes (7): AbstractMigration, Schema, Version20260621084558, Schema, Version20260624092459, Schema, Version20260716083939
### Community 737 - "Community 737"
Cohesion: 0.38
Nodes (3): PurgeDoctorsCommand, InputInterface, OutputInterface
@@ -3457,6 +3465,10 @@ Nodes (5): DiscountController, DiscountRule, JsonResponse, Request, User
Cohesion: 0.12
Nodes (6): InventoryPackage, InventoryPackageItem, InventoryService, Collection, self, InventoryPackage
### Community 776 - "Community 776"
Cohesion: 0.16
Nodes (7): AbstractMigration, Schema, Version20260609133546, Schema, Version20260628165710, Schema, Version20260718193940
### Community 777 - "Community 777"
Cohesion: 0.14
Nodes (13): زمینه, فایل‌های مرتبط, مشکل / هدف, نکات مهم, وضعیت فعلی, وظایف, یکسان‌سازی تنظیمات نوبت‌دهی + تب پزشکان در پنل کلینیک, ۱. بک‌اند — یک helper واحد به‌جای ۱۴ شرط تکراری (+5 more)
@@ -3465,6 +3477,10 @@ Nodes (13): زمینه, فایل‌های مرتبط, مشکل / هدف, نکا
Cohesion: 0.43
Nodes (5): BeforeInstallPromptEvent, usePwaInstall(), PwaInstallBanner(), detectIOS(), PwaLoginCard()
### Community 780 - "Community 780"
Cohesion: 0.22
Nodes (8): Access rule, Appointment Settings API, Available Locations, Booking context (`clinic_uuid`), Errors, `GET /api/v1/appointment-settings/available-locations/{doctorUuid}`, Response `200`, Slot Calculation Logic (Reference)
### Community 781 - "Community 781"
Cohesion: 0.24
Nodes (4): InventoryPackageItem, InventoryItem, InventoryPackage, self
@@ -3475,7 +3491,7 @@ Nodes (3): CommissionService, Payment, Representation
### Community 786 - "Community 786"
Cohesion: 0.39
Nodes (3): TagRepository, ManagerRegistry, Tag
Nodes (3): DoctorService, DoctorServiceRepository, ManagerRegistry
### Community 787 - "Community 787"
Cohesion: 0.50
@@ -3490,8 +3506,8 @@ Cohesion: 0.40
Nodes (5): 32. 🔵 `POST` post, Request Body, مثال Request, هدرهای اضافی, پاسخ‌ها
### Community 792 - "Community 792"
Cohesion: 0.38
Nodes (3): AuditScheduleLocationsCommand, InputInterface, OutputInterface
Cohesion: 0.39
Nodes (3): ProvinceRepository, ManagerRegistry, Province
### Community 793 - "Community 793"
Cohesion: 0.50
@@ -3530,24 +3546,32 @@ Cohesion: 0.25
Nodes (8): Errors, GET `/api/v1/patient/{uuid}/payments`, GET `/api/v1/patient/{uuid}/wallet`, GET `/api/v1/patient/{uuid}/wallet/transactions`, PATCH `/api/v1/session/{uuid}` — پرداخت مراجعه از کیف پول, POST `/api/v1/patient/{uuid}/wallet/charge`, POST `/api/v1/patient/{uuid}/wallet/withdraw`, مالی بیمار (Financials: پرداخت / تراکنش / کیف‌پول)
### Community 809 - "Community 809"
Cohesion: 0.13
Nodes (5): RepositoryClassMappingTest, KernelTestCase, LoggerInterface, RanginehProvider, DbLoggerTest
Cohesion: 0.15
Nodes (3): LoggerInterface, RanginehProvider, ApiIrService
### Community 810 - "Community 810"
Cohesion: 0.15
Nodes (12): زمینه, فایل‌های مرتبط, مشکل / هدف, نکات مهم, وضعیت فعلی, وظایف, ویرایش سرویس‌های مراجعه + ویرایش/حذف پرداخت + Audit Log مالی جامع, پروژه (+4 more)
### Community 813 - "Community 813"
Cohesion: 0.29
Nodes (7): DELETE `/api/v1/clinic-pro/doctor-address/{id}`, Doctor API, Errors, GET `/api/v1/clinic-pro/doctor-addresses/{doctorId}`, Path Parameters, Response `200`, Response `200`
### Community 814 - "Community 814"
Cohesion: 0.38
Nodes (5): Rate, RateRepository, Doctor, ManagerRegistry, User
### Community 815 - "Community 815"
Cohesion: 0.38
Nodes (3): SystemOwnerCommand, InputInterface, OutputInterface
### Community 818 - "Community 818"
Cohesion: 0.38
Nodes (3): DiscountEngine, DiscountRule, PatientSession
### Community 824 - "Community 824"
Cohesion: 0.23
Nodes (4): GatewayFactory, MellatGateway, MellatGatewayTest, SepGateway
Cohesion: 0.43
Nodes (3): CategoryImportController, JsonResponse, Request
### Community 825 - "Community 825"
Cohesion: 0.32
@@ -3590,20 +3614,20 @@ Cohesion: 0.47
Nodes (3): BookingContextResolver, Clinic, Doctor
### Community 840 - "Community 840"
Cohesion: 0.42
Nodes (4): DoctorClaimRequest, DoctorClaimService, Doctor, User
Cohesion: 0.43
Nodes (3): SmsMessageController, JsonResponse, Request
### Community 841 - "Community 841"
Cohesion: 0.27
Nodes (9): AddTurn(), PatientsCategoryView(), PatientsGridView(), SearchHeaderP(), TurnsFilter(), countFilters(), dayBound(), EMPTY (+1 more)
Cohesion: 0.43
Nodes (3): InvoiceItemRepository, InvoiceItem, ManagerRegistry
### Community 842 - "Community 842"
Cohesion: 0.43
Nodes (3): SessionAuditLogRepository, SessionAuditLog, ManagerRegistry
### Community 844 - "Community 844"
Cohesion: 0.40
Nodes (5): 35. 🟡 `PATCH` patch, Request Body, مثال Request, هدرهای اضافی, پاسخ‌ها
Cohesion: 0.47
Nodes (3): CancelExpiredAppointmentsCommand, InputInterface, OutputInterface
### Community 846 - "Community 846"
Cohesion: 0.12
@@ -3642,8 +3666,8 @@ Cohesion: 0.50
Nodes (4): GET `/api/v1/admin/settlements`, Query Parameters, Response `200`, Settlement Management
### Community 858 - "Community 858"
Cohesion: 0.38
Nodes (3): CreateAdminCommand, InputInterface, OutputInterface
Cohesion: 0.47
Nodes (3): PruneLogsCommand, InputInterface, OutputInterface
### Community 861 - "Community 861"
Cohesion: 0.42
@@ -3677,10 +3701,6 @@ Nodes (4): Errors, GET `/api/v1/representation/doctors`, Query Parameters, Respo
Cohesion: 0.43
Nodes (3): SessionPaymentRepository, ManagerRegistry, SessionPayment
### Community 870 - "Community 870"
Cohesion: 0.50
Nodes (4): 40. 🔵 `POST` post, مثال Request, هدرهای اضافی, پاسخ‌ها
### Community 871 - "Community 871"
Cohesion: 0.35
Nodes (3): DoctorListLocationTest, City, Doctor
@@ -3697,18 +3717,10 @@ Nodes (6): ClinicDoctorPermissionController, Clinic, Doctor, JsonResponse, Reque
Cohesion: 0.31
Nodes (3): SpecialtyRepository, ManagerRegistry, Specialty
### Community 875 - "Community 875"
Cohesion: 0.48
Nodes (3): SessionServiceRepository, ManagerRegistry, SessionService
### Community 876 - "Community 876"
Cohesion: 0.33
Nodes (6): DELETE `/api/v1/patient/note/{uuid}`, Errors, GET `/api/v1/patient/{uuid}/notes`, PATCH `/api/v1/patient/note/{uuid}`, POST `/api/v1/patient/{uuid}/note`, یادداشت‌های بیمار (Notes)
### Community 877 - "Community 877"
Cohesion: 0.18
Nodes (9): AdminUser, ASSIGNABLE_ROLES, ChangeRoleModal(), getPrimaryRole(), HUES_LIST, ROLE_META, ROLE_TABS, RoleBadge() (+1 more)
### Community 881 - "Community 881"
Cohesion: 0.67
Nodes (3): GET `/api/v1/representation/{uuid}/dashboard/yearly`, Query Parameters, Response `200`
@@ -3758,16 +3770,16 @@ Cohesion: 0.50
Nodes (4): Errors, POST `/api/v1/clinic`, Request Body (`application/json`), Response `201`
### Community 912 - "Community 912"
Cohesion: 0.50
Nodes (4): Errors, GET `/api/v1/clinic/{uuid}`, Path Parameters, Response `200`
Cohesion: 0.33
Nodes (6): Errors, GET `/api/v1/clinic/{uuid}`, Path Parameters, Response `200`, معنای `is_active`, نام کلینیک
### Community 913 - "Community 913"
Cohesion: 0.50
Nodes (4): Errors, GET `/api/v1/admin/clinic/{clinicUuid}/doctor/{doctorUuid}/permissions`, Path Parameters, Response `200`
### Community 914 - "Community 914"
Cohesion: 0.50
Nodes (4): Errors, PATCH `/api/v1/admin/clinic/{clinicUuid}/doctor/{doctorUuid}/permissions`, Request Body, Response `200`
Cohesion: 0.40
Nodes (5): Context additions (2026-07), Date overrides are always per-context, `GET /available-locations/{doctorUuid}`, Holidays are global by default, Response fields
### Community 915 - "Community 915"
Cohesion: 0.18
@@ -3778,24 +3790,24 @@ Cohesion: 0.50
Nodes (4): Errors, POST `/file/upload/clinic_pro/clinic/field_image_clinic`, Request, Response `200`
### Community 917 - "Community 917"
Cohesion: 0.50
Nodes (4): 38. 🟢 `GET` Unapproved comments, هدرهای اضافی, پارامترهای Query, پاسخ‌ها
Cohesion: 0.40
Nodes (5): Errors, Path Parameters, POST `/api/v1/admin/clinic/{uuid}/invite-doctor`, Request Body (`application/json`), Response `201`
### Community 920 - "Community 920"
Cohesion: 0.38
Nodes (3): RepairAcceptedInvitationsCommand, InputInterface, OutputInterface
### Community 923 - "Community 923"
Cohesion: 0.25
Nodes (7): ForgotStep, LoginPage(), Mode, SmsStep, Altcha(), AltchaProps, IntrinsicElements
Cohesion: 0.40
Nodes (5): Errors, GET `/api/v1/admin/clinic/{uuid}/invitations`, Path Parameters, Query Parameters, Response `200`
### Community 925 - "Community 925"
Cohesion: 0.22
Nodes (9): Clinic API, Clinic Doctor Permissions, Errors, GET `/api/v1/clinics`, POST `/file/upload/clinic_pro/clinic/field_clinic_logo`, Query Parameters, Request, Response `200` (+1 more)
Nodes (9): Clinic API, Clinic Doctor Permissions, Errors, Errors, GET `/api/v1/admin/clinic/{clinicUuid}/doctor-permissions`, PATCH `/api/v1/admin/clinic/{clinicUuid}/doctor/{doctorUuid}/permissions`, Request Body, Response `200` (+1 more)
### Community 926 - "Community 926"
Cohesion: 0.47
Nodes (3): SeedSmsMessageTemplatesCommand, InputInterface, OutputInterface
Cohesion: 0.40
Nodes (5): `city` / `state` در پاسخ لیست, GET `/api/v1/doctors`, Query Parameters, Response `200`, اعتبارسنجی نام پزشک
### Community 928 - "Community 928"
Cohesion: 0.43
@@ -3822,20 +3834,20 @@ Cohesion: 0.50
Nodes (4): Errors, GET `/api/v1/admin/insurances`, Query Parameters, Response `200`
### Community 939 - "Community 939"
Cohesion: 0.29
Nodes (3): ApiError, { refreshMock, logoutMock }, replaceMock
Cohesion: 0.40
Nodes (5): Errors, GET `/api/v1/clinic/my-doctor/{doctorUuid}`, Path Parameters, Response `200`, Schedule Fields Notes
### Community 940 - "Community 940"
Cohesion: 0.50
Nodes (4): Errors, POST `/api/v1/admin/insurance`, Request Body (`application/json`), Response `201`
### Community 941 - "Community 941"
Cohesion: 0.20
Nodes (6): SmsLogRepository, SmsService, SmsLog, ManagerRegistry, SendSmsMessage, SmsProviderInterface
Cohesion: 0.40
Nodes (5): Errors, PATCH `/api/v1/doctor/{uuid}`, Path Parameters, Request Body (`application/json`), Response `200`
### Community 942 - "Community 942"
Cohesion: 0.48
Nodes (3): SmsSettingsRepository, SmsSettings, ManagerRegistry
Cohesion: 0.40
Nodes (5): Errors, PATCH `/api/v1/clinic-pro/doctor-address/{id}`, Path Parameters, Request Body, Response `200`
### Community 943 - "Community 943"
Cohesion: 0.50
@@ -3885,18 +3897,10 @@ Nodes (5): Errors, POST `/api/v1/appointment/{uuid}/confirm`, Request Body, Resp
Cohesion: 0.40
Nodes (5): DELETE `/api/v1/patient/attachment/{uuid}`, Errors, GET `/api/v1/patient/{uuid}/attachments`, POST `/api/v1/patient/{uuid}/attachment`, ضمیمه‌های بیمار (Attachments)
### Community 959 - "Community 959"
Cohesion: 0.40
Nodes (5): 31. 🟡 `PATCH` patch, Request Body, مثال Request, هدرهای اضافی, پاسخ‌ها
### Community 960 - "Community 960"
Cohesion: 0.40
Nodes (5): 37. 🔵 `POST` post, Request Body, مثال Request, هدرهای اضافی, پاسخ‌ها
### Community 961 - "Community 961"
Cohesion: 0.40
Nodes (5): 41. 🟡 `PATCH` patch, Request Body, مثال Request, هدرهای اضافی, پاسخ‌ها
### Community 963 - "Community 963"
Cohesion: 0.50
Nodes (4): Error Responses, POST `/api/v1/my/appointment`, Request Body, Response `201`
@@ -3933,25 +3937,17 @@ Nodes (4): GET /api/v1/my/appointments, GET `/api/v1/my/appointments/today-stats
Cohesion: 0.67
Nodes (3): GET `/api/v1/insurances`, Query Parameters, Response `200`
### Community 973 - "Community 973"
Cohesion: 0.50
Nodes (4): 39. 🟡 `PATCH` Comment confirmation, مثال Request, هدرهای اضافی, پاسخ‌ها
### Community 974 - "Community 974"
Cohesion: 0.50
Nodes (4): 44. 🟢 `GET` list comment, هدرهای اضافی, پارامترهای Query, پاسخ‌ها
### Community 975 - "Community 975"
Cohesion: 0.50
Nodes (4): 45. 🔵 `POST` post, مثال Request, هدرهای اضافی, پاسخ‌ها
### Community 976 - "Community 976"
Cohesion: 0.50
Nodes (4): 46. 🟡 `PATCH` patch, مثال Request, هدرهای اضافی, پاسخ‌ها
Nodes (4): Errors, POST `/file/upload/clinic_pro/clinic/field_clinic_logo`, Request, Response `200`
### Community 977 - "Community 977"
Cohesion: 0.67
Nodes (3): Errors, GET `/api/v1/admin/clinic/{clinicUuid}/doctor-permissions`, Response `200`
Cohesion: 0.50
Nodes (4): DELETE `/api/v1/doctor/{uuid}`, Errors, Path Parameters, Response `200`
### Community 978 - "Community 978"
Cohesion: 0.67
@@ -3966,40 +3962,44 @@ Cohesion: 0.67
Nodes (3): POST `/api/v1/admin/insurance/{id}/upload-logo`, Request, Response `200`
### Community 981 - "Community 981"
Cohesion: 0.67
Nodes (3): 34. 🔵 `POST` image logo, هدرهای اضافی, پاسخ‌ها
Cohesion: 0.50
Nodes (4): Errors, GET `/api/v1/doctor/{uuid}`, Path Parameters, Response `200`
### Community 982 - "Community 982"
Cohesion: 0.67
Nodes (3): 42. 🔴 `DELETE` delete, هدرهای اضافی, پاسخ‌ها
Cohesion: 0.50
Nodes (4): Errors, POST `/file/upload/clinic_pro/doctor/field_image`, Request, Response `200`
### Community 983 - "Community 983"
Cohesion: 0.67
Nodes (3): 43. 🟢 `GET` get, هدرهای اضافی, پاسخ‌ها
Cohesion: 0.50
Nodes (4): Errors, POST `/api/v1/clinic-pro/doctor-address`, Request Body, Response `201`
### Community 984 - "Community 984"
Cohesion: 0.50
Nodes (4): Errors, Path Parameters, POST `/api/v1/clinic-pro/doctor-address/from-clinic/{clinicUuid}`, Response `201`
### Community 985 - "Community 985"
Cohesion: 0.67
Nodes (3): 36. 🟢 `GET` get my rate, هدرهای اضافی, پاسخ‌ها
Nodes (3): GET `/api/v1/clinics`, Query Parameters, Response `200`
## Knowledge Gaps
- **5110 isolated node(s):** `ALLOWED_ROLES`, `get`, `patch`, `appt`, `ModalKind` (+5105 more)
- **5113 isolated node(s):** `ALLOWED_ROLES`, `get`, `patch`, `appt`, `ModalKind` (+5108 more)
These have ≤1 connection - possible missing edges or undocumented components.
- **226 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 923`, `Community 485`?**
_High betweenness centrality (0.105) - this node is a cross-community bridge._
- **Why does `BaseController` connect `Community 108` to `Community 771`, `Community 6`, `Community 265`, `Community 138`, `Community 139`, `Community 14`, `Community 654`, `Community 655`, `Community 529`, `Community 15`, `Community 275`, `Community 20`, `Community 22`, `Community 26`, `Community 676`, `Community 295`, `Community 559`, `Community 433`, `Community 438`, `Community 58`, `Community 59`, `Community 315`, `Community 699`, `Community 444`, `Community 64`, `Community 75`, `Community 77`, `Community 852`, `Community 861`, `Community 607`, `Community 739`, `Community 230`, `Community 104`, `Community 873`, `Community 107`, `Community 109`, `Community 494`, `Community 245`, `Community 121`, `Community 122`, `Community 252`?**
_High betweenness centrality (0.054) - this node is a cross-community bridge._
- **Why does `ApiTestCase` connect `Community 86` to `Community 0`, `Community 640`, `Community 646`, `Community 775`, `Community 904`, `Community 907`, `Community 652`, `Community 779`, `Community 16`, `Community 784`, `Community 658`, `Community 403`, `Community 659`, `Community 531`, `Community 918`, `Community 22`, `Community 534`, `Community 921`, `Community 538`, `Community 539`, `Community 535`, `Community 541`, `Community 927`, `Community 161`, `Community 929`, `Community 804`, `Community 424`, `Community 681`, `Community 685`, `Community 431`, `Community 815`, `Community 817`, `Community 562`, `Community 690`, `Community 565`, `Community 697`, `Community 442`, `Community 826`, `Community 828`, `Community 445`, `Community 574`, `Community 575`, `Community 318`, `Community 837`, `Community 710`, `Community 583`, `Community 840`, `Community 715`, `Community 717`, `Community 719`, `Community 594`, `Community 82`, `Community 851`, `Community 856`, `Community 733`, `Community 480`, `Community 609`, `Community 482`, `Community 483`, `Community 484`, `Community 608`, `Community 486`, `Community 743`, `Community 871`, `Community 744`, `Community 107`, `Community 492`, `Community 497`, `Community 887`, `Community 633`, `Community 765`?**
_High betweenness centrality (0.052) - this node is a cross-community bridge._
- **Why does `Altcha` connect `Community 367` to `Community 485`?**
_High betweenness centrality (0.108) - this node is a cross-community bridge._
- **Why does `ApiTestCase` connect `Community 86` to `Community 0`, `Community 640`, `Community 646`, `Community 775`, `Community 904`, `Community 907`, `Community 652`, `Community 779`, `Community 783`, `Community 16`, `Community 784`, `Community 658`, `Community 403`, `Community 659`, `Community 531`, `Community 918`, `Community 534`, `Community 535`, `Community 921`, `Community 538`, `Community 539`, `Community 541`, `Community 927`, `Community 161`, `Community 929`, `Community 804`, `Community 424`, `Community 681`, `Community 685`, `Community 431`, `Community 817`, `Community 562`, `Community 690`, `Community 949`, `Community 182`, `Community 565`, `Community 697`, `Community 442`, `Community 826`, `Community 828`, `Community 445`, `Community 574`, `Community 959`, `Community 575`, `Community 318`, `Community 451`, `Community 837`, `Community 710`, `Community 583`, `Community 715`, `Community 973`, `Community 719`, `Community 975`, `Community 594`, `Community 82`, `Community 851`, `Community 856`, `Community 733`, `Community 480`, `Community 609`, `Community 482`, `Community 483`, `Community 484`, `Community 486`, `Community 743`, `Community 871`, `Community 744`, `Community 492`, `Community 877`, `Community 497`, `Community 887`, `Community 633`, `Community 765`?**
_High betweenness centrality (0.055) - this node is a cross-community bridge._
- **What connects `ALLOWED_ROLES`, `get`, `patch` to the rest of the system?**
_5110 weakly-connected nodes found - possible documentation gaps or missing edges._
_5113 weakly-connected nodes found - possible documentation gaps or missing edges._
- **Should `Community 0` be split into smaller, more focused modules?**
_Cohesion score 0.06392405063291139 - nodes in this community are weakly interconnected._
- **Should `Community 1` be split into smaller, more focused modules?**
_Cohesion score 0.024390243902439025 - nodes in this community are weakly interconnected._
_Cohesion score 0.023687423687423687 - 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?**
_Cohesion score 0.09523809523809523 - nodes in this community are weakly interconnected._
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
{"nodes": [{"id": "users_hamed_pj_my_pj_clinic_pro_clinicpro_src_shared_util_displayname_php", "label": "DisplayName.php", "file_type": "code", "source_file": "src/Shared/Util/DisplayName.php", "source_location": "L1"}, {"id": "util_displayname_displayname", "label": "DisplayName", "file_type": "code", "source_file": "src/Shared/Util/DisplayName.php", "source_location": "L15"}, {"id": "util_displayname_displayname_isplaceholder", "label": ".isPlaceholder()", "file_type": "code", "source_file": "src/Shared/Util/DisplayName.php", "source_location": "L24"}, {"id": "util_displayname_displayname_assertreal", "label": ".assertReal()", "file_type": "code", "source_file": "src/Shared/Util/DisplayName.php", "source_location": "L41"}], "edges": [{"source": "users_hamed_pj_my_pj_clinic_pro_clinicpro_src_shared_util_displayname_php", "target": "errorcodes", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/Shared/Util/DisplayName.php", "source_location": "L5", "weight": 1.0}, {"source": "users_hamed_pj_my_pj_clinic_pro_clinicpro_src_shared_util_displayname_php", "target": "appexception", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "src/Shared/Util/DisplayName.php", "source_location": "L6", "weight": 1.0}, {"source": "users_hamed_pj_my_pj_clinic_pro_clinicpro_src_shared_util_displayname_php", "target": "util_displayname_displayname", "relation": "contains", "confidence": "EXTRACTED", "source_file": "src/Shared/Util/DisplayName.php", "source_location": "L15", "weight": 1.0}, {"source": "util_displayname_displayname", "target": "util_displayname_displayname_isplaceholder", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/Shared/Util/DisplayName.php", "source_location": "L24", "weight": 1.0}, {"source": "util_displayname_displayname", "target": "util_displayname_displayname_assertreal", "relation": "method", "confidence": "EXTRACTED", "source_file": "src/Shared/Util/DisplayName.php", "source_location": "L41", "weight": 1.0}], "raw_calls": [{"caller_nid": "util_displayname_displayname_isplaceholder", "callee": "trim", "is_member_call": false, "source_file": "/Users/hamed/pj/my_pj/clinic_pro/clinicpro/src/Shared/Util/DisplayName.php", "source_location": "L26", "receiver": null}, {"caller_nid": "util_displayname_displayname_isplaceholder", "callee": "mb_strlen", "is_member_call": false, "source_file": "/Users/hamed/pj/my_pj/clinic_pro/clinicpro/src/Shared/Util/DisplayName.php", "source_location": "L27", "receiver": null}, {"caller_nid": "util_displayname_displayname_isplaceholder", "callee": "preg_match", "is_member_call": false, "source_file": "/Users/hamed/pj/my_pj/clinic_pro/clinicpro/src/Shared/Util/DisplayName.php", "source_location": "L31", "receiver": null}, {"caller_nid": "util_displayname_displayname_isplaceholder", "callee": "str_replace", "is_member_call": false, "source_file": "/Users/hamed/pj/my_pj/clinic_pro/clinicpro/src/Shared/Util/DisplayName.php", "source_location": "L31", "receiver": null}, {"caller_nid": "util_displayname_displayname_isplaceholder", "callee": "in_array", "is_member_call": false, "source_file": "/Users/hamed/pj/my_pj/clinic_pro/clinicpro/src/Shared/Util/DisplayName.php", "source_location": "L35", "receiver": null}, {"caller_nid": "util_displayname_displayname_isplaceholder", "callee": "mb_strtolower", "is_member_call": false, "source_file": "/Users/hamed/pj/my_pj/clinic_pro/clinicpro/src/Shared/Util/DisplayName.php", "source_location": "L35", "receiver": null}, {"caller_nid": "util_displayname_displayname_assertreal", "callee": "self", "is_member_call": false, "source_file": "/Users/hamed/pj/my_pj/clinic_pro/clinicpro/src/Shared/Util/DisplayName.php", "source_location": "L43", "receiver": null}]}
+1 -1
View File
File diff suppressed because one or more lines are too long
+2574 -1761
View File
File diff suppressed because it is too large Load Diff
+30 -10
View File
@@ -1070,8 +1070,8 @@
"semantic_hash": ""
},
"src/Clinic/Entity/Clinic.php": {
"mtime": 1782728407.1946046,
"ast_hash": "f4586face3694b30f638a7e96c4f4b70",
"mtime": 1784437116.2272618,
"ast_hash": "69f613031dea30664771b0b393ec85cb",
"semantic_hash": ""
},
"src/Clinic/Repository/ClinicRepository.php": {
@@ -1095,8 +1095,8 @@
"semantic_hash": ""
},
"src/ClinicInvitation/Service/ClinicInvitationService.php": {
"mtime": 1784352741.799101,
"ast_hash": "27b7986ef364c66d6e553a991cb7050a",
"mtime": 1784437279.9671433,
"ast_hash": "0473c88d17aeca41139fb4acae96a103",
"semantic_hash": ""
},
"src/ClinicService/Controller/ClinicServiceController.php": {
@@ -1175,8 +1175,8 @@
"semantic_hash": ""
},
"src/Doctor/Entity/Doctor.php": {
"mtime": 1784435643.5249128,
"ast_hash": "526a32e080569eb5a4f3429a4f97727f",
"mtime": 1784437090.8900666,
"ast_hash": "e4f9f938990b258caab2204c72ceeb99",
"semantic_hash": ""
},
"src/Doctor/Entity/DoctorAddress.php": {
@@ -2370,8 +2370,8 @@
"semantic_hash": ""
},
"docs/api/clinic.md": {
"mtime": 1784435752.0182734,
"ast_hash": "9704aefff629ad2121d020736c642ecb",
"mtime": 1784437623.5916283,
"ast_hash": "372b08e4be32c8c6149c772359f14c12",
"semantic_hash": ""
},
"docs/api/dashboard.md": {
@@ -2385,8 +2385,8 @@
"semantic_hash": ""
},
"docs/api/doctor.md": {
"mtime": 1784435697.344323,
"ast_hash": "6c561f0f799d9361ad727b0c15fe02b4",
"mtime": 1784437657.5477061,
"ast_hash": "f0e6a4cff999f48325b58fd28e2004f6",
"semantic_hash": ""
},
"docs/api/insurance.md": {
@@ -5808,5 +5808,25 @@
"mtime": 1784436420.7796662,
"ast_hash": "8cd9d74da637c6d05da4f349381eab26",
"semantic_hash": ""
},
"src/Shared/Command/AuditPollutedRecordsCommand.php": {
"mtime": 1784437362.3110158,
"ast_hash": "d8fb3117e7dc4509a30f5777912822b3",
"semantic_hash": ""
},
"src/Shared/Util/DisplayName.php": {
"mtime": 1784437057.6603022,
"ast_hash": "25776b3f55cb9b050a0f6784bc190ecd",
"semantic_hash": ""
},
"tests/Doctor/PollutedNameRejectionTest.php": {
"mtime": 1784437527.0715911,
"ast_hash": "6d96e7997e7dbe3bfa66e3430558f213",
"semantic_hash": ""
},
"tests/Shared/DisplayNameTest.php": {
"mtime": 1784437489.1561015,
"ast_hash": "8cee86fce0bbe7ea3633f3b27e1ee5e4",
"semantic_hash": ""
}
}