Add AST JSON representation for TenantTagController with detailed node and edge mappings

This commit is contained in:
hamed
2026-07-23 19:10:26 +03:30
parent f33c7a3eab
commit 48b0f684f5
20 changed files with 2824 additions and 1816 deletions
+27 -1
View File
@@ -1004,10 +1004,36 @@
"1002": "Community 1002",
"1003": "Community 1003",
"1004": "Community 1004",
"1005": "Community 1005",
"1006": "Community 1006",
"1007": "Community 1007",
"1008": "Community 1008",
"1009": "Community 1009",
"1010": "Community 1010",
"1011": "Community 1011",
"1012": "Community 1012",
"1013": "Community 1013",
"1014": "Community 1014",
"1015": "Community 1015",
"1016": "Community 1016",
"1017": "Community 1017",
"1018": "Community 1018",
"1019": "Community 1019",
"1020": "Community 1020",
"1021": "Community 1021",
"1022": "Community 1022",
"1023": "Community 1023",
"1024": "Community 1024",
"1025": "Community 1025",
"1026": "Community 1026",
"1027": "Community 1027",
"1028": "Community 1028"
"1028": "Community 1028",
"1029": "Community 1029",
"1030": "Community 1030",
"1031": "Community 1031",
"1032": "Community 1032",
"1033": "Community 1033",
"1034": "Community 1034",
"1035": "Community 1035",
"1036": "Community 1036"
}
+276 -149
View File
@@ -1,16 +1,16 @@
# Graph Report - clinicpro (2026-07-23)
## Corpus Check
- 1199 files · ~865,793 words
- 1202 files · ~868,980 words
- Verdict: corpus is large enough that graph structure adds value.
## Summary
- 14057 nodes · 22038 edges · 1011 communities (769 shown, 242 thin omitted)
- 14086 nodes · 22089 edges · 1037 communities (793 shown, 244 thin omitted)
- Extraction: 98% EXTRACTED · 2% INFERRED · 0% AMBIGUOUS · INFERRED: 465 edges (avg confidence: 0.8)
- Token cost: 0 input · 0 output
## Graph Freshness
- Built from commit: `a3b29404`
- Built from commit: `f33c7a3e`
- Run `git rev-parse HEAD` and compare to check if the graph is stale.
- Run `graphify update .` after code changes (no API cost).
@@ -999,18 +999,45 @@
- [[_COMMUNITY_Community 998|Community 998]]
- [[_COMMUNITY_Community 999|Community 999]]
- [[_COMMUNITY_Community 1000|Community 1000]]
- [[_COMMUNITY_Community 1001|Community 1001]]
- [[_COMMUNITY_Community 1002|Community 1002]]
- [[_COMMUNITY_Community 1003|Community 1003]]
- [[_COMMUNITY_Community 1004|Community 1004]]
- [[_COMMUNITY_Community 1005|Community 1005]]
- [[_COMMUNITY_Community 1006|Community 1006]]
- [[_COMMUNITY_Community 1007|Community 1007]]
- [[_COMMUNITY_Community 1008|Community 1008]]
- [[_COMMUNITY_Community 1009|Community 1009]]
- [[_COMMUNITY_Community 1010|Community 1010]]
- [[_COMMUNITY_Community 1011|Community 1011]]
- [[_COMMUNITY_Community 1012|Community 1012]]
- [[_COMMUNITY_Community 1013|Community 1013]]
- [[_COMMUNITY_Community 1014|Community 1014]]
- [[_COMMUNITY_Community 1015|Community 1015]]
- [[_COMMUNITY_Community 1016|Community 1016]]
- [[_COMMUNITY_Community 1017|Community 1017]]
- [[_COMMUNITY_Community 1018|Community 1018]]
- [[_COMMUNITY_Community 1019|Community 1019]]
- [[_COMMUNITY_Community 1020|Community 1020]]
- [[_COMMUNITY_Community 1021|Community 1021]]
- [[_COMMUNITY_Community 1022|Community 1022]]
- [[_COMMUNITY_Community 1023|Community 1023]]
- [[_COMMUNITY_Community 1024|Community 1024]]
- [[_COMMUNITY_Community 1025|Community 1025]]
- [[_COMMUNITY_Community 1026|Community 1026]]
- [[_COMMUNITY_Community 1027|Community 1027]]
- [[_COMMUNITY_Community 1028|Community 1028]]
- [[_COMMUNITY_Community 1029|Community 1029]]
- [[_COMMUNITY_Community 1030|Community 1030]]
- [[_COMMUNITY_Community 1031|Community 1031]]
- [[_COMMUNITY_Community 1032|Community 1032]]
- [[_COMMUNITY_Community 1033|Community 1033]]
- [[_COMMUNITY_Community 1034|Community 1034]]
- [[_COMMUNITY_Community 1035|Community 1035]]
- [[_COMMUNITY_Community 1036|Community 1036]]
## God Nodes (most connected - your core abstractions)
1. `ApiTestCase` - 230 edges
1. `ApiTestCase` - 232 edges
2. `api` - 138 edges
3. `BaseController` - 96 edges
4. `useAuthStore` - 93 edges
@@ -1036,15 +1063,15 @@
## Import Cycles
- None detected.
## Communities (1011 total, 242 thin omitted)
## Communities (1037 total, 244 thin omitted)
### Community 0 - "Community 0"
Cohesion: 0.05
Nodes (23): ClinicAppointmentAccessTest, ClinicOwnerScheduleAccessTest, ClinicDoctorPermissionTest, ClinicDoctorPermissionRepository, ClinicDoctorPermission, ClinicRecordAccessTest, ClinicDoctorPermissionChecker, Clinic (+15 more)
Cohesion: 0.06
Nodes (18): ClinicOwnerScheduleAccessTest, ClinicDoctorPermissionTest, ClinicDoctorPermissionRepository, ClinicDoctorPermission, ClinicRecordAccessTest, ClinicDoctorPermissionChecker, Clinic, Doctor (+10 more)
### Community 1 - "Community 1"
Cohesion: 0.07
Nodes (33): EMPTY_CATS, EMPTY_ITEMS, EMPTY_META, EMPTY_PACKAGES, EMPTY_STATS, InventoryItem, InventoryMeta, InventoryPackage (+25 more)
Cohesion: 0.06
Nodes (47): RoleRoute(), EMPTY_CATS, EMPTY_ITEMS, EMPTY_META, EMPTY_PACKAGES, EMPTY_STATS, InventoryItem, InventoryMeta (+39 more)
### Community 2 - "Community 2"
Cohesion: 0.10
@@ -1056,7 +1083,7 @@ Nodes (20): `RepresentationActionController` — welcome به‌صورت inline
### Community 4 - "Community 4"
Cohesion: 0.08
Nodes (3): Doctor, Collection, User
Nodes (3): Doctor, Collection, self
### Community 5 - "Community 5"
Cohesion: 0.06
@@ -1067,12 +1094,12 @@ Cohesion: 0.17
Nodes (8): SettlementController, SettlementRepository, Settlement, JsonResponse, Request, User, ManagerRegistry, User
### Community 7 - "Community 7"
Cohesion: 0.06
Nodes (8): DoctorService, Clinic, DoctorServiceRepository, Collection, Doctor, self, User, ManagerRegistry
Cohesion: 0.09
Nodes (4): Clinic, Collection, Doctor, User
### Community 8 - "Community 8"
Cohesion: 0.07
Nodes (23): InvoicePaymentRow, InvoiceRowStatus, MY_PAYMENTS_LIMIT, PatientInvoiceRow, PatientInvoicesPayload, PaymentFilters, PaymentRow, PaymentRowStatus (+15 more)
Cohesion: 0.04
Nodes (42): DoctorTab, PickedService, ServicePick, ServiceSlot, ServiceSlotPicker(), get, services, td (+34 more)
### Community 9 - "Community 9"
Cohesion: 0.04
@@ -1083,8 +1110,8 @@ 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.02
Nodes (98): get, patch, usePatient(), useUpdatePatient(), numericField(), emptyFeatures(), FEATURE_KEYS, FEATURE_LABELS (+90 more)
Cohesion: 0.04
Nodes (44): ServiceItemFormModal(), numericField(), emptyFeatures(), FEATURE_KEYS, FEATURE_LABELS, PeriodForm, periodSchema, PLAN_DISPLAY (+36 more)
### Community 12 - "Community 12"
Cohesion: 0.04
@@ -1092,7 +1119,7 @@ Nodes (49): Account provisioning, Clinic Doctor Invitation API, Console: `app:in
### Community 13 - "Community 13"
Cohesion: 0.02
Nodes (162): RoleRoute(), appointment, get, post, render(), appt, get, openMenu() (+154 more)
Nodes (152): appointment, get, post, render(), appt, get, openMenu(), patch (+144 more)
### Community 14 - "Community 14"
Cohesion: 0.09
@@ -1103,8 +1130,8 @@ Cohesion: 0.25
Nodes (7): PaymentController, Appointment, JsonResponse, Payment, Request, Response, User
### Community 16 - "Community 16"
Cohesion: 0.05
Nodes (11): AppointmentExpiryServiceTest, PatientSession, SecretaryAppointmentScopeTest, Appointment, Collection, InventoryPackage, PatientRecord, self (+3 more)
Cohesion: 0.04
Nodes (10): PatientSession, SmsWallet, Appointment, Collection, InventoryPackage, PatientRecord, self, SessionConsumable (+2 more)
### Community 17 - "Community 17"
Cohesion: 0.05
@@ -1123,12 +1150,12 @@ Cohesion: 0.12
Nodes (5): AdminApiController, RepresentationRepository, JsonResponse, Request, StreamedResponse
### Community 21 - "Community 21"
Cohesion: 0.26
Cohesion: 0.28
Nodes (6): ClinicServiceController, JsonResponse, Request, ServiceItem, ServiceSection, User
### Community 22 - "Community 22"
Cohesion: 0.29
Nodes (4): RatingController, JsonResponse, Request, User
Cohesion: 0.16
Nodes (9): RatingController, Rate, RateRepository, JsonResponse, Request, User, Doctor, ManagerRegistry (+1 more)
### Community 23 - "Community 23"
Cohesion: 0.05
@@ -1147,8 +1174,8 @@ Cohesion: 0.24
Nodes (5): InsuranceController, EntityInsurancePricing, JsonResponse, Request, User
### Community 27 - "Community 27"
Cohesion: 0.05
Nodes (40): 55. 🟢 `GET` all tag, 56. 🟢 `GET` supplementary_insurance, 57. 🟢 `GET` categories list, 58. 🟢 `GET` all state, 59. 🟢 `GET` all city, 60. 🟢 `GET` all specially doctor, 61. 🔵 `POST` post, 62. 🟡 `PATCH` patch (+32 more)
Cohesion: 0.06
Nodes (35): 55. 🟢 `GET` all tag, 56. 🟢 `GET` supplementary_insurance, 57. 🟢 `GET` categories list, 58. 🟢 `GET` all state, 59. 🟢 `GET` all city, 60. 🟢 `GET` all specially doctor, 61. 🔵 `POST` post, 63. 🔴 `DELETE` DELETE (+27 more)
### Community 28 - "Community 28"
Cohesion: 0.06
@@ -1235,8 +1262,8 @@ Cohesion: 0.11
Nodes (4): Payment, Appointment, self, User
### Community 49 - "Community 49"
Cohesion: 0.02
Nodes (131): AppointmentLike, ConfirmAppointmentModal(), METHOD_OPTIONS, PaymentRow, Props, rowStyle, ServiceItem, STATE_TONE (+123 more)
Cohesion: 0.03
Nodes (97): AppointmentInfoModal(), ModalKind, PickedPatient, PickerOption, ReplaceAppointmentModal(), toEpoch(), TransferReserveModal(), WalletChargeLink() (+89 more)
### Community 50 - "Community 50"
Cohesion: 0.07
@@ -1252,7 +1279,7 @@ Nodes (26): الزامات UI, باگ‌فیکس صفحه نوبت‌ها, با
### Community 53 - "Community 53"
Cohesion: 0.06
Nodes (20): ClaimStatusLog, AppLogRepository, ClaimItemRepository, ClaimStatusLogRepository, ClinicStaffRepository, DoctorClaimRequestRepository, InventoryItemRepository, PreRegistrationRepository (+12 more)
Nodes (21): AppointmentEvent, AppLogRepository, PaymentLog, AppointmentEventRepository, ClaimItemRepository, DoctorClaimRequestRepository, InvoiceItemRepository, PaymentLogRepository (+13 more)
### Community 54 - "Community 54"
Cohesion: 0.10
@@ -1276,7 +1303,7 @@ Nodes (5): BlogController, City, JsonResponse, Request, User
### Community 59 - "Community 59"
Cohesion: 0.07
Nodes (15): ClinicController, DoctorSpecialtyParentsTest, Specialty, BackfillSpecialtyParentsStep, SpecialtyRepository, Clinic, DoctorAddress, JsonResponse (+7 more)
Nodes (14): ClinicController, SpecialtyController, DoctorSpecialtyParentsTest, Specialty, SpecialtyRepository, Clinic, DoctorAddress, JsonResponse (+6 more)
### Community 60 - "Community 60"
Cohesion: 0.08
@@ -1287,16 +1314,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 (26): MethodOption, Props, QUICK_TOMANS, WalletModalSubmit, WalletMode, WalletTransactionModal(), BANK_KEY, BankAccount (+18 more)
Cohesion: 0.07
Nodes (35): AppointmentLike, ConfirmAppointmentModal(), METHOD_OPTIONS, PaymentRow, Props, rowStyle, ServiceItem, STATE_TONE (+27 more)
### Community 63 - "Community 63"
Cohesion: 0.02
Nodes (136): ALLOWED_ROLES, PrivateRoute(), PublicRoute(), queryClient, toastStyle, ApiResponse, PaginatedResponse, cn() (+128 more)
Cohesion: 0.01
Nodes (185): ALLOWED_ROLES, PrivateRoute(), PublicRoute(), queryClient, toastStyle, ClinicDoctorsManager(), ClinicInvitation, HUES_LIST (+177 more)
### Community 64 - "Community 64"
Cohesion: 0.19
Nodes (7): SmsWalletController, SmsSettingsRepository, SmsSettings, JsonResponse, Request, User, ManagerRegistry
Cohesion: 0.29
Nodes (4): SmsWalletController, JsonResponse, Request, User
### Community 65 - "Community 65"
Cohesion: 0.08
@@ -1323,8 +1350,8 @@ Cohesion: 0.08
Nodes (24): سناریو: ایمپورت پزشکان سازمان نظام پزشکی و مدیریت مالکیت پروفایل, نتیجه‌گیری کلیدی طراحی, ۱. خلاصه اجرایی, ۱۰. جریان کاربری (خلاصه‌ی گام‌به‌گام), ۱۱. حالات مرزی و قواعد کسب‌وکار, ۱۲. مراحل پیاده‌سازی (به‌ترتیب و به‌تفکیک ریپو), ۱۳. تصمیمات باز و ریسک‌ها, ۱۴. مرجع نمونه‌ی داده (+16 more)
### Community 72 - "Community 72"
Cohesion: 0.07
Nodes (4): ClaimItem, Claim, Collection, self
Cohesion: 0.08
Nodes (3): Claim, Collection, self
### Community 74 - "Community 74"
Cohesion: 0.09
@@ -1351,12 +1378,8 @@ Cohesion: 0.12
Nodes (3): SubscriptionPlan, Collection, self
### Community 81 - "Community 81"
Cohesion: 0.07
Nodes (27): dependencies, @ckeditor/ckeditor5-build-classic, @ckeditor/ckeditor5-react, @fontsource/vazirmatn, @heroicons/react, @hookform/resolvers, jalaali-js, leaflet (+19 more)
### Community 82 - "Community 82"
Cohesion: 0.14
Nodes (5): CategoryImportTest, PurgeDoctorsCommand, Connection, InputInterface, OutputInterface
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 83 - "Community 83"
Cohesion: 0.09
@@ -1372,7 +1395,7 @@ Nodes (30): devDependencies, @babel/core, @babel/preset-env, @babel/preset-react
### Community 86 - "Community 86"
Cohesion: 0.03
Nodes (25): BookingModeImmutableTest, BookingServicesPublicTest, DateOverrideOwnershipTest, LowTierFixesTest, SendCodeMobileRateLimitTest, ClaimsListNPlusOneTest, ClaimsListPaginationTest, CaptchaFlowTest (+17 more)
Nodes (24): AppointmentExpiryServiceTest, BookingModeImmutableTest, BookingServicesPublicTest, ServiceBasedSlotsTest, LowTierFixesTest, SendCodeMobileRateLimitTest, ClaimsListPaginationTest, CaptchaFlowTest (+16 more)
### Community 87 - "Community 87"
Cohesion: 0.10
@@ -1395,7 +1418,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.10
Cohesion: 0.09
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"
@@ -1443,8 +1466,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
@@ -1455,12 +1478,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.12
Nodes (16): AppointmentConfirmationService, BackfillAppointmentSessionsCommand, AppointmentController, AutoCreateSessionOnConfirmTest, InputInterface, OutputInterface, Appointment, Clinic (+8 more)
Cohesion: 0.24
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.11
Nodes (13): CaptchaController, BaseController, CategoryController, DoctorImportController, SiteContextController, JsonResponse, JsonResponse, Request (+5 more)
### Community 109 - "Community 109"
Cohesion: 0.29
@@ -1663,8 +1686,8 @@ 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.03
Nodes (51): ApiError, { refreshMock, logoutMock }, replaceMock, latinDigitsField(), NumericFieldProps, wrap(), ClinicAddress, ClinicDetailPage() (+43 more)
Cohesion: 0.04
Nodes (30): ApiError, { refreshMock, logoutMock }, replaceMock, displayDoctorName(), SecretaryDashboard(), AddrForm, addrSchema, AVATAR_COLORS (+22 more)
### Community 162 - "Community 162"
Cohesion: 0.10
@@ -1695,8 +1718,8 @@ Cohesion: 0.10
Nodes (20): api.ir (استعلام هویت — Shahkar / IbanMatch), اتصال به دیتابیس‌های مستقل (الزامی), اسرار (الزامی — قبل از اولین دیپلوی), امنیت و منابع, بررسی سلامت, دامنه‌ها و CORS, دیپلوی‌های بعدی, راهنمای دیپلوی ClinicPro (Coolify + Docker Compose) (+12 more)
### Community 169 - "Community 169"
Cohesion: 0.13
Nodes (7): SourceProfileIdTest, MellatGatewayTest, ErrorCodesTest, HealthControllerTest, TimezoneTest, TestCase, EntityManagerInterface
Cohesion: 0.10
Nodes (10): SourceProfileIdTest, MellatGatewayTest, ErrorCodesTest, HealthControllerTest, TimezoneTest, ActivateTrialTest, SubscriptionService, TestCase (+2 more)
### Community 170 - "Community 170"
Cohesion: 0.13
@@ -1832,15 +1855,15 @@ Nodes (16): Clinic Services API, DELETE /api/v1/service-item/{uuid}, DELETE /api
### Community 204 - "Community 204"
Cohesion: 0.04
Nodes (46): useSubscription(), AdminLayout(), avatarBg(), HUES, ProfileMenu(), Role, ROLE_LABELS, settingsPath() (+38 more)
Nodes (43): useSubscription(), AdminLayout(), avatarBg(), HUES, ProfileMenu(), Role, ROLE_LABELS, settingsPath() (+35 more)
### Community 205 - "Community 205"
Cohesion: 0.21
Nodes (4): SeedDemoDataCommand, InputInterface, OutputInterface, SymfonyStyle
### Community 206 - "Community 206"
Cohesion: 0.06
Nodes (17): GatewayFactory, MellatGateway, MockGateway, SepGateway, MellatGateway, SepGateway, SoapClient, PaymentGatewayInterface (+9 more)
Cohesion: 0.21
Nodes (5): MellatGateway, SoapClient, PaymentInitResult, PaymentRefundResult, PaymentVerifyResult
### Community 207 - "Community 207"
Cohesion: 0.15
@@ -1907,16 +1930,16 @@ Cohesion: 0.17
Nodes (11): تشخیص عمیق down شدن سرور بعد از ~۱۰ سیکل + وریفای و تکمیل فیکس‌های پایداری, زمینه, فایل‌های مرتبط, مشکل / هدف, نکات مهم, وضعیت فعلی, وظایف, ۱. وریفای فیکس‌های repo (idempotent) (+3 more)
### Community 228 - "Community 228"
Cohesion: 0.04
Nodes (52): Bulk import / export, DELETE `/api/v1/admin/insurance/{id}`, DELETE `/api/v1/billing/tenant-insurances/{uuid}`, DELETE `/api/v1/insurance/{id}`, EntityInsurancePricing — قیمت‌گذاری ویزیت بر اساس بیمه, Errors, Errors, Errors (+44 more)
Cohesion: 0.15
Nodes (13): Bulk import / export, DELETE `/api/v1/admin/insurance/{id}`, DELETE `/api/v1/insurance/{id}`, EntityInsurancePricing — قیمت‌گذاری ویزیت بر اساس بیمه, GET `/api/v1/billing/tenant-insurances/{uuid}/service-coverage`, GET `/api/v1/insurance/{id}`, Insurance API, PUT `/api/v1/billing/tenant-insurances/{uuid}/service-coverage` (+5 more)
### Community 229 - "Community 229"
Cohesion: 0.14
Nodes (13): DELETE `/api/v1/representation/{uuid}`, Errors, Errors, GET `/api/v1/representation/{uuid}/dashboard/monthly`, GET `/api/v1/site-context`, Path Parameters, Query Parameters, Query Parameters (+5 more)
### Community 230 - "Community 230"
Cohesion: 0.06
Nodes (33): ClinicDoctorItem, ClinicDoctorsManager(), ClinicInvitation, HUES_LIST, INV_STATUS_MAP, buildInsurancePayload(), Contract, contractToForm() (+25 more)
Cohesion: 0.11
Nodes (21): buildInsurancePayload(), Contract, contractToForm(), EMPTY_FORM, InsuranceFormValues, InsuranceModal(), InsuranceOption, KIND_LABEL (+13 more)
### Community 231 - "Community 231"
Cohesion: 0.17
@@ -2127,8 +2150,8 @@ Cohesion: 0.19
Nodes (4): ServiceItemRepository, ManagerRegistry, ServiceItem, ServiceSection
### Community 286 - "Community 286"
Cohesion: 0.11
Nodes (11): ChevronDownIcon(), ApptRow, HEAD, NewAppointmentsTable(), Props, JALALI_MONTHS, MONTH_OPTIONS, SelectorOption (+3 more)
Cohesion: 0.20
Nodes (7): ApptRow, JALALI_MONTHS, MONTH_OPTIONS, SelectorOption, TauriDashboardView(), TauriDashboardViewProps, DashboardStats
### Community 287 - "Community 287"
Cohesion: 0.27
@@ -2183,8 +2206,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.23
Nodes (7): PatientService, Appointment, DiscountRule, PatientRecord, PatientSession, SessionPayment, User
Cohesion: 0.05
Nodes (32): ApiAppointment, NOT_VISITED_STATUSES, ServiceOption, STATUS_OPTIONS, NewAppointmentsTable(), AdminCharts, AdminDashboard(), AdminRecent (+24 more)
### Community 301 - "Community 301"
Cohesion: 0.15
@@ -2200,7 +2223,7 @@ Nodes (16): آماده‌سازی پروژه ClinicPro برای دیپلوی ر
### Community 304 - "Community 304"
Cohesion: 0.22
Nodes (9): 30. 🟢 `GET` get 🆕, 33. 🔵 `POST` image_clinic, 43. 🟢 `GET` get, 6. کلینیک (Clinic), هدرهای اضافی, هدرهای اضافی, پاسخ‌ها, پاسخ‌ها (+1 more)
Nodes (9): 29. 🟢 `GET` clinic list 🆕, 30. 🟢 `GET` get 🆕, 36. 🟢 `GET` get my rate, 6. کلینیک (Clinic), هدرهای اضافی, پارامترهای Query, پاسخ‌ها, پاسخ‌ها (+1 more)
### Community 306 - "Community 306"
Cohesion: 0.07
@@ -2235,12 +2258,12 @@ Cohesion: 0.36
Nodes (4): InsuranceRepository, Insurance, InsuranceType, ManagerRegistry
### Community 314 - "Community 314"
Cohesion: 0.02
Nodes (108): AppointmentCardData, AppointmentTurnCard(), base, Invoice, InvoiceItem, InvoiceSummaryModal(), SessionConsumable, SessionData (+100 more)
Cohesion: 0.03
Nodes (97): AppointmentCardData, AppointmentTurnCard(), base, Breadcrumb(), PatientCaseBanner(), Tag, PatientTagsCell(), TenantTag (+89 more)
### Community 315 - "Community 315"
Cohesion: 0.10
Nodes (8): InvoiceRepository, InvoicePaymentStatus, InvoiceService, Invoice, ManagerRegistry, QueryBuilder, Invoice, PatientSession
Cohesion: 0.05
Nodes (21): BillingCalculatorTest, BillingCalculator, Money, InvoiceRepository, BillingCalculator, InvoicePaymentStatus, InvoiceService, PatientService (+13 more)
### Community 316 - "Community 316"
Cohesion: 0.12
@@ -2299,8 +2322,8 @@ Cohesion: 0.22
Nodes (8): Query های جدید, بیماران منحصربه‌فرد در بازه, درآمد بر اساس روز (از patient_sessions), فروش اشتراک بر اساس پنل (admin), نوبت‌ها بر اساس روز (admin chart), نکات مهم, هیچ migration لازم نیست, پایگاه داده — تسک ۱۶: داشبورد هوشمند
### Community 333 - "Community 333"
Cohesion: 0.04
Nodes (52): `city` / `state` در پاسخ لیست, DELETE `/api/v1/clinic-pro/doctor-address/{id}`, DELETE `/api/v1/doctor/{uuid}`, Doctor API, Errors, Errors, Errors, Errors (+44 more)
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 334 - "Community 334"
Cohesion: 0.25
@@ -2427,8 +2450,8 @@ Cohesion: 0.25
Nodes (7): بازسازی از صفر, دادهٔ انبوه, شناسه‌ها, نام پزشک بدون عنوان, نکته‌ها, پرسوناها, کاربران تستی
### Community 367 - "Community 367"
Cohesion: 0.16
Nodes (6): Altcha, AltchaService, altcha, Altcha(), AltchaProps, IntrinsicElements
Cohesion: 0.24
Nodes (3): Altcha, AltchaService, altcha
### Community 368 - "Community 368"
Cohesion: 0.36
@@ -2563,8 +2586,8 @@ Cohesion: 0.06
Nodes (30): انتقال برنامه کاری، اصلاح فرم تنظیمات نوبت، فیلدهای عددی لاتین، رفع باگ هزینه ویزیت در مودال، و لاگ/تایم‌لاین لغو نوبت, تسک ۱ — انتقال کامل «برنامه کاری» از پروفایل به تنظیمات نوبت‌دهی, تسک ۲ — اصلاح چیدمان دکمه ذخیره در صفحه تنظیمات نوبت‌دهی, تسک ۳ — اجبار ورودی لاتین در همه فیلدهای عددی سراسری, تسک ۴ — رفع باگ: ثبت نوبت هنگام الزامی بودن هزینه ویزیت (۴۲۲), تسک ۵ — ثبت لاگ و رویداد Timeline هنگام لغو نوبت, زمینه, فایل‌های مرتبط (+22 more)
### Community 407 - "Community 407"
Cohesion: 0.16
Nodes (11): MessageBusInterface, MockObject, SmsService, SmsServiceLookupOnlyTest, SmsLogRepository, SmsMessageTemplateRepository, SmsService, SmsTextResolver (+3 more)
Cohesion: 0.17
Nodes (11): MessageBusInterface, MockObject, SmsLogRepository, SmsServiceLookupOnlyTest, SmsLog, SmsLogRepository, SmsMessageTemplateRepository, SmsService (+3 more)
### Community 409 - "Community 409"
Cohesion: 0.15
@@ -2579,13 +2602,17 @@ Cohesion: 0.10
Nodes (20): edge cases, خلاصهٔ خطاها و اولویت, راه‌حل, راه‌حل, راه‌حل, راه‌حل, رفع خطاهای لاگ سرور (production) — ۱۴۰۵/۰۴/۲۰, ریشه (+12 more)
### Community 416 - "Community 416"
Cohesion: 0.02
Nodes (96): FreeVisitPrice(), PatientTagsCell(), TenantTag, ServiceTariffModal(), TauriStatCards(), PaymentConfig, PaymentGatewayInfo, usePaymentConfig() (+88 more)
Cohesion: 0.03
Nodes (95): Invoice, InvoiceItem, InvoiceSummaryModal(), SessionConsumable, SessionData, SessionPayment, STATUS_LABEL, ServiceTariffModal() (+87 more)
### Community 418 - "Community 418"
Cohesion: 0.17
Nodes (11): دیپلوی ClinicPro روی Coolify (Docker Compose), رفع اشکال, مراحل دیپلوی, معماری دیپلوی, نکات عملیاتی, چند دامنه فرانت‌اند (مهم), ۱. ساخت Resource در Coolify, ۲. اختصاص دامنه (+3 more)
### Community 421 - "Community 421"
Cohesion: 0.27
Nodes (5): ClinicAppointmentAccessTest, Appointment, Clinic, Doctor, User
### Community 422 - "Community 422"
Cohesion: 0.12
Nodes (15): راه‌حل, راه‌حل, راه‌حل, رفع زوم نقشه در افزودن آدرس + کپچا و موبایل در claim + حذف پروفایل توسط مالک, ریشه‌ها, زمینه, فایل‌های مرتبط, نکات مهم (+7 more)
@@ -2622,10 +2649,6 @@ Nodes (16): `book()` عمومی — الگوی درستِ موجود (کپی ا
Cohesion: 0.11
Nodes (12): AdminCspSubscriber, MaintenanceSubscriber, NumericFieldNormalizerSubscriber, SecurityHeadersSubscriber, EventSubscriberInterface, ResponseEvent, ExceptionEvent, Request (+4 more)
### Community 438 - "Community 438"
Cohesion: 0.22
Nodes (5): ClaimsByPatientTest, Doctor, Invoice, PatientRecord, User
### Community 439 - "Community 439"
Cohesion: 0.17
Nodes (11): زمینه, صفحه Twig دعوت پزشک + کوتاه‌کردن URL پیامک, فایل‌های مرتبط, مشکل / هدف, نکات مهم, وضعیت فعلی, وظایف, ۱. کوتاه‌کردن توکن دعوت (+3 more)
@@ -2659,7 +2682,7 @@ Cohesion: 0.07
Nodes (27): Bank accounts, Body, Body, Errors, Errors, Errors, Errors, Errors (+19 more)
### Community 451 - "Community 451"
Cohesion: 0.18
Cohesion: 0.16
Nodes (4): LogPruneService, MaintenanceService, MaintenanceModeTest, SiteConfigRepository
### Community 452 - "Community 452"
@@ -2667,8 +2690,8 @@ Cohesion: 0.15
Nodes (3): DoctorClaimRequest, Doctor, User
### Community 455 - "Community 455"
Cohesion: 0.16
Nodes (6): BillingCalculatorTest, BillingCalculator, Money, BillingCalculator, CoverageRule, ShareBreakdown
Cohesion: 0.37
Nodes (5): AppointmentConfirmationService, AutoCreateSessionOnConfirmTest, Appointment, Clinic, Doctor
### Community 456 - "Community 456"
Cohesion: 0.15
@@ -2679,8 +2702,8 @@ Cohesion: 0.24
Nodes (10): gridItemStyle, JALALI_MONTHS, jalaliFirstWeekday(), jalaliToGregorian(), navBtnStyle, PersianCalendar(), pf, Props (+2 more)
### Community 459 - "Community 459"
Cohesion: 0.33
Nodes (6): API موجود (نیاز به تغییر ندارند), اپیک‌ها, اپیک ۳ — منشی (Secretary) — تکمیل, تغییرات مورد نیاز, توضیح, نیازمندی‌های کارکردی
Cohesion: 0.40
Nodes (5): API موجود (نیاز به تغییر ندارند), اپیک ۳ — منشی (Secretary) — تکمیل, تغییرات مورد نیاز, توضیح, نیازمندی‌های کارکردی
### Community 460 - "Community 460"
Cohesion: 0.33
@@ -2755,7 +2778,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.15
Nodes (6): Authentication, ClinicPro — API Documentation Index, Error Code Reference, Modules, Persian digit normalization (global), Standard Response Envelope
### Community 481 - "Community 481"
@@ -2791,8 +2814,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.24
Nodes (8): ClaimSubmitterInterface, ClaimService, ManualClaimSubmitter, Claim, Invoice, User, Claim, ClaimSubmissionResult
Cohesion: 0.07
Nodes (19): ClaimAmountBoundsTest, ClaimsByPatientTest, ClaimsListNPlusOneTest, ClaimItem, ClaimSubmitterInterface, ClaimService, ManualClaimSubmitter, Claim (+11 more)
### Community 495 - "Community 495"
Cohesion: 0.12
@@ -2815,8 +2838,8 @@ Cohesion: 0.12
Nodes (16): `AppointmentSettingsPage.tsx` (بخش render), backend — نیازی به تغییر نیست (اول گشتم), `InsuranceModal.tsx` — انتخاب دستی نوع (حذف شود), `InsurancePricingPage.tsx`, `TenantInsuranceContracts.tsx` — یک جدول مسطح، خلاصه فقط در زیرنویس نام, بازطراحی صفحه بیمه و قیمت‌گذاری — تفکیک نوع بیمه با Tab + ردیف Expandable + انتقال ویزیت آزاد, زمینه, فایل‌های مرتبط (+8 more)
### Community 500 - "Community 500"
Cohesion: 0.40
Nodes (5): API موجود (نیاز به endpoint جدید ندارد), اپیک ۷ — داشبورد هوشمند (Smart Dashboard), تغییر مورد نیاز, توضیح, نیازمندی‌های کارکردی
Cohesion: 0.33
Nodes (6): API موجود (نیاز به endpoint جدید ندارد), اپیک‌ها, اپیک ۷ — داشبورد هوشمند (Smart Dashboard), تغییر مورد نیاز, توضیح, نیازمندی‌های کارکردی
### Community 501 - "Community 501"
Cohesion: 0.40
@@ -2955,8 +2978,8 @@ Cohesion: 0.12
Nodes (4): SessionPayment, PatientSession, self, User
### Community 543 - "Community 543"
Cohesion: 0.36
Nodes (4): ClaimAmountBoundsTest, Claim, Doctor, User
Cohesion: 0.13
Nodes (12): AdminUserDetail, AVATAR_COLORS, EditForm, editSchema, GENDER_LABELS, getPrimaryRole(), MARITAL_LABELS, MEDICAL_SECTIONS (+4 more)
### Community 544 - "Community 544"
Cohesion: 0.15
@@ -3071,8 +3094,8 @@ Cohesion: 0.48
Nodes (3): DoctorInsuranceRepository, DoctorInsurance, ManagerRegistry
### Community 577 - "Community 577"
Cohesion: 0.05
Nodes (47): grid, PatientFormOptions, patientFormSchema, PatientFormValues, Props, baseValues, options, setup() (+39 more)
Cohesion: 0.03
Nodes (67): grid, PatientFormOptions, patientFormSchema, PatientFormValues, Props, baseValues, options, setup() (+59 more)
### Community 578 - "Community 578"
Cohesion: 0.36
@@ -3311,8 +3334,8 @@ Cohesion: 0.21
Nodes (7): FinancialBreakdown, FinancialBreakdownRepository, CommissionService, ManagerRegistry, Payment, Payment, Representation
### Community 694 - "Community 694"
Cohesion: 0.15
Nodes (3): LoggerInterface, KavehNegarProvider, RanginehProvider
Cohesion: 0.11
Nodes (6): LoggerInterface, KavehNegarProvider, RanginehProvider, SmsService, SendSmsMessage, SmsProviderInterface
### Community 695 - "Community 695"
Cohesion: 0.67
@@ -3471,12 +3494,12 @@ Cohesion: 0.36
Nodes (4): BankAccountRepository, BankAccount, ManagerRegistry, User
### Community 759 - "Community 759"
Cohesion: 0.35
Nodes (3): SpecialtyController, JsonResponse, Request
Cohesion: 0.21
Nodes (4): SepGateway, PaymentInitResult, PaymentRefundResult, PaymentVerifyResult
### Community 761 - "Community 761"
Cohesion: 0.43
Nodes (3): AppointmentEvent, AppointmentEventRepository, ManagerRegistry
Cohesion: 0.15
Nodes (12): زمینه, فایل‌های مرتبط, مشکل / هدف, نکات مهم, وضعیت فعلی (کد واقعی), وظایف, پوشش و اعمالِ کاملِ مجوز پزشکِ عضو کلینیک (ClinicDoctorPermission) — همتای کار منشی, ۰. ممیزی و تصمیم (اول این) (+4 more)
### Community 764 - "Community 764"
Cohesion: 0.36
@@ -3531,8 +3554,8 @@ Cohesion: 0.24
Nodes (4): InventoryPackageItem, InventoryItem, InventoryPackage, self
### Community 782 - "Community 782"
Cohesion: 0.08
Nodes (20): Command, AssignScheduleClinicCommand, CancelExpiredAppointmentsCommand, CreateAdminCommand, NormalizeScheduleFormatCommand, PruneLogsCommand, SeedCategoriesCommand, Doctor (+12 more)
Cohesion: 0.10
Nodes (16): Command, AuditScheduleLocationsCommand, CancelExpiredAppointmentsCommand, PruneLogsCommand, SeedCategoriesCommand, SeedSmsMessageTemplatesCommand, InputInterface, OutputInterface (+8 more)
### Community 783 - "Community 783"
Cohesion: 0.13
@@ -3551,8 +3574,8 @@ Cohesion: 0.50
Nodes (4): Errors, GET `/oauth/userinfo`, Headers, Response `200`
### Community 789 - "Community 789"
Cohesion: 0.18
Nodes (8): FormValues, schema, SectionDef, SectionId, SECTIONS, Settings, SettingsPage(), TaxHistoryRow
Cohesion: 0.23
Nodes (4): DoctorService, DoctorServiceRepository, User, ManagerRegistry
### Community 791 - "Community 791"
Cohesion: 0.40
@@ -3615,8 +3638,8 @@ Cohesion: 0.43
Nodes (3): SmsTemplateRepository, SmsTemplate, ManagerRegistry
### Community 817 - "Community 817"
Cohesion: 0.39
Nodes (3): TagRepository, ManagerRegistry, Tag
Cohesion: 0.18
Nodes (5): MockGateway, PaymentGatewayInterface, PaymentInitResult, PaymentRefundResult, PaymentVerifyResult
### Community 818 - "Community 818"
Cohesion: 0.38
@@ -3655,8 +3678,8 @@ Cohesion: 0.39
Nodes (3): UserRepository, ManagerRegistry, User
### Community 838 - "Community 838"
Cohesion: 0.38
Nodes (5): Rate, RateRepository, Doctor, ManagerRegistry, User
Cohesion: 0.31
Nodes (3): InventoryItemRepository, InventoryItem, ManagerRegistry
### Community 839 - "Community 839"
Cohesion: 0.47
@@ -3730,9 +3753,13 @@ Nodes (9): Authentication API, Errors, Notification Mobile (OTP), POST `/oauth/l
Cohesion: 0.36
Nodes (3): TenantTagRepository, ManagerRegistry, TenantTag
### Community 868 - "Community 868"
Cohesion: 0.31
Nodes (4): AssignScheduleClinicCommand, Doctor, InputInterface, OutputInterface
### Community 869 - "Community 869"
Cohesion: 0.43
Nodes (3): SessionPaymentRepository, ManagerRegistry, SessionPayment
Cohesion: 0.39
Nodes (3): GatewayFactory, MellatGateway, SepGateway
### Community 871 - "Community 871"
Cohesion: 0.35
@@ -3775,8 +3802,8 @@ Cohesion: 0.40
Nodes (5): DELETE `/api/v1/patient/call/{uuid}`, Errors, GET `/api/v1/patient/{uuid}/calls`, POST `/api/v1/patient/{uuid}/call`, کال سنتر بیمار (Call Center)
### Community 894 - "Community 894"
Cohesion: 0.42
Nodes (3): ActivateTrialTest, SubscriptionService, SubscriptionPlan
Cohesion: 0.39
Nodes (3): ClinicStaffRepository, ClinicStaff, ManagerRegistry
### Community 899 - "Community 899"
Cohesion: 0.15
@@ -3803,8 +3830,8 @@ Cohesion: 0.18
Nodes (10): زمینه, نکات مهم, هدف, وظایف, پاک‌سازی رکوردهای آلودهٔ پزشک و کلینیک, پروژه, ۱. گزارش دامنهٔ آلودگی (اول اندازه‌گیری، بعد حذف), ۲. پاک‌سازی (+2 more)
### Community 908 - "Community 908"
Cohesion: 0.36
Nodes (4): RepairImportedDoctorsCommandTest, DoctorRepairStep, CommandTester, Doctor
Cohesion: 0.42
Nodes (3): RepairImportedDoctorsCommandTest, CommandTester, Doctor
### Community 910 - "Community 910"
Cohesion: 0.50
@@ -3822,6 +3849,10 @@ Nodes (6): Errors, GET `/api/v1/clinic/{uuid}`, Path Parameters, Response `200`,
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.43
Nodes (3): ClaimStatusLog, ClaimStatusLogRepository, ManagerRegistry
### Community 915 - "Community 915"
Cohesion: 0.18
Nodes (10): افزودن شهر به لیست پزشکان + رفع سقف خاموش limit, زمینه, فایل‌های مرتبط, نکات مهم, وضعیت فعلی, وظایف, پروژه, ۱. افزودن شهر به `toListArray()` (+2 more)
@@ -3868,11 +3899,11 @@ Nodes (5): DELETE `/api/v1/patient/message/{uuid}`, Errors, GET `/api/v1/patient
### Community 937 - "Community 937"
Cohesion: 0.38
Nodes (3): AuditScheduleLocationsCommand, InputInterface, OutputInterface
Nodes (3): BackfillAppointmentSessionsCommand, InputInterface, OutputInterface
### Community 939 - "Community 939"
Cohesion: 0.25
Nodes (4): BackfillSurrogateRoleStep, RepairOptions, RepairResult, SymfonyStyle
Cohesion: 0.12
Nodes (9): DoctorRepairStep, BackfillSpecialtyParentsStep, BackfillSurrogateRoleStep, RepairOptions, RepairResult, SymfonyStyle, RepairOptions, RepairResult (+1 more)
### Community 940 - "Community 940"
Cohesion: 0.40
@@ -3927,12 +3958,12 @@ Cohesion: 0.48
Nodes (3): SessionConsumableRepository, ManagerRegistry, SessionConsumable
### Community 962 - "Community 962"
Cohesion: 0.53
Nodes (3): PaymentLog, PaymentLogRepository, ManagerRegistry
Cohesion: 0.38
Nodes (3): CreateAdminCommand, InputInterface, OutputInterface
### Community 964 - "Community 964"
Cohesion: 0.43
Nodes (3): InvoiceItemRepository, InvoiceItem, ManagerRegistry
Cohesion: 0.38
Nodes (3): NormalizeScheduleFormatCommand, InputInterface, OutputInterface
### Community 965 - "Community 965"
Cohesion: 0.33
@@ -3951,16 +3982,16 @@ Cohesion: 0.28
Nodes (5): DoctorAppointmentFilterTest, AppointmentRepository, AppointmentExpiryService, Appointment, Doctor
### Community 973 - "Community 973"
Cohesion: 0.39
Nodes (5): CalendarIcon(), CardIcon(), CardTickIcon(), UserAddIcon(), StatCardModel
Cohesion: 0.17
Nodes (8): CalendarIcon(), CardIcon(), CardTickIcon(), ChevronDownIcon(), UserAddIcon(), HEAD, Props, StatCardModel
### Community 974 - "Community 974"
Cohesion: 0.40
Nodes (5): ۲.۸ تنظیمات نوبت (Appointment Settings), ۲.۸.۱ برنامه هفتگی (Weekly Schedule), ۲.۸.۲ تعطیلات (Holidays), ۲.۸.۳ لغو تعطیل (Date Override), ۲.۸.۴ الگوریتم محاسبه اسلات‌های خالی
### Community 975 - "Community 975"
Cohesion: 0.43
Nodes (3): SmsLogRepository, SmsLog, ManagerRegistry
Cohesion: 0.38
Nodes (3): PurgeDoctorsCommand, InputInterface, OutputInterface
### Community 976 - "Community 976"
Cohesion: 0.50
@@ -3971,8 +4002,8 @@ Cohesion: 0.46
Nodes (6): ChildMap, removeSpecialtyEntry(), childMap, toggleSpecialtyChild(), toggleSpecialtyRoot(), uniq()
### Community 978 - "Community 978"
Cohesion: 0.42
Nodes (4): UserActiveContextRepository, ManagerRegistry, User, UserActiveContext
Cohesion: 0.15
Nodes (6): ClinicDoctorPermissionEnforcementTest, UserActiveContextRepository, SecretaryAppointmentScopeTest, ManagerRegistry, User, UserActiveContext
### Community 979 - "Community 979"
Cohesion: 0.67
@@ -4006,17 +4037,17 @@ Nodes (4): GET /api/v1/categories/cities — شهرها, GET /api/v1/categories/
Cohesion: 0.33
Nodes (4): run(), RepairOptions, RepairResult, SymfonyStyle
### Community 989 - "Community 989"
Cohesion: 0.43
Nodes (3): CategoryImportController, JsonResponse, Request
### Community 990 - "Community 990"
Cohesion: 0.50
Nodes (4): ۲.۱۳ نظرات، لایک و امتیازدهی, ۲.۱۳.۱ نظر (Comment), ۲.۱۳.۲ لایک (Like), ۲.۱۳.۳ امتیاز (Rate)
### Community 991 - "Community 991"
Cohesion: 0.47
Nodes (3): SeedSmsMessageTemplatesCommand, InputInterface, OutputInterface
### Community 997 - "Community 997"
Cohesion: 0.40
Nodes (5): Errors, GET `/api/v1/appointments/doctor/{doctorUuid}`, Path Parameters, Query Parameters, Response `200`
Cohesion: 0.48
Nodes (3): SmsSettingsRepository, SmsSettings, ManagerRegistry
### Community 999 - "Community 999"
Cohesion: 0.40
@@ -4026,41 +4057,137 @@ Nodes (5): GET `/api/v1/admin/financial-breakdowns`, GET `/api/v1/admin/financia
Cohesion: 0.50
Nodes (4): Errors, GET `/api/v1/representation/doctors`, Query Parameters, Response `200`
### Community 1001 - "Community 1001"
Cohesion: 0.33
Nodes (6): `city` / `state` در پاسخ لیست, GET `/api/v1/doctors`, Query Parameters, Response `200`, اعتبارسنجی نام پزشک, مرتب‌سازی و تعریف «دارای نوبت»
### Community 1002 - "Community 1002"
Cohesion: 0.67
Nodes (3): GET `/api/v1/representation/{uuid}/dashboard/yearly`, Query Parameters, Response `200`
### Community 1004 - "Community 1004"
Cohesion: 0.67
Nodes (3): 29. 🟢 `GET` clinic list 🆕, پارامترهای Query, پاسخ‌ها
### Community 1005 - "Community 1005"
Cohesion: 0.40
Nodes (5): Errors, POST `/api/v1/appointment/{uuid}/confirm`, Request Body, Response `200`, What happens on the server
### Community 1007 - "Community 1007"
Cohesion: 0.40
Nodes (5): Errors, GET `/api/v1/clinic/my-doctor/{doctorUuid}`, Path Parameters, Response `200`, Schedule Fields Notes
### Community 1008 - "Community 1008"
Cohesion: 0.40
Nodes (5): Errors, PATCH `/api/v1/doctor/{uuid}`, Path Parameters, Request Body (`application/json`), Response `200`
### Community 1009 - "Community 1009"
Cohesion: 0.40
Nodes (5): Errors, PATCH `/api/v1/clinic-pro/doctor-address/{id}`, Path Parameters, Request Body, Response `200`
### Community 1010 - "Community 1010"
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 1012 - "Community 1012"
Cohesion: 0.40
Nodes (5): 62. 🟡 `PATCH` patch, Request Body, مثال Request, هدرهای اضافی, پاسخ‌ها
### Community 1013 - "Community 1013"
Cohesion: 0.40
Nodes (4): license, overrides, lodash, private
### Community 1015 - "Community 1015"
Cohesion: 0.50
Nodes (4): DELETE `/api/v1/doctor/{uuid}`, Errors, Path Parameters, Response `200`
### Community 1019 - "Community 1019"
Cohesion: 0.50
Nodes (4): Errors, POST `/api/v1/doctor`, Request Body (`application/json`), Response `201`
### Community 1020 - "Community 1020"
Cohesion: 0.50
Nodes (4): Errors, GET `/api/v1/doctor/{uuid}`, Path Parameters, Response `200`
### Community 1021 - "Community 1021"
Cohesion: 0.50
Nodes (4): Errors, POST `/file/upload/clinic_pro/doctor/field_image`, Request, Response `200`
### Community 1022 - "Community 1022"
Cohesion: 0.50
Nodes (4): Errors, POST `/api/v1/clinic-pro/doctor-address`, Request Body, Response `201`
### Community 1023 - "Community 1023"
Cohesion: 0.50
Nodes (4): Errors, Path Parameters, POST `/api/v1/clinic-pro/doctor-address/from-clinic/{clinicUuid}`, Response `201`
### Community 1024 - "Community 1024"
Cohesion: 0.50
Nodes (4): Errors, GET `/api/v1/admin/insurances`, Query Parameters, Response `200`
### Community 1025 - "Community 1025"
Cohesion: 0.50
Nodes (4): Errors, POST `/api/v1/admin/insurance`, Request Body (`application/json`), Response `201`
### Community 1026 - "Community 1026"
Cohesion: 0.50
Nodes (4): Errors, PATCH `/api/v1/admin/insurance/{id}`, Path Parameters, Response `200`
### Community 1027 - "Community 1027"
Cohesion: 0.67
Nodes (3): POST `/api/v1/admin/sms/template/{uuid}/approve`, Request Body (`application/json`), Response `200`
### Community 1028 - "Community 1028"
Cohesion: 0.50
Nodes (4): Errors, POST `/api/v1/insurance/`, Request Body (`application/json`), Response `201`
### Community 1029 - "Community 1029"
Cohesion: 0.50
Nodes (4): Errors, PATCH `/api/v1/insurance/{id}`, Request Body, Response `200`
### Community 1030 - "Community 1030"
Cohesion: 0.50
Nodes (4): GET `/api/v1/insurance-pricing`, Query Parameters, Response `200`, خطاها
### Community 1031 - "Community 1031"
Cohesion: 0.50
Nodes (4): PUT `/api/v1/insurance-pricing`, Request Body, Response `200`, خطاها
### Community 1032 - "Community 1032"
Cohesion: 0.50
Nodes (3): Altcha(), AltchaProps, IntrinsicElements
### Community 1033 - "Community 1033"
Cohesion: 0.67
Nodes (3): 36. 🟢 `GET` get my rate, هدرهای اضافی, پاسخ‌ها
Nodes (3): GET `/api/v1/insurances`, Query Parameters, Response `200`
### Community 1034 - "Community 1034"
Cohesion: 0.67
Nodes (3): POST `/api/v1/admin/insurance/{id}/upload-logo`, Request, Response `200`
### Community 1035 - "Community 1035"
Cohesion: 0.67
Nodes (3): 33. 🔵 `POST` image_clinic, هدرهای اضافی, پاسخ‌ها
### Community 1036 - "Community 1036"
Cohesion: 0.67
Nodes (3): 43. 🟢 `GET` get, هدرهای اضافی, پاسخ‌ها
## Knowledge Gaps
- **5307 isolated node(s):** `PORT`, `ROLES`, `[cmd, ...argv]`, `positional`, `opts` (+5302 more)
- **5317 isolated node(s):** `PORT`, `ROLES`, `[cmd, ...argv]`, `positional`, `opts` (+5312 more)
These have ≤1 connection - possible missing edges or undocumented components.
- **242 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes.
- **244 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes.
## Suggested Questions
_Questions this graph is uniquely positioned to answer:_
- **Why does `Altcha` connect `Community 367` to `Community 485`?**
_High betweenness centrality (0.113) - this node is a cross-community bridge._
- **Why does `SiteConfigRepository` connect `Community 451` to `Community 704`, `Community 485`, `Community 677`, `Community 169`, `Community 205`, `Community 206`, `Community 15`, `Community 367`, `Community 894`, `Community 693`, `Community 694`, `Community 637`, `Community 254`?**
_High betweenness centrality (0.099) - this node is a cross-community bridge._
- **Why does `ApiTestCase` connect `Community 86` to `Community 0`, `Community 16`, `Community 531`, `Community 534`, `Community 535`, `Community 538`, `Community 539`, `Community 541`, `Community 543`, `Community 562`, `Community 565`, `Community 59`, `Community 574`, `Community 575`, `Community 583`, `Community 594`, `Community 82`, `Community 608`, `Community 609`, `Community 107`, `Community 633`, `Community 640`, `Community 646`, `Community 652`, `Community 658`, `Community 659`, `Community 685`, `Community 690`, `Community 697`, `Community 704`, `Community 710`, `Community 715`, `Community 717`, `Community 719`, `Community 733`, `Community 743`, `Community 744`, `Community 748`, `Community 765`, `Community 775`, `Community 779`, `Community 784`, `Community 804`, `Community 823`, `Community 826`, `Community 828`, `Community 318`, `Community 832`, `Community 837`, `Community 840`, `Community 851`, `Community 854`, `Community 856`, `Community 871`, `Community 887`, `Community 907`, `Community 914`, `Community 403`, `Community 917`, `Community 918`, `Community 920`, `Community 921`, `Community 927`, `Community 928`, `Community 936`, `Community 424`, `Community 431`, `Community 943`, `Community 438`, `Community 442`, `Community 445`, `Community 959`, `Community 451`, `Community 968`, `Community 971`, `Community 978`, `Community 983`, `Community 989`, `Community 480`, `Community 482`, `Community 483`, `Community 484`, `Community 486`, `Community 998`, `Community 1003`, `Community 492`, `Community 497`?**
- **Why does `Altcha` connect `Community 367` to `Community 1032`, `Community 485`?**
_High betweenness centrality (0.116) - this node is a cross-community bridge._
- **Why does `SiteConfigRepository` connect `Community 451` to `Community 704`, `Community 485`, `Community 677`, `Community 169`, `Community 205`, `Community 15`, `Community 367`, `Community 881`, `Community 693`, `Community 759`, `Community 637`, `Community 254`?**
_High betweenness centrality (0.106) - this node is a cross-community bridge._
- **Why does `ApiTestCase` connect `Community 86` to `Community 0`, `Community 531`, `Community 534`, `Community 535`, `Community 538`, `Community 539`, `Community 541`, `Community 562`, `Community 565`, `Community 59`, `Community 574`, `Community 575`, `Community 583`, `Community 594`, `Community 82`, `Community 608`, `Community 609`, `Community 633`, `Community 640`, `Community 646`, `Community 652`, `Community 658`, `Community 659`, `Community 685`, `Community 690`, `Community 697`, `Community 704`, `Community 710`, `Community 715`, `Community 717`, `Community 719`, `Community 733`, `Community 743`, `Community 744`, `Community 748`, `Community 765`, `Community 775`, `Community 779`, `Community 784`, `Community 804`, `Community 823`, `Community 826`, `Community 828`, `Community 318`, `Community 832`, `Community 837`, `Community 840`, `Community 851`, `Community 854`, `Community 856`, `Community 871`, `Community 887`, `Community 907`, `Community 403`, `Community 917`, `Community 918`, `Community 920`, `Community 921`, `Community 927`, `Community 928`, `Community 421`, `Community 936`, `Community 424`, `Community 431`, `Community 943`, `Community 442`, `Community 445`, `Community 959`, `Community 451`, `Community 455`, `Community 968`, `Community 971`, `Community 978`, `Community 983`, `Community 480`, `Community 482`, `Community 483`, `Community 484`, `Community 486`, `Community 1003`, `Community 492`, `Community 1004`, `Community 494`, `Community 497`, `Community 1011`, `Community 1014`?**
_High betweenness centrality (0.057) - this node is a cross-community bridge._
- **What connects `PORT`, `ROLES`, `[cmd, ...argv]` to the rest of the system?**
_5307 weakly-connected nodes found - possible documentation gaps or missing edges._
_5317 weakly-connected nodes found - possible documentation gaps or missing edges._
- **Should `Community 0` be split into smaller, more focused modules?**
_Cohesion score 0.05237171574678187 - nodes in this community are weakly interconnected._
_Cohesion score 0.06392405063291139 - nodes in this community are weakly interconnected._
- **Should `Community 1` be split into smaller, more focused modules?**
_Cohesion score 0.07493061979648474 - nodes in this community are weakly interconnected._
_Cohesion score 0.05573770491803279 - 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._
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
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
+1 -1
View File
File diff suppressed because one or more lines are too long
+2454 -1629
View File
File diff suppressed because it is too large Load Diff
+51 -36
View File
@@ -1,7 +1,7 @@
{
"assets/admin/App.tsx": {
"mtime": 1784818172.692579,
"ast_hash": "8ff377edef61623fae9f278eac83122b",
"mtime": 1784820906.7683442,
"ast_hash": "8d0f3c0273b7b5b645e5fddb8d7359ec",
"semantic_hash": ""
},
"assets/admin/components/FreeVisitPrice.tsx": {
@@ -25,8 +25,8 @@
"semantic_hash": ""
},
"assets/admin/components/layout/Sidebar.tsx": {
"mtime": 1784816325.4877293,
"ast_hash": "8951499f1905371be30876d19c253d70",
"mtime": 1784820758.7049072,
"ast_hash": "842a0b95d3969899ec84ceeda1af6989",
"semantic_hash": ""
},
"assets/admin/components/layout/Topbar.tsx": {
@@ -1100,8 +1100,8 @@
"semantic_hash": ""
},
"src/ClinicService/Controller/ClinicServiceController.php": {
"mtime": 1784813866.2592807,
"ast_hash": "ecdb21995cc322da12550d4835f6e864",
"mtime": 1784820632.5114615,
"ast_hash": "36f0ea57dd223b4308c0569290eb1941",
"semantic_hash": ""
},
"src/ClinicService/Entity/ServiceItem.php": {
@@ -1210,8 +1210,8 @@
"semantic_hash": ""
},
"src/Insurance/Controller/InsuranceController.php": {
"mtime": 1784811160.5667396,
"ast_hash": "580205be8ca3bacd5e4515bceea4da8a",
"mtime": 1784820722.018758,
"ast_hash": "3ac2dc9f55c2c9f76dea0fe10f57c1e8",
"semantic_hash": ""
},
"src/Insurance/Entity/DoctorInsurance.php": {
@@ -1310,8 +1310,8 @@
"semantic_hash": ""
},
"src/Patient/Controller/PatientController.php": {
"mtime": 1784816935.0402553,
"ast_hash": "0446565cfd403fec9bc838c26a81c9e9",
"mtime": 1784820724.082775,
"ast_hash": "c1e9e6806d5945e4e12c68cbdf4d975a",
"semantic_hash": ""
},
"src/Patient/Entity/PatientRecord.php": {
@@ -1350,8 +1350,8 @@
"semantic_hash": ""
},
"src/Payment/Controller/PaymentController.php": {
"mtime": 1784818154.4552984,
"ast_hash": "deb04c63a0cf41588150d6e07387d411",
"mtime": 1784820760.775805,
"ast_hash": "c53132ad9e846708b786b83bd60aec08",
"semantic_hash": ""
},
"src/Payment/Entity/Payment.php": {
@@ -1595,8 +1595,8 @@
"semantic_hash": ""
},
"src/Sms/Controller/SmsWalletController.php": {
"mtime": 1784814463.9102025,
"ast_hash": "a96011f379a2d371231b715f0b9b3a71",
"mtime": 1784820752.1414826,
"ast_hash": "12a4dba77c759e2dd8a1c3d324fd05dc",
"semantic_hash": ""
},
"src/Sms/Entity/SmsLog.php": {
@@ -1715,8 +1715,8 @@
"semantic_hash": ""
},
"src/Staff/Controller/StaffController.php": {
"mtime": 1784814378.432419,
"ast_hash": "5640a999b73c97da1b0b6e8779909f76",
"mtime": 1784820739.5248845,
"ast_hash": "c52ba5338854d64a1169f3cec188d532",
"semantic_hash": ""
},
"src/Staff/Entity/ClinicStaff.php": {
@@ -2365,8 +2365,8 @@
"semantic_hash": ""
},
"docs/api/clinic.md": {
"mtime": 1784467315.9281468,
"ast_hash": "535571794286473c9f53259e3caaffa7",
"mtime": 1784821074.3873537,
"ast_hash": "ee6da47a98f0eec4b2e88e5cea20d02b",
"semantic_hash": ""
},
"docs/api/dashboard.md": {
@@ -4070,8 +4070,8 @@
"semantic_hash": ""
},
"assets/admin/components/layout/SettingsLayout.tsx": {
"mtime": 1784818183.4909794,
"ast_hash": "2e3db017d10b1db0ed7676af3ee85adc",
"mtime": 1784820887.4735112,
"ast_hash": "b2128c38fcc6f95f2248a93d8886ee8e",
"semantic_hash": ""
},
"assets/admin/pages/PaymentSuccessPage.test.tsx": {
@@ -4155,8 +4155,8 @@
"semantic_hash": ""
},
"src/Tag/Controller/TenantTagController.php": {
"mtime": 1784810617.3659263,
"ast_hash": "f3e70b60a6e69f7a28bf762a736d7755",
"mtime": 1784820770.0772424,
"ast_hash": "8e2a136ddcf21ff6c29cdf465a0740cc",
"semantic_hash": ""
},
"src/Tag/Entity/TenantTag.php": {
@@ -4435,8 +4435,8 @@
"semantic_hash": ""
},
"assets/admin/components/layout/PurchaseSubscriptionSidebar.tsx": {
"mtime": 1784818184.9586315,
"ast_hash": "53c9e2445a2cafa29c35f3d73f588a94",
"mtime": 1784820871.1188903,
"ast_hash": "89672bfe341cb2c0286376164912849d",
"semantic_hash": ""
},
"assets/admin/pages/subscriptionIcons.tsx": {
@@ -4570,8 +4570,8 @@
"semantic_hash": ""
},
"src/PaymentMethod/Controller/PaymentMethodController.php": {
"mtime": 1784811244.949153,
"ast_hash": "0d156563ce79e52b0f20b60e8a97e401",
"mtime": 1784820771.3861446,
"ast_hash": "19a1f6c62c501271cf18f00c100751cf",
"semantic_hash": ""
},
"src/PaymentMethod/Entity/BankAccount.php": {
@@ -4710,8 +4710,8 @@
"semantic_hash": ""
},
"src/Inventory/Controller/InventoryController.php": {
"mtime": 1784810544.31453,
"ast_hash": "cd6936ea62e0a39c61071a08ec751587",
"mtime": 1784820752.2898428,
"ast_hash": "6182877da8b17933af9e0414119ae524",
"semantic_hash": ""
},
"src/Inventory/Entity/InventoryItem.php": {
@@ -4800,8 +4800,8 @@
"semantic_hash": ""
},
"assets/admin/components/layout/Sidebar.test.tsx": {
"mtime": 1784816386.3284512,
"ast_hash": "0611077c87a16f07849ffff1bc87a248",
"mtime": 1784821020.6576161,
"ast_hash": "011aa185c3d0d54f526dad9c649d5d2c",
"semantic_hash": ""
},
"assets/admin/pages/AppointmentCreatePage.test.tsx": {
@@ -5215,8 +5215,8 @@
"semantic_hash": ""
},
"assets/admin/components/ui/DoctorPermissionsModal.tsx": {
"mtime": 1784464897.2191763,
"ast_hash": "863f3eaedb0cd4d6ec9afdb70aae1da1",
"mtime": 1784820037.6278641,
"ast_hash": "c574415ca0ca55d8adc828c9e383da0a",
"semantic_hash": ""
},
"assets/admin/components/ui/PriceInput.test.tsx": {
@@ -5345,8 +5345,8 @@
"semantic_hash": ""
},
"src/Clinic/Entity/ClinicDoctorPermission.php": {
"mtime": 1784464902.5990129,
"ast_hash": "c2298f090ea1d3f254e3955e48624f55",
"mtime": 1784820018.6469827,
"ast_hash": "7274cedd5f2d8a781b2777cd9889f4a9",
"semantic_hash": ""
},
"src/Clinic/Repository/ClinicDoctorPermissionRepository.php": {
@@ -5385,8 +5385,8 @@
"semantic_hash": ""
},
"src/Discount/Controller/DiscountController.php": {
"mtime": 1784814414.829287,
"ast_hash": "b5f8b1de08d9b83ba97b0559ce8fbb1c",
"mtime": 1784820757.511677,
"ast_hash": "df12fc422a347f020f6825135635ae08",
"semantic_hash": ""
},
"src/Discount/Entity/DiscountRule.php": {
@@ -6153,5 +6153,20 @@
"mtime": 1784812825.5404992,
"ast_hash": "2601cc7f4380fe482bbe64747b7077de",
"semantic_hash": ""
},
"src/Clinic/Security/ClinicDoctorAccessChecker.php": {
"mtime": 1784820581.2449746,
"ast_hash": "b022a7392d041b1d68251d9431e0ae6b",
"semantic_hash": ""
},
"tests/Clinic/ClinicDoctorPermissionEnforcementTest.php": {
"mtime": 1784820969.8948057,
"ast_hash": "de189a3336a708390f91e8d367346540",
"semantic_hash": ""
},
".claude/prompt/clinic-doctor-permissions-full-coverage-and-enforcement.md": {
"mtime": 1784819813.5703921,
"ast_hash": "8559d93c94f2ac1823dbe12719f91a49",
"semantic_hash": ""
}
}