Governance · للقراءة فقط بالبناء

السياسة كود.
لا موجّه.

يتعامل SQAI مع النموذج على حقيقته: عميل غير موثوق. قوائم السماح ثابتة في الكود عند بناء الأداة، وتُفحص داخل العملية قبل أي تنفيذ، وغائبة عن بروتوكول النموذج. لا شيء يمكن إقناع النظام بالتخلي عنه.

4,574قدرة يكشفها العقد — كلها للقراءة فقط
6منح في سياسة تطبيق واحد
1طلب مكتوب بأنواع يُنفَّذ

IIالتضييق كاملاً

ثلاث طبقات. كل منها تحذف فقط.

كل إجابة تمر بالاحتواء ذاته. عقد مثبّت بتجزئة يحدد ما هو موجود. سياستك تضيّقه إلى ما هو مسموح. طلب واحد مكتوب بأنواع يجب أن يقع داخل كليهما.

  1. 01

    العقد

    4,778 قدرة في وقت التشغيل المثبّت؛ 4,574 مكشوفة للوكلاء، كلها للقراءة فقط. الـ204 الأخرى مستبعدة كلياً — بالنسبة للنموذج، هي غير موجودة.

  2. 02

    سياستك

    ثلاث قوائم سماح — allowedSources وallowedFields لكل مصدر وallowedFunctions — ثابتة عند استدعاء createSQAI(). الدوال تُعيَّن افتراضياً على "all-readonly".

  3. 03

    طلب واحد

    خطة مكتوبة بأنواع، تُتحقق منها مقابل العقد ثم تُفحص مقابل السياسة داخل العملية — قبل التنفيذ، لا بعده.

الطبقة 01 · العقد4,574 مكشوفة · للقراءة فقط
الطبقة 02 · سياستك6 منح
allowedSourcesorders
allowedFieldsregionrevenueunit_price
allowedFunctionsstats.medianfinance.npv
الطبقة 03 · طلب واحدخطة واحدة مكتوبة بأنواع

QuerySpec v1 · median(revenue) by region · policy ✓

contract_hash sha256:79f1c5a6c7164e7e9e1750e70a5c03292fa87eb52d8148a740c06695924be9a1

تضييق فقط.

يمكن للسياسة تقليص النطاق؛ لا شيء يوسّعه. تسمية قدرة لا يكشفها العقد يجعل createSQAI() يُطلق unsupported_operation عند البناء — يفشل التطبيق قبل أن يتصل به أي وكيل.

وإدخال أداة النموذج لا يحمل أي حقل allowed*. السياسة ليست في البروتوكول، فلا شيء يمكن لموجّه — أو حقن — توسيعه.

IIIالسياسة في الكود

تُكتب مرة. تُفحص في كل مرة.

معظم أدوات الحوكمة تجلس بجانب مسار البيانات وتراقبه. سياسة SQAI تجلس داخل المسار: ثلاث قوائم سماح في المُنشئ، مُطبَّقة داخل العملية قبل كل تنفيذ.

const sqai = createSQAI({
  sources: { orders },

  // policy — fixed here, invisible to the model
  allowedSources: ['orders'],
  allowedFields: {
    orders: ['region', 'revenue', 'unit_price'],
  },
  // functions default: 'all-readonly'
  allowedFunctions: [
    'stats.median', 'finance.npv',
  ],
});
allowedSources
المصادر المسجّلة التي يجوز للخطة تسميتها. أي شيء آخر يُعيد policy_denied_source.
allowedFields
الأعمدة، لكل مصدر. خطة تلمس أي عمود آخر تُعيد policy_denied_field.
allowedFunctions
الدوال للقراءة فقط التي يجوز للخطة استدعاؤها — الافتراضي "all-readonly". أي شيء خارجها يُعيد policy_denied_function.
tool input
لا يحمل أي حقل allowed*. النموذج لا يرى السياسة قط، فلا يمكنه إرسال سياسة أوسع.

سجل الرفض

الرفوض بيانات لا استثناءات. كل رفض يحمل رمزاً ثابتاً يقرأه الوكيل — ولا شيء منها قابل لإعادة المحاولة، فلا تستطيع حلقة استنزاف السياسة.

عند البناء

unsupported_operation

السياسة تُسمّي قدرة لا يكشفها العقد. يُطلق البناء استثناءً؛ يفشل التطبيق قبل اتصال أي وكيل.

عند وقت الطلب

policy_denied_source

الخطة تُسمّي مصدراً خارج allowedSources.

policy_denied_field

الخطة تلمس عموداً خارج allowedFields لذلك المصدر.

policy_denied_function

الخطة تستدعي دالة خارج allowedFunctions.

source: "sqai"كل رفض للسياسة يصل كنتيجة منظّمة غير قابلة لإعادة المحاولة. الأدوات لا تُطلق استثناءات أبدًا.

IVالحضانة

النتائج محتجزة، لا مخزّنة.

لا تصل مجموعة النتائج الكاملة إلى سياق النموذج أبدًا. تُودَع في مخزن محكوم ويُشار إليها بمعرّف؛ يتلقى النموذج عيّنة معلنة.

مخزن النتائج

مخزن محكوم · TTL 15 دقيقة

result_id
16 بايت عشوائية، base64url. غير قابلة للتخمين، وليست تسلسلية.
authorization
مقيّدة بالمستأجر. يتلقى المستأجر الخاطئ result_not_found — لا يؤكد المخزن الوجود أبدًا.
ttl
15 دقيقة. بعدها تُحذف المدخلة نهائيًا.
capacity
256 نتيجة كحدٍّ أقصى — 64 ميغابايت إجمالًا، 16 ميغابايت لكل مستأجر.

المخزن يحتفظ بالنتيجة. النموذج يقرأ عيّنة ويُفصح عن ذلك.

حدود سياق النموذج

defaultLimit100حد الصفوف المطبّق حين لا تحدد الخطة قيمة
maxExecutionRows1,000السقف الصارم لعدد الصفوف التي تُعيدها أي عملية تنفيذ
maxRowsToModel25أقصى عدد صفوف يصل إلى سياق النموذج
maxCellsToModel250أقصى عدد خلايا تصل إلى سياق النموذج
maxBytesToModel32,000أقصى حجم بيانات نتائج يتلقاه النموذج بالبايت

الاقتطاع معلَن دائمًا في النتيجة. لا تُعرض صفوف جزئية أبدًا — الصف يصل كاملًا أو لا يصل.

زاوية التدقيق

17%من المؤسسات قادرة على إعادة بناء تسلسل استدعاءات أدوات الوكيل بعد وقوعها

تستلزم المادة 30 من GDPR والبند SOC 2 CC7.2 تلك السجلات تحديدًا.

كل إجابة من SQAI تحمل بيانات إعادة بنائها الخاصة:

plan_hash · invocation_hash · computation_hash · contract_hash

إعادة التشغيل بحث، لا تحقيق. آلية إعادة التشغيل

VIأسئلة

الحوكمة، بشكل مباشر

هل يستطيع النموذج توسيع صلاحياته بنفسه؟

لا. السياسة ثابتة عند استدعاء createSQAI() وتُفحص داخل العملية قبل التنفيذ. لا يحمل مدخل أداة النموذج أي حقل allowed*، فلا يوجد في البروتوكول ما يمكن توسيعه — أي طلب خارج السياسة يُعيد نتيجة policy_denied منظّمة.

هل القراءة فقط علامة يمكن تجاوزها؟

ليست علامة. العقد المكشوف يضم 4,574 قدرة للقراءة فحسب؛ مسار الكتابة غائب بالبناء، لا معطَّل. قد يغيّر حقن التعليمات ما يطلبه النموذج — لكنه لا يستطيع إضافة قدرات إلى عقد مثبَّت.

ما السجلات المتاحة لمراجعة المادة 30 من GDPR أو SOC 2 CC7.2؟

كل نتيجة تحمل plan_hash وinvocation_hash وcomputation_hash وcontract_hash. يمكن إعادة تشغيل الحساب الدقيق والتحقق منه مقابل تلك التجزئات في أي وقت لاحق.

أين تُخزَّن بيانات النتائج بعد الاستعلام؟

في مخزن نتائج مرخَّص للمستأجر: المعرّفات 16 بايت عشوائية، تنتهي المدخلات بعد 15 دقيقة، والمخزن محدود بـ 64 ميغابايت إجمالًا و16 ميغابايت لكل مستأجر. يتلقى سياق النموذج 25 صفًا و250 خلية و32,000 بايت كحدٍّ أقصى — مع إعلان الاقتطاع دائمًا.

VIIالتالي

احكم السيطرة على الإجابة.

أحضر مخططًا وسؤالًا عن الامتثال. سنريك السياسة التي تجيب عنه.