شامل کارهای چند نشست موازی که تا اینجا فقط روی سرور بود:
- نقشهٔ دفتر مرکزی در فوتر (LazyOfficeMap) + MapViewport/LazyMaps/mapProjects
- صفحهٔ مدیریت مقالات (AdminArticlesPage) + میانبر ویرایش پیشنویس در وبلاگ
- مهاجرت ۰۰۰۴: updated_at مقالات/پروژهها
- chatbot/Dockerfile: نصب دومرحلهای torch (کاربردی برای PyPI فیلترشده)
- seed: خالیکردن آمارهای دموی story
- docker-compose: اصلاح پسوند @file میانافزارهای Traefik
- حذف فایل موقت frontend/.tmp-style.json و اصلاحات جزئی UI
با این کامیت، آنچه روی سرور اجرا میشود Exactly همان چیزی است که در مخزن ثبت شده.
بدون آن، psycopg3 تاپل برمیگرداند و row["model"] خطای
«tuple indices must be integers or slices, not str» میداد؛ نتیجه:
«Initial index sync failed» و unavailable ماندن چت با وجود امبد موفق.
- content.py: ستون desc در SQL بدون کوتیشن بود و PostgreSQL آن را کلمهٔ کلیدی
میگیرد؛ نتیجه: «Initial index sync failed: syntax error at or near "desc"»
در استارت و غیرقابل استفاده ماندن چت تا reindex. حالا "desc" کوتیشن شده.
- Dockerfile: با اینکه سرور GPU ندارد، pip نسخهٔ CUDA تورچ را از PyPI میگرفت
(ایمیج ۹.۷GB با کتابخانههای nvidia). اول torch از ایندکس CPU نصب میشود.
- traefik pin v3.3 -> v3.6: v3.3's old docker client fails against
Engine 29 socket proxy (empty daemon errors, no routers)
- backend/minio/chatbot/umami: traefik.docker.network hint — Traefik
picked the internal-network IP for multi-network services and replies
were hairpin-dropped (all backend routes hung)
- db-init: psql needs an explicit -d arameshplaza (no default db 'aramesh'),
set -e so failures actually fail; one-shot folded-YAML needs semicolons
- chatbot image: drop g++ (apt unreachable in build network; all wheels
prebuilt) and mkdir /data before chown (VOLUME does not create it)
- frontend image: create caddy user (alpine image has none) with writable
/config and /data
- monitoring: blackbox probes replace raw metric scrapes of JSON/HTML
health endpoints (they reported 'down' while healthy); blackbox joins
edge; SITE_URL passed via env (Prometheus has no ${VAR:-default}
expansion); ContainerMemoryNearLimit PromQL fixed (comparison inside
label braces); HostDiskAlmostFull filters WSL/Docker-Desktop
pseudo-mounts
- alertmanager: config rendered by stack.sh (no env expansion in AM) and
delivered to Bale (tapi.bale.ai); stack.sh monitoring command
- machine-local override: minio console/API moved to 29001/29000