diff --git a/.claude/prompt/booking-engine-task-00b-service-mode.md b/.claude/prompt/booking-engine-task-00b-service-mode.md
new file mode 100644
index 0000000..abe8272
--- /dev/null
+++ b/.claude/prompt/booking-engine-task-00b-service-mode.md
@@ -0,0 +1,564 @@
+# تسک ۰۰ب — سازگارسازی سایت عمومی با نوبتدهی سرویسی
+
+## پروژه
+
+`nobat724_front` (سایت عمومی)
+
+پرامپت همتا (بکاند، **باید اول تمام شده باشد**):
+`clinicpro/.claude/prompt/booking-engine-task-runner.md` → تسک ۰۰
+
+منبع کامل این تسک — چهار فایل، **همه را بخوان**:
+
+```
+clinicpro/docs/new_feture/taskes/task-00b-nobat724-service-mode/task.md
+clinicpro/docs/new_feture/taskes/task-00b-nobat724-service-mode/architecture.md
+clinicpro/docs/new_feture/taskes/task-00b-nobat724-service-mode/implementation_notes.md
+clinicpro/docs/new_feture/taskes/task-00b-nobat724-service-mode/checklist.md ← وضعیت
+```
+
+و سه سند حاکم:
+
+```
+clinicpro/docs/new_feture/taskes/_shared/red-lines.md
+clinicpro/docs/new_feture/taskes/_shared/ui-conventions.md
+clinicpro/docs/new_feture/taskes/_shared/definition-of-done.md
+```
+
+---
+
+## زمینه
+
+سایت حالت نوبتدهی سرویسی را **میشناسد** — `components/appointment/index.js` روش را
+per محل تشخیص میدهد، `components/appointment/service/index.js` مرحلهٔ انتخاب سرویس را
+نشان میدهد، و `lib/appointmentSlots.js` پاسخ `appointment-service-slots` را به قالب
+اسلات تبدیل میکند. ولی سه دسته مشکل دارد: انحراف از تم، محاسبهٔ موازی مدت در فرانت، و
+نبود سرویس/مدت در پنل کاربر.
+
+تسک ۰۰ در `clinicpro` سه endpoint جدید ساخته (`service-reschedule`، `convert-reserve`،
+پارامتر `exclude_appointment_uuid`) و دو ستون `service_total_minutes`/`service_buffer_minutes`
+اضافه کرده. این تسک سایت را با آنها همگام میکند.
+
+---
+
+## مشکل / هدف
+
+پنج شکاف مشخص:
+
+| # | شکاف | فایل |
+|---|---|---|
+| ۱ | چهار رنگ hard-code در مرحلهٔ انتخاب سرویس → دارکمود میشکند | `components/appointment/service/index.js` |
+| ۲ | مدت با `reduce` در فرانت حساب میشود، موازی با `total_duration_minutes` بکاند | همان فایل |
+| ۳ | `adaptServiceSlots` همهٔ زمانها را در یک تب با برچسب ثابت «زمانهای خالی» میریزد و `end_time` را اشتباه میدهد | `lib/appointmentSlots.js` |
+| ۴ | پنل کاربر نام سرویس و مدت نوبت را نشان نمیدهد | `components/dashboard/userAccount/sidebars/turns/*` |
+| ۵ | جابهجایی نوبت سرویسی از پنل کاربر وجود ندارد | `.../turns/isTurnsDetails/ButtonData.js` |
+
+شکاف ۲ مهمترین است: وقتی تسک ۰۴ فرمول را به «زمان تنها / زمان اضافه» عوض کند، سایت
+عدد قدیمی نشان میدهد و بیمار مدتی میبیند که با مدت واقعی نوبتش نمیخواند.
+
+---
+
+## معیار پذیرش
+
+معیار کامل با همهٔ حالتهای مرزی در `task.md` همان تسک است. خلاصهٔ اجباری:
+
+- ✅ **موفق:** مرحلهٔ انتخاب سرویس در دارکمود درست رندر میشود — هیچ متن تیره روی زمینهٔ
+ تیره، هیچ کارت سفید.
+- ✅ **موفق:** مدت نمایشدادهشده از `total_duration_minutes` پاسخ بکاند میآید؛ اگر بکاند
+ عدد متفاوتی بدهد، UI همان را نشان میدهد.
+- ✅ **موفق:** پزشکی با دو شیفت (صبح ۹-۱۳، عصر ۱۶-۲۰) در حالت سرویسی → **دو تب** زمانی با
+ برچسب واقعی هر شیفت.
+- ✅ **موفق:** کارت نوبت در پنل کاربر نام سرویسها و مدت را نشان میدهد.
+- ✅ **موفق:** بیمار از پنل نوبت سرویسیاش را جابهجا میکند و **عددی وارد نمیکند** — مدت
+ را بکاند حساب میکند.
+- ✅ **موفق (⛔ خط سرخ):** رزرو اسلاتی سرتاسر **بیتبهبیت مثل قبل** کار میکند و کارت نوبت
+ اسلاتی در پنل هیچ تغییری نمیکند.
+- ❌ **خطا:** جابهجایی به زمان اشغالشده → **پیام فارسی خودِ بکاند** نمایش داده میشود
+ (نه «خطای نامشخص») و فهرست زمانها خودکار `refetch` میشود.
+- ❌ **خطا:** انتخاب صفر سرویس → دکمهٔ ادامه غیرفعال با راهنمای فارسی.
+- ⚠️ **مرزی:** پنل کاربری که **فقط** نوبت اسلاتی دارد → بدون هیچ تغییری رندر میشود
+ (شرط `&&` روی فیلدهای سرویسی).
+- ⚠️ **مرزی:** محل سرویسی بدون سرویس `bookable` → پیام روشن + پیشنهاد محل دیگر اگر باشد.
+- ⚠️ **مرزی:** `total_duration_minutes` در پاسخ نبود (بکاند قدیمی) → `fallbackSum` با
+ `console.warn`، نه صفحهٔ خالی.
+- ⚠️ **مرزی:** نوبت سرویسیِ قدیمی بدون `service_items` → نام «—»، بدون کرش.
+- ⚠️ **مرزی:** نوبت رزرو (`is_reserve`) در پنل → فقط سرویسها، بدون مدت (زمان ندارد).
+- ⚠️ **مرزی:** نوبت ۹۰ دقیقهای با شکاف ۹۰ دقیقه → **یک** تب، نه تبهای تکعضوی
+ (آستانه = `max(60, durationMin)`).
+
+---
+
+## فایلهای مرتبط
+
+| فایل | نقش |
+|------|-----|
+| `components/appointment/service/index.js` | مرحلهٔ انتخاب سرویس — بازنویسی با توکن تم |
+| `components/appointment/index.js` | ارکستراتور مراحل — تشخیص `booking_mode` per محل |
+| `components/appointment/date/index.js` | مصرفکنندهٔ `adaptServiceSlots` |
+| `components/appointment/detail/SubmitData.js` | ارسال `service_item_uuids` در ثبت |
+| `lib/appointmentSlots.js` | `adaptSlots` (⛔ قفل) و `adaptServiceSlots` (بازنویسی) |
+| `services/response.js` | افزودن `serviceReschedule` و `getServiceSlotsForReschedule` |
+| `components/dashboard/userAccount/sidebars/turns/Card.js` | + نام سرویس و مدت |
+| `.../turns/isTurnsDetails/DetailLg.js` · `DetailSm.js` | همان |
+| `.../turns/isTurnsDetails/ButtonData.js` | + دکمهٔ جابهجایی |
+| `.../turns/isTurnsDetails/modal/index.js` | مودال موجود — بازاستفاده |
+| `mui/index.js` · `tailwind.config.js` · `app/globals.css` | منبع تم و توکن |
+| `CLAUDE.md` | + بخش «حالتهای نوبتدهی» |
+
+---
+
+## وضعیت فعلی
+
+### ۱. رنگهای hard-code — `components/appointment/service/index.js`
+
+```jsx
+
۱. انتخاب سرویس
+
+{services.length === 0 ? (
+
+ در حال حاضر سرویسی برای نوبتدهی آنلاین تعریف نشده است.
+
+) : (
+ …
+ className={`flex items-center justify-between gap-3 p-3 rounded-xl border text-right transition-colors ${
+ active
+ ? "border-[#5559CE] bg-[#5559CE]/5"
+ : "border-gray-200 bg-white hover:border-[#5559CE]"
+ }`}
+```
+
+چهار رنگ ثابت. سایت `darkMode: "class"` دارد و صفحات عمومی با `data-theme` تم عوض
+میکنند (`app/Providers.js` با `next-themes`) — این کامپوننت در دارکمود میشکند، در حالی
+که بقیهٔ مراحل رزرو نمیشکنند.
+
+### ۲. محاسبهٔ موازی مدت — همان فایل
+
+```js
+const totalMinutes = services
+ .filter((s) => draft.includes(s.uuid))
+ .reduce((sum, s) => sum + (Number(s.duration_minutes) || 0), 0);
+```
+
+بکاند همان عدد را در `total_duration_minutes` پاسخ `appointment-service-slots` میدهد.
+دو منبع حقیقت.
+
+### ۳. `adaptServiceSlots` — `lib/appointmentSlots.js`
+
+```js
+// حالت سرویسی: پاسخ appointment-service-slots فقط start_times دارد (همه کافی).
+// آنها را در یک session قالببندی میکنیم تا مثل حالت اسلاتی رندر شوند.
+export function adaptServiceSlots(slotsResponse) {
+ const starts =
+ slotsResponse?.data?.start_times ?? slotsResponse?.start_times ?? [];
+ if (!starts.length) return [];
+ return [
+ {
+ start_time: starts[0].start_time,
+ end_time: starts[starts.length - 1].start_time,
+ label: "زمانهای خالی",
+ slots: starts.map((s) => ({ ...s, is_available: true })),
+ },
+ ];
+}
+```
+
+سه مشکل: همه در یک تب · برچسب ثابت · `end_time` برابر **شروعِ** آخرین اسلات، نه پایان نوبت.
+
+⛔ تابع `adaptSlots()` بالای همین فایل (حالت اسلاتی) **قفل است** و یک خط هم عوض نمیشود:
+
+```js
+export function adaptSlots(slotsResponse) {
+ const sessions = slotsResponse?.data?.sessions ?? slotsResponse?.sessions ?? [];
+ return sessions
+ .filter((session) => Array.isArray(session.slots) && session.slots.length > 0)
+ .map((session) => ({ … }));
+}
+```
+
+### ۴ و ۵. پنل کاربر
+
+`components/dashboard/userAccount/sidebars/turns/Card.js` و
+`isTurnsDetails/DetailLg.js`/`DetailSm.js` هیچ ارجاعی به `service` یا مدت ندارند.
+`ButtonData.js` هیچ مسیر جابهجایی ندارد.
+
+### تشخیص حالت — `components/appointment/index.js:125` (درست، دستنخورده بماند)
+
+```js
+// روش نوبتدهی و سرویسها per-location هستند: یک پزشک میتواند در مطب شخصی
+// اسلاتی و در کلینیک سرویسی باشد.
+const bookingMode = selectedLocation?.booking_mode === "service" ? "service" : "slot";
+const bookingServices = selectedLocation?.services ?? [];
+```
+
+و `changeLocation()` که انتخابهای وابسته را باطل میکند — این رفتار درست است و حفظ میشود.
+
+---
+
+## وظایف
+
+`todo` را از ردیفهای `checklist.md` همان تسک بساز (بخشهای ۰ تا ۸)، نه از این هشت وظیفه.
+هر ردیف چکلیست را همان لحظه `⏳ → 🔄 → ✅` کن.
+
+### ۱. پیشبررسی قرارداد API — پیش از هر خط کد
+
+سه چیز را تأیید کن. اگر فیلدی نیست، **کد نزن**؛ به تسک ۰۰ برگردان.
+
+```bash
+TOKEN=
+
+# ۱. appointments/user چه فیلدهایی دارد؟
+curl -s -H "Authorization: Bearer $TOKEN" \
+ https://clinic-pro.ddev.site/api/v1/appointments/user | jq '.data[0] | keys'
+# باید service_items و service_total_minutes داشته باشد
+
+# ۲. هر start_times[i] فیلد end_time دارد؟
+curl -s "https://clinic-pro.ddev.site/api/v1/appointment-service-slots?doctor_uuid=…&date=…&service_item_uuids[]=…" \
+ | jq '.data.start_times[0], .data.total_duration_minutes, .data.buffer_minutes'
+
+# ۳. exclude_appointment_uuid کار میکند؟
+curl -s "…&exclude_appointment_uuid=" | jq '.data.start_times | length'
+```
+
+**نحوه تست:** خروجی واقعی هر سه دستور را در گزارش بگذار. ردیفهای ۱.۱ تا ۱.۵ چکلیست
+با همینها ✅ میشوند.
+
+---
+
+### ۲. بازنویسی `service/index.js` با توکن تم
+
+**اول رنگهای همسایه را ببین** — هدف این است که این کامپوننت از بقیهٔ مراحل رزرو قابل
+تشخیص نباشد:
+
+```bash
+grep -n "className" components/appointment/location/index.js | head -30
+grep -n "className" components/appointment/date/index.js | head -30
+```
+
+بعد همان الگو را اعمال کن. ساختار DOM و رفتار `toggle` **عوض نمیشود** — فقط منبع رنگ.
+
+```jsx
+// نمونه؛ نام دقیق کلاس را از tailwind.config.js و mui/index.js همین پروژه بردار
+۱. انتخاب سرویس
+
+className={active
+ ? "border-primary bg-primary/5"
+ : "border-border bg-surface hover:border-primary"}
+```
+
+اگر پروژه توکن معادل ندارد، **توکن جدید نساز** — همان کاری را بکن که `location/index.js`
+میکند. اگر دارکمود در آن هم شکسته است، این یک مسئلهٔ جداست: ردیف ⚠️ در چکلیست ثبت کن
+و **دامنه را گسترش نده**. صفحهٔ رزرو در این تسک بازطراحی نمیشود.
+
+**نحوه تست:** سناریوهای ۶.۱ و ۶.۲ چکلیست — رزرو سرویسی کامل، یک بار در لایت و یک بار
+در دارک (`data-theme`). اسکرینشات هر دو حالت در گزارش.
+
+---
+
+### ۳. حذف محاسبهٔ موازی مدت
+
+مدت از `total_duration_minutes` میآید. مسئلهٔ ترتیبی: مرحلهٔ انتخاب سرویس **پیش از**
+انتخاب روز است و آن endpoint تاریخ میخواهد. راهحل انتخابشده (دلیل در
+`architecture.md` بخش ۲): فراخوانی با تاریخ امروز فقط برای گرفتن مدت — پاسخ ممکن است
+`start_times` خالی داشته باشد ولی `total_duration_minutes` میآید.
+
+```js
+const { data } = useServiceDuration(doctorUuid, clinicUuid, draft); // hook جدید
+
+const minutes = data?.total_duration_minutes ?? (() => {
+ console.warn('[booking] total_duration_minutes missing — falling back to client sum');
+ return fallbackSum(draft, services);
+})();
+
+// پیش از انتخاب روز
+مدت تقریبی: {minutes} دقیقه
+// پس از انتخاب روز — از همان پاسخ appointment-service-slots
+مدت نوبت: {minutes} دقیقه
+```
+
+`fallbackSum` موقت است و فقط برای بکاند قدیمی. حذفش را در چکلیست بهعنوان ردیف `⏳` با
+دلیل و تسک مقصد ثبت کن.
+
+**نحوه تست:** دو سرویس انتخاب کن و عدد UI را با
+`curl … | jq '.data.total_duration_minutes'` مقایسه کن — باید یکی باشند. بعد یک بار
+`total_duration_minutes` را از پاسخ حذف کن (mock) و ببین `console.warn` میزند و صفحه
+خالی نمیشود.
+
+---
+
+### ۴. `adaptServiceSlots` شیفتآگاه
+
+```js
+export function adaptServiceSlots(slotsResponse) {
+ const payload = slotsResponse?.data ?? slotsResponse ?? {};
+ const starts = payload.start_times ?? [];
+ if (!starts.length) return [];
+
+ const durationMin = Number(payload.total_duration_minutes) || 0;
+ // آستانه هرگز کمتر از مدت نوبت — وگرنه نوبت بلند به تبهای تکعضوی میشکند
+ const threshold = Math.max(60, durationMin);
+
+ const groups = [];
+ let current = null;
+
+ for (const s of starts) {
+ const gapMin = current
+ ? (s.start - current.slots[current.slots.length - 1].start) / 60
+ : Infinity;
+ if (!current || gapMin > threshold) {
+ current = { slots: [] };
+ groups.push(current);
+ }
+ current.slots.push({ ...s, is_available: true });
+ }
+
+ return groups.map((g) => {
+ const first = g.slots[0];
+ const last = g.slots[g.slots.length - 1];
+ const endTime = last.end_time ?? addMinutes(last.start_time, durationMin);
+ return {
+ start_time: first.start_time,
+ end_time: endTime,
+ label: `${first.start_time} - ${endTime}`, // همان قالب حالت اسلاتی
+ slots: g.slots,
+ };
+ });
+}
+```
+
+کامنت بنویس که گروهبندی **هیوریستیک** است و راه دقیقش endpoint تسک ۰۶ است — تصمیم و
+دلیل رد گزینهٔ «گروهبندی از بکاند» در `architecture.md` بخش ۳ ثبت شده (تغییر قرارداد
+endpoint که سه کلاینت مصرفش میکنند).
+
+⛔ `adaptSlots()` را لمس نکن.
+
+**نحوه تست:** `adaptServiceSlots` تابع خالص است — بهترین کاندید تست واحد. پنج حالت:
+
+```
+یک شیفت → یک گروه
+دو شیفت با شکاف ۳ ساعت → دو گروه با برچسب درست
+نوبت ۹۰ دقیقهای با شکاف ۹۰ دقیقه → یک گروه
+start_times خالی → []
+end_time از پاسخ میآید، نه محاسبه
+```
+
+و سناریوی دستی ۶.۴: پزشک دو-شیفته در حالت سرویسی → دو تب در UI.
+
+---
+
+### ۵. سرویس و مدت در پنل کاربر
+
+```jsx
+// Card.js — شرط && اجباری است
+{turn.service_items?.length > 0 && (
+ {turn.service_items.map((s) => s.name).join("، ")}
+)}
+{turn.service_total_minutes && !turn.is_reserve && (
+ {turn.service_total_minutes} دقیقه
+)}
+```
+
+بدون `&&`، کارت **همهٔ** نوبتهای اسلاتی کرش میکند — یعنی کل پنل کاربر میشکند، نه یک
+خط. نوبت رزرو مدت نمیگیرد چون زمان ندارد. نوبت سرویسیِ قدیمی بدون `service_items` →
+نام «—».
+
+همین را در `DetailLg.js` و `DetailSm.js` هم اعمال کن.
+
+**نحوه تست:** سناریوهای ۶.۵ تا ۶.۷ — پنل کاربری که **فقط** نوبت اسلاتی دارد باید بدون
+تغییر رندر شود؛ پنل با نوبت سرویسی سرویس و مدت را نشان دهد؛ هر دو در دارکمود پنل
+(`class`، نه `data-theme` — دو مکانیزم متفاوتاند).
+
+---
+
+### ۶. جابهجایی سرویسآگاه از پنل
+
+```js
+// services/response.js
+serviceReschedule: (uuid, body) =>
+ request.post(`api/v1/appointment/${uuid}/service-reschedule`, body, { requireAuth: true }),
+
+getServiceSlotsForReschedule: (doctor_uuid, date, service_uuids, exclude_uuid, clinic_uuid) =>
+ request.get(
+ `api/v1/appointment-service-slots?doctor_uuid=${doctor_uuid}&date=${date}` +
+ service_uuids.map((u) => `&service_item_uuids[]=${encodeURIComponent(u)}`).join("") +
+ `&exclude_appointment_uuid=${exclude_uuid}` + clinicQuery(clinic_uuid),
+ { requireAuth: true }
+ ),
+```
+
+`ButtonData.js` دکمهٔ «جابهجایی» میگیرد که مودال موجود
+(`isTurnsDetails/modal/index.js`) را با `components/appointment/date/` باز میکند —
+**انتخابگر زمان جدید نساز**؛ آن کامپوننت هر دو حالت را از قبل میشناسد.
+
+بیمار **مدت وارد نمیکند**: `service-reschedule` فقط `start` میگیرد.
+
+خطا را با پیام خودِ بکاند نشان بده:
+
+```js
+catch (err) {
+ const msg = err?.response?.data?.errors?.[0]?.message ?? 'خطایی رخ داد';
+ toast.error(msg);
+ refetchSlots(); // بعد از خطای تداخل اجباری
+}
+```
+
+`ERR_SLOT_TAKEN` پیام فارسی دقیق دارد؛ «خطای نامشخص» یعنی بیمار همان دکمه را ده بار میزند.
+
+**نحوه تست:** سناریوهای ۶.۸ و ۶.۹ — جابهجایی موفق (مدت حفظ میشود، بیمار عددی وارد
+نکرده) و جابهجایی به زمانی که همزمان توسط شخص دیگری گرفته شده (پیام فارسی + `refetch`).
+برای دومی، یک نوبت از پنل ادمین روی همان زمان بساز و بعد دکمه را بزن.
+
+---
+
+### ۷. بهروزرسانی `checklist.md` — دو مخزن جدا
+
+⚠️ **این تسک دو مخزن git را لمس میکند:**
+
+| مخزن | چه چیزی |
+|---|---|
+| `nobat724_front` | همهٔ تغییرات کد |
+| `clinicpro` | فقط `docs/new_feture/taskes/task-00b-nobat724-service-mode/checklist.md` |
+
+پس **دو commit** لازم است. فراموش کردن دومی یعنی راهبر تسک بعدی فکر میکند ۰۰ب تمام
+نشده و دوباره تحویلش میدهد.
+
+```bash
+# ۱. کد سایت
+cd nobat724_front
+git checkout -b feat/booking-service-mode-frontend # اگر روی main هستی
+git add -A
+git commit -m "$(cat <<'EOF'
+feat(booking): align public site with service booking mode
+
+Theme tokens in service picker, backend-driven duration, shift-aware
+slot grouping, service/duration in user panel, service-aware reschedule.
+Slot-mode path untouched.
+
+Task: clinicpro/docs/new_feture/taskes/task-00b-nobat724-service-mode/
+
+Co-Authored-By: Claude Opus 5 (1M context)
+EOF
+)"
+
+# ۲. چکلیست در مخزن clinicpro
+cd ../clinicpro
+git add docs/new_feture/taskes/task-00b-nobat724-service-mode/checklist.md
+git commit -m "$(cat <<'EOF'
+docs(booking): mark task 00b checklist complete
+
+Co-Authored-By: Claude Opus 5 (1M context)
+EOF
+)"
+```
+
+**نحوه تست:** `git log --oneline -1` در هر دو مخزن، و
+`grep -c '| ⏳ |' clinicpro/docs/new_feture/taskes/task-00b-nobat724-service-mode/checklist.md`
+که باید ۰ بدهد (یا فقط ردیفهای `⏳` با یادداشت دلیل).
+
+---
+
+### ۸. مستندات و گزارش پایانی
+
+```
+nobat724_front/CLAUDE.md ← بخش «حالتهای نوبتدهی»: slot و service،
+ per محل تعیین میشوند، adaptSlots/adaptServiceSlots
+ نقطهٔ تفکیکاند
+clinicpro/docs/api/appointment.md ← یادداشت: گروهبندی شیفت در حالت سرویسی
+ هیوریستیک سمت فرانت است؛ راه دقیقش endpoint تسک ۰۶
+```
+
+گزارش پایانی:
+
+```
+✅ تسک ۰۰ب تمام شد
+
+پیادهسازی
+ • <فایلها با مسیر>
+
+تست
+ • npm run build : بدون خطا
+ • npm run lint : بدون خطای جدید
+ • تست واحد adaptServiceSlots: حالت، سبز
+ • ۱۱ سناریوی دستی : <فهرست با نتیجه>
+
+خط سرخ
+ • مسیر اسلاتی دستنخورده — adaptSlots عوض نشد؛ سناریوی ۶.۳ سرتاسر تست شد
+
+کلاینت دیگر
+ • clinic-pro-tauri: <چه بررسی شد — قرارداد service_item تکی>
+
+به تعویق افتاد
+ • fallbackSum — دلیل: تا deploy تسک ۰۰ · تسک مقصد:
+
+commit سایت: · commit چکلیست:
+
+────────────────────────────────
+🎯 بعدی: تسک ۰۱ — شعبه و اتاق
+ اجرا کن: /run-prompt clinicpro/.claude/prompt/booking-engine-task-runner.md
+```
+
+---
+
+## نکات مهم
+
+### ⛔ خط سرخ — مسیر اسلاتی سایت
+
+`_shared/red-lines.md` حاکم است. در این پروژه یعنی:
+
+- `adaptSlots()` **یک خط هم** عوض نمیشود
+- رندر تبهای شیفت در حالت اسلاتی دستنخورده
+- کارت نوبت اسلاتی در پنل بدون تغییر (شرط `&&` روی فیلدهای سرویسی)
+- سناریوی ۶.۳ (رزرو اسلاتی سرتاسر) **اجباری** است، نه اختیاری
+
+اگر بعد از تغییرات، رزرو اسلاتی یک پیکسل هم فرق کرد، تغییر برمیگردد.
+
+### دامنه را گسترش نده
+
+فقط `service/index.js` که خودمان اضافه کردیم و از بقیهٔ مراحل منحرف است بازنویسی میشود.
+اگر `location/index.js` یا `date/index.js` هم رنگ hard-code دارند و دارکمودشان شکسته
+است، این یک مسئلهٔ جداست: ردیف `⚠️` در چکلیست ثبت کن و بگذار. بازطراحی کل صفحهٔ رزرو
+در این تسک نیست.
+
+### قواعد سایت که رعایت میشوند
+
+از `_shared/ui-conventions.md` بخش `nobat724_front` و `CLAUDE.md` پروژه:
+
+- تم MUI از `mui/index.js` با `direction: rtl` — **تم جدید نساز**
+- Tailwind با `darkMode: "class"`؛ صفحات عمومی `data-theme`، پنل `class` — **هر دو تست شوند**
+- **فونت فقط Vazir** از `app/globals.css` با `@font-face` — فونت دیگر اضافه نکن
+- فراخوانی API از `services/response.js` → `request.*`؛ برای auth `{ requireAuth: true }`
+ تا کوکی `access_token` بهصورت Bearer ضمیمه شود
+- داده server-side با `lib/req.js` → `fetchReq(url)`
+- کامپوننتهای موجود `components/appointment/*` توسعه داده میشوند، مسیر موازی نه
+- تاریخ شمسی با `jalali-moment`
+- RTL — `ms-*`/`me-*` نه `ml-*`/`mr-*`
+- هر صفحهای که دست خورد، `generateMetadata` و `await params` سالم بماند
+- slug پزشک/کلینیک = `uuid`
+- شهر از subdomain: server-side `lib/getStateInfo.js` · client-side `useProvince()`
+
+### وابستگی سخت به تسک ۰۰
+
+سه endpoint و دو ستون این تسک را تسک ۰۰ میسازد. اگر
+`clinicpro/docs/new_feture/taskes/task-00-service-mode-completion/checklist.md` کامل ✅
+نیست، **این تسک شروع نمیشود**:
+
+```bash
+grep -c '| ⏳ |\|| 🔄 |' clinicpro/docs/new_feture/taskes/task-00-service-mode-completion/checklist.md
+# باید ۰ بدهد
+```
+
+اگر نداد، پیام بده و بایست:
+`/run-prompt clinicpro/.claude/prompt/booking-engine-task-runner.md`
+
+### cross-repo — بررسی دستی اجباری
+
+`clinic-pro-tauri/src/service/response.js` هم مصرفکنندهٔ همان `/api/v1/...` است. این
+تسک قرارداد بکاند را عوض نمیکند (فقط مصرف میکند)، ولی اگر تسک ۰۰ فیلدی را جابهجا
+کرده باشد، اپ دسکتاپ هم متأثر است. بررسی کن که `service_item` تکی هنوز در پاسخ هست و
+گزارش بده — «بررسی شد» بیارزش است، نام فایل و فیلد را بنویس (guidelines §۳).
+
+### تست خودکار محدود است
+
+پروژه تست خودکار کمی دارد، پس **یازده سناریوی دستی بخش ۶ چکلیست اجباریاند**، نه
+توصیه. هر ده مورد اول روی موبایل هم تکرار میشوند (سناریو ۶.۱۰) — بدون اسکرول افقی.
+
+`adaptServiceSlots` تابع خالص است و بهترین کاندید تست واحد؛ اگر پروژه runner تست ندارد،
+یک فایل ساده در `tests/appointmentSlots.test.js` بساز و در چکلیست ثبت کن.
diff --git a/graphify-out/.graphify_labels.json b/graphify-out/.graphify_labels.json
index af4bbdc..cd90861 100644
--- a/graphify-out/.graphify_labels.json
+++ b/graphify-out/.graphify_labels.json
@@ -405,5 +405,11 @@
"403": "Community 403",
"404": "Community 404",
"405": "Community 405",
- "406": "Community 406"
+ "406": "Community 406",
+ "407": "Community 407",
+ "408": "Community 408",
+ "409": "Community 409",
+ "410": "Community 410",
+ "411": "Community 411",
+ "412": "Community 412"
}
diff --git a/graphify-out/GRAPH_REPORT.md b/graphify-out/GRAPH_REPORT.md
index 44cd8ec..aed138e 100644
--- a/graphify-out/GRAPH_REPORT.md
+++ b/graphify-out/GRAPH_REPORT.md
@@ -1,16 +1,16 @@
-# Graph Report - nobat724_front (2026-07-27)
+# Graph Report - nobat724_front (2026-07-30)
## Corpus Check
-- 639 files · ~576,045 words
+- 642 files · ~582,216 words
- Verdict: corpus is large enough that graph structure adds value.
## Summary
-- 2422 nodes · 2500 edges · 407 communities (372 shown, 35 thin omitted)
+- 2473 nodes · 2548 edges · 413 communities (377 shown, 36 thin omitted)
- Extraction: 93% EXTRACTED · 7% INFERRED · 0% AMBIGUOUS · INFERRED: 176 edges (avg confidence: 0.8)
- Token cost: 0 input · 0 output
## Graph Freshness
-- Built from commit: `19ae08c0`
+- Built from commit: `8a24579a`
- Run `git rev-parse HEAD` and compare to check if the graph is stale.
- Run `graphify update .` after code changes (no API cost).
@@ -177,6 +177,12 @@
- [[_COMMUNITY_Community 398|Community 398]]
- [[_COMMUNITY_Community 402|Community 402]]
- [[_COMMUNITY_Community 403|Community 403]]
+- [[_COMMUNITY_Community 407|Community 407]]
+- [[_COMMUNITY_Community 408|Community 408]]
+- [[_COMMUNITY_Community 409|Community 409]]
+- [[_COMMUNITY_Community 410|Community 410]]
+- [[_COMMUNITY_Community 411|Community 411]]
+- [[_COMMUNITY_Community 412|Community 412]]
## God Nodes (most connected - your core abstractions)
1. `getStateInfo()` - 29 edges
@@ -205,7 +211,7 @@
## Import Cycles
- None detected.
-## Communities (407 total, 35 thin omitted)
+## Communities (413 total, 36 thin omitted)
### Community 0 - "Community 0"
Cohesion: 0.05
@@ -224,8 +230,8 @@ Cohesion: 0.23
Nodes (16): getCurrentDomain(), robots(), cityFilterParams(), fetchAllPages(), getBlogUrls(), getCityScope(), getClinicUrls(), getCurrentDomain() (+8 more)
### Community 4 - "Community 4"
-Cohesion: 0.06
-Nodes (22): ContentDetail(), About(), ListBime(), Services(), Specialties(), TextDetail(), listTab, AddComment() (+14 more)
+Cohesion: 0.05
+Nodes (33): ContentDetail(), About(), ListBime(), Services(), Specialties(), TextDetail(), listTab, AddComment() (+25 more)
### Community 5 - "Community 5"
Cohesion: 0.07
@@ -240,8 +246,8 @@ Cohesion: 0.07
Nodes (4): degreeVal, NAME_HONORIFICS, normalizeBlog(), removeTokenHead
### Community 8 - "Community 8"
-Cohesion: 0.07
-Nodes (28): devDependencies, babel-plugin-react-compiler, cross-env, eslint, eslint-config-next, @eslint/eslintrc, jsdom, prettier (+20 more)
+Cohesion: 0.13
+Nodes (15): devDependencies, babel-plugin-react-compiler, cross-env, eslint, eslint-config-next, @eslint/eslintrc, jsdom, prettier (+7 more)
### Community 9 - "Community 9"
Cohesion: 0.07
@@ -324,8 +330,8 @@ Cohesion: 0.12
Nodes (16): دیپلوی nobat724_front روی Liara (پلتفرم Next.js), زمینه, فایلهای مرتبط, مشکل / هدف, نکات مهم, وضعیت فعلی, وظایف, پروژه (+8 more)
### Community 29 - "Community 29"
-Cohesion: 0.08
-Nodes (20): generateMetadata(), Blogs(), generateMetadata(), Clinics(), Appointment(), metadata, Doctors(), generateMetadata() (+12 more)
+Cohesion: 0.13
+Nodes (11): generateMetadata(), Blogs(), generateMetadata(), Appointment(), metadata, fetchSiteContext(), getStateInfo(), siteContextCache (+3 more)
### Community 30 - "Community 30"
Cohesion: 0.12
@@ -388,8 +394,8 @@ Cohesion: 0.14
Nodes (13): `hours/List.js`, آبجکت اسلات (از `adaptSlots` / API), تأیید و سختسازی غیرفعالبودن اسلاتهای گذشته در صفحهی نوبت, زمینه, فایلهای مرتبط, مشکل / هدف, نکات مهم, وضعیت فعلی (کد واقعی) (+5 more)
### Community 45 - "Community 45"
-Cohesion: 0.40
-Nodes (9): generateMetadata(), blogCover(), imageUrl(), domainScopeCityId(), findCityById(), isBlogVisibleOnDomain(), Blog(), getBlog (+1 more)
+Cohesion: 0.20
+Nodes (20): generateMetadata(), generateMetadata(), generateMetadata(), DoctorPage(), blogCover(), doctorTitle(), imageUrl(), domainScopeCityId() (+12 more)
### Community 46 - "Community 46"
Cohesion: 0.22
@@ -488,8 +494,8 @@ Cohesion: 0.20
Nodes (9): رفع جهت تبدیل تاریخ تولد هنگام ایجاد پروفایل, زمینه, فایلهای مرتبط, مشکل / هدف, نکات مهم, وضعیت فعلی (کد واقعی), وظایف, پروژه (+1 more)
### Community 70 - "Community 70"
-Cohesion: 0.13
-Nodes (13): ClinicsPage(), AutoComplete(), ButtonFilter(), Content(), ModalSearchCity(), AutoSearch(), FilterButton(), SearchBar() (+5 more)
+Cohesion: 0.20
+Nodes (7): AutoComplete(), ButtonFilter(), Content(), ModalSearchCity(), AutoSearch(), FilterButton(), SearchBar()
### Community 71 - "Community 71"
Cohesion: 0.22
@@ -520,8 +526,8 @@ Cohesion: 0.17
Nodes (11): زمینه, سایت دامنه اختصاصی نماینده سراسری — تشخیص دامنه، فیلتر پزشکان/کلینیکها, فایلهای مرتبط, مشکل / هدف, نکات مهم, وضعیت فعلی, وظایف, پروژه (+3 more)
### Community 81 - "Community 81"
-Cohesion: 0.24
-Nodes (14): generateMetadata(), Detail(), getClinicAddress(), getClinicCity(), getClinicPhone(), getClinicState(), hasClinicContact(), telHref() (+6 more)
+Cohesion: 0.07
+Nodes (28): cross-repo — بررسی دستی اجباری, تست خودکار محدود است, تسک ۰۰ب — سازگارسازی سایت عمومی با نوبتدهی سرویسی, تشخیص حالت — `components/appointment/index.js:125` (درست، دستنخورده بماند), ⛔ خط سرخ — مسیر اسلاتی سایت, دامنه را گسترش نده, زمینه, فایلهای مرتبط (+20 more)
### Community 82 - "Community 82"
Cohesion: 0.17
@@ -532,8 +538,8 @@ Cohesion: 0.24
Nodes (5): Head(), Article(), LatestArticles(), Title(), ItemTitle()
### Community 86 - "Community 86"
-Cohesion: 0.16
-Nodes (15): RootLayout(), generateMetadata(), safeJsonLd(), bodyVariants(), buildSpecialtyFaq(), buildSpecialtyIntro(), closingVariants(), openingVariants() (+7 more)
+Cohesion: 0.27
+Nodes (10): generateMetadata(), bodyVariants(), buildSpecialtyFaq(), buildSpecialtyIntro(), closingVariants(), openingVariants(), pick(), findSpecialty() (+2 more)
### Community 87 - "Community 87"
Cohesion: 0.33
@@ -608,8 +614,8 @@ Cohesion: 0.15
Nodes (12): اصلاح بخش «اطلاعات تماس» صفحه کلینیک, زمینه, فایلهای مرتبط, مشکل / هدف, نکات مهم, وضعیت فعلی, وظایف, پروژه (+4 more)
### Community 140 - "Community 140"
-Cohesion: 0.53
-Nodes (4): Pageguide(), absoluteUrl(), buildBreadcrumbJsonLd(), normalizeBreadcrumb()
+Cohesion: 0.36
+Nodes (6): RootLayout(), Pageguide(), absoluteUrl(), buildBreadcrumbJsonLd(), normalizeBreadcrumb(), safeJsonLd()
### Community 354 - "Community 354"
Cohesion: 0.11
@@ -632,16 +638,16 @@ Cohesion: 0.19
Nodes (9): Card(), PAYMENT_STATUS, TYPE_LABELS, Head(), listTab, Transactions(), List(), PAYMENT_STATUS (+1 more)
### Community 369 - "Community 369"
-Cohesion: 0.33
-Nodes (5): buildDoctorParams(), normalizeDoctorNameQuery(), QueryForDoctorsClinicReq(), QueryForDoctorsReq(), buildSearchUrl()
+Cohesion: 0.29
+Nodes (6): Doctors(), buildDoctorParams(), normalizeDoctorNameQuery(), QueryForDoctorsClinicReq(), QueryForDoctorsReq(), buildSearchUrl()
### Community 370 - "Community 370"
-Cohesion: 0.29
-Nodes (4): ProvinceContext, ProvinceProvider(), Probe(), useProvince()
+Cohesion: 0.25
+Nodes (5): ProvinceContext, ProvinceProvider(), Probe(), useProvince(), SubmitData()
### Community 372 - "Community 372"
-Cohesion: 0.22
-Nodes (14): generateMetadata(), DoctorPage(), doctorTitle(), hasRealName(), isNoindexDoctor(), isThinClinic(), isThinDoctor(), isUnclaimedDoctor() (+6 more)
+Cohesion: 0.48
+Nodes (6): hasRealName(), isNoindexDoctor(), isThinClinic(), isThinDoctor(), isUnclaimedDoctor(), PLACEHOLDER_NAMES
### Community 373 - "Community 373"
Cohesion: 0.12
@@ -683,10 +689,6 @@ Nodes (10): زمینه, فعالسازی بلاگ شهر-محور (بعد ا
Cohesion: 0.20
Nodes (9): زمینه, سادهسازی sitemap با شهرِ موجود در پاسخ + آستانهٔ sitemap-index, نکات مهم, وضعیت فعلی, وظایف, پروژه, ۱. حذف ۳۵ sweep و یکسانسازی با الگوی کلینیک, ۲. آستانهٔ sitemap-index (مستقل از backend) (+1 more)
-### Community 388 - "Community 388"
-Cohesion: 0.36
-Nodes (3): Form(), SubmitData(), ButtonFixed()
-
### Community 390 - "Community 390"
Cohesion: 0.40
Nodes (3): Allergies(), ItemAllergie(), ModalAddAlergie()
@@ -703,37 +705,61 @@ Nodes (3): ModalAddRelatives(), Relatives(), ItemRelatives()
Cohesion: 0.40
Nodes (3): ModalAddSurgeries(), Surgeries(), ItemSurgeries()
+### Community 395 - "Community 395"
+Cohesion: 0.31
+Nodes (3): Content(), Form(), EditField()
+
### Community 397 - "Community 397"
Cohesion: 0.50
Nodes (3): formatToman(), rialToToman(), Paying()
### Community 402 - "Community 402"
-Cohesion: 0.38
-Nodes (4): DoctorsPage(), resolveCityDisplayName(), isRootCity(), ListDoctors()
+Cohesion: 0.21
+Nodes (10): ClinicsPage(), DoctorsPage(), resolveCityDisplayName(), buildClinicsIntro(), buildDoctorsIntro(), CLINIC_INTROS(), DOCTOR_INTROS(), pick() (+2 more)
### Community 403 - "Community 403"
Cohesion: 0.29
Nodes (6): CARD, lines, mark, OUT, PARAGRAPH, ROOT
+### Community 407 - "Community 407"
+Cohesion: 0.10
+Nodes (19): زمینه, صفحهٔ بلاگ: بردکرامب دستهبندی، فیلتر دستهبندی، و اصلاح ستون «مطالب مرتبط», فایلهای مرتبط, مشکل / هدف, معیار پذیرش, نکات مهم, وضعیت فعلی, وظایف (+11 more)
+
+### Community 408 - "Community 408"
+Cohesion: 0.17
+Nodes (8): Clinics(), generateMetadata(), buildClinicParams(), isMaintenanceError(), isNextRedirectError(), axiosInstance, fetchReq(), getClinicDoctors()
+
+### Community 409 - "Community 409"
+Cohesion: 0.25
+Nodes (8): scripts, build, dev, lint, start, test, test:cov, test:watch
+
+### Community 410 - "Community 410"
+Cohesion: 0.33
+Nodes (5): engines, node, name, private, version
+
+### Community 411 - "Community 411"
+Cohesion: 0.67
+Nodes (3): IDS_WITH_ACTIVE_CHILDREN, isCategorySpecialty(), isIndexableSpecialty()
+
## Knowledge Gaps
-- **904 isolated node(s):** `metadata`, `fallbackLabels`, `MaterialUISwitch`, `fixedIconData`, `metadata` (+899 more)
+- **945 isolated node(s):** `metadata`, `fallbackLabels`, `MaterialUISwitch`, `fixedIconData`, `metadata` (+940 more)
These have ≤1 connection - possible missing edges or undocumented components.
-- **35 thin communities (<3 nodes) omitted from report** — run `graphify query` to explore isolated nodes.
+- **36 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 `imageUrl()` connect `Community 45` to `Community 0`, `Community 4`, `Community 7`, `Community 392`, `Community 81`, `Community 83`, `Community 372`, `Community 55`, `Community 56`, `Community 380`?**
+- **Why does `imageUrl()` connect `Community 45` to `Community 0`, `Community 4`, `Community 7`, `Community 392`, `Community 83`, `Community 55`, `Community 56`, `Community 380`?**
_High betweenness centrality (0.028) - this node is a cross-community bridge._
-- **Why does `getStateInfo()` connect `Community 29` to `Community 0`, `Community 6`, `Community 72`, `Community 377`, `Community 45`, `Community 14`, `Community 16`, `Community 81`, `Community 402`, `Community 51`, `Community 372`, `Community 86`, `Community 89`?**
- _High betweenness centrality (0.023) - this node is a cross-community bridge._
-- **Why does `doctorTitle()` connect `Community 372` to `Community 5`, `Community 7`?**
+- **Why does `getStateInfo()` connect `Community 29` to `Community 89`, `Community 0`, `Community 6`, `Community 72`, `Community 140`, `Community 45`, `Community 14`, `Community 16`, `Community 369`, `Community 402`, `Community 51`, `Community 86`, `Community 408`, `Community 377`?**
+ _High betweenness centrality (0.025) - this node is a cross-community bridge._
+- **Why does `doctorTitle()` connect `Community 45` to `Community 5`, `Community 7`?**
_High betweenness centrality (0.012) - this node is a cross-community bridge._
- **Are the 27 inferred relationships involving `getStateInfo()` (e.g. with `generateMetadata()` and `AboutUsPage()`) actually correct?**
_`getStateInfo()` has 27 INFERRED edges - model-reasoned connections that need verification._
- **Are the 14 inferred relationships involving `imageUrl()` (e.g. with `generateMetadata()` and `generateMetadata()`) actually correct?**
_`imageUrl()` has 14 INFERRED edges - model-reasoned connections that need verification._
- **What connects `metadata`, `fallbackLabels`, `MaterialUISwitch` to the rest of the system?**
- _904 weakly-connected nodes found - possible documentation gaps or missing edges._
+ _945 weakly-connected nodes found - possible documentation gaps or missing edges._
- **Should `Community 0` be split into smaller, more focused modules?**
_Cohesion score 0.05263157894736842 - nodes in this community are weakly interconnected._
\ No newline at end of file
diff --git a/graphify-out/cache/ast/v0.8.44/8886fd414c3128992605fa57a2a61a9597357c51c0690d130678fc09371fba5c.json b/graphify-out/cache/ast/v0.8.44/8886fd414c3128992605fa57a2a61a9597357c51c0690d130678fc09371fba5c.json
new file mode 100644
index 0000000..2f75585
--- /dev/null
+++ b/graphify-out/cache/ast/v0.8.44/8886fd414c3128992605fa57a2a61a9597357c51c0690d130678fc09371fba5c.json
@@ -0,0 +1 @@
+{"nodes": [{"id": "users_hamed_pj_my_pj_clinic_pro_nobat724_front_claude_prompt_booking_engine_task_00b_service_mode_md", "label": "booking-engine-task-00b-service-mode.md", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L1"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u062a\u0633\u06a9_\u06f0\u06f0\u0628_\u0633\u0627\u0632\u06af\u0627\u0631\u0633\u0627\u0632\u06cc_\u0633\u0627\u06cc\u062a_\u0639\u0645\u0648\u0645\u06cc_\u0628\u0627_\u0646\u0648\u0628\u062a_\u062f\u0647\u06cc_\u0633\u0631\u0648\u06cc\u0633\u06cc", "label": "\u062a\u0633\u06a9 \u06f0\u06f0\u0628 \u2014 \u0633\u0627\u0632\u06af\u0627\u0631\u0633\u0627\u0632\u06cc \u0633\u0627\u06cc\u062a \u0639\u0645\u0648\u0645\u06cc \u0628\u0627 \u0646\u0648\u0628\u062a\u200c\u062f\u0647\u06cc \u0633\u0631\u0648\u06cc\u0633\u06cc", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L1"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u067e\u0631\u0648\u0698\u0647", "label": "\u067e\u0631\u0648\u0698\u0647", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L3"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u0632\u0645\u06cc\u0646\u0647", "label": "\u0632\u0645\u06cc\u0646\u0647", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L29"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u0645\u0634\u06a9\u0644_\u0647\u062f\u0641", "label": "\u0645\u0634\u06a9\u0644 / \u0647\u062f\u0641", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L43"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u0645\u0639\u06cc\u0627\u0631_\u067e\u0630\u06cc\u0631\u0634", "label": "\u0645\u0639\u06cc\u0627\u0631 \u067e\u0630\u06cc\u0631\u0634", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L60"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u0641\u0627\u06cc\u0644_\u0647\u0627\u06cc_\u0645\u0631\u062a\u0628\u0637", "label": "\u0641\u0627\u06cc\u0644\u200c\u0647\u0627\u06cc \u0645\u0631\u062a\u0628\u0637", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L90"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u0648\u0636\u0639\u06cc\u062a_\u0641\u0639\u0644\u06cc", "label": "\u0648\u0636\u0639\u06cc\u062a \u0641\u0639\u0644\u06cc", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L109"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u06f1_\u0631\u0646\u06af_\u0647\u0627\u06cc_hard_code_components_appointment_service_index_js", "label": "\u06f1. \u0631\u0646\u06af\u200c\u0647\u0627\u06cc hard-code \u2014 `components/appointment/service/index.js`", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L111"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u06f2_\u0645\u062d\u0627\u0633\u0628\u0647_\u0645\u0648\u0627\u0632\u06cc_\u0645\u062f\u062a_\u0647\u0645\u0627\u0646_\u0641\u0627\u06cc\u0644", "label": "\u06f2. \u0645\u062d\u0627\u0633\u0628\u0647\u0654 \u0645\u0648\u0627\u0632\u06cc \u0645\u062f\u062a \u2014 \u0647\u0645\u0627\u0646 \u0641\u0627\u06cc\u0644", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L133"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u06f3_adaptserviceslots_lib_appointmentslots_js", "label": "\u06f3. `adaptServiceSlots` \u2014 `lib/appointmentSlots.js`", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L144"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u06f4_\u0648_\u06f5_\u067e\u0646\u0644_\u06a9\u0627\u0631\u0628\u0631", "label": "\u06f4 \u0648 \u06f5. \u067e\u0646\u0644 \u06a9\u0627\u0631\u0628\u0631", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L177"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u062a\u0634\u062e\u06cc\u0635_\u062d\u0627\u0644\u062a_components_appointment_index_js_125_\u062f\u0631\u0633\u062a_\u062f\u0633\u062a_\u0646\u062e\u0648\u0631\u062f\u0647_\u0628\u0645\u0627\u0646\u062f", "label": "\u062a\u0634\u062e\u06cc\u0635 \u062d\u0627\u0644\u062a \u2014 `components/appointment/index.js:125` (\u062f\u0631\u0633\u062a\u060c \u062f\u0633\u062a\u200c\u0646\u062e\u0648\u0631\u062f\u0647 \u0628\u0645\u0627\u0646\u062f)", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L183"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u0648\u0638\u0627\u06cc\u0641", "label": "\u0648\u0638\u0627\u06cc\u0641", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L196"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u06f1_\u067e\u06cc\u0634_\u0628\u0631\u0631\u0633\u06cc_\u0642\u0631\u0627\u0631\u062f\u0627\u062f_api_\u067e\u06cc\u0634_\u0627\u0632_\u0647\u0631_\u062e\u0637_\u06a9\u062f", "label": "\u06f1. \u067e\u06cc\u0634\u200c\u0628\u0631\u0631\u0633\u06cc \u0642\u0631\u0627\u0631\u062f\u0627\u062f API \u2014 \u067e\u06cc\u0634 \u0627\u0632 \u0647\u0631 \u062e\u0637 \u06a9\u062f", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L201"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u06f2_\u0628\u0627\u0632\u0646\u0648\u06cc\u0633\u06cc_service_index_js_\u0628\u0627_\u062a\u0648\u06a9\u0646_\u062a\u0645", "label": "\u06f2. \u0628\u0627\u0632\u0646\u0648\u06cc\u0633\u06cc `service/index.js` \u0628\u0627 \u062a\u0648\u06a9\u0646 \u062a\u0645", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L226"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u06f3_\u062d\u0630\u0641_\u0645\u062d\u0627\u0633\u0628\u0647_\u0645\u0648\u0627\u0632\u06cc_\u0645\u062f\u062a", "label": "\u06f3. \u062d\u0630\u0641 \u0645\u062d\u0627\u0633\u0628\u0647\u0654 \u0645\u0648\u0627\u0632\u06cc \u0645\u062f\u062a", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L256"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u06f4_adaptserviceslots_\u0634\u06cc\u0641\u062a_\u0622\u06af\u0627\u0647", "label": "\u06f4. `adaptServiceSlots` \u0634\u06cc\u0641\u062a\u200c\u0622\u06af\u0627\u0647", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L287"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u06f5_\u0633\u0631\u0648\u06cc\u0633_\u0648_\u0645\u062f\u062a_\u062f\u0631_\u067e\u0646\u0644_\u06a9\u0627\u0631\u0628\u0631", "label": "\u06f5. \u0633\u0631\u0648\u06cc\u0633 \u0648 \u0645\u062f\u062a \u062f\u0631 \u067e\u0646\u0644 \u06a9\u0627\u0631\u0628\u0631", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L347"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u06f6_\u062c\u0627\u0628\u0647_\u062c\u0627\u06cc\u06cc_\u0633\u0631\u0648\u06cc\u0633_\u0622\u06af\u0627\u0647_\u0627\u0632_\u067e\u0646\u0644", "label": "\u06f6. \u062c\u0627\u0628\u0647\u200c\u062c\u0627\u06cc\u06cc \u0633\u0631\u0648\u06cc\u0633\u200c\u0622\u06af\u0627\u0647 \u0627\u0632 \u067e\u0646\u0644", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L371"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u06f7_\u0628\u0647_\u0631\u0648\u0632\u0631\u0633\u0627\u0646\u06cc_checklist_md_\u062f\u0648_\u0645\u062e\u0632\u0646_\u062c\u062f\u0627", "label": "\u06f7. \u0628\u0647\u200c\u0631\u0648\u0632\u0631\u0633\u0627\u0646\u06cc `checklist.md` \u2014 \u062f\u0648 \u0645\u062e\u0632\u0646 \u062c\u062f\u0627", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L411"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u06f8_\u0645\u0633\u062a\u0646\u062f\u0627\u062a_\u0648_\u06af\u0632\u0627\u0631\u0634_\u067e\u0627\u06cc\u0627\u0646\u06cc", "label": "\u06f8. \u0645\u0633\u062a\u0646\u062f\u0627\u062a \u0648 \u06af\u0632\u0627\u0631\u0634 \u067e\u0627\u06cc\u0627\u0646\u06cc", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L458"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u0646\u06a9\u0627\u062a_\u0645\u0647\u0645", "label": "\u0646\u06a9\u0627\u062a \u0645\u0647\u0645", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L500"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u062e\u0637_\u0633\u0631\u062e_\u0645\u0633\u06cc\u0631_\u0627\u0633\u0644\u0627\u062a\u06cc_\u0633\u0627\u06cc\u062a", "label": "\u26d4 \u062e\u0637 \u0633\u0631\u062e \u2014 \u0645\u0633\u06cc\u0631 \u0627\u0633\u0644\u0627\u062a\u06cc \u0633\u0627\u06cc\u062a", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L502"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u062f\u0627\u0645\u0646\u0647_\u0631\u0627_\u06af\u0633\u062a\u0631\u0634_\u0646\u062f\u0647", "label": "\u062f\u0627\u0645\u0646\u0647 \u0631\u0627 \u06af\u0633\u062a\u0631\u0634 \u0646\u062f\u0647", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L513"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u0642\u0648\u0627\u0639\u062f_\u0633\u0627\u06cc\u062a_\u06a9\u0647_\u0631\u0639\u0627\u06cc\u062a_\u0645\u06cc_\u0634\u0648\u0646\u062f", "label": "\u0642\u0648\u0627\u0639\u062f \u0633\u0627\u06cc\u062a \u06a9\u0647 \u0631\u0639\u0627\u06cc\u062a \u0645\u06cc\u200c\u0634\u0648\u0646\u062f", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L520"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u0648\u0627\u0628\u0633\u062a\u06af\u06cc_\u0633\u062e\u062a_\u0628\u0647_\u062a\u0633\u06a9_\u06f0\u06f0", "label": "\u0648\u0627\u0628\u0633\u062a\u06af\u06cc \u0633\u062e\u062a \u0628\u0647 \u062a\u0633\u06a9 \u06f0\u06f0", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L537"}, {"id": "prompt_booking_engine_task_00b_service_mode_cross_repo_\u0628\u0631\u0631\u0633\u06cc_\u062f\u0633\u062a\u06cc_\u0627\u062c\u0628\u0627\u0631\u06cc", "label": "cross-repo \u2014 \u0628\u0631\u0631\u0633\u06cc \u062f\u0633\u062a\u06cc \u0627\u062c\u0628\u0627\u0631\u06cc", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L551"}, {"id": "prompt_booking_engine_task_00b_service_mode_\u062a\u0633\u062a_\u062e\u0648\u062f\u06a9\u0627\u0631_\u0645\u062d\u062f\u0648\u062f_\u0627\u0633\u062a", "label": "\u062a\u0633\u062a \u062e\u0648\u062f\u06a9\u0627\u0631 \u0645\u062d\u062f\u0648\u062f \u0627\u0633\u062a", "file_type": "document", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L558"}], "edges": [{"source": "users_hamed_pj_my_pj_clinic_pro_nobat724_front_claude_prompt_booking_engine_task_00b_service_mode_md", "target": "prompt_booking_engine_task_00b_service_mode_\u062a\u0633\u06a9_\u06f0\u06f0\u0628_\u0633\u0627\u0632\u06af\u0627\u0631\u0633\u0627\u0632\u06cc_\u0633\u0627\u06cc\u062a_\u0639\u0645\u0648\u0645\u06cc_\u0628\u0627_\u0646\u0648\u0628\u062a_\u062f\u0647\u06cc_\u0633\u0631\u0648\u06cc\u0633\u06cc", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L1", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u062a\u0633\u06a9_\u06f0\u06f0\u0628_\u0633\u0627\u0632\u06af\u0627\u0631\u0633\u0627\u0632\u06cc_\u0633\u0627\u06cc\u062a_\u0639\u0645\u0648\u0645\u06cc_\u0628\u0627_\u0646\u0648\u0628\u062a_\u062f\u0647\u06cc_\u0633\u0631\u0648\u06cc\u0633\u06cc", "target": "prompt_booking_engine_task_00b_service_mode_\u067e\u0631\u0648\u0698\u0647", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L3", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u062a\u0633\u06a9_\u06f0\u06f0\u0628_\u0633\u0627\u0632\u06af\u0627\u0631\u0633\u0627\u0632\u06cc_\u0633\u0627\u06cc\u062a_\u0639\u0645\u0648\u0645\u06cc_\u0628\u0627_\u0646\u0648\u0628\u062a_\u062f\u0647\u06cc_\u0633\u0631\u0648\u06cc\u0633\u06cc", "target": "prompt_booking_engine_task_00b_service_mode_\u0632\u0645\u06cc\u0646\u0647", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L29", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u062a\u0633\u06a9_\u06f0\u06f0\u0628_\u0633\u0627\u0632\u06af\u0627\u0631\u0633\u0627\u0632\u06cc_\u0633\u0627\u06cc\u062a_\u0639\u0645\u0648\u0645\u06cc_\u0628\u0627_\u0646\u0648\u0628\u062a_\u062f\u0647\u06cc_\u0633\u0631\u0648\u06cc\u0633\u06cc", "target": "prompt_booking_engine_task_00b_service_mode_\u0645\u0634\u06a9\u0644_\u0647\u062f\u0641", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L43", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u062a\u0633\u06a9_\u06f0\u06f0\u0628_\u0633\u0627\u0632\u06af\u0627\u0631\u0633\u0627\u0632\u06cc_\u0633\u0627\u06cc\u062a_\u0639\u0645\u0648\u0645\u06cc_\u0628\u0627_\u0646\u0648\u0628\u062a_\u062f\u0647\u06cc_\u0633\u0631\u0648\u06cc\u0633\u06cc", "target": "prompt_booking_engine_task_00b_service_mode_\u0645\u0639\u06cc\u0627\u0631_\u067e\u0630\u06cc\u0631\u0634", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L60", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u062a\u0633\u06a9_\u06f0\u06f0\u0628_\u0633\u0627\u0632\u06af\u0627\u0631\u0633\u0627\u0632\u06cc_\u0633\u0627\u06cc\u062a_\u0639\u0645\u0648\u0645\u06cc_\u0628\u0627_\u0646\u0648\u0628\u062a_\u062f\u0647\u06cc_\u0633\u0631\u0648\u06cc\u0633\u06cc", "target": "prompt_booking_engine_task_00b_service_mode_\u0641\u0627\u06cc\u0644_\u0647\u0627\u06cc_\u0645\u0631\u062a\u0628\u0637", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L90", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u062a\u0633\u06a9_\u06f0\u06f0\u0628_\u0633\u0627\u0632\u06af\u0627\u0631\u0633\u0627\u0632\u06cc_\u0633\u0627\u06cc\u062a_\u0639\u0645\u0648\u0645\u06cc_\u0628\u0627_\u0646\u0648\u0628\u062a_\u062f\u0647\u06cc_\u0633\u0631\u0648\u06cc\u0633\u06cc", "target": "prompt_booking_engine_task_00b_service_mode_\u0648\u0636\u0639\u06cc\u062a_\u0641\u0639\u0644\u06cc", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L109", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u0648\u0636\u0639\u06cc\u062a_\u0641\u0639\u0644\u06cc", "target": "prompt_booking_engine_task_00b_service_mode_\u06f1_\u0631\u0646\u06af_\u0647\u0627\u06cc_hard_code_components_appointment_service_index_js", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L111", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u0648\u0636\u0639\u06cc\u062a_\u0641\u0639\u0644\u06cc", "target": "prompt_booking_engine_task_00b_service_mode_\u06f2_\u0645\u062d\u0627\u0633\u0628\u0647_\u0645\u0648\u0627\u0632\u06cc_\u0645\u062f\u062a_\u0647\u0645\u0627\u0646_\u0641\u0627\u06cc\u0644", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L133", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u0648\u0636\u0639\u06cc\u062a_\u0641\u0639\u0644\u06cc", "target": "prompt_booking_engine_task_00b_service_mode_\u06f3_adaptserviceslots_lib_appointmentslots_js", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L144", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u0648\u0636\u0639\u06cc\u062a_\u0641\u0639\u0644\u06cc", "target": "prompt_booking_engine_task_00b_service_mode_\u06f4_\u0648_\u06f5_\u067e\u0646\u0644_\u06a9\u0627\u0631\u0628\u0631", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L177", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u0648\u0636\u0639\u06cc\u062a_\u0641\u0639\u0644\u06cc", "target": "prompt_booking_engine_task_00b_service_mode_\u062a\u0634\u062e\u06cc\u0635_\u062d\u0627\u0644\u062a_components_appointment_index_js_125_\u062f\u0631\u0633\u062a_\u062f\u0633\u062a_\u0646\u062e\u0648\u0631\u062f\u0647_\u0628\u0645\u0627\u0646\u062f", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L183", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u062a\u0633\u06a9_\u06f0\u06f0\u0628_\u0633\u0627\u0632\u06af\u0627\u0631\u0633\u0627\u0632\u06cc_\u0633\u0627\u06cc\u062a_\u0639\u0645\u0648\u0645\u06cc_\u0628\u0627_\u0646\u0648\u0628\u062a_\u062f\u0647\u06cc_\u0633\u0631\u0648\u06cc\u0633\u06cc", "target": "prompt_booking_engine_task_00b_service_mode_\u0648\u0638\u0627\u06cc\u0641", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L196", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u0648\u0638\u0627\u06cc\u0641", "target": "prompt_booking_engine_task_00b_service_mode_\u06f1_\u067e\u06cc\u0634_\u0628\u0631\u0631\u0633\u06cc_\u0642\u0631\u0627\u0631\u062f\u0627\u062f_api_\u067e\u06cc\u0634_\u0627\u0632_\u0647\u0631_\u062e\u0637_\u06a9\u062f", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L201", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u0648\u0638\u0627\u06cc\u0641", "target": "prompt_booking_engine_task_00b_service_mode_\u06f2_\u0628\u0627\u0632\u0646\u0648\u06cc\u0633\u06cc_service_index_js_\u0628\u0627_\u062a\u0648\u06a9\u0646_\u062a\u0645", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L226", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u0648\u0638\u0627\u06cc\u0641", "target": "prompt_booking_engine_task_00b_service_mode_\u06f3_\u062d\u0630\u0641_\u0645\u062d\u0627\u0633\u0628\u0647_\u0645\u0648\u0627\u0632\u06cc_\u0645\u062f\u062a", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L256", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u0648\u0638\u0627\u06cc\u0641", "target": "prompt_booking_engine_task_00b_service_mode_\u06f4_adaptserviceslots_\u0634\u06cc\u0641\u062a_\u0622\u06af\u0627\u0647", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L287", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u0648\u0638\u0627\u06cc\u0641", "target": "prompt_booking_engine_task_00b_service_mode_\u06f5_\u0633\u0631\u0648\u06cc\u0633_\u0648_\u0645\u062f\u062a_\u062f\u0631_\u067e\u0646\u0644_\u06a9\u0627\u0631\u0628\u0631", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L347", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u0648\u0638\u0627\u06cc\u0641", "target": "prompt_booking_engine_task_00b_service_mode_\u06f6_\u062c\u0627\u0628\u0647_\u062c\u0627\u06cc\u06cc_\u0633\u0631\u0648\u06cc\u0633_\u0622\u06af\u0627\u0647_\u0627\u0632_\u067e\u0646\u0644", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L371", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u0648\u0638\u0627\u06cc\u0641", "target": "prompt_booking_engine_task_00b_service_mode_\u06f7_\u0628\u0647_\u0631\u0648\u0632\u0631\u0633\u0627\u0646\u06cc_checklist_md_\u062f\u0648_\u0645\u062e\u0632\u0646_\u062c\u062f\u0627", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L411", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u0648\u0638\u0627\u06cc\u0641", "target": "prompt_booking_engine_task_00b_service_mode_\u06f8_\u0645\u0633\u062a\u0646\u062f\u0627\u062a_\u0648_\u06af\u0632\u0627\u0631\u0634_\u067e\u0627\u06cc\u0627\u0646\u06cc", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L458", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u062a\u0633\u06a9_\u06f0\u06f0\u0628_\u0633\u0627\u0632\u06af\u0627\u0631\u0633\u0627\u0632\u06cc_\u0633\u0627\u06cc\u062a_\u0639\u0645\u0648\u0645\u06cc_\u0628\u0627_\u0646\u0648\u0628\u062a_\u062f\u0647\u06cc_\u0633\u0631\u0648\u06cc\u0633\u06cc", "target": "prompt_booking_engine_task_00b_service_mode_\u0646\u06a9\u0627\u062a_\u0645\u0647\u0645", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L500", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u0646\u06a9\u0627\u062a_\u0645\u0647\u0645", "target": "prompt_booking_engine_task_00b_service_mode_\u062e\u0637_\u0633\u0631\u062e_\u0645\u0633\u06cc\u0631_\u0627\u0633\u0644\u0627\u062a\u06cc_\u0633\u0627\u06cc\u062a", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L502", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u0646\u06a9\u0627\u062a_\u0645\u0647\u0645", "target": "prompt_booking_engine_task_00b_service_mode_\u062f\u0627\u0645\u0646\u0647_\u0631\u0627_\u06af\u0633\u062a\u0631\u0634_\u0646\u062f\u0647", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L513", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u0646\u06a9\u0627\u062a_\u0645\u0647\u0645", "target": "prompt_booking_engine_task_00b_service_mode_\u0642\u0648\u0627\u0639\u062f_\u0633\u0627\u06cc\u062a_\u06a9\u0647_\u0631\u0639\u0627\u06cc\u062a_\u0645\u06cc_\u0634\u0648\u0646\u062f", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L520", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u0646\u06a9\u0627\u062a_\u0645\u0647\u0645", "target": "prompt_booking_engine_task_00b_service_mode_\u0648\u0627\u0628\u0633\u062a\u06af\u06cc_\u0633\u062e\u062a_\u0628\u0647_\u062a\u0633\u06a9_\u06f0\u06f0", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L537", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u0646\u06a9\u0627\u062a_\u0645\u0647\u0645", "target": "prompt_booking_engine_task_00b_service_mode_cross_repo_\u0628\u0631\u0631\u0633\u06cc_\u062f\u0633\u062a\u06cc_\u0627\u062c\u0628\u0627\u0631\u06cc", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L551", "weight": 1.0}, {"source": "prompt_booking_engine_task_00b_service_mode_\u0646\u06a9\u0627\u062a_\u0645\u0647\u0645", "target": "prompt_booking_engine_task_00b_service_mode_\u062a\u0633\u062a_\u062e\u0648\u062f\u06a9\u0627\u0631_\u0645\u062d\u062f\u0648\u062f_\u0627\u0633\u062a", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/booking-engine-task-00b-service-mode.md", "source_location": "L558", "weight": 1.0}], "input_tokens": 0, "output_tokens": 0}
\ No newline at end of file
diff --git a/graphify-out/cache/ast/v0.8.44/971ea738fd4afba12d4dc73c5791958baf674c845e26104d4e5d9f1e92ce9367.json b/graphify-out/cache/ast/v0.8.44/971ea738fd4afba12d4dc73c5791958baf674c845e26104d4e5d9f1e92ce9367.json
new file mode 100644
index 0000000..1a315ef
--- /dev/null
+++ b/graphify-out/cache/ast/v0.8.44/971ea738fd4afba12d4dc73c5791958baf674c845e26104d4e5d9f1e92ce9367.json
@@ -0,0 +1 @@
+{"nodes": [{"id": "users_hamed_pj_my_pj_clinic_pro_nobat724_front_claude_prompt_blog_category_breadcrumb_and_filter_md", "label": "blog-category-breadcrumb-and-filter.md", "file_type": "document", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L1"}, {"id": "prompt_blog_category_breadcrumb_and_filter_\u0635\u0641\u062d\u0647_\u0628\u0644\u0627\u06af_\u0628\u0631\u062f\u06a9\u0631\u0627\u0645\u0628_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0641\u06cc\u0644\u062a\u0631_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0648_\u0627\u0635\u0644\u0627\u062d_\u0633\u062a\u0648\u0646_\u0645\u0637\u0627\u0644\u0628_\u0645\u0631\u062a\u0628\u0637", "label": "\u0635\u0641\u062d\u0647\u0654 \u0628\u0644\u0627\u06af: \u0628\u0631\u062f\u06a9\u0631\u0627\u0645\u0628 \u062f\u0633\u062a\u0647\u200c\u0628\u0646\u062f\u06cc\u060c \u0641\u06cc\u0644\u062a\u0631 \u062f\u0633\u062a\u0647\u200c\u0628\u0646\u062f\u06cc\u060c \u0648 \u0627\u0635\u0644\u0627\u062d \u0633\u062a\u0648\u0646 \u00ab\u0645\u0637\u0627\u0644\u0628 \u0645\u0631\u062a\u0628\u0637\u00bb", "file_type": "document", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L1"}, {"id": "prompt_blog_category_breadcrumb_and_filter_\u067e\u0631\u0648\u0698\u0647", "label": "\u067e\u0631\u0648\u0698\u0647", "file_type": "document", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L3"}, {"id": "prompt_blog_category_breadcrumb_and_filter_\u0632\u0645\u06cc\u0646\u0647", "label": "\u0632\u0645\u06cc\u0646\u0647", "file_type": "document", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L12"}, {"id": "prompt_blog_category_breadcrumb_and_filter_\u0645\u0634\u06a9\u0644_\u0647\u062f\u0641", "label": "\u0645\u0634\u06a9\u0644 / \u0647\u062f\u0641", "file_type": "document", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L19"}, {"id": "prompt_blog_category_breadcrumb_and_filter_\u06f1_\u0628\u0631\u062f\u06a9\u0631\u0627\u0645\u0628_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0644\u06cc\u0646\u06a9_\u0646\u062f\u0627\u0631\u062f", "label": "\u06f1) \u0628\u0631\u062f\u06a9\u0631\u0627\u0645\u0628 \u062f\u0633\u062a\u0647\u200c\u0628\u0646\u062f\u06cc \u0644\u06cc\u0646\u06a9 \u0646\u062f\u0627\u0631\u062f", "file_type": "document", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L21"}, {"id": "prompt_blog_category_breadcrumb_and_filter_\u06f2_\u0641\u06cc\u0644\u062a\u0631_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u062f\u0631_blogs_\u06a9\u0627\u0631_\u0646\u0645\u06cc_\u06a9\u0646\u062f", "label": "\u06f2) \u0641\u06cc\u0644\u062a\u0631 \u062f\u0633\u062a\u0647\u200c\u0628\u0646\u062f\u06cc \u062f\u0631 `/blogs` \u06a9\u0627\u0631 \u0646\u0645\u06cc\u200c\u06a9\u0646\u062f", "file_type": "document", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L33"}, {"id": "prompt_blog_category_breadcrumb_and_filter_\u06f3_\u0633\u062a\u0648\u0646_\u0645\u0637\u0627\u0644\u0628_\u0645\u0631\u062a\u0628\u0637_\u0628\u0632\u0631\u06af_\u0627\u0633\u062a_\u0648_\u0645\u0631\u062a\u0628\u0637_\u0646\u06cc\u0633\u062a", "label": "\u06f3) \u0633\u062a\u0648\u0646 \u00ab\u0645\u0637\u0627\u0644\u0628 \u0645\u0631\u062a\u0628\u0637\u00bb \u0628\u0632\u0631\u06af \u0627\u0633\u062a \u2014 \u0648 \u0645\u0631\u062a\u0628\u0637 \u0646\u06cc\u0633\u062a", "file_type": "document", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L46"}, {"id": "prompt_blog_category_breadcrumb_and_filter_\u06f4_\u0633\u0644\u0633\u0644\u0647_\u0645\u0631\u0627\u062a\u0628_heading_\u0634\u06a9\u0633\u062a\u0647_\u0627\u0633\u062a_\u0641\u0648\u0646\u062a_\u0648", "label": "\u06f4) \u0633\u0644\u0633\u0644\u0647\u200c\u0645\u0631\u0627\u062a\u0628 heading \u0634\u06a9\u0633\u062a\u0647 \u0627\u0633\u062a (\u00ab\u0641\u0648\u0646\u062a \u0648 ...\u00bb)", "file_type": "document", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L54"}, {"id": "prompt_blog_category_breadcrumb_and_filter_\u0645\u0639\u06cc\u0627\u0631_\u067e\u0630\u06cc\u0631\u0634", "label": "\u0645\u0639\u06cc\u0627\u0631 \u067e\u0630\u06cc\u0631\u0634", "file_type": "document", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L63"}, {"id": "prompt_blog_category_breadcrumb_and_filter_\u0641\u0627\u06cc\u0644_\u0647\u0627\u06cc_\u0645\u0631\u062a\u0628\u0637", "label": "\u0641\u0627\u06cc\u0644\u200c\u0647\u0627\u06cc \u0645\u0631\u062a\u0628\u0637", "file_type": "document", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L92"}, {"id": "prompt_blog_category_breadcrumb_and_filter_\u0648\u0636\u0639\u06cc\u062a_\u0641\u0639\u0644\u06cc", "label": "\u0648\u0636\u0639\u06cc\u062a \u0641\u0639\u0644\u06cc", "file_type": "document", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L109"}, {"id": "prompt_blog_category_breadcrumb_and_filter_\u0648\u0638\u0627\u06cc\u0641", "label": "\u0648\u0638\u0627\u06cc\u0641", "file_type": "document", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L254"}, {"id": "prompt_blog_category_breadcrumb_and_filter_\u06f1_\u0627\u0641\u0632\u0648\u062f\u0646_getblogtagfacets_\u0628\u0647_services_response_js", "label": "\u06f1. \u0627\u0641\u0632\u0648\u062f\u0646 `getBlogTagFacets` \u0628\u0647 `services/response.js`", "file_type": "document", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L256"}, {"id": "prompt_blog_category_breadcrumb_and_filter_\u06f2_\u062a\u06af_\u0627\u0646\u062a\u062e\u0627\u0628\u06cc_\u0631\u0627_\u0628\u0647_url_\u0645\u0646\u062a\u0642\u0644_\u06a9\u0646_tag", "label": "\u06f2. \u062a\u06af \u0627\u0646\u062a\u062e\u0627\u0628\u06cc \u0631\u0627 \u0628\u0647 URL \u0645\u0646\u062a\u0642\u0644 \u06a9\u0646 (`?tag=`)", "file_type": "document", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L282"}, {"id": "prompt_blog_category_breadcrumb_and_filter_\u06f3_\u0686\u06cc\u067e_\u0647\u0627_\u0627\u0632_endpoint_facet_\u0648_\u0641\u0639\u0627\u0644_\u0628\u0648\u062f\u0646_\u0628\u0631_\u0627\u0633\u0627\u0633_\u0646\u0627\u0645_\u0646\u0647_\u0627\u06cc\u0646\u062f\u06a9\u0633", "label": "\u06f3. \u0686\u06cc\u067e\u200c\u0647\u0627 \u0627\u0632 endpoint facet\u060c \u0648 \u0641\u0639\u0627\u0644\u200c\u0628\u0648\u062f\u0646 \u0628\u0631 \u0627\u0633\u0627\u0633 \u0646\u0627\u0645 \u0646\u0647 \u0627\u06cc\u0646\u062f\u06a9\u0633", "file_type": "document", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L355"}, {"id": "prompt_blog_category_breadcrumb_and_filter_\u06f4_\u0628\u0631\u062f\u06a9\u0631\u0627\u0645\u0628_\u0635\u0641\u062d\u0647_\u0645\u0642\u0627\u0644\u0647_\u062f\u0633\u062a\u0647_\u0631\u0627_\u0644\u06cc\u0646\u06a9_\u06a9\u0646_html_json_ld", "label": "\u06f4. \u0628\u0631\u062f\u06a9\u0631\u0627\u0645\u0628 \u0635\u0641\u062d\u0647\u0654 \u0645\u0642\u0627\u0644\u0647: \u062f\u0633\u062a\u0647 \u0631\u0627 \u0644\u06cc\u0646\u06a9 \u06a9\u0646 (HTML + JSON-LD)", "file_type": "document", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L433"}, {"id": "prompt_blog_category_breadcrumb_and_filter_\u06f5_\u0645\u0637\u0627\u0644\u0628_\u0645\u0631\u062a\u0628\u0637_\u0647\u0645_\u062f\u0633\u062a\u0647_\u06a9\u0631\u062f\u0646_\u0645\u0647\u0627\u0631_\u0639\u0631\u0636_\u0648_\u0627\u0631\u062a\u0641\u0627\u0639", "label": "\u06f5. \u00ab\u0645\u0637\u0627\u0644\u0628 \u0645\u0631\u062a\u0628\u0637\u00bb: \u0647\u0645\u200c\u062f\u0633\u062a\u0647 \u06a9\u0631\u062f\u0646 + \u0645\u0647\u0627\u0631 \u0639\u0631\u0636 \u0648 \u0627\u0631\u062a\u0641\u0627\u0639", "file_type": "document", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L503"}, {"id": "prompt_blog_category_breadcrumb_and_filter_\u06f6_\u0627\u0635\u0644\u0627\u062d_\u0633\u0644\u0633\u0644\u0647_\u0645\u0631\u0627\u062a\u0628_heading", "label": "\u06f6. \u0627\u0635\u0644\u0627\u062d \u0633\u0644\u0633\u0644\u0647\u200c\u0645\u0631\u0627\u062a\u0628 heading", "file_type": "document", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L550"}, {"id": "prompt_blog_category_breadcrumb_and_filter_\u0646\u06a9\u0627\u062a_\u0645\u0647\u0645", "label": "\u0646\u06a9\u0627\u062a \u0645\u0647\u0645", "file_type": "document", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L567"}], "edges": [{"source": "users_hamed_pj_my_pj_clinic_pro_nobat724_front_claude_prompt_blog_category_breadcrumb_and_filter_md", "target": "prompt_blog_category_breadcrumb_and_filter_\u0635\u0641\u062d\u0647_\u0628\u0644\u0627\u06af_\u0628\u0631\u062f\u06a9\u0631\u0627\u0645\u0628_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0641\u06cc\u0644\u062a\u0631_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0648_\u0627\u0635\u0644\u0627\u062d_\u0633\u062a\u0648\u0646_\u0645\u0637\u0627\u0644\u0628_\u0645\u0631\u062a\u0628\u0637", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L1", "weight": 1.0}, {"source": "prompt_blog_category_breadcrumb_and_filter_\u0635\u0641\u062d\u0647_\u0628\u0644\u0627\u06af_\u0628\u0631\u062f\u06a9\u0631\u0627\u0645\u0628_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0641\u06cc\u0644\u062a\u0631_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0648_\u0627\u0635\u0644\u0627\u062d_\u0633\u062a\u0648\u0646_\u0645\u0637\u0627\u0644\u0628_\u0645\u0631\u062a\u0628\u0637", "target": "prompt_blog_category_breadcrumb_and_filter_\u067e\u0631\u0648\u0698\u0647", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L3", "weight": 1.0}, {"source": "prompt_blog_category_breadcrumb_and_filter_\u0635\u0641\u062d\u0647_\u0628\u0644\u0627\u06af_\u0628\u0631\u062f\u06a9\u0631\u0627\u0645\u0628_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0641\u06cc\u0644\u062a\u0631_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0648_\u0627\u0635\u0644\u0627\u062d_\u0633\u062a\u0648\u0646_\u0645\u0637\u0627\u0644\u0628_\u0645\u0631\u062a\u0628\u0637", "target": "prompt_blog_category_breadcrumb_and_filter_\u0632\u0645\u06cc\u0646\u0647", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L12", "weight": 1.0}, {"source": "prompt_blog_category_breadcrumb_and_filter_\u0635\u0641\u062d\u0647_\u0628\u0644\u0627\u06af_\u0628\u0631\u062f\u06a9\u0631\u0627\u0645\u0628_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0641\u06cc\u0644\u062a\u0631_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0648_\u0627\u0635\u0644\u0627\u062d_\u0633\u062a\u0648\u0646_\u0645\u0637\u0627\u0644\u0628_\u0645\u0631\u062a\u0628\u0637", "target": "prompt_blog_category_breadcrumb_and_filter_\u0645\u0634\u06a9\u0644_\u0647\u062f\u0641", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L19", "weight": 1.0}, {"source": "prompt_blog_category_breadcrumb_and_filter_\u0645\u0634\u06a9\u0644_\u0647\u062f\u0641", "target": "prompt_blog_category_breadcrumb_and_filter_\u06f1_\u0628\u0631\u062f\u06a9\u0631\u0627\u0645\u0628_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0644\u06cc\u0646\u06a9_\u0646\u062f\u0627\u0631\u062f", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L21", "weight": 1.0}, {"source": "prompt_blog_category_breadcrumb_and_filter_\u0645\u0634\u06a9\u0644_\u0647\u062f\u0641", "target": "prompt_blog_category_breadcrumb_and_filter_\u06f2_\u0641\u06cc\u0644\u062a\u0631_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u062f\u0631_blogs_\u06a9\u0627\u0631_\u0646\u0645\u06cc_\u06a9\u0646\u062f", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L33", "weight": 1.0}, {"source": "prompt_blog_category_breadcrumb_and_filter_\u0645\u0634\u06a9\u0644_\u0647\u062f\u0641", "target": "prompt_blog_category_breadcrumb_and_filter_\u06f3_\u0633\u062a\u0648\u0646_\u0645\u0637\u0627\u0644\u0628_\u0645\u0631\u062a\u0628\u0637_\u0628\u0632\u0631\u06af_\u0627\u0633\u062a_\u0648_\u0645\u0631\u062a\u0628\u0637_\u0646\u06cc\u0633\u062a", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L46", "weight": 1.0}, {"source": "prompt_blog_category_breadcrumb_and_filter_\u0645\u0634\u06a9\u0644_\u0647\u062f\u0641", "target": "prompt_blog_category_breadcrumb_and_filter_\u06f4_\u0633\u0644\u0633\u0644\u0647_\u0645\u0631\u0627\u062a\u0628_heading_\u0634\u06a9\u0633\u062a\u0647_\u0627\u0633\u062a_\u0641\u0648\u0646\u062a_\u0648", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L54", "weight": 1.0}, {"source": "prompt_blog_category_breadcrumb_and_filter_\u0635\u0641\u062d\u0647_\u0628\u0644\u0627\u06af_\u0628\u0631\u062f\u06a9\u0631\u0627\u0645\u0628_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0641\u06cc\u0644\u062a\u0631_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0648_\u0627\u0635\u0644\u0627\u062d_\u0633\u062a\u0648\u0646_\u0645\u0637\u0627\u0644\u0628_\u0645\u0631\u062a\u0628\u0637", "target": "prompt_blog_category_breadcrumb_and_filter_\u0645\u0639\u06cc\u0627\u0631_\u067e\u0630\u06cc\u0631\u0634", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L63", "weight": 1.0}, {"source": "prompt_blog_category_breadcrumb_and_filter_\u0635\u0641\u062d\u0647_\u0628\u0644\u0627\u06af_\u0628\u0631\u062f\u06a9\u0631\u0627\u0645\u0628_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0641\u06cc\u0644\u062a\u0631_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0648_\u0627\u0635\u0644\u0627\u062d_\u0633\u062a\u0648\u0646_\u0645\u0637\u0627\u0644\u0628_\u0645\u0631\u062a\u0628\u0637", "target": "prompt_blog_category_breadcrumb_and_filter_\u0641\u0627\u06cc\u0644_\u0647\u0627\u06cc_\u0645\u0631\u062a\u0628\u0637", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L92", "weight": 1.0}, {"source": "prompt_blog_category_breadcrumb_and_filter_\u0635\u0641\u062d\u0647_\u0628\u0644\u0627\u06af_\u0628\u0631\u062f\u06a9\u0631\u0627\u0645\u0628_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0641\u06cc\u0644\u062a\u0631_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0648_\u0627\u0635\u0644\u0627\u062d_\u0633\u062a\u0648\u0646_\u0645\u0637\u0627\u0644\u0628_\u0645\u0631\u062a\u0628\u0637", "target": "prompt_blog_category_breadcrumb_and_filter_\u0648\u0636\u0639\u06cc\u062a_\u0641\u0639\u0644\u06cc", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L109", "weight": 1.0}, {"source": "prompt_blog_category_breadcrumb_and_filter_\u0635\u0641\u062d\u0647_\u0628\u0644\u0627\u06af_\u0628\u0631\u062f\u06a9\u0631\u0627\u0645\u0628_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0641\u06cc\u0644\u062a\u0631_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0648_\u0627\u0635\u0644\u0627\u062d_\u0633\u062a\u0648\u0646_\u0645\u0637\u0627\u0644\u0628_\u0645\u0631\u062a\u0628\u0637", "target": "prompt_blog_category_breadcrumb_and_filter_\u0648\u0638\u0627\u06cc\u0641", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L254", "weight": 1.0}, {"source": "prompt_blog_category_breadcrumb_and_filter_\u0648\u0638\u0627\u06cc\u0641", "target": "prompt_blog_category_breadcrumb_and_filter_\u06f1_\u0627\u0641\u0632\u0648\u062f\u0646_getblogtagfacets_\u0628\u0647_services_response_js", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L256", "weight": 1.0}, {"source": "prompt_blog_category_breadcrumb_and_filter_\u0648\u0638\u0627\u06cc\u0641", "target": "prompt_blog_category_breadcrumb_and_filter_\u06f2_\u062a\u06af_\u0627\u0646\u062a\u062e\u0627\u0628\u06cc_\u0631\u0627_\u0628\u0647_url_\u0645\u0646\u062a\u0642\u0644_\u06a9\u0646_tag", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L282", "weight": 1.0}, {"source": "prompt_blog_category_breadcrumb_and_filter_\u0648\u0638\u0627\u06cc\u0641", "target": "prompt_blog_category_breadcrumb_and_filter_\u06f3_\u0686\u06cc\u067e_\u0647\u0627_\u0627\u0632_endpoint_facet_\u0648_\u0641\u0639\u0627\u0644_\u0628\u0648\u062f\u0646_\u0628\u0631_\u0627\u0633\u0627\u0633_\u0646\u0627\u0645_\u0646\u0647_\u0627\u06cc\u0646\u062f\u06a9\u0633", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L355", "weight": 1.0}, {"source": "prompt_blog_category_breadcrumb_and_filter_\u0648\u0638\u0627\u06cc\u0641", "target": "prompt_blog_category_breadcrumb_and_filter_\u06f4_\u0628\u0631\u062f\u06a9\u0631\u0627\u0645\u0628_\u0635\u0641\u062d\u0647_\u0645\u0642\u0627\u0644\u0647_\u062f\u0633\u062a\u0647_\u0631\u0627_\u0644\u06cc\u0646\u06a9_\u06a9\u0646_html_json_ld", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L433", "weight": 1.0}, {"source": "prompt_blog_category_breadcrumb_and_filter_\u0648\u0638\u0627\u06cc\u0641", "target": "prompt_blog_category_breadcrumb_and_filter_\u06f5_\u0645\u0637\u0627\u0644\u0628_\u0645\u0631\u062a\u0628\u0637_\u0647\u0645_\u062f\u0633\u062a\u0647_\u06a9\u0631\u062f\u0646_\u0645\u0647\u0627\u0631_\u0639\u0631\u0636_\u0648_\u0627\u0631\u062a\u0641\u0627\u0639", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L503", "weight": 1.0}, {"source": "prompt_blog_category_breadcrumb_and_filter_\u0648\u0638\u0627\u06cc\u0641", "target": "prompt_blog_category_breadcrumb_and_filter_\u06f6_\u0627\u0635\u0644\u0627\u062d_\u0633\u0644\u0633\u0644\u0647_\u0645\u0631\u0627\u062a\u0628_heading", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L550", "weight": 1.0}, {"source": "prompt_blog_category_breadcrumb_and_filter_\u0635\u0641\u062d\u0647_\u0628\u0644\u0627\u06af_\u0628\u0631\u062f\u06a9\u0631\u0627\u0645\u0628_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0641\u06cc\u0644\u062a\u0631_\u062f\u0633\u062a\u0647_\u0628\u0646\u062f\u06cc_\u0648_\u0627\u0635\u0644\u0627\u062d_\u0633\u062a\u0648\u0646_\u0645\u0637\u0627\u0644\u0628_\u0645\u0631\u062a\u0628\u0637", "target": "prompt_blog_category_breadcrumb_and_filter_\u0646\u06a9\u0627\u062a_\u0645\u0647\u0645", "relation": "contains", "confidence": "EXTRACTED", "source_file": ".claude/prompt/blog-category-breadcrumb-and-filter.md", "source_location": "L567", "weight": 1.0}], "input_tokens": 0, "output_tokens": 0}
\ No newline at end of file
diff --git a/graphify-out/cache/stat-index.json b/graphify-out/cache/stat-index.json
index e109411..57c15b5 100644
--- a/graphify-out/cache/stat-index.json
+++ b/graphify-out/cache/stat-index.json
@@ -1 +1 @@
-{"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/data/city.json":{"size":51821,"mtime_ns":1783788126997422221,"hash":"4ccb53c29097dc660266a9128272555d17e37bf3de0d8fa6f8b1fd29e94000e6"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/data/doctor_services.json":{"size":46716,"mtime_ns":1783776875723218482,"hash":"69c0d8624eabb28ee1926dd11d83d02a01adf8913f80dede1ad843c21ebc0258"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/data/education.json":{"size":360,"mtime_ns":1783776875723480985,"hash":"440ac7ee3fcce903f6aca0296103712fc17a1e9e86611527e9999c591573a2a2"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/data/progress_detail.json":{"size":519,"mtime_ns":1783776875723711612,"hash":"80fa177614a400037aa8b30941d025013544ef3ee864a7696d732cdac1cc6c3c"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/data/specialties.json":{"size":19004,"mtime_ns":1784823576296524910,"hash":"aa3d1793dcf59b52b3911879d3088885fd6de0704e726fcbf8799374b9c4430c"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/data/state.json":{"size":4364,"mtime_ns":1783776875724286784,"hash":"87ca9a51f21c57083962121c571035a00e774a1a34cf519b0325450f882d04fd"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/jsconfig.json":{"size":72,"mtime_ns":1760953552262982824,"hash":"3c07efb26e59f46bcab477c7b4d1d68958c43ec0cceda5cb735726790af4fe76"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/liara.json":{"size":391,"mtime_ns":1783776875757055002,"hash":"10033b140aad3ee501bd9a5653eb0a1d43fe53aee55877becfca5a5d1b8a14b5"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/package.json":{"size":2330,"mtime_ns":1783788127116684520,"hash":"a9b406df43fab884b03ba208fabbe9166337b0052ace920fa14510ac5c8077a0"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/adapt-backend-audit-api.md":{"size":9483,"mtime_ns":1783776875660474487,"hash":"e19cc538d048d969601b941242dd729de7f7dea14a403bbe2ff5e134647aa10d"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/appointment-calendar-disabled-dates.md":{"size":9763,"mtime_ns":1781597583936646960,"hash":"e628c04749776a9b8042e5528f915660859a7cdfb6dc12d903cb1b2a73cb24ba"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/appointment-detail-fields-fix.md":{"size":4099,"mtime_ns":1783776875660704614,"hash":"2ab9c060be8be2d461b1ffd2995851906d66e25c229735a3219f85e1f8195839"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/appointment-required-account-fields.md":{"size":7280,"mtime_ns":1781597583936937752,"hash":"556a7ecaeb0c4bde3e6b682a03fea79fdaf7827c9d62ebb5c9b1cd58c427dc13"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/birthday-picker-year-month-day.md":{"size":7704,"mtime_ns":1781597583937172919,"hash":"a588d0d0150fcd8aaef3a41ebdad0404b8fa2c61855d157285aeb9dda04ef3ab"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/booking-lock-patient-flow.md":{"size":9588,"mtime_ns":1781597583937571794,"hash":"d78e22adc6d096b775cdcdc129b12347c337cff71afcb2b708c2cbca82486252"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/booking-send-representation.md":{"size":5088,"mtime_ns":1783776875661030075,"hash":"be8fa462416ccec3ff0f7e60b9d042def7fc27e7f8c03c577630fbb118e77482"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/city-seo-optimization.md":{"size":12088,"mtime_ns":1783776875661529914,"hash":"a0029107f5ad368d237cbf3b7ef28c7b7906794b6fb0da4a00180c0d5789d2d6"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/clinic-seo-schema-knowledge-panel.md":{"size":9490,"mtime_ns":1783776875661760957,"hash":"eb138f4534fc1433698377ae9673b1e22b8627dd564124c895efaf3bd58b64fe"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/connect-panel-dashboard-to-api.md":{"size":13193,"mtime_ns":1781597583937858961,"hash":"17a0579ff0b02c7d73fbdaaabdf26ae1dc668a0e6ab1fe3ff70a8222630b548f"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/currency-toman-display-front.md":{"size":6340,"mtime_ns":1783776875662086127,"hash":"d260ca8d266e49ee94910a03c027d8c2b83461c0a40ca046ba1b6fac591f614f"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/dashboard-tabs-real-data.md":{"size":10762,"mtime_ns":1781597583938112795,"hash":"e6cd614d25692aeefc353b2db4362ea2a269d2fe652151f227b6b855d33f5be3"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/doctor-poster-redesign.md":{"size":13362,"mtime_ns":1783776875662596923,"hash":"8113bbc0cb9b92135d3a293d761ff889a5f78b9d05d7273c7f8b0736c229c68f"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/doctor-seo-schema-knowledge-panel.md":{"size":16103,"mtime_ns":1783776875662939343,"hash":"a1e7d5a4da148b5b13b8800f09d1417ff7a54d20c847b2738624b9d3e72659fc"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-appointment-booking-flow.md":{"size":19846,"mtime_ns":1781597583938358921,"hash":"f023a2e60de677580f5eb6ca22c299f10ee2c557be036cb5adcfa8917ef7d6fa"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-appointment-payment-flow.md":{"size":12476,"mtime_ns":1781597583938747463,"hash":"18b75a0aa94343da7fe5d77403f73b9e704527a92f8da7db04c627303413ef82"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-dashboard-uuid-and-lists.md":{"size":8449,"mtime_ns":1781597583938977130,"hash":"c9171ffaaad4600e4012c4dc7e8d747b8946ba451dfa315605e8ff4928694535"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-doctor-free-turn-disabled.md":{"size":7505,"mtime_ns":1783776875663096386,"hash":"01769376a658f7bf4c1c2ad9349b00581d485f9b199f48871b79333430847f0e"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-doctor-poster-download-image.md":{"size":8557,"mtime_ns":1783776875663271346,"hash":"11395172e2e3d905b4873294ed9df03919796e3c27396fcfc3816fccf38d456c"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-doctors-filter-performance.md":{"size":7565,"mtime_ns":1783776875663481223,"hash":"a2bff95d8ec72493e859cb174fca8469022ee7669f193d889e6e3d2b59bd97b3"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-header-logged-state.md":{"size":7287,"mtime_ns":1781597583939167297,"hash":"9fa28b5810446e5d2cf89ccf2f58a9976c4e9ce3975df5a3b32f3c3eb50a0dce"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-login-bugs.md":{"size":5993,"mtime_ns":1783776875663674933,"hash":"94add08ebe87780fbd4fccf08ed11be2cb45d55828a81f6cc9bc39c79902c040"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-login-session-userinfo.md":{"size":8739,"mtime_ns":1781597583939455089,"hash":"22044e56711732a73f5130b6d38607cd52df0e22fc19c6bd5778544486df932e"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-my-appointments-status-filter.md":{"size":6079,"mtime_ns":1781597583939678131,"hash":"cf4be2acf9ffc36974a6f6999cf2cc5259b73be544a3e0bcaf0f589f34943c4d"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-payment-gateway-flow.md":{"size":11147,"mtime_ns":1783776875663884643,"hash":"c6e6c55b51cabc086cfb88e97ae4977b2f8587822a38232102bea1d45b94f0ab"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-token-storage-xss-headers.md":{"size":11238,"mtime_ns":1783776875664315231,"hash":"88ae04aa6c4de588a6b7fab59d6fc9426d7b1b43c75a1e1e4103fdcf0edfc6df"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/liara-deploy.md":{"size":9137,"mtime_ns":1783776875664715776,"hash":"40d115b3bc3a43851f8e317427e23bd857de37f77bb5b2080077c69e774d1a53"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/nobat724-root-domain-not-city.md":{"size":8911,"mtime_ns":1783776875664907070,"hash":"7abb24fe0c3e3ea6125318b160cba6c41c57be779a3a96dccc77be825cb2d713"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/nobat724-test-suite.md":{"size":19981,"mtime_ns":1783776875665112780,"hash":"76e8926e91c5544fd793ecba45b8b4db9bff5f11593d3ed64a5a8f308ee745e9"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/otp-sms-site-name.md":{"size":4341,"mtime_ns":1783776875665298782,"hash":"c4c736e8535fae943d10e3bfc9aa45b546be27aef879ddc7b919caa7790ff2c5"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/payment-flow-frontend.md":{"size":6753,"mtime_ns":1783776875665473700,"hash":"6913de88e303725560499adef7c1ce2583e257eef0b083758cb67eab05d46151"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/payment-single-flow-frontend.md":{"size":6327,"mtime_ns":1783776875665678285,"hash":"4bf6587d44aa63a0b48c7a22fe7d01cf30be8d2a5385fc3205e3ba4155437411"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/profile-birthday-send-direction-fix.md":{"size":3365,"mtime_ns":1781597583939863923,"hash":"66a55129ea309cca03cc872462fd47053c309c64720784e79f21b4efb5ae4ec0"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/rating-rich-ui-wiring.md":{"size":9378,"mtime_ns":1781597583940215798,"hash":"add909cd22a22c9352f1cd3a6b4bb2ad6672e7784198164f8dbfda25d2f0f93a"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/seo-performance-rendering-audit.md":{"size":15903,"mtime_ns":1783776875666016205,"hash":"10bcf71f9a660ad56f97bb92cb033794f8e65858f761c286191277095231e09a"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/specialties-doctor-count-wire.md":{"size":5538,"mtime_ns":1783776875666237915,"hash":"5d9ed62a164217933720bd64bef89e07413a7e82fe92171cf9508b24e0e5d838"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/technical-seo-audit-multidomain.md":{"size":19291,"mtime_ns":1783776875666438167,"hash":"d070d13a6d70943eb3b5332a9909bcdc1eff6826610b93156c767087628cb143"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/upgrade-next-16.md":{"size":13380,"mtime_ns":1783776875666845004,"hash":"e0f930abf1bac512900eb97733708e398c52df8a5a088d3cd11212546f210eb9"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/user-profile-no-404.md":{"size":6562,"mtime_ns":1781597583940472507,"hash":"a5e69f183ea4fdd29b651385b5350ecc1d7c52097b7a4228e7d1be03b98f7c61"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/verify-past-slots-disabled.md":{"size":5350,"mtime_ns":1781597583940678257,"hash":"bfc8ebe5dcd533c93c86935a95afbcd9456f3828d6801dc02a4231a52b6b06b9"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/CLAUDE.md":{"size":5513,"mtime_ns":1783776875667984098,"hash":"847a296771bd1672e5a798d5f0451ca074cd45536c02d88cd8c08b3857cc7b27"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/README.md":{"size":23904,"mtime_ns":1783776875668464977,"hash":"c71ff73b6ff7b535887b1f016ed07f863d3ebd283571b91baacccb9fb53f685d"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-sitemap-build-fetch-failed.md":{"size":6887,"mtime_ns":1783776875664107229,"hash":"f500d64d164ae77195e7aecbb1ff75b8cec4e1bfceb971ffac3cc46666071630"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/city-json-seo-fields.md":{"size":8340,"mtime_ns":1783776875661276994,"hash":"bad09a70d9f8b419ea377acb5fabb95cee6de33307381fc161c99a402018cd59"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/global-rep-domain-site.md":{"size":8662,"mtime_ns":1783776875664512733,"hash":"487a2843c238490c773599dc61eb97293f25564481d3dbe6a22462ca7efe3f63"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/booking-locations-multi-context.md":{"size":17898,"mtime_ns":1784454676457514423,"hash":"5a640ae2f1045306c492c485b4870b3927fdfa9e841976f650826f8032d31bdf"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/doctor-map-claim-modal.md":{"size":8821,"mtime_ns":1783788127105024439,"hash":"e864a07e0303d924362356db9860383bcd5588e9326bc93273371149db286d56"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/login-redirect-back.md":{"size":6413,"mtime_ns":1783837957083247998,"hash":"2b374ceb02255315bdf1a363ba1bab456bf1b102f0e0b1889d24eddd686624d1"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/seo-critical-fixes-live-audit.md":{"size":40824,"mtime_ns":1784454676458207475,"hash":"4caa7522d92b10a06680a0abe622223f9fb7b4af4382e2a71361e89201d7cd2b"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/service-based-online-booking.md":{"size":8939,"mtime_ns":1784143132168577163,"hash":"bd949c885fa616a01383bb98432064e2a42b7453b2fff35fa1406425032becb2"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/unclaimed-doctor-public-page.md":{"size":9413,"mtime_ns":1783837109414597500,"hash":"827cc28f12b105562ef4733c1d52971d0e65ac9838e237a638b58b594ba56b0e"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/booking-locations-day-aware.md":{"size":10016,"mtime_ns":1784454676457096375,"hash":"2a18730afbf1731b3c93f72eab503ce656889c01f917f2c20f8ac30520de823e"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/doctor-profile-booking-state-from-locations.md":{"size":7632,"mtime_ns":1784454676457926512,"hash":"2c2f8817db9d73ec4d45a4b1189b7d9079f4e60eb9f3b607363cba0953430a37"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/blog-city-scoping-activate.md":{"size":7272,"mtime_ns":1784454676456663869,"hash":"a05878af813c4f0d7c636ea45d333484d6d44d2ba90beb6a8d38484c29e52ff4"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/seo-post-deploy-verification.md":{"size":9114,"mtime_ns":1784454676458400978,"hash":"f0179a58015f443c6aa2cb7a0ca9aa2564cc5f1558f0dddc83606cec51d6aa29"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/sitemap-simplify-with-city.md":{"size":7163,"mtime_ns":1784454676458609814,"hash":"14f09b327a892ae0eebdc73eca14679a31d16444b1d5fc7cbb45ce51ce76e4ed"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/clinic-contact-info-fix.md":{"size":11493,"mtime_ns":1784465348935298033,"hash":"73987deb26f7baca287527e70fa4533bf57b6cb565f6c79081929245d9e0ec90"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/maintenance-mode-client.md":{"size":10230,"mtime_ns":1784484136388959661,"hash":"8bb92466fd996c9ad547772f0534fa16f1954340bcddcb37ac4cc25a59571edd"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/nobat724-search-fix-and-seo.md":{"size":13375,"mtime_ns":1784530043061453939,"hash":"e0072b8f3c2ced85ba41f54a0ba8f4611498f095e63bdf539e77ec8ccbd0b9a3"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/blog-frontend-sync-and-default-cover.md":{"size":22874,"mtime_ns":1785163532165600426,"hash":"b1953911ff99e318e31213cd2153059deb7caab087c961f65071879ef8064b65"}}
\ No newline at end of file
+{"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/data/city.json":{"size":51821,"mtime_ns":1783788126997422221,"hash":"4ccb53c29097dc660266a9128272555d17e37bf3de0d8fa6f8b1fd29e94000e6"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/data/doctor_services.json":{"size":46716,"mtime_ns":1783776875723218482,"hash":"69c0d8624eabb28ee1926dd11d83d02a01adf8913f80dede1ad843c21ebc0258"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/data/education.json":{"size":360,"mtime_ns":1783776875723480985,"hash":"440ac7ee3fcce903f6aca0296103712fc17a1e9e86611527e9999c591573a2a2"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/data/progress_detail.json":{"size":519,"mtime_ns":1783776875723711612,"hash":"80fa177614a400037aa8b30941d025013544ef3ee864a7696d732cdac1cc6c3c"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/data/specialties.json":{"size":19004,"mtime_ns":1784823576296524910,"hash":"aa3d1793dcf59b52b3911879d3088885fd6de0704e726fcbf8799374b9c4430c"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/data/state.json":{"size":4364,"mtime_ns":1783776875724286784,"hash":"87ca9a51f21c57083962121c571035a00e774a1a34cf519b0325450f882d04fd"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/jsconfig.json":{"size":72,"mtime_ns":1760953552262982824,"hash":"3c07efb26e59f46bcab477c7b4d1d68958c43ec0cceda5cb735726790af4fe76"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/liara.json":{"size":391,"mtime_ns":1783776875757055002,"hash":"10033b140aad3ee501bd9a5653eb0a1d43fe53aee55877becfca5a5d1b8a14b5"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/package.json":{"size":2330,"mtime_ns":1783788127116684520,"hash":"a9b406df43fab884b03ba208fabbe9166337b0052ace920fa14510ac5c8077a0"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/adapt-backend-audit-api.md":{"size":9483,"mtime_ns":1783776875660474487,"hash":"e19cc538d048d969601b941242dd729de7f7dea14a403bbe2ff5e134647aa10d"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/appointment-calendar-disabled-dates.md":{"size":9763,"mtime_ns":1781597583936646960,"hash":"e628c04749776a9b8042e5528f915660859a7cdfb6dc12d903cb1b2a73cb24ba"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/appointment-detail-fields-fix.md":{"size":4099,"mtime_ns":1783776875660704614,"hash":"2ab9c060be8be2d461b1ffd2995851906d66e25c229735a3219f85e1f8195839"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/appointment-required-account-fields.md":{"size":7280,"mtime_ns":1781597583936937752,"hash":"556a7ecaeb0c4bde3e6b682a03fea79fdaf7827c9d62ebb5c9b1cd58c427dc13"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/birthday-picker-year-month-day.md":{"size":7704,"mtime_ns":1781597583937172919,"hash":"a588d0d0150fcd8aaef3a41ebdad0404b8fa2c61855d157285aeb9dda04ef3ab"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/booking-lock-patient-flow.md":{"size":9588,"mtime_ns":1781597583937571794,"hash":"d78e22adc6d096b775cdcdc129b12347c337cff71afcb2b708c2cbca82486252"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/booking-send-representation.md":{"size":5088,"mtime_ns":1783776875661030075,"hash":"be8fa462416ccec3ff0f7e60b9d042def7fc27e7f8c03c577630fbb118e77482"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/city-seo-optimization.md":{"size":12088,"mtime_ns":1783776875661529914,"hash":"a0029107f5ad368d237cbf3b7ef28c7b7906794b6fb0da4a00180c0d5789d2d6"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/clinic-seo-schema-knowledge-panel.md":{"size":9490,"mtime_ns":1783776875661760957,"hash":"eb138f4534fc1433698377ae9673b1e22b8627dd564124c895efaf3bd58b64fe"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/connect-panel-dashboard-to-api.md":{"size":13193,"mtime_ns":1781597583937858961,"hash":"17a0579ff0b02c7d73fbdaaabdf26ae1dc668a0e6ab1fe3ff70a8222630b548f"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/currency-toman-display-front.md":{"size":6340,"mtime_ns":1783776875662086127,"hash":"d260ca8d266e49ee94910a03c027d8c2b83461c0a40ca046ba1b6fac591f614f"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/dashboard-tabs-real-data.md":{"size":10762,"mtime_ns":1781597583938112795,"hash":"e6cd614d25692aeefc353b2db4362ea2a269d2fe652151f227b6b855d33f5be3"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/doctor-poster-redesign.md":{"size":13362,"mtime_ns":1783776875662596923,"hash":"8113bbc0cb9b92135d3a293d761ff889a5f78b9d05d7273c7f8b0736c229c68f"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/doctor-seo-schema-knowledge-panel.md":{"size":16103,"mtime_ns":1783776875662939343,"hash":"a1e7d5a4da148b5b13b8800f09d1417ff7a54d20c847b2738624b9d3e72659fc"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-appointment-booking-flow.md":{"size":19846,"mtime_ns":1781597583938358921,"hash":"f023a2e60de677580f5eb6ca22c299f10ee2c557be036cb5adcfa8917ef7d6fa"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-appointment-payment-flow.md":{"size":12476,"mtime_ns":1781597583938747463,"hash":"18b75a0aa94343da7fe5d77403f73b9e704527a92f8da7db04c627303413ef82"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-dashboard-uuid-and-lists.md":{"size":8449,"mtime_ns":1781597583938977130,"hash":"c9171ffaaad4600e4012c4dc7e8d747b8946ba451dfa315605e8ff4928694535"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-doctor-free-turn-disabled.md":{"size":7505,"mtime_ns":1783776875663096386,"hash":"01769376a658f7bf4c1c2ad9349b00581d485f9b199f48871b79333430847f0e"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-doctor-poster-download-image.md":{"size":8557,"mtime_ns":1783776875663271346,"hash":"11395172e2e3d905b4873294ed9df03919796e3c27396fcfc3816fccf38d456c"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-doctors-filter-performance.md":{"size":7565,"mtime_ns":1783776875663481223,"hash":"a2bff95d8ec72493e859cb174fca8469022ee7669f193d889e6e3d2b59bd97b3"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-header-logged-state.md":{"size":7287,"mtime_ns":1781597583939167297,"hash":"9fa28b5810446e5d2cf89ccf2f58a9976c4e9ce3975df5a3b32f3c3eb50a0dce"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-login-bugs.md":{"size":5993,"mtime_ns":1783776875663674933,"hash":"94add08ebe87780fbd4fccf08ed11be2cb45d55828a81f6cc9bc39c79902c040"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-login-session-userinfo.md":{"size":8739,"mtime_ns":1781597583939455089,"hash":"22044e56711732a73f5130b6d38607cd52df0e22fc19c6bd5778544486df932e"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-my-appointments-status-filter.md":{"size":6079,"mtime_ns":1781597583939678131,"hash":"cf4be2acf9ffc36974a6f6999cf2cc5259b73be544a3e0bcaf0f589f34943c4d"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-payment-gateway-flow.md":{"size":11147,"mtime_ns":1783776875663884643,"hash":"c6e6c55b51cabc086cfb88e97ae4977b2f8587822a38232102bea1d45b94f0ab"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-token-storage-xss-headers.md":{"size":11238,"mtime_ns":1783776875664315231,"hash":"88ae04aa6c4de588a6b7fab59d6fc9426d7b1b43c75a1e1e4103fdcf0edfc6df"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/liara-deploy.md":{"size":9137,"mtime_ns":1783776875664715776,"hash":"40d115b3bc3a43851f8e317427e23bd857de37f77bb5b2080077c69e774d1a53"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/nobat724-root-domain-not-city.md":{"size":8911,"mtime_ns":1783776875664907070,"hash":"7abb24fe0c3e3ea6125318b160cba6c41c57be779a3a96dccc77be825cb2d713"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/nobat724-test-suite.md":{"size":19981,"mtime_ns":1783776875665112780,"hash":"76e8926e91c5544fd793ecba45b8b4db9bff5f11593d3ed64a5a8f308ee745e9"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/otp-sms-site-name.md":{"size":4341,"mtime_ns":1783776875665298782,"hash":"c4c736e8535fae943d10e3bfc9aa45b546be27aef879ddc7b919caa7790ff2c5"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/payment-flow-frontend.md":{"size":6753,"mtime_ns":1783776875665473700,"hash":"6913de88e303725560499adef7c1ce2583e257eef0b083758cb67eab05d46151"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/payment-single-flow-frontend.md":{"size":6327,"mtime_ns":1783776875665678285,"hash":"4bf6587d44aa63a0b48c7a22fe7d01cf30be8d2a5385fc3205e3ba4155437411"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/profile-birthday-send-direction-fix.md":{"size":3365,"mtime_ns":1781597583939863923,"hash":"66a55129ea309cca03cc872462fd47053c309c64720784e79f21b4efb5ae4ec0"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/rating-rich-ui-wiring.md":{"size":9378,"mtime_ns":1781597583940215798,"hash":"add909cd22a22c9352f1cd3a6b4bb2ad6672e7784198164f8dbfda25d2f0f93a"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/seo-performance-rendering-audit.md":{"size":15903,"mtime_ns":1783776875666016205,"hash":"10bcf71f9a660ad56f97bb92cb033794f8e65858f761c286191277095231e09a"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/specialties-doctor-count-wire.md":{"size":5538,"mtime_ns":1783776875666237915,"hash":"5d9ed62a164217933720bd64bef89e07413a7e82fe92171cf9508b24e0e5d838"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/technical-seo-audit-multidomain.md":{"size":19291,"mtime_ns":1783776875666438167,"hash":"d070d13a6d70943eb3b5332a9909bcdc1eff6826610b93156c767087628cb143"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/upgrade-next-16.md":{"size":13380,"mtime_ns":1783776875666845004,"hash":"e0f930abf1bac512900eb97733708e398c52df8a5a088d3cd11212546f210eb9"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/user-profile-no-404.md":{"size":6562,"mtime_ns":1781597583940472507,"hash":"a5e69f183ea4fdd29b651385b5350ecc1d7c52097b7a4228e7d1be03b98f7c61"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/verify-past-slots-disabled.md":{"size":5350,"mtime_ns":1781597583940678257,"hash":"bfc8ebe5dcd533c93c86935a95afbcd9456f3828d6801dc02a4231a52b6b06b9"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/CLAUDE.md":{"size":5513,"mtime_ns":1783776875667984098,"hash":"847a296771bd1672e5a798d5f0451ca074cd45536c02d88cd8c08b3857cc7b27"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/README.md":{"size":23904,"mtime_ns":1783776875668464977,"hash":"c71ff73b6ff7b535887b1f016ed07f863d3ebd283571b91baacccb9fb53f685d"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/fix-sitemap-build-fetch-failed.md":{"size":6887,"mtime_ns":1783776875664107229,"hash":"f500d64d164ae77195e7aecbb1ff75b8cec4e1bfceb971ffac3cc46666071630"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/city-json-seo-fields.md":{"size":8340,"mtime_ns":1783776875661276994,"hash":"bad09a70d9f8b419ea377acb5fabb95cee6de33307381fc161c99a402018cd59"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/global-rep-domain-site.md":{"size":8662,"mtime_ns":1783776875664512733,"hash":"487a2843c238490c773599dc61eb97293f25564481d3dbe6a22462ca7efe3f63"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/booking-locations-multi-context.md":{"size":17898,"mtime_ns":1784454676457514423,"hash":"5a640ae2f1045306c492c485b4870b3927fdfa9e841976f650826f8032d31bdf"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/doctor-map-claim-modal.md":{"size":8821,"mtime_ns":1783788127105024439,"hash":"e864a07e0303d924362356db9860383bcd5588e9326bc93273371149db286d56"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/login-redirect-back.md":{"size":6413,"mtime_ns":1783837957083247998,"hash":"2b374ceb02255315bdf1a363ba1bab456bf1b102f0e0b1889d24eddd686624d1"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/seo-critical-fixes-live-audit.md":{"size":40824,"mtime_ns":1784454676458207475,"hash":"4caa7522d92b10a06680a0abe622223f9fb7b4af4382e2a71361e89201d7cd2b"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/service-based-online-booking.md":{"size":8939,"mtime_ns":1784143132168577163,"hash":"bd949c885fa616a01383bb98432064e2a42b7453b2fff35fa1406425032becb2"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/unclaimed-doctor-public-page.md":{"size":9413,"mtime_ns":1783837109414597500,"hash":"827cc28f12b105562ef4733c1d52971d0e65ac9838e237a638b58b594ba56b0e"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/booking-locations-day-aware.md":{"size":10016,"mtime_ns":1784454676457096375,"hash":"2a18730afbf1731b3c93f72eab503ce656889c01f917f2c20f8ac30520de823e"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/doctor-profile-booking-state-from-locations.md":{"size":7632,"mtime_ns":1784454676457926512,"hash":"2c2f8817db9d73ec4d45a4b1189b7d9079f4e60eb9f3b607363cba0953430a37"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/blog-city-scoping-activate.md":{"size":7272,"mtime_ns":1784454676456663869,"hash":"a05878af813c4f0d7c636ea45d333484d6d44d2ba90beb6a8d38484c29e52ff4"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/seo-post-deploy-verification.md":{"size":9114,"mtime_ns":1784454676458400978,"hash":"f0179a58015f443c6aa2cb7a0ca9aa2564cc5f1558f0dddc83606cec51d6aa29"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/sitemap-simplify-with-city.md":{"size":7163,"mtime_ns":1784454676458609814,"hash":"14f09b327a892ae0eebdc73eca14679a31d16444b1d5fc7cbb45ce51ce76e4ed"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/clinic-contact-info-fix.md":{"size":11493,"mtime_ns":1784465348935298033,"hash":"73987deb26f7baca287527e70fa4533bf57b6cb565f6c79081929245d9e0ec90"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/maintenance-mode-client.md":{"size":10230,"mtime_ns":1784484136388959661,"hash":"8bb92466fd996c9ad547772f0534fa16f1954340bcddcb37ac4cc25a59571edd"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/nobat724-search-fix-and-seo.md":{"size":13375,"mtime_ns":1784530043061453939,"hash":"e0072b8f3c2ced85ba41f54a0ba8f4611498f095e63bdf539e77ec8ccbd0b9a3"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/blog-frontend-sync-and-default-cover.md":{"size":22874,"mtime_ns":1785163532165600426,"hash":"b1953911ff99e318e31213cd2153059deb7caab087c961f65071879ef8064b65"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/blog-category-breadcrumb-and-filter.md":{"size":30753,"mtime_ns":1785321252487778504,"hash":"971ea738fd4afba12d4dc73c5791958baf674c845e26104d4e5d9f1e92ce9367"},"/Users/hamed/pj/my_pj/clinic_pro/nobat724_front/.claude/prompt/booking-engine-task-00b-service-mode.md":{"size":27295,"mtime_ns":1785401488260027214,"hash":"8886fd414c3128992605fa57a2a61a9597357c51c0690d130678fc09371fba5c"}}
\ No newline at end of file
diff --git a/graphify-out/graph.html b/graphify-out/graph.html
index 89896e7..be467a7 100644
--- a/graphify-out/graph.html
+++ b/graphify-out/graph.html
@@ -63,12 +63,12 @@
- 2422 nodes · 2500 edges · 407 communities
+ 2473 nodes · 2548 edges · 413 communities