Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
quill-router — مستودع TrustedRouter.com للتمرير الآمن عبر البروكسي لنماذج LLM | Kitploit
أدوات/GitHubGitHub/lore-hex/quill-router
المصادقة والترخيصأدوات التشفير/فك التشفيرتدقيق التكوينأمن السحابةDevSecOpsالخصوصيةاستخبارات التهديداتأمن واجهات برمجة التطبيقاتتحليل السجلات
GitHublore-hex/quill-router

quill-router

مستودع TrustedRouter.com للتمرير الآمن عبر البروكسي لنماذج LLM

1829منذ 1س 23دتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
عرض المستودع

TrustedRouter

CI Deploy Prod smoke Status Verifiable trust JavaScript SDK Python SDK License: BUSL-1.1

نماذج لغوية مشفّرة من الطرف إلى الطرف. واجهة برمجية واحدة. خصوصية قابلة للإثبات.

توقف عن القلق بشأن من يمكنه رؤية مطالباتك. اطلب من وكيل البرمجة الخاص بك نقل مشروعك، واختر درجة الخصوصية التي تريدها، واختر نموذجًا، وأدخل مفتاحًا — انتهى الأمر. نفس الواجهة البرمجية، أكثر من 30 نموذجًا، ومفتاح واحد. تعمل البوابة داخل enclaves عتادية ويمكنك التحقق تشفيريًا من أنها لا تسجّل بياناتك أبدًا.

انقل مشروعك إليها بمطالبة واحدة

الصق هذا في Codex أو Claude Code أو Cursor — فهو يقوم بالترحيل نيابةً عنك:```text Migrate this project to TrustedRouter, a privacy-first LLM router (https://trustedrouter.com). Repoint my LLM client to base_url "https://api.trustedrouter.com/v1" (or "https://api.trustedrouter.com" for the Anthropic SDK), read the key from the TRUSTEDROUTER_API_KEY env var, and keep all my existing calls working.

For a hard provider-side confidential-compute and end-to-end-encryption requirement, add {"provider": {"min_privacy": "confidential"}}. TrustedRouter fails closed when the selected model or provider cannot satisfy both controls.

Then tell me to sign up at trustedrouter.com, add a card, and paste my sk-tr key into TRUSTEDROUTER_API_KEY.

root@kitploit:~
ثمّ:

1. **اختر مستوى الخصوصية أو المنطقة** — استخدم
   `{"provider": {"min_privacy": "zdr"}}` للحصول على حد أدنى صارم لعدم الاحتفاظ بالبيانات، أو
   `{"provider": {"min_privacy": "confidential"}}` للحصول على حد أدنى أقوى للحوسبة
   السرية + التشفير من طرف إلى طرف. الأسماء المستعارة المريحة `trustedrouter/zdr` و
   `trustedrouter/e2e` (`trustedrouter/confidential`) تحدد تلك المجموعات. استخدم
   `trustedrouter/eu` مع `https://api-europe-west4.quillrouter.com/v1` لتوجيه
   يركز على الاتحاد الأوروبي.
2. **اختر نموذجًا** — أيًا من المئات، أو `trustedrouter/auto` للرجوع
   التلقائي عندما يكون تنوع المزودين أكثر أهمية من مرشح الخصوصية
   الأكثر صرامة.
3. **سجّل، أضف بطاقة، واحصل على مفتاحك** على https://trustedrouter.com.
4. **انطلق** — تمر الآن مطالباتك عبر مسار يمكنك التحقق منه.

<details>
<summary>هل تفضّل توصيله يدويًا؟</summary>```bash
# Codex
export OPENAI_BASE_URL="https://api.trustedrouter.com/v1"
export OPENAI_API_KEY="sk-tr-v1-..."

# Claude Code
export ANTHROPIC_BASE_URL="https://api.trustedrouter.com"
export ANTHROPIC_API_KEY="sk-tr-v1-..."
root@kitploit:~
# Any OpenAI SDK
client = OpenAI(base_url="https://api.trustedrouter.com/v1", api_key="sk-tr-v1-...")
  • احصل على مفتاح / خذ أموالي: https://trustedrouter.com
  • جرّبه أولاً (بدون تسجيل): https://trustedrouter.com/chat
  • التفاصيل التقنية (للمهووسين): https://trustedrouter.com/security
  • لماذا بنيناه: https://jperla.com/blog/attestation-is-all-you-need

للمهووسين: كيف تكون الخصوصية قابلة للإثبات

تعمل بوابة TrustedRouter داخل GCP Confidential Space. يوقّع النظام الأساسي قياسًا على الثنائي قيد التشغيل؛ أنت تقارن هذا التجزئة مع هذا المستودع. إذا تطابقت، فأنت تعلم — لا تفترض — أن الكود الذي يعالج استفساراتك هو الكود الذي يمكنك قراءته هنا، وأنه لا يكتب استفساراتك على القرص أبدًا.

تحقق بنفسك في 60 ثانية، بدون حساب:```bash NONCE=$(openssl rand -hex 16) curl -s "https://api.trustedrouter.com/attestation?nonce=$NONCE" | jq .

eat_nonce your nonce (replay-protected)

image_digest SHA-256 of the running container

pcrs boot-time platform measurements

Compare image_digest to the published artifact at

https://trustedrouter.com/security — match = the running code is this repo.

root@kitploit:~
| | نموذج الثقة |
|---|---|
| OpenRouter، المزودون المستضافون | "نحن لا نسجّل." سياسة لا يمكنك التحقق منها. |
| Portkey، Cloudflare AI Gateway | يسجّل كل شيء لأغراض المراقبة. |
| LiteLLM | استضافة ذاتية، لكن الوكيل (proxy) قيد التشغيل غير مُتحقَّق منه. |
| **TrustedRouter** | **مصدر مفتوح + إثبات العتاد (hardware attestation). تحقق من مسار الكود؛ فهو لا يسجّل شيئًا.** |

النطاق الصريح: الإثبات يُثبت أن الملف الثنائي قيد التشغيل هو الملف الثنائي المنشور على عتاد يمكنك تحديه بـ nonce. وهو لا يهزم دولة ذات وصول مادي للمضيف، ولا يُثبت أن الملف الثنائي مفتوح المصدر خالٍ من الأخطاء. مرتكز الثقة هو سلسلة إثبات معتمدة على العتاد من Google Confidential Computing. يتعامل المزودون (upstream) مع المطالبات وفق سياساتهم الخاصة — يتم نشر موقف كل مزود على صفحات النماذج.

</details>

---

## هيكل المستودع

يطبّق هذا المستودع عقد مستوى التحكم: تغطية المسارات، إدارة المصادقة/المفاتيح، دلالات دفتر الفوترة، بيانات تعريف الاستخدام، عدم تخزين المطالبات/المخرجات، أدوات تنقية Sentry، وتجريدات المزود. تنفيذ البوابة المُثبتة موجود في `quill-cloud-proxy`.

حدود الثقة: `api.trustedrouter.com` هو مسار المطالبات المُثبت ويجب أن ينهي TLS داخل Confidential Space. `trustedrouter.com` هو مستوى التحكم ويجب ألا يخدم أبدًا كبديل استدلال إنتاجي.

`api.quillrouter.com` يظل اسمًا مستعارًا دائمًا يعمل (نفس البوابة والشهادة المُثبتة)، لذلك تستمر التكاملات القائمة في العمل دون ترحيل.

## محلي```bash
uv sync
uv run pytest
uv run uvicorn trusted_router.main:app --reload
تنزيل الأداة

اختبار دخان شامل ضد مثيل قيد التشغيل:```bash TR_SMOKE_BASE_URL=http://127.0.0.1:18080/v1 uv run python scripts/smoke_e2e.py

root@kitploit:~
للإنتاج، اضبط `TR_SMOKE_BASE_URL=https://api.trustedrouter.com/v1` و
`TR_SMOKE_INTERNAL_TOKEN` إذا كانت مسارات البوابة الداخلية محمية برموز وصول.

اضبط مفاتيح المشغّل/المزوّد المحلية في:```text
/Users/jperla/claude/.quill_cloud_keys.private

هذا الملف لا يُضمَّن في المستودع أبدًا. من المتوقع أن يكون بنمط dotenv:```text ANTHROPIC_API_KEY=... OPENAI_API_KEY=... GEMINI_API_KEY=... CEREBRAS_API_KEY=... DEEPSEEK_API_KEY=... MISTRAL_API_KEY=... STRIPE_SECRET_KEY=... STRIPE_WEBHOOK_SECRET=... SENTRY_DSN=...

root@kitploit:~
نصيب التوزيع أيضاً أسماء مستعارة محلية مُستخدَمة بالفعل في بعض ملفات المشغّل: `CLAUDE_API_KEY` لـ Anthropic، و`CHATGPT_API_KEY` لـ OpenAI، و`STRIPE_KEY` بديلاً عن `STRIPE_SECRET_KEY`.

يختلف Vertex عن منصات المزوّدين الأخرى: عمليات النشر الإنتاجية على GCP تستخدم حساب خدمة Cloud Run أو Confidential Space ورموز وصول Google قصيرة العمر من metadata/ADC. لا تضع مفتاح Vertex طويل العمر في هذا الملف لمسار Vertex المدفوع مسبقاً من الطرف الأول؛ امنح حساب خدمة وقت التشغيل أذونات Vertex بدلاً من ذلك.

## الترخيص

رخصة Business Source License 1.1. المصدر عام بحيث يمكن لأي شخص قراءة الكود الفعلي خلف TrustedRouter وبنائه والتحقق منه، بما في ذلك ادعاءات الخصوصية والإثبات (https://trust.trustedrouter.com) — وهذا هو سبب وجوده هنا.
الاستخدام غير الإنتاجي (مراجعة أمنية، تدقيق، تقييم محلي) مجاني.
الاستخدام الإنتاجي يتطلب ترخيصاً تجارياً من Lore Hex Corp:
[email protected]. كل إصدار يتحول إلى رخصة Apache License 2.0
بعد أربع سنوات من النشر. الكود المنشور قبل 3 يوليو 2026 يبقى مرخصاً بموجب Apache-2.0.

## الإعدادات الأمنية الافتراضية

- محتوى المطالبات والمخرجات لا يُخزَّن أبداً.
- سجلات الاستخدام تحتوي على بيانات وصفية فقط.
- مفاتيح API تُخزَّن كتجزئات SHA-256 مملّحة مع معرّفات مفاتيح غير شفافة.
- مفاتيح المزوّدين المقدَّمة من المستخدم (BYOK) تُخزَّن كصفوف نص مشفّر بتغليف (envelope-encrypted)، وليس ككائن واحد في Secret Manager لكل مفتاح. في الإنتاج، يغلّف Cloud KMS مفتاح تشفير البيانات لكل مفتاح (DEK)؛ وتبقى المراجع الخارجية `env://...` مدعومة للمفاتيح التي يديرها المشغّل.
- تفويضات البوابة تتضمن `byok_cache_key` غير سري لأغلفة BYOK المشفّرة. البوابات الموثّقة تستخدمه للتخزين المؤقت للمفاتيح المفكوكة في الذاكرة فقط ولفترة TTL قصيرة؛ تدوير BYOK يغيّر المفتاح والحذف يوقف إرجاع الغلاف.
- مفاتيح BYOK الخام تُدخَل مرة واحدة فقط؛ استجابات المستوى العام/التحكّم تعرض تلميحاً قصيراً لأول/آخر حرف من المفتاح وبيانات وصفية مرجعية مشفّرة، ولا تعرض النص الصريح أبداً.
- الإنتاج يفشل مغلقاً (fail closed) دون رمز بوابة داخلي، وسر توقيع Stripe webhook موقع، وواجهة تخزين خلفية غير ذاكرية.
- تطبيقات المستوى التحكمي في الإنتاج لا تسجّل `/chat/completions` أو `/messages` أو `/responses` أو `/embeddings`؛ هذه تخص مستوى API الموثّق.
- Sentry مخصص لمستوى التحكم فقط ويقوم بتنظيف أجسام الطلبات، وترويسات المصادقة، ومفاتيح API، ومفاتيح BYOK، ورسائل المطالبات، ونص المخرجات. بوابة حدّ الفيضان من جانب العميل في Sentry تحدّ من تكرار المشكلات لكل بصمة إصبع وإجمالي الأحداث لكل عملية/نافذة، بحيث لا يمكن لتكامل واحد صاخب أن يستهلك ميزانية الأخطاء كلها مرة أخرى.
- لا يوجد أي إعداد لـ Sentry داخل البيئة الموثّقة (enclave).

## مراقبة البث (Broadcast Observability)

يمكن لمالكي مساحات العمل تكوين وجهات Broadcast عبر
`/v1/broadcast/destinations` أو في لوحة التحكم تحت قسم Broadcast. الوجهات المدعومة هي PostHog وخطافات الويب OTLP JSON. Broadcast يعتمد على البيانات الوصفية فقط افتراضياً: النموذج، المزوّد، عدد الرموز، زمن الاستجابة، التكلفة، نوع التوجيه، المنطقة، والبيانات الوصفية المخصصة للتتبع. محتوى المطالبات/المخرجات يُصدَّر فقط عندما تقوم وجهة ما بتمكين `include_content` صراحةً؛ تلك الوجهات المشفّرة المفعّلة للمحتوى تُرجَع فقط إلى البوابة الموثّقة، وليس إلى استجابات الإدارة العادية. عمليات التسليم القائمة على البيانات الوصفية فقط تُكتب أولاً إلى صندوق صادر Broadcast دائم ثم تُفرَّغ بشكل غير متزامن عبر `/internal/broadcast/drain`، لذلك لا يؤدي انقطاع PostHog/webhook إلى حجب الاستدلال أو فقدان بيانات وصفية مسوّاة بالفعل عند إعادة تشغيل العملية.

## المراقبة الاصطناعية

لدى TrustedRouter مستوى منفصل للمراقبة الاصطناعية لتوفر الخدمة العام. عمال المراقبة الاصطناعية يعملون خارج الـ enclave، ويرسلون طلبات حقيقية صغيرة إلى واجهة API الموثّقة العامة، ويخزّنون بيانات وصفية فقط. أسماء نماذج المراقبة هي:

- `trustedrouter/free`: مجموعة مجانية بأسلوب OpenRouter. مفيد للمستخدمين، وليس إشارة على اتفاقية مستوى الخدمة (SLA).
- `trustedrouter/cheap`: أرخص مجموعة مدفوعة مع تنوع في المزوّدين.
- `trustedrouter/eu`: مجموعة مزوّدين تركّز على أوروبا. تفضّل المزوّدين الأوروبيين، والقابلين للنشر في مناطق الاتحاد الأوروبي، والمهتمين بالخصوصية، خاصة عند استخدامها مع `https://api-europe-west4.quillrouter.com/v1`. هذه سياسة توجيه وليست ضماناً شاملاً لموقع البيانات.
- `trustedrouter/monitor`: مجموعة توفر داخلية لفحوصات PONG والاحتياط. تظهر في الكتالوج للشفافية، لكن التفويض يتطلب مفتاح `TR_SYNTHETIC_MONITOR_API_KEY` المُعدّ؛ المفاتيح العادية تتلقى 403.

يجب تشغيل العمال من `us-central1` و`europe-west4`، باستخدام مساحة عمل/مفتاح مخصص `trustedrouter-synthetic-monitoring` مع سقوف إنفاق صارمة وإعادة تعبئة تلقائية. العينات الخام صفوف Bigtable ملحقة فقط (append-only)؛ صفحات الحالة العامة تقرأ ملخصات مدمجة معروضة في `/status` و`/status.json` و`/status/history?window=5m|24h|daily`. التوليدات الاصطناعية تستخدم وسم التطبيق `TrustedRouter Synthetic` وتُستبعَد من تحليلات العملاء/التطبيقات.

قياس المزوّدين يستخدم صنفين مستقلين من الفحوصات:

- فحوصات PONG قصيرة تغطي الكتالوج النشط الكامل بشكل عشوائي وتقيس التوفر، وTTFB، وTTFT، وانحراف واجهة API العلوية.
- دفق مستمر من 512 رمزاً يغطي أهم 200 مسار نموذج/مزوّد بتناوب حتمي من `us-central1`. يقيس الرموز الناتجة في الثانية بعد الرمز الأول. يعمل في وظيفة Cloud Run Job منفصلة، لذلك لا يمكن للتدفقات البطيئة تأخير فحوصات التوفر. فشل الفحوصات الطويلة لا يُحتسب أبداً ضد توفر المزوّد أو تنبيهات انحراف واجهة API.

الجدول الحالي المحدد بدقيقتين يعطي كل مسار مستمر حوالي 25 عينة أسبوعياً و108 خلال 30 يوماً. تحسب CI تقدير إنفاق كامل للسقف من الكتالوج الحي وتفشل إذا تجاوز السقف الشهري المُراجع.

تفصل صفحة الحالة صنفي SLO عن الخدمة بدلاً من مزجهما مع سلوك المزوّد العلوي:

- `router_core`: واجهة API الموثّقة قابلة للوصول، تفويض المفاتيح يعمل، مرشحو التوجيه/الاحتياط متاحون، والتسوية/الاسترداد دائم.
- `control_plane`: لوحة التحكم، واجهة الفوترة، المفاتيح، الاعتمادات، التوثيق، الثقة، وأسطح الحالة.

حراس النشر وتنبيهات معدل الاحتراق الداخلي تُضبط افتراضياً على `router_core`. فشل المزوّد فقط يُقاس لكل مزوّد على `/status` و`/leaderboard`؛ ولا يستهلك ميزانية أخطاء router-core عندما يبقى الاحتياط متاحاً.

## التموضع العام

- التسعير: الاستخدام المدفوع مسبقاً وBYOK يُتتبَّع كعدد صحيح من الميكرودولارات، وليس دولارات بفاصلة عائمة، بحيث تبقى تكاليف الرموز الصغيرة قابلة للتدقيق في دفتر الأستاذ.
- هدف التوفر: `trustedrouter/auto` هو اسم نموذج دردشة حقيقي في استدلال مستوى التحكم المحلي/الاختباري، ويتحول إلى المزوّد التالي المُعدّ عند فشل المزوّد العلوي. `trustedrouter/eu` يفضّل مجموعة المزوّدين المركزة على أوروبا، و`trustedrouter/zdr` يفرض طبقة مزوّد خالية من الاحتفاظ مع Anthropic أولاً، و`trustedrouter/e2e` يفرض مسارات سرية + E2EE مع Tinfoil أولاً. طلبات الدردشة تحترم أيضاً عوامل تصفية توجيه `models` و`provider` بأسلوب OpenRouter (`order`، `only`، `ignore`، `allow_fallbacks`، `min_privacy`، `data_collection`، و`sort`) بحيث يمكن للعملاء طلب سلاسل احتياط صريحة أو تفضيلات مزوّد. `min_privacy="confidential"` هو شرط صارم من جانب المزوّد للحدّ من الحوسبة السرية + E2EE ويفشل مغلقاً؛ الأسماء المستعارة للقيمة `e2e` و`e2ee` تحدد نفس الطبقة بدلاً من التراجع إلى مسار أضعف.
- الفوترة: الاعتمادات المدفوعة مسبقاً وBYOK أولاً؛ لا يُشترط أي اشتراك.
- الثقة: برمجيات مفتوحة المصدر مستضافة، مع نشر التزام مصدر API الجاري، ومرجع الصورة، وبصمة الصورة، وسياسة الإثبات في `trust.trustedrouter.com`.
- التسجيل: التسجيل بالبريد الإلكتروني ينشئ مفتاح إدارة لمرة واحدة لمساحة العمل.
- المحفظة/العملات المشفرة: الدفع بالعملات المستقرة يتم عبر طريقة الدفع Crypto في Stripe Checkout عند الطلب. يبقى Checkout بالبطاقة/الافتراضي هو المسار الافتراضي.

## هدف الحجم

الهدف هو دعم حجم بنية OpenRouter:

- تريليون رمز يومياً، أي حوالي 11.6 مليون رمز في الثانية في المتوسط خلال اليوم.
- من 1 إلى 4 ملايين حساب مطوّر.
- أكثر من 300 نموذج قابل للتوجيه بنشاط.
- أكثر من 60 مزوّداً.
- تكلفة توجيه عالمية تنافسية مع الموجّهات الموزّعة على الحافة.

النشر الإنتاجي الحالي **لا** يحقق هذا الهدف بعد. يشغّل مستوى التحكم في أربع مناطق GCP خلف موازن تحميل عالمي مع Serverless NEGs لكل منطقة، مع ثلاث مناطق API موثّقة حية حتى يتم نشر مجموعات إقليمية موثّقة إضافية. السعة تتوسع أفقياً مع دخول المزيد من المجموعات الموثّقة؛ الصحة والثقة والفوترة وتوافق SDK في حالة استقرار.

يعتمد حجم الطلبات بشكل كبير على متوسط حجم التوليد. عند تريليون رمز يومياً:

| متوسط الرموز/طلب | طلبات/يوم | متوسط معدل الطلبات |
| ---: | ---: | ---: |
| 1,000 | 1.0B | 11.6k rps |
| 2,500 | 400M | 4.6k rps |
| 10,000 | 100M | 1.2k rps |

يمكن تطوير البنية إلى هذا الحجم، لكن فقط إذا تجنّب المسار الساخن الاختناقات العالمية لكل طلب. وهذا يعني مجموعات بوابات عديمة الحالة إقليمية، ومجموعات مزوّدين إقليمية، وعقود حصص مجزأة، وكتابات بيانات وصفية ملحقة فقط، وتجميعاً غير متزامن.

## زمن الاستجابة الحالي

تم قياسه من هذا الجهاز التطويري إلى واجهة API الموثّقة المركزية في GCP `us-central1` في 2 مايو 2026:

| الفحص | p50 | p95 | ملاحظات |
| --- | ---: | ---: | --- |
| رفض `/v1/chat/completions` غير المصادق عليه | 174 ms | 184 ms | يشمل DNS وTCP وTLS العام ومعالجة طلبات الـ enclave. |
| اتصال TCP | 55 ms | 59 ms | مسار الشبكة إلى `us-central1` من هذا الجهاز. |
| اكتمال مصافحة TLS | 112 ms | 124 ms | شهادة ACME العامة تنتهي داخل الـ enclave. |
| `/attestation` | 1.06 s | 1.12 s | يشمل توليد رمز إثبات GCP، لذلك لا يمثل تكلفة التوجيه العادية. |

التكلفة الشبكية المركزية أعلى بكثير من التكلفة المعلنة على الحافة لدى OpenRouter، لكن زمن استجابة النموذج يهيمن عادة على الطلبات التفاعلية. الخطوة الأولى للتوسع الإنتاجي يجب أن تكون متعددة المناطق بدلاً من بناء حافة عالمية مخصصة فوراً.

## شكل التوسع الأفقي

صُمم مسار الإنتاج للتوسع بإبقاء بوابة المطالبات عديمة الحالة:

- يمكن نسخ مثيلات `api.trustedrouter.com` خلف TCP passthrough. تقوم بالتفويض والحجز والتسوية عبر مستوى التحكم، لكن بايتات المطالبات لا تغادر المسار الموثّق أبداً.
- يخزّن Spanner حالة مستوى التحكم والفوترة المتناسقة بقوة: المستخدمون، ومساحات العمل، والمفاتيح، وبيانات BYOK الوصفية، وتكرارات أحداث الدفع، والأرصدة، والمجاميع، والحجوزات النشطة، ونافذة تدقيق نهائية للطلبات مدتها 30 يوماً.
- يخزّن Bigtable بيانات النشاط الوصفية عالية الحجم المحدودة، مفتاحية بمساحة العمل والتاريخ. نشاط المستخدمين ومعايير المزوّدين تُحتفظ بها 30 يوماً، والعينات الاصطناعية الخام 14 يوماً، وملخصات الحالة المدمجة 24 شهراً. المطالبات والمخرجات ووسائط استدعاء الأدوات لا تُخزَّن.
- التحقق من مفاتيح API يستخدم تجزئة بحث عالية الإنتروبيا لقراءات نقطية؛ ولا يمسح المفاتيح.
- حدود المعدل تُطبَّق قبل معالجات المسار وتستخدم المخزن المُعدّ، لذلك تكون العدادات الإنتاجية مشتركة عبر مثيلات Cloud Run.

عند حركة بحجم OpenRouter، لا تكون الاختناقات التالية في ثنائي الـ enclave؛ بل في مسار الفوترة/التفويض المتزامن. البنية تحتاج إلى حجوزات مجزأة، ومجموعات Bigtable إقليمية، وحدود حافة من Cloud Armor، ونسخ متعددة من البوابة قبل السماح لحركة المرور العامة بالتصاعد.

## خطة تعدد المناطق

تعدد المناطق ممكن مع الحفاظ على حدود الثقة، لكن يجب تنفيذه بحذر:

- تشغيل مجموعات بوابات موثّقة دافئة مستقلة في `us-central1` و`us-east4` و`europe-west4` على الأقل، ثم آسيا بعد أن تصبح المناطق الثلاث الأولى مستقرة ومملة.
- إبقاء مفاتيح TLS الخاصة داخل كل حمل عمل Confidential Space إقليمي.
- نقل ACME من TLS-ALPN-01 إلى DNS-01 أو تدفق تحدي آخر يعمل مع نقاط نهاية إقليمية متعددة لنفس اسم المضيف. تدفق TLS-ALPN-01 الحالي مناسب لمنطقة واحدة، لكن سجل DNS عام يمكن أن يوجّه التحديات إلى النسخة الخاطئة.
- الإبقاء على أسماء مضيفين إقليميين مثل `api-us-central1.quillrouter.com` و`api-us-east4.quillrouter.com` و`api-europe-west4.quillrouter.com` لإثبات حتمي واختبارات دخان وتجاوز فشل SDK.
- وضع `api.trustedrouter.com` خلف DNS زمني/جيوغرافي أو TCP passthrough لا ينهي TLS. تبقى بروكسة Cloudflare البرتقالية غير متوافقة مع ادعاء الثقة لمسار المطالبات.
- التفويض عبر عقود حصص إقليمية، وليس معاملة Spanner عالمية متزامنة لكل طلب.
- كتابة بيانات وصفية للتوليد إلى مجموعات Bigtable إقليمية، ثم تجميعها في عروض نشاط عالمية بشكل غير متزامن.
- إبقاء توجيه المزوّدين إقليمياً، مع قواطع دوائر خاصة بالمزوّدين، وسياسة احتياط، وحدود معدل لكل مزوّد.

القاعدة التصميمية الأساسية: انقطاع إقليمي يمكن أن يفشل مغلقاً أو يوجّه إلى منطقة موثّقة أخرى، لكنه لا يجوز أبداً أن يتدهور بصمت إلى معالج مطالبات غير موثّق.

## هدف الأربع تسعات لـ Router-Core

الهدف هو SLO داخلي، وليس SLA تعاقدياً. 99.99% تسمح بحوالي 52 دقيقة و36 ثانية من التوقف سنوياً. حالة الحالة العامة تسمي هذا الرقم هدفاً حتى يتوفر 30-60 يوماً على الأقل من توفر router-core المُقاس بنسبة 99.99%.

توفر router-core يعني:

- TLS الموثّق قابل للوصول؛
- التحقق من مفتاح API وتفويض البوابة يعملان؛
- يتم إرجاع مرشحي المسار ويمكن للاحتياط اختيار مزوّد سليم؛
- التسوية/الاسترداد دائمة أو قابلة للإصلاح بأمان؛
- لا يتراجع أي طلب مطالبة إلى مسار غير موثّق.

مسارات الكود التي تدعم هذا الطريق اليوم هي:

- `/status.json` يصدّر `slo_classes.router_core` و`slo_classes.control_plane` وتنبيهات معدل الاحتراق لنوافذ 5m و1h و6h و24h.
- حارس النشر يقرأ `router_core` افتراضياً، لذلك لا تؤدي انقطاعات المزوّد فقط إلى تراجع تلقائي لنشر مستوى التحكم.
- من المتوقع أن تعيد SDKs المحاولة عند فشل الاتصال و502/503/504 عبر نقاط نهاية موثّقة إقليمية قبل إظهار الفشل.
- كتابات نشاط Bigtable قابلة للإصلاح من صندوق التسوية الدائم. التسوية تستخدم معرّفات توليد حتمية، لذلك تؤدي إعادة المحاولة إلى الكتابة فوق نفس صفوف الفهرس ولا يمكنها فرض رسوم مزدوجة أو تكرار النشاط.

قبل وصف الأربع تسعات كتوفر مُقاس وليس هدفاً، اشترط ثلاث مناطق GCP موثّقة دافئة، واختبار استدعاء مُجرّب، واختبارات فوضى لـ router-core، ونشراً إقليمياً مرحلياً مع بوابات تراجع، و30 يوماً على الأقل من توفر router-core المُقاس عند 99.99% أو أعلى.

## عقد البوابة الداخلية

يمكن لمستوى API الموثّق حجز وتسوية الاستخدام دون إرسال محتوى المطالبات أو المخرجات إلى مستوى التحكم:

- `POST /v1/internal/gateway/authorize`: يتحقق من تجزئة مفتاح API، ويحجز الاعتمادات/حدود المفاتيح، ويعيد بيانات توجيه المزوّد/BYOK الوصفية، ومرشحي المسار المشتقة من عوامل تصفية طلب `model` و`models` و`provider`، ونقاط النهاية الإقليمية المُعدّة.
- `POST /v1/internal/gateway/settle`: يسوّي الاستخدام الناجح ويضيف صفوف نشاط وصفية فقط.
- `POST /v1/internal/gateway/refund`: يحرر الحجوزات بعد فشل المزوّد أو انقطاع اتصال العميل.

عيّن `TR_INTERNAL_GATEWAY_TOKEN` خارج التطوير المحلي.

## التخزين الإنتاجي

يستخدم الإنتاج:```text
TR_STORAGE_BACKEND=spanner-bigtable
TR_SPANNER_INSTANCE_ID=trusted-router
TR_SPANNER_DATABASE_ID=trusted-router
TR_BIGTABLE_INSTANCE_ID=trusted-router-logs
TR_BIGTABLE_GENERATION_TABLE=trustedrouter-generations

scripts/deploy-gcp.sh يفعّل واجهات برمجة التطبيقات، وينشئ جدول Spanner
tr_entities، وينشئ جدول الأجيال في Bigtable، وينشر Cloud Run،
ويربط بيانات الثقة الحالية في GCP بصفحة الثقة.

الفوترة

POST /v1/billing/checkout ينشئ جلسة Stripe Checkout عندما
يتم تكوين TR_STRIPE_SECRET_KEY، وإلا فإنه يُرجع استجابة محلية وهمية
حتمية. تضيف خطافات Stripe الأرصدة إلى مساحات العمل بشكل تكافؤي باستخدام
معرّف مساحة العمل في بيانات Checkout الوصفية. تُسوّى مدفوعات البطاقات فورًا.
تستخدم مدفوعات ACH {"payment_method":"ach"} ولا تُضاف الأرصدة إلا بعد أن يرسل Stripe
checkout.session.async_payment_succeeded؛ إتمام Checkout أثناء معالجة الخصم
لا يمنح الأرصدة أبدًا. يتبع POST /v1/billing/portal نفس
نمط Stripe-أو-الوهمي لإدارة الفوترة.

بالنسبة إلى Checkout بالعملات المستقرة، أرسل {"payment_method":"stablecoin"}. عندما
تكون TR_STABLECOIN_CHECKOUT_ENABLED=true، يتم إنشاء جلسة Checkout باستخدام
أسلوب الدفع crypto من Stripe، وما تزال تضيف الرصيد إلى مساحة العمل من الخطاف الموقّع
checkout.session.completed.

يستخدم ACH أسلوب الدفع us_bank_account من Stripe Checkout. جدول رسوم المعالجة
الافتراضي هو 0.8٪ بحد أقصى 5 دولارات، ويمكن تجاوزه باستخدام
TR_STRIPE_ACH_FEE_BASIS_POINTS وTR_STRIPE_ACH_FEE_FIXED_CENTS
وTR_STRIPE_ACH_FEE_MAX_CENTS. تظل التعبئة التلقائية للبطاقة المحفوظة مقتصرة على البطاقات فقط.