Update manifest.json with new mtime and ast_hash for AppointmentsPage and AppointmentBookingModal test

This commit is contained in:
hamed
2026-07-23 15:13:38 +03:30
parent 0edaf6518f
commit 36f13ac7d3
5 changed files with 307 additions and 325 deletions
@@ -154,24 +154,32 @@ describe('NewAppointmentModal — هزینه ویزیت', () => {
await waitFor(() => await waitFor(() =>
expect(get).toHaveBeenCalledWith('/api/v1/insurance-pricing?doctor_uuid=doc1')); expect(get).toHaveBeenCalledWith('/api/v1/insurance-pricing?doctor_uuid=doc1'));
// اختیاری → کلپس بسته است؛ باز کردن آن تا فیلد دیده شود
fireEvent.click(screen.getByRole('button', { name: /هزینه ویزیت/ }));
// ۲٬۱۲۰٬۰۰۰ ریال = ۲۱۲٬۰۰۰ تومان // ۲٬۱۲۰٬۰۰۰ ریال = ۲۱۲٬۰۰۰ تومان
await waitFor(() => expect(screen.getByPlaceholderText('0')).toHaveValue('۲۱۲٬۰۰۰')); await waitFor(() => expect(screen.getByPlaceholderText('0')).toHaveValue('۲۱۲٬۰۰۰'));
}); });
it('بدون تعرفه، فیلد صفر می‌ماند و اختیاری است', async () => { it('هزینه ویزیت اختیاری در کلپسِ بسته است و با کلیک باز می‌شود', async () => {
mockPricing(0); mockPricing(0);
renderWithProviders(<NewAppointmentModal slot={slot} onClose={() => {}} onSuccess={() => {}} />); renderWithProviders(<NewAppointmentModal slot={slot} onClose={() => {}} onSuccess={() => {}} />);
// برچسب اختیاری همیشه در سرِ کلپس هست، ولی فیلد در ابتدا پنهان است
expect(screen.getByText('(اختیاری)')).toBeInTheDocument();
expect(screen.queryByPlaceholderText('0')).toBeNull();
fireEvent.click(screen.getByRole('button', { name: /هزینه ویزیت/ }));
await screen.findByText(/تعرفه‌ای ثبت نشده/); await screen.findByText(/تعرفه‌ای ثبت نشده/);
expect(screen.getByPlaceholderText('0')).toHaveValue(''); expect(screen.getByPlaceholderText('0')).toHaveValue('');
expect(screen.getByText('(اختیاری)')).toBeInTheDocument();
}); });
it('با الزامی بودن هزینه ویزیت و مبلغ صفر، ثبت غیرفعال است', async () => { it('با الزامی بودن هزینه ویزیت، کلپس باز است و مبلغ صفر ثبت را غیرفعال می‌کند', async () => {
mockPricing(0, true); mockPricing(0, true);
renderWithProviders(<NewAppointmentModal slot={slot} onClose={() => {}} onSuccess={() => {}} />); renderWithProviders(<NewAppointmentModal slot={slot} onClose={() => {}} onSuccess={() => {}} />);
// الزامی → بدون کلیک، فیلد و خطا نمایش داده می‌شوند
await screen.findByText('هزینه ویزیت الزامی است'); await screen.findByText('هزینه ویزیت الزامی است');
expect(screen.getByPlaceholderText('0')).toBeInTheDocument();
expect(screen.getByRole('button', { name: 'ثبت نوبت' })).toBeDisabled(); expect(screen.getByRole('button', { name: 'ثبت نوبت' })).toBeDisabled();
}); });
}); });
-5
View File
@@ -959,7 +959,6 @@
"957": "Community 957", "957": "Community 957",
"958": "Community 958", "958": "Community 958",
"959": "Community 959", "959": "Community 959",
"960": "Community 960",
"961": "Community 961", "961": "Community 961",
"962": "Community 962", "962": "Community 962",
"963": "Community 963", "963": "Community 963",
@@ -987,7 +986,6 @@
"985": "Community 985", "985": "Community 985",
"986": "Community 986", "986": "Community 986",
"987": "Community 987", "987": "Community 987",
"988": "Community 988",
"989": "Community 989", "989": "Community 989",
"990": "Community 990", "990": "Community 990",
"991": "Community 991", "991": "Community 991",
@@ -1001,20 +999,17 @@
"999": "Community 999", "999": "Community 999",
"1000": "Community 1000", "1000": "Community 1000",
"1001": "Community 1001", "1001": "Community 1001",
"1002": "Community 1002",
"1003": "Community 1003", "1003": "Community 1003",
"1004": "Community 1004", "1004": "Community 1004",
"1005": "Community 1005", "1005": "Community 1005",
"1006": "Community 1006", "1006": "Community 1006",
"1007": "Community 1007", "1007": "Community 1007",
"1008": "Community 1008", "1008": "Community 1008",
"1009": "Community 1009",
"1010": "Community 1010", "1010": "Community 1010",
"1011": "Community 1011", "1011": "Community 1011",
"1012": "Community 1012", "1012": "Community 1012",
"1013": "Community 1013", "1013": "Community 1013",
"1014": "Community 1014", "1014": "Community 1014",
"1015": "Community 1015",
"1016": "Community 1016", "1016": "Community 1016",
"1017": "Community 1017", "1017": "Community 1017",
"1018": "Community 1018" "1018": "Community 1018"
+50 -71
View File
@@ -1,16 +1,16 @@
# Graph Report - clinicpro (2026-07-23) # Graph Report - clinicpro (2026-07-23)
## Corpus Check ## Corpus Check
- 1193 files · ~853,642 words - 1193 files · ~853,807 words
- Verdict: corpus is large enough that graph structure adds value. - Verdict: corpus is large enough that graph structure adds value.
## Summary ## Summary
- 13952 nodes · 21775 edges · 1019 communities (780 shown, 239 thin omitted) - 13952 nodes · 21775 edges · 1014 communities (776 shown, 238 thin omitted)
- Extraction: 98% EXTRACTED · 2% INFERRED · 0% AMBIGUOUS · INFERRED: 465 edges (avg confidence: 0.8) - Extraction: 98% EXTRACTED · 2% INFERRED · 0% AMBIGUOUS · INFERRED: 465 edges (avg confidence: 0.8)
- Token cost: 0 input · 0 output - Token cost: 0 input · 0 output
## Graph Freshness ## Graph Freshness
- Built from commit: `9a776be1` - Built from commit: `0edaf651`
- Run `git rev-parse HEAD` and compare to check if the graph is stale. - Run `git rev-parse HEAD` and compare to check if the graph is stale.
- Run `graphify update .` after code changes (no API cost). - Run `graphify update .` after code changes (no API cost).
@@ -958,7 +958,6 @@
- [[_COMMUNITY_Community 957|Community 957]] - [[_COMMUNITY_Community 957|Community 957]]
- [[_COMMUNITY_Community 958|Community 958]] - [[_COMMUNITY_Community 958|Community 958]]
- [[_COMMUNITY_Community 959|Community 959]] - [[_COMMUNITY_Community 959|Community 959]]
- [[_COMMUNITY_Community 960|Community 960]]
- [[_COMMUNITY_Community 961|Community 961]] - [[_COMMUNITY_Community 961|Community 961]]
- [[_COMMUNITY_Community 962|Community 962]] - [[_COMMUNITY_Community 962|Community 962]]
- [[_COMMUNITY_Community 963|Community 963]] - [[_COMMUNITY_Community 963|Community 963]]
@@ -985,7 +984,6 @@
- [[_COMMUNITY_Community 985|Community 985]] - [[_COMMUNITY_Community 985|Community 985]]
- [[_COMMUNITY_Community 986|Community 986]] - [[_COMMUNITY_Community 986|Community 986]]
- [[_COMMUNITY_Community 987|Community 987]] - [[_COMMUNITY_Community 987|Community 987]]
- [[_COMMUNITY_Community 988|Community 988]]
- [[_COMMUNITY_Community 989|Community 989]] - [[_COMMUNITY_Community 989|Community 989]]
- [[_COMMUNITY_Community 990|Community 990]] - [[_COMMUNITY_Community 990|Community 990]]
- [[_COMMUNITY_Community 991|Community 991]] - [[_COMMUNITY_Community 991|Community 991]]
@@ -999,20 +997,17 @@
- [[_COMMUNITY_Community 999|Community 999]] - [[_COMMUNITY_Community 999|Community 999]]
- [[_COMMUNITY_Community 1000|Community 1000]] - [[_COMMUNITY_Community 1000|Community 1000]]
- [[_COMMUNITY_Community 1001|Community 1001]] - [[_COMMUNITY_Community 1001|Community 1001]]
- [[_COMMUNITY_Community 1002|Community 1002]]
- [[_COMMUNITY_Community 1003|Community 1003]] - [[_COMMUNITY_Community 1003|Community 1003]]
- [[_COMMUNITY_Community 1004|Community 1004]] - [[_COMMUNITY_Community 1004|Community 1004]]
- [[_COMMUNITY_Community 1005|Community 1005]] - [[_COMMUNITY_Community 1005|Community 1005]]
- [[_COMMUNITY_Community 1006|Community 1006]] - [[_COMMUNITY_Community 1006|Community 1006]]
- [[_COMMUNITY_Community 1007|Community 1007]] - [[_COMMUNITY_Community 1007|Community 1007]]
- [[_COMMUNITY_Community 1008|Community 1008]] - [[_COMMUNITY_Community 1008|Community 1008]]
- [[_COMMUNITY_Community 1009|Community 1009]]
- [[_COMMUNITY_Community 1010|Community 1010]] - [[_COMMUNITY_Community 1010|Community 1010]]
- [[_COMMUNITY_Community 1011|Community 1011]] - [[_COMMUNITY_Community 1011|Community 1011]]
- [[_COMMUNITY_Community 1012|Community 1012]] - [[_COMMUNITY_Community 1012|Community 1012]]
- [[_COMMUNITY_Community 1013|Community 1013]] - [[_COMMUNITY_Community 1013|Community 1013]]
- [[_COMMUNITY_Community 1014|Community 1014]] - [[_COMMUNITY_Community 1014|Community 1014]]
- [[_COMMUNITY_Community 1015|Community 1015]]
- [[_COMMUNITY_Community 1016|Community 1016]] - [[_COMMUNITY_Community 1016|Community 1016]]
- [[_COMMUNITY_Community 1017|Community 1017]] - [[_COMMUNITY_Community 1017|Community 1017]]
- [[_COMMUNITY_Community 1018|Community 1018]] - [[_COMMUNITY_Community 1018|Community 1018]]
@@ -1044,7 +1039,7 @@
## Import Cycles ## Import Cycles
- None detected. - None detected.
## Communities (1019 total, 239 thin omitted) ## Communities (1014 total, 238 thin omitted)
### Community 0 - "Community 0" ### Community 0 - "Community 0"
Cohesion: 0.05 Cohesion: 0.05
@@ -1052,7 +1047,7 @@ Nodes (23): ClinicAppointmentAccessTest, ClinicOwnerScheduleAccessTest, ClinicDo
### Community 1 - "Community 1" ### Community 1 - "Community 1"
Cohesion: 0.03 Cohesion: 0.03
Nodes (69): ServiceItemFormModal(), latinDigitsField(), numericField(), NumericFieldProps, wrap(), iranMobileSchema, CitiesTab(), CityForm (+61 more) Nodes (67): ServiceItemFormModal(), latinDigitsField(), numericField(), NumericFieldProps, wrap(), iranMobileSchema, CitiesTab(), CityForm (+59 more)
### Community 2 - "Community 2" ### Community 2 - "Community 2"
Cohesion: 0.10 Cohesion: 0.10
@@ -1260,7 +1255,7 @@ Nodes (26): الزامات UI, باگ‌فیکس صفحه نوبت‌ها, با
### Community 53 - "Community 53" ### Community 53 - "Community 53"
Cohesion: 0.06 Cohesion: 0.06
Nodes (20): AppLogRepository, ClaimItemRepository, DoctorClaimRequestRepository, DoctorInsuranceRepository, PreRegistrationRepository, SessionAuditLogRepository, SiteConfigRepository, SmsTemplateRepository (+12 more) Nodes (20): AppLogRepository, ClaimItemRepository, DoctorClaimRequestRepository, PreRegistrationRepository, SessionAuditLogRepository, SessionServiceRepository, SiteConfigRepository, SmsTemplateRepository (+12 more)
### Community 54 - "Community 54" ### Community 54 - "Community 54"
Cohesion: 0.10 Cohesion: 0.10
@@ -1300,7 +1295,7 @@ Nodes (21): WalletTransactionModal(), BANK_KEY, BankAccount, BankAccountInput, P
### Community 63 - "Community 63" ### Community 63 - "Community 63"
Cohesion: 0.02 Cohesion: 0.02
Nodes (130): PaginatedResponse, formatDate(), formatDateTime(), toDate(), ALL_STATUSES, AppointmentDetailPage(), isoDay(), timeOf() (+122 more) Nodes (164): ALLOWED_ROLES, PrivateRoute(), PublicRoute(), queryClient, toastStyle, PaginatedResponse, formatDate(), formatDateTime() (+156 more)
### Community 64 - "Community 64" ### Community 64 - "Community 64"
Cohesion: 0.19 Cohesion: 0.19
@@ -1464,7 +1459,7 @@ Nodes (8): AppointmentController, Appointment, Clinic, Doctor, JsonResponse, Req
### Community 108 - "Community 108" ### Community 108 - "Community 108"
Cohesion: 0.09 Cohesion: 0.09
Nodes (16): CaptchaController, BaseController, CategoryController, CategoryImportController, DoctorImportController, SiteContextController, JsonResponse, JsonResponse (+8 more) Nodes (16): CaptchaController, BaseController, CategoryController, DoctorImportController, SiteContextController, SmsMessageController, JsonResponse, JsonResponse (+8 more)
### Community 109 - "Community 109" ### Community 109 - "Community 109"
Cohesion: 0.29 Cohesion: 0.29
@@ -1668,7 +1663,7 @@ Nodes (15): Date Overrides, DELETE `/api/v1/appointment-settings/date-override/{
### Community 161 - "Community 161" ### Community 161 - "Community 161"
Cohesion: 0.04 Cohesion: 0.04
Nodes (35): ApiError, { refreshMock, logoutMock }, replaceMock, displayDoctorName(), SecretaryDashboard(), AddrForm, addrSchema, AVATAR_COLORS (+27 more) Nodes (30): ApiError, { refreshMock, logoutMock }, replaceMock, displayDoctorName(), SecretaryDashboard(), AddrForm, addrSchema, AVATAR_COLORS (+22 more)
### Community 162 - "Community 162" ### Community 162 - "Community 162"
Cohesion: 0.10 Cohesion: 0.10
@@ -1823,8 +1818,8 @@ Cohesion: 0.04
Nodes (42): DoctorTab, PickedService, ServicePick, ServiceSlot, ServiceSlotPicker(), get, services, td (+34 more) Nodes (42): DoctorTab, PickedService, ServicePick, ServiceSlot, ServiceSlotPicker(), get, services, td (+34 more)
### Community 201 - "Community 201" ### Community 201 - "Community 201"
Cohesion: 0.13 Cohesion: 0.11
Nodes (15): Admin API, Behaviour while enabled, Clinic Invitation Management, Console escape hatch, Failure behaviour, GET `/api/v1/admin/secretaries`, GET /api/v1/admin/settings, Maintenance Mode (+7 more) Nodes (19): Admin API, Behaviour while enabled, Clinic Invitation Management, Console escape hatch, Failure behaviour, GET `/api/v1/admin/pre-registrations`, GET `/api/v1/admin/secretaries`, GET /api/v1/admin/settings (+11 more)
### Community 202 - "Community 202" ### Community 202 - "Community 202"
Cohesion: 0.07 Cohesion: 0.07
@@ -1916,7 +1911,7 @@ Nodes (52): Bulk import / export, DELETE `/api/v1/admin/insurance/{id}`, DELETE
### Community 229 - "Community 229" ### Community 229 - "Community 229"
Cohesion: 0.14 Cohesion: 0.14
Nodes (13): Errors, GET `/api/v1/representation/{uuid}/dashboard/monthly`, GET `/api/v1/representation/{uuid}/dashboard/yearly`, GET `/api/v1/site-context`, Path Parameters, Query Parameters, Query Parameters, Query Parameters (+5 more) 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" ### Community 230 - "Community 230"
Cohesion: 0.05 Cohesion: 0.05
@@ -2175,8 +2170,8 @@ Cohesion: 0.22
Nodes (9): Clinic Management, DELETE `/api/v1/admin/clinic/{uuid}`, Errors, GET `/api/v1/admin/clinics`, PATCH `/api/v1/admin/clinic/{uuid}/status`, Query Parameters, Response `200`, Response `200` (+1 more) Nodes (9): Clinic Management, DELETE `/api/v1/admin/clinic/{uuid}`, Errors, GET `/api/v1/admin/clinics`, PATCH `/api/v1/admin/clinic/{uuid}/status`, Query Parameters, Response `200`, Response `200` (+1 more)
### Community 297 - "Community 297" ### Community 297 - "Community 297"
Cohesion: 0.15 Cohesion: 0.22
Nodes (13): DELETE `/api/v1/representation/iban/{id}`, Errors, Errors, Errors, GET `/api/v1/representation/doctors`, GET `/api/v1/representation/doctors/stats`, GET `/api/v1/representation/me`, Query Parameters (+5 more) Nodes (9): DELETE `/api/v1/representation/iban/{id}`, Errors, Errors, GET `/api/v1/representation/doctors/stats`, GET `/api/v1/representation/me`, Response `200`, Response `200`, Response `200` (+1 more)
### Community 298 - "Community 298" ### Community 298 - "Community 298"
Cohesion: 0.22 Cohesion: 0.22
@@ -2187,8 +2182,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) 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" ### Community 300 - "Community 300"
Cohesion: 0.27 Cohesion: 0.25
Nodes (9): AddTurn(), PatientsCategoryView(), PatientsGridView(), SearchHeaderP(), TurnsFilter(), countFilters(), dayBound(), EMPTY (+1 more) Nodes (6): DEFAULTS, EMPTY, Form, schema, TAG_COLORS, TenantTag
### Community 301 - "Community 301" ### Community 301 - "Community 301"
Cohesion: 0.15 Cohesion: 0.15
@@ -2204,7 +2199,7 @@ Nodes (16): آماده‌سازی پروژه ClinicPro برای دیپلوی ر
### Community 304 - "Community 304" ### Community 304 - "Community 304"
Cohesion: 0.04 Cohesion: 0.04
Nodes (52): 29. 🟢 `GET` clinic list 🆕, 30. 🟢 `GET` get 🆕, 31. 🟡 `PATCH` patch, 33. 🔵 `POST` image_clinic, 34. 🔵 `POST` image logo, 36. 🟢 `GET` get my rate, 37. 🔵 `POST` post, 39. 🟡 `PATCH` Comment confirmation (+44 more) Nodes (56): 29. 🟢 `GET` clinic list 🆕, 30. 🟢 `GET` get 🆕, 31. 🟡 `PATCH` patch, 33. 🔵 `POST` image_clinic, 34. 🔵 `POST` image logo, 36. 🟢 `GET` get my rate, 37. 🔵 `POST` post, 39. 🟡 `PATCH` Comment confirmation (+48 more)
### Community 306 - "Community 306" ### Community 306 - "Community 306"
Cohesion: 0.07 Cohesion: 0.07
@@ -2240,7 +2235,7 @@ Nodes (4): InsuranceRepository, Insurance, InsuranceType, ManagerRegistry
### Community 314 - "Community 314" ### Community 314 - "Community 314"
Cohesion: 0.02 Cohesion: 0.02
Nodes (109): AppointmentCardData, AppointmentTurnCard(), base, Invoice, InvoiceItem, InvoiceSummaryModal(), SessionConsumable, SessionData (+101 more) Nodes (118): AppointmentCardData, AppointmentTurnCard(), base, Invoice, InvoiceItem, InvoiceSummaryModal(), SessionConsumable, SessionData (+110 more)
### Community 315 - "Community 315" ### Community 315 - "Community 315"
Cohesion: 0.20 Cohesion: 0.20
@@ -2546,6 +2541,10 @@ Nodes (3): SessionConsumable, InventoryItem, PatientSession
Cohesion: 0.22 Cohesion: 0.22
Nodes (7): initiate(), refund(), reverse(), verify(), PaymentInitResult, PaymentRefundResult, PaymentVerifyResult Nodes (7): initiate(), refund(), reverse(), verify(), PaymentInitResult, PaymentRefundResult, PaymentVerifyResult
### Community 399 - "Community 399"
Cohesion: 0.16
Nodes (7): AbstractMigration, Schema, Version20260609130407, Schema, Version20260624092459, Schema, Version20260716094319
### Community 401 - "Community 401" ### Community 401 - "Community 401"
Cohesion: 0.12 Cohesion: 0.12
Nodes (15): `lib/utils.ts`, `SettingsPage.tsx` (ورودی‌ها ریال ذخیره می‌شوند), زمینه, فایل‌های مرتبط, مشکل / هدف, نمونهٔ نمایش (Subscription), نکات مهم, واحد پول = تومان در پنل ادمین (نمایش ÷۱۰ / ورودی ×۱۰) — ذخیره و درگاه ریال می‌ماند (+7 more) Nodes (15): `lib/utils.ts`, `SettingsPage.tsx` (ورودی‌ها ریال ذخیره می‌شوند), زمینه, فایل‌های مرتبط, مشکل / هدف, نمونهٔ نمایش (Subscription), نکات مهم, واحد پول = تومان در پنل ادمین (نمایش ÷۱۰ / ورودی ×۱۰) — ذخیره و درگاه ریال می‌ماند (+7 more)
@@ -2607,8 +2606,8 @@ Cohesion: 0.18
Nodes (8): ErrorCodes, PatientController, JsonResponse, PatientRecord, PatientRecordScope, PatientSession, Request, User Nodes (8): ErrorCodes, PatientController, JsonResponse, PatientRecord, PatientRecordScope, PatientSession, Request, User
### Community 435 - "Community 435" ### Community 435 - "Community 435"
Cohesion: 0.15 Cohesion: 0.36
Nodes (10): Command, AuditScheduleLocationsCommand, RepairImportedDoctorsCommand, SeedCategoriesCommand, InputInterface, OutputInterface, InputInterface, OutputInterface (+2 more) Nodes (3): RepairImportedDoctorsCommand, InputInterface, OutputInterface
### Community 436 - "Community 436" ### Community 436 - "Community 436"
Cohesion: 0.12 Cohesion: 0.12
@@ -3398,17 +3397,13 @@ Nodes (4): Errors, POST `/api/v1/user/login`, Request Body, Response `200`
Cohesion: 0.43 Cohesion: 0.43
Nodes (3): PatientResolver, User, UserProfile Nodes (3): PatientResolver, User, UserProfile
### Community 730 - "Community 730"
Cohesion: 0.23
Nodes (5): AbstractMigration, Schema, Version20260610103401, Schema, Version20260614182950
### Community 732 - "Community 732" ### Community 732 - "Community 732"
Cohesion: 0.15 Cohesion: 0.15
Nodes (12): call siteهای فعلی PersianDateInput (نباید تغییر کنند — فقط برای اطمینان از سازگاری Props), زمینه, فایل‌های مرتبط, مشکل / هدف, نکات مهم, همه‌ی تقویم‌های پنل ادمین باید شمسی باشند (رفع تقویم میلادی PersianDateInput), وضعیت فعلی (کد مشکل‌دار), وظایف (+4 more) Nodes (12): call siteهای فعلی PersianDateInput (نباید تغییر کنند — فقط برای اطمینان از سازگاری Props), زمینه, فایل‌های مرتبط, مشکل / هدف, نکات مهم, همه‌ی تقویم‌های پنل ادمین باید شمسی باشند (رفع تقویم میلادی PersianDateInput), وضعیت فعلی (کد مشکل‌دار), وظایف (+4 more)
### Community 733 - "Community 733" ### Community 733 - "Community 733"
Cohesion: 0.19 Cohesion: 0.14
Nodes (5): UniqueConstraintsTest, FinancialBreakdown, FinancialBreakdownRepository, ManagerRegistry, Payment Nodes (8): UniqueConstraintsTest, FinancialBreakdown, FinancialBreakdownRepository, CommissionService, ManagerRegistry, Payment, Payment, Representation
### Community 737 - "Community 737" ### Community 737 - "Community 737"
Cohesion: 0.38 Cohesion: 0.38
@@ -3531,8 +3526,8 @@ Cohesion: 0.24
Nodes (4): InventoryPackageItem, InventoryItem, InventoryPackage, self Nodes (4): InventoryPackageItem, InventoryItem, InventoryPackage, self
### Community 782 - "Community 782" ### Community 782 - "Community 782"
Cohesion: 0.47 Cohesion: 0.38
Nodes (3): CommissionService, Payment, Representation Nodes (3): AuditScheduleLocationsCommand, InputInterface, OutputInterface
### Community 783 - "Community 783" ### Community 783 - "Community 783"
Cohesion: 0.13 Cohesion: 0.13
@@ -3607,8 +3602,8 @@ Cohesion: 0.15
Nodes (12): زمینه, فایل‌های مرتبط, مشکل / هدف, نکات مهم, وضعیت فعلی, وظایف, ویرایش سرویس‌های مراجعه + ویرایش/حذف پرداخت + Audit Log مالی جامع, پروژه (+4 more) Nodes (12): زمینه, فایل‌های مرتبط, مشکل / هدف, نکات مهم, وضعیت فعلی, وظایف, ویرایش سرویس‌های مراجعه + ویرایش/حذف پرداخت + Audit Log مالی جامع, پروژه (+4 more)
### Community 813 - "Community 813" ### Community 813 - "Community 813"
Cohesion: 0.17 Cohesion: 0.18
Nodes (6): DoctorRepairStep, BackfillSourceProfileIdStep, SourceProfileId, RepairOptions, RepairResult, SymfonyStyle Nodes (5): BackfillSourceProfileIdStep, SourceProfileId, RepairOptions, RepairResult, SymfonyStyle
### Community 814 - "Community 814" ### Community 814 - "Community 814"
Cohesion: 0.38 Cohesion: 0.38
@@ -3754,6 +3749,10 @@ Nodes (3): CreateAdminCommand, InputInterface, OutputInterface
Cohesion: 0.43 Cohesion: 0.43
Nodes (3): SessionPaymentRepository, ManagerRegistry, SessionPayment Nodes (3): SessionPaymentRepository, ManagerRegistry, SessionPayment
### Community 870 - "Community 870"
Cohesion: 0.43
Nodes (3): CategoryImportController, JsonResponse, Request
### Community 871 - "Community 871" ### Community 871 - "Community 871"
Cohesion: 0.35 Cohesion: 0.35
Nodes (3): DoctorListLocationTest, City, Doctor Nodes (3): DoctorListLocationTest, City, Doctor
@@ -3787,8 +3786,8 @@ Cohesion: 0.15
Nodes (12): زمینه, فایل‌های مرتبط, فرآیند ثبت و قطعی کردن نوبت (مودال پرداخت + پرونده), مشکل / هدف, نکات مهم, وضعیت فعلی, وظایف, پروژه (+4 more) Nodes (12): زمینه, فایل‌های مرتبط, فرآیند ثبت و قطعی کردن نوبت (مودال پرداخت + پرونده), مشکل / هدف, نکات مهم, وضعیت فعلی, وظایف, پروژه (+4 more)
### Community 890 - "Community 890" ### Community 890 - "Community 890"
Cohesion: 0.43 Cohesion: 0.48
Nodes (3): SmsMessageController, JsonResponse, Request Nodes (3): DoctorInsuranceRepository, DoctorInsurance, ManagerRegistry
### Community 899 - "Community 899" ### Community 899 - "Community 899"
Cohesion: 0.15 Cohesion: 0.15
@@ -3883,20 +3882,16 @@ Cohesion: 0.38
Nodes (3): RepairAcceptedInvitationsCommand, InputInterface, OutputInterface Nodes (3): RepairAcceptedInvitationsCommand, InputInterface, OutputInterface
### Community 937 - "Community 937" ### Community 937 - "Community 937"
Cohesion: 0.38 Cohesion: 0.13
Nodes (3): NormalizeScheduleFormatCommand, InputInterface, OutputInterface Nodes (13): Command, CancelExpiredAppointmentsCommand, NormalizeScheduleFormatCommand, PruneLogsCommand, SeedCategoriesCommand, InputInterface, OutputInterface, InputInterface (+5 more)
### Community 939 - "Community 939" ### Community 939 - "Community 939"
Cohesion: 0.25 Cohesion: 0.12
Nodes (4): BackfillSpecialtyParentsStep, RepairOptions, RepairResult, SymfonyStyle Nodes (9): DoctorRepairStep, BackfillSpecialtyParentsStep, BackfillSurrogateRoleStep, RepairOptions, RepairResult, SymfonyStyle, RepairOptions, RepairResult (+1 more)
### Community 940 - "Community 940"
Cohesion: 0.47
Nodes (3): CancelExpiredAppointmentsCommand, InputInterface, OutputInterface
### Community 941 - "Community 941" ### Community 941 - "Community 941"
Cohesion: 0.25 Cohesion: 0.50
Nodes (4): BackfillSurrogateRoleStep, RepairOptions, RepairResult, SymfonyStyle Nodes (4): Errors, GET `/api/v1/representation/doctors`, Query Parameters, Response `200`
### Community 942 - "Community 942" ### Community 942 - "Community 942"
Cohesion: 0.25 Cohesion: 0.25
@@ -3907,8 +3902,8 @@ Cohesion: 0.48
Nodes (3): SessionConsumableRepository, ManagerRegistry, SessionConsumable Nodes (3): SessionConsumableRepository, ManagerRegistry, SessionConsumable
### Community 944 - "Community 944" ### Community 944 - "Community 944"
Cohesion: 0.47 Cohesion: 0.67
Nodes (3): PruneLogsCommand, InputInterface, OutputInterface Nodes (3): GET `/api/v1/representation/{uuid}/dashboard/yearly`, Query Parameters, Response `200`
### Community 949 - "Community 949" ### Community 949 - "Community 949"
Cohesion: 0.25 Cohesion: 0.25
@@ -4026,10 +4021,6 @@ Nodes (3): GET `/api/v1/clinics`, Query Parameters, Response `200`
Cohesion: 0.33 Cohesion: 0.33
Nodes (4): run(), RepairOptions, RepairResult, SymfonyStyle Nodes (4): run(), RepairOptions, RepairResult, SymfonyStyle
### Community 988 - "Community 988"
Cohesion: 0.48
Nodes (3): SessionServiceRepository, ManagerRegistry, SessionService
### Community 989 - "Community 989" ### Community 989 - "Community 989"
Cohesion: 0.33 Cohesion: 0.33
Nodes (6): GET `/api/v1/admin/sms/logs`, GET `/api/v1/admin/sms/templates`, Query Parameters, Response `200`, Response `200`, SMS Management (Admin) Nodes (6): GET `/api/v1/admin/sms/logs`, GET `/api/v1/admin/sms/templates`, Query Parameters, Response `200`, Response `200`, SMS Management (Admin)
@@ -4050,10 +4041,6 @@ Nodes (5): GET `/api/v1/admin/financial-breakdowns`, GET `/api/v1/admin/financia
Cohesion: 0.40 Cohesion: 0.40
Nodes (5): 35. 🟡 `PATCH` patch, Request Body, مثال Request, هدرهای اضافی, پاسخ‌ها Nodes (5): 35. 🟡 `PATCH` patch, Request Body, مثال Request, هدرهای اضافی, پاسخ‌ها
### Community 1002 - "Community 1002"
Cohesion: 0.50
Nodes (4): GET `/api/v1/admin/pre-registrations`, POST `/api/v1/admin/pre-registrations/{uuid}/approve`, POST `/api/v1/admin/pre-registrations/{uuid}/reject`, Pre-Registration Management
### Community 1003 - "Community 1003" ### Community 1003 - "Community 1003"
Cohesion: 0.50 Cohesion: 0.50
Nodes (4): DELETE `/api/v1/doctor/{uuid}`, Errors, Path Parameters, Response `200` Nodes (4): DELETE `/api/v1/doctor/{uuid}`, Errors, Path Parameters, Response `200`
@@ -4070,10 +4057,6 @@ Nodes (4): 38. 🟢 `GET` Unapproved comments, هدرهای اضافی, پارا
Cohesion: 0.50 Cohesion: 0.50
Nodes (4): Errors, GET `/api/v1/doctor/{uuid}`, Path Parameters, Response `200` Nodes (4): Errors, GET `/api/v1/doctor/{uuid}`, Path Parameters, Response `200`
### Community 1009 - "Community 1009"
Cohesion: 0.50
Nodes (4): 40. 🔵 `POST` post, مثال Request, هدرهای اضافی, پاسخ‌ها
### Community 1010 - "Community 1010" ### Community 1010 - "Community 1010"
Cohesion: 0.50 Cohesion: 0.50
Nodes (4): Errors, POST `/file/upload/clinic_pro/doctor/field_image`, Request, Response `200` Nodes (4): Errors, POST `/file/upload/clinic_pro/doctor/field_image`, Request, Response `200`
@@ -4083,36 +4066,32 @@ Cohesion: 0.50
Nodes (4): Errors, POST `/api/v1/clinic-pro/doctor-address`, Request Body, Response `201` Nodes (4): Errors, POST `/api/v1/clinic-pro/doctor-address`, Request Body, Response `201`
### Community 1012 - "Community 1012" ### Community 1012 - "Community 1012"
Cohesion: 0.04 Cohesion: 0.25
Nodes (40): ALLOWED_ROLES, PrivateRoute(), PublicRoute(), queryClient, toastStyle, DoctorProfilePage(), InsurancePricingPage(), ForgotStep (+32 more) Nodes (7): ForgotStep, LoginPage(), Mode, SmsStep, Altcha(), AltchaProps, IntrinsicElements
### Community 1013 - "Community 1013" ### Community 1013 - "Community 1013"
Cohesion: 0.50 Cohesion: 0.50
Nodes (4): Errors, Path Parameters, POST `/api/v1/clinic-pro/doctor-address/from-clinic/{clinicUuid}`, Response `201` Nodes (4): Errors, Path Parameters, POST `/api/v1/clinic-pro/doctor-address/from-clinic/{clinicUuid}`, Response `201`
### Community 1015 - "Community 1015"
Cohesion: 0.67
Nodes (3): DELETE `/api/v1/representation/{uuid}`, Errors, Response `200`
## Knowledge Gaps ## Knowledge Gaps
- **5271 isolated node(s):** `PORT`, `ROLES`, `[cmd, ...argv]`, `positional`, `opts` (+5266 more) - **5271 isolated node(s):** `PORT`, `ROLES`, `[cmd, ...argv]`, `positional`, `opts` (+5266 more)
These have ≤1 connection - possible missing edges or undocumented components. These have ≤1 connection - possible missing edges or undocumented components.
- **239 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes. - **238 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes.
## Suggested Questions ## Suggested Questions
_Questions this graph is uniquely positioned to answer:_ _Questions this graph is uniquely positioned to answer:_
- **Why does `Altcha` connect `Community 367` to `Community 1012`, `Community 485`?** - **Why does `Altcha` connect `Community 367` to `Community 1012`, `Community 485`?**
_High betweenness centrality (0.115) - this node is a cross-community bridge._ _High betweenness centrality (0.115) - this node is a cross-community bridge._
- **Why does `SiteConfigRepository` connect `Community 608` to `Community 832`, `Community 485`, `Community 809`, `Community 169`, `Community 205`, `Community 206`, `Community 15`, `Community 367`, `Community 782`, `Community 761`, `Community 637`, `Community 926`?** - **Why does `SiteConfigRepository` connect `Community 608` to `Community 832`, `Community 485`, `Community 733`, `Community 809`, `Community 169`, `Community 205`, `Community 206`, `Community 15`, `Community 367`, `Community 761`, `Community 637`, `Community 926`?**
_High betweenness centrality (0.103) - this node is a cross-community bridge._ _High betweenness centrality (0.103) - this node is a cross-community bridge._
- **Why does `BaseController` connect `Community 108` to `Community 771`, `Community 6`, `Community 7`, `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 926`, `Community 676`, `Community 295`, `Community 433`, `Community 689`, `Community 438`, `Community 58`, `Community 59`, `Community 315`, `Community 699`, `Community 444`, `Community 64`, `Community 75`, `Community 77`, `Community 607`, `Community 739`, `Community 122`, `Community 104`, `Community 873`, `Community 107`, `Community 109`, `Community 245`, `Community 121`, `Community 890`, `Community 252`?** - **Why does `BaseController` connect `Community 108` to `Community 771`, `Community 6`, `Community 7`, `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 926`, `Community 676`, `Community 295`, `Community 433`, `Community 689`, `Community 438`, `Community 58`, `Community 59`, `Community 315`, `Community 699`, `Community 444`, `Community 64`, `Community 75`, `Community 77`, `Community 607`, `Community 739`, `Community 870`, `Community 104`, `Community 873`, `Community 107`, `Community 109`, `Community 245`, `Community 121`, `Community 122`, `Community 252`?**
_High betweenness centrality (0.057) - this node is a cross-community bridge._ _High betweenness centrality (0.057) - this node is a cross-community bridge._
- **What connects `PORT`, `ROLES`, `[cmd, ...argv]` to the rest of the system?** - **What connects `PORT`, `ROLES`, `[cmd, ...argv]` to the rest of the system?**
_5271 weakly-connected nodes found - possible documentation gaps or missing edges._ _5271 weakly-connected nodes found - possible documentation gaps or missing edges._
- **Should `Community 0` be split into smaller, more focused modules?** - **Should `Community 0` be split into smaller, more focused modules?**
_Cohesion score 0.05237171574678187 - nodes in this community are weakly interconnected._ _Cohesion score 0.05237171574678187 - nodes in this community are weakly interconnected._
- **Should `Community 1` be split into smaller, more focused modules?** - **Should `Community 1` be split into smaller, more focused modules?**
_Cohesion score 0.02562342713337909 - nodes in this community are weakly interconnected._ _Cohesion score 0.02696629213483146 - nodes in this community are weakly interconnected._
- **Should `Community 2` be split into smaller, more focused modules?** - **Should `Community 2` be split into smaller, more focused modules?**
_Cohesion score 0.09523809523809523 - nodes in this community are weakly interconnected._ _Cohesion score 0.09523809523809523 - nodes in this community are weakly interconnected._
+242 -242
View File
File diff suppressed because it is too large Load Diff
+4 -4
View File
@@ -170,8 +170,8 @@
"semantic_hash": "" "semantic_hash": ""
}, },
"assets/admin/pages/AppointmentsPage.tsx": { "assets/admin/pages/AppointmentsPage.tsx": {
"mtime": 1784806676.9626431, "mtime": 1784806921.2071803,
"ast_hash": "4304e5435b9bfdf9e25efd3271387704", "ast_hash": "28b83f88809749c37f107e2b7b51b9c2",
"semantic_hash": "" "semantic_hash": ""
}, },
"assets/admin/pages/BlogFormPage.tsx": { "assets/admin/pages/BlogFormPage.tsx": {
@@ -4890,8 +4890,8 @@
"semantic_hash": "" "semantic_hash": ""
}, },
"assets/admin/pages/AppointmentBookingModal.test.tsx": { "assets/admin/pages/AppointmentBookingModal.test.tsx": {
"mtime": 1784806782.881906, "mtime": 1784806974.9179978,
"ast_hash": "362d4053a7c9d03f58a1f8e498d68f51", "ast_hash": "a8bb87ad34a3123e50cac859fee650ba",
"semantic_hash": "" "semantic_hash": ""
}, },
"config/bootstrap_tz.php": { "config/bootstrap_tz.php": {