تخطَّ إلى المحتوى
kazma.
البحث في كاظمه والتوثيق
EN

التقسية المتبقية لتعدد النسخ وSaaS

التقسية المتبقية لتعدد النسخ وSaaS

Section titled “التقسية المتبقية لتعدد النسخ وSaaS”

يبقى الطابع الافتراضي لكاظمه مشغّلًا واحدًا / عقدة واحدة. الأعمال أدناه تغلق الفجوات المتبقية لتعدد المستخدمين وتعدد النسخ حيث تسمح المعمارية — ولا تدّعي SaaS كامل تعدد المستأجرين.

بعد أن يوافق إنسان على أداة خطرة، يبقى المضيف قويًا بحكم التصميم. التقسية (الدفعة المتبقية 2026-07):

الضابطالسلوك
الثنائيات بقائمة سماحلا مفسّرات؛ والإنتاج يُسقط ps/kazma
أدوات الأرشفةtar/zip معطلان في وضع الإنتاج الصارم ما لم يُضبط KAZMA_SHELL_ALLOW_ARCHIVE=1
PATH مقيَّدKAZMA_SHELL_STRICT مُفعَّل افتراضيًا في الإنتاج — أدلة النظام/البناء فقط
تحليل الثنائيshutil.which تحت PATH مقيَّدًا؛ ولا /tmp/evil/git
بيئة منظَّفةلا مفاتيح API للعملية الأب
قائمة حجب Gitpush/force/credential/reset/rebase/clean -fd محجوبة
مسارات مساحة العملالوسائط المطلقة يجب أن تبقى داخل جذر مساحة العمل
code_exec عبر Dockerإجباري في الإنتاج / KAZMA_CODE_EXEC_DOCKER=force

لم يُزل: shell_exec / file_write / python_exec المُوافَق عليها ما زالت تغيّر المضيف من أجل المشغّل الموثوق. تعامل مع YOLO ومنح HITL الطويلة بوصفها صلاحية مرتفعة.

ذكاء المستندات (المهام + البيانات الوصفية)

Section titled “ذكاء المستندات (المهام + البيانات الوصفية)”
الطبقةحالة تعدد النسخ
حجز/إيجار المهامنعم على Postgres ‏(documents/jobs_pg.py) في تثبيت يعمل على Postgres ‏(KAZMA_DB_BACKEND=postgres أو KAZMA_DATABASE_URL بصيغة postgresql://)، ما لم يُضبط KAZMA_DOCUMENTS_JOBS_BACKEND=sqlite
قبول الاستلامنعم مع طابور مهام Postgres: حجوزات دائمة، وعقد إيجاري للاستلام، وسياج للاستيلاء، فيُستولى على استلام نسخة متوقفة ولا يمكنها النشر أبدًا (documents/admission.py)
عمليات CRUD للبيانات الوصفيةنعم عند KAZMA_DOCUMENTS_METADATA_BACKEND=postgres، أو auto/غير مضبوط في تثبيت يعمل على Postgres ‏(repository_pg.py)؛ وتُفرض حصة تخزين المستأجر داخل معاملة النشر
كتل المحتوىنظام ملفات/وحدة تخزين مشتركة على documents.storage_root مطلوبة
خانات التخزين المؤقت للرفعلكل عملية (documents.capacity.max_concurrent_uploads)
GCمستقل عن الخلفية — retention._mark يوزّع إلى repository.gc_mark على SQLite وPostgres معًا

هذه قدرات لخلفيات المستندات، لا نشرٌ مؤهَّل: يبلّغ scripts/certify_documents.py عن postgres_multi_replica و metadata_multi_replica بأنهما NOT RUN (لم يُشغَّلا)، وتُبقي بيئة التشغيل ككل مالكًا نشطًا واحدًا (أدناه). تحقق دائمًا من GET /api/documents/ops/readiness. انظر عمليات معالجة المستندات وذكاء المستندات.

الطبقةالحالة
ContextVar المستأجرtenant_context + البرمجية الوسيطة
X-Tenant-ID من العميليُتجاهَل في الإنتاج أو تعدد المستخدمين؛ JWT / الأصيل فقط
الجلسات المعتمةمفروضة عند تعدد المستخدمين
قوائم ACL للمستنداتACL للمستندات + الأصيل لكل مستأجر على المستودع
أسرار الخزنةعمود المستأجر + فلتر ContextVar
الذاكرة المتجهةفلتر tenant_id في البيانات الوصفية على الاستعلام
مهام السربيُختم metadata.tenant_id عند الإرسال
المعرفة / cron / MCPما تزال عالمية إلى حد كبير (غير مُنتَجة لكل مستأجر)

البيئة: KAZMA_MULTI_USER=1، وKAZMA_PRODUCTION=1، وKAZMA_DATABASE_URL, وKAZMA_VAULT_KEY، وKAZMA_JWT_SECRET (عند تعدد المستأجرين بـ JWT).

حالة العمليات في تعدد النسخ

Section titled “حالة العمليات في تعدد النسخ”
الحالةكانتأصبحت
موافقات ناقل HITLحدث داخل العملية فقطكتابة مزدوجة في ConfigStore عبر swarm/shared_approvals.py + حدث محلي
نتائج مهام السربTaskStore ‏(SQLite/PG)دون تغيير — استخدم Postgres لتعدد العقد
استئجار قائمة المهامعالميةفلتر metadata.tenant_id تلقائي عند تعدد المستخدمين/الإنتاج
قواطع الدارةذاكرة العمليةمشتركة عبر ConfigStore عند تعدد المستخدمين/الإنتاج (KAZMA_SHARED_BREAKERS)
خوادم MCP (المضافة من المستخدم)ConfigStore عالميمفتاح بنطاق المستأجر tenant.<id>.mcp.servers
قائمة مهام cronعالميةعمود tenant_id؛ قائمة الواجهة مُرشَّحة
_active_tasksذاكرة العمليةما تزال محلية للعملية؛ ثبّتها عبر TaskStore للتاريخ
مهام زحف قاعدة المعرفةالعملية + ConfigStoreسجل الزحف (web_acquire/crawl_jobs.py): صف واحد لكل مهمة، ومالكون محصورون بهذا التثبيت
مكتبات المعرفةعالميةملف knowledge.db خاص؛ وتُرفض في تثبيت فيه مستخدمو منصات (مشغّل واحد)
مُكيّفات ناقل السربمفرد داخل العمليةتوزيع (fan-out) متعدد المنصات؛ وما تزال عملية واحدة
ترابط المتصفحلا شيءكوكيز kazma-replica (KAZMA_REPLICA_ID، موازنة أحمال لاصقة)

لا تجعل هذه الأنظمة المشتركة بيئة التشغيل كاملة آمنة لنسخ نشطة متزامنة. لملف إعداد HA المدعوم مالك نشط واحد وجلسة ملكية Postgres مخصصة ووحدة حالة كاملة مسيّجة. لا يحل توجيه الجلسات اللاصق أو تخزين SQLite الشبكي محل الملكية والتسييج. انظر المناطق المتعددة وHA للإعداد وتمارين التأهيل.

بيئة حماية code_exec على المضيف

Section titled “بيئة حماية code_exec على المضيف”
الوضعالسلوك
الإنتاج أو تعدد المستخدمينلا python_exec محليًا على المضيف — Docker مطلوب
KAZMA_CODE_EXEC_DOCKER=forceالسلوك نفسه
مخرج المختبرKAZMA_CODE_EXEC_ALLOW_LOCAL=1 (غير موصى به)
الميزةTelegramDiscordSlack
الدردشة النصيةكاملكاملكامل
مؤشر الكتابةكاملنعمنعم
الصوت STT/TTSمسار عميقالعمق نفسه عبر voice_helpers + discord_stt / slack_stt
أزرار HITL للرسمtelegram_keyboardsdiscord_keyboardsslack_blocks
أزرار HITL للسربلوحة مفاتيح مضمّنةComponents v2Block Kit
معرّفات الاستدعاء المشتركةplatform_callbacksالأنظمة نفسهاالأنظمة نفسها
تحليل/إرسال معياريtelegram_parse/senddiscord_parse/sendslack_parse/send
موافقات مشتركة لتعدد النسخنعمنعمنعم
تفاعلات الرسائلsetMessageReactionواجهة set_reaction APIواجهة set_reaction API

التخطيط (وحدات تجربة الاستخدام 2026-07):

adapters/
platform_callbacks.py # hitl: / swarm_ / model_ schemes
platform_keyboards.py # Discord components + Slack blocks
telegram_{keyboards,callbacks,parse,send,stt}.py
discord_{keyboards,callbacks,parse,send}.py
slack_{blocks,callbacks,parse,send}.py
voice_helpers.py