هيكل تكامل Recorder OpenClaw
الجمهور: المهندسون الذين يقومون بتنفيذ أو التحقق من اقتران OpenClaw بـ Recorder.
جدول المحتويات
- نظرة عامة تنفيذية
- عقد التخطيط
- سياسة التحرير والحمولة المحدودة
- سياسة فجوة التسلسل
- وضعيات التوقيع والتحقق
- تغطية التركيب والاختبار
- الحدود الحالية والخطوات التالية
نظرة عامة تنفيذية
يتكامل Recorder مع تدفقات OpenClaw من خلال محول إدخال مدفوع بواسطة تركيب حتمي في system-tests. يسجل التكامل أحداث وكيل OpenClaw كأغلفة Recorder باستخدام سياسة تخطيط ذات إصدار، ومعالجة فجوات التسلسل بشكل صريح، والتحقق من الفشل المغلق عبر LocalRecorderAdapter.
F:system-tests/tests/suites/integration_openclaw.rs L1-L220
عقد الخرائط
تتوافق أحمال أحداث OpenClaw مع أظرف Recorder بموجب هذا العقد:
- تعيين نوع الحدث:
openclaw.<stream>.<phase_or_default>. - Mapping version marker: envelope payload includes
mapping.mapping_version = "openclaw_recorder_v1". - Deterministic IDs: envelope IDs are derived from
معرفات حتمية: يتم اشتقاق معرفات الظرف من
(run_id, seq, stream, session_key)باستخدام تحويل SHA-256 إلى شكل UUIDv7. - تتبع الارتباط: يطابق
runIdفي OpenClawtrace_idفي Recorder.
F:system-tests/tests/suites/integration_openclaw.rs L224-L387
سياسة التحرير والحمولة المحدودة
لتقليل مخاطر الكشف واستنفاد الموارد في الأدلة غير القابلة للتغيير:
- Sensitive keys are redacted using hash-only summaries under
تم حذف المفاتيح الحساسة باستخدام ملخصات تعتمد على التجزئة فقط تحت
openclaw_redaction_v1. - Long strings are truncated at
MAX_STRING_CHARSwith deterministic تُقطع السلاسل الطويلة عندMAX_STRING_CHARSمع ملخصات تجزئة + بيانات معاينة محددة. - Oversized JSON payload fragments are bounded at
تجزئة بيانات JSON الكبيرة محددة عند
MAX_EVENT_DATA_BYTESمع بيانات وصفية للتجزئة حتمية. - Session keys are stored as SHA-256 digests (
session_key_sha256) in تُخزن مفاتيح الجلسة كملخصات SHA-256 (session_key_sha256) في بيانات التعريف الخاصة بالحزمة. - Sanitization counters (
redacted_fields,truncated_fields) are stored يتم تخزين عدادات التطهير (redacted_fields, truncated_fields) من أجل إمكانية التدقيق.
F:system-tests/tests/suites/integration_openclaw.rs L62-L100 F:system-tests/tests/suites/integration_openclaw.rs L245-L387 F:system-tests/tests/suites/integration_openclaw.rs L656-L809
سياسة فجوة التسلسل
تم تنفيذ والتحقق من وضعين:
record_anomaly: recordopenclaw.integration.sequence_gapenvelope andrecord_anomaly: سجلopenclaw.integration.sequence_gapالظرف واستمر في الاستيعاب.strict_fail: الفشل المغلق على الفور عند وجود فجوة والتوقف عن الاستيعاب.
F:system-tests/tests/suites/integration_openclaw.rs L390-L446 F:system-tests/tests/suites/integration_openclaw.rs L573-L658
وضعيات التوقيع والتحقق
تجري اختبارات التكامل كلاهما:
- مسار غير موقع: صالح مع تحذيرات (تم تخطي التحقق من التوقيع).
- مسار موقّع: التحقق الصارم من جذر الثقة باستخدام TrustPolicy::AllMustSign.
F:system-tests/tests/suites/integration_openclaw.rs L498-L572
تغطية التركيب والاختبار
تغطية تكامل OpenClaw تشمل حالياً:
- تدفق إدخال والتحقق من محاكاة البوابة.
- تدفق استرجاع البيانات والتحقق بأسلوب CLI.
- شذوذ فجوة التسلسل وسلوكيات الفشل الصارمة.
- فحوصات حذف الحقول الحساسة.
- فحوصات حدود الحقل المساعد الكبير.
- فحوصات استقرار تجزئة إعادة التشغيل الحتمية.
المرفقات:
system-tests/tests/fixtures/openclaw_gateway_mock_events.jsonsystem-tests/tests/fixtures/openclaw_cli_mock_events.json
مدخلات السجل: F:system-tests/test_registry.toml L1-L260
الحدود الحالية والخطوات التالية
الحدود الحالية:
- Mapping is implemented in system-tests harness code, not yet extracted as a يتم تنفيذ التعيين في كود نظام الاختبارات، ولم يتم استخراجه بعد كحزمة تكامل للإنتاج.
- Redaction uses key-name policy and deterministic summaries; context-aware تستخدم التحرير سياسة اسم المفتاح والملخصات الحتمية؛ تصنيف الحقول المدرك للسياق هو امتداد مستقبلي.
الخطوات الطبيعية التالية:
- استخراج المكون إلى وحدة/صندوق تشغيل
recorder-openclaw-adapter. - إضافة مجموعة أدوات اختبار لتدفقات الفوضى المتعلقة بالمهلة/الاحتياطي من OpenClaw.
- إضافة مكونات السياسة لملفات الحذف الخاصة بالقوائم المسموح بها/الممنوعة.