نموذج تهديد Arxi
نظرة عامة
Arxi هو طبقة بيانات الأدلة الحتمية لأنظمة الحوكمة. يقوم باستيعاب أحداث الحدود غير المغلقة، ويقوم بإغلاقها في مظروفات متسلسلة بالهاش، ويحتفظ بها في مقاطع قابلة للإضافة فقط، ويصدر حزمًا قابلة للتحقق لفحوصات غير متصلة بالإنترنت.
Arxi يتكون من:
- Core contracts (
arxi-core): identity, hash/signature abstractions, العقود الأساسية (arxi-core): الهوية، تجريدات التجزئة/التوقيع، أنواع الفلتر/المؤشر، جبر الأخطاء. - Envelope model (
arxi-envelope): canonical encoding, envelope/segment/bundle نموذج الظرف (arxi-envelope): الترميز القياسي، أنواع الظرف/الجزء/الحزمة، جبر نتائج التحقق. - Decision Gate integration adapter (
arxi-decision-gate-adapter): deterministic MCP/runpack transcript mapping, runpack integrity policy, and موصل تكامل Decision Gate (arxi-decision-gate-adapter): خريطة نصوص MCP/runpack الحتمية، سياسة سلامة runpack، و تنفيذ سياسة حجب النصوص/الحدود. - Recorder runtime (
arxi-recorder): ingest validation, segment lifecycle, وقت تشغيل المسجل (arxi-recorder): التحقق من الإدخال، دورة حياة المقطع، بناء الحزم، التحقق غير المتصل، تنفيذات المزود/المحول. - Storage backends (
arxi-store): SQLite and in-memory implementations of واجهات التخزين (arxi-store): تنفيذات SQLite وذاكرة الوصول العشوائي لمخازن الظرف، المرفق، والقطعة. - Sidecar config authority (
arxi-sidecar-config): canonical sidecar config model, fail-closed validation, and deterministic config projection artifacts سلطة تكوين Sidecar (arxi-sidecar-config): نموذج تكوين sidecar القياسي، التحقق من صحة الفشل المغلق، وقطع عرض التكوين الحتمية (schema/compat/example/docs) المستخدمة في توليد العقود وبوابات CI. - Sidecar service surface (
arxi-sidecar): HTTP/JSON runtime exposing recorder/query/bundle/config workflows over Unix/TCP with auth/bounds/ ضوابط الاستقرارية. - CLI surface (
arxi-cli): local operator commands for record/query/bundle/ واجهة سطر الأوامر (arxi-cli): أوامر المشغل المحلية لسير عمل التسجيل/الاستعلام/الحزمة/الإعدادات/الطبيب بالإضافة إلى إدخال مرفق Decision Gate.
Arxi الآن يدعم كل من سير العمل المحلي وواجهة خدمة HTTP مدمجة. تظل الأغطية الخارجية (مثل جسور MCP أو بوابات API) ضمن النطاق كحدود معادية.
الوثائق ذات الصلة
- نظرة عامة على المستودع:
README.md. - وضع الأمان والمتطلبات:
Docs/Standards/codebase_engineering_standards.md. - Architecture references: Docs/architecture/arxi_system_architecture.md, Docs/architecture/arxi_evidence_model_and_integrity_architecture.md, Docs/architecture/arxi_recorder_runtime_and_bundle_architecture.md, Docs/architecture/arxi_storage_architecture.md, Docs/architecture/arxi_sidecar_architecture.md, Docs/architecture/arxi_cli_and_operator_workflows_architecture.md, Docs/architecture/arxi_system_test_and_validation_architecture.md.
- Design references:
Docs/design/recorder_core_math_evidence_observability_and_verification.md, مراجع التصميم:Docs/design/recorder_core_math_evidence_observability_and_verification.md,Docs/design/dg_proof_recorder_and_mobile_edge_interaction_model.md.
أهداف الأمان
- نتائج سلامة الحزمة والغلاف القابلة للتحديد والتكرار.
- تاريخ قابل للاكتشاف فقط مع فرض استمرارية السلسلة.
- سلوك الفشل المغلق عند وجود بيانات مشوهة أو مفقودة أو غامضة أو غير قابلة للتحقق.
- قابلية نقل الحزم القابلة للتحقق دون الاعتماد على مكونات حية موثوقة.
- Clear trust boundaries between adapters, recorder runtime, stores, and تحديد حدود الثقة بوضوح بين المحولات، وقت تشغيل المسجل، المتاجر، والمستهلكين.
- تعرض مدخلات/موارد محدودة عند نقاط دخول المشغلين.
- Strong adversary posture: designs must remain defensible against compromised موقف الخصم القوي: يجب أن تظل التصاميم قابلة للدفاع ضد الداخلين المخترقين والمشغلين القادرين على مستوى الدول.
غير الأهداف / خارج النطاق
- ضمانات السرية بعد الكشف عن الأدلة للأنظمة السفلية.
- الدفاع ضد اختراق كامل للنظام/النواة دون الحاجة إلى تحكمات خارجية على المنصة.
- Key custody/HSM/remote attestation infrastructure (beyond current local key بنية حراسة المفاتيح/HSM/التحقق عن بُعد (تتجاوز استخدام المفاتيح المحلية الحالية).
- Built-in transport security for remote deployment wrappers (mTLS/authn/authz أمان النقل المدمج لتغليفات النشر عن بُعد (المسؤوليات المتعلقة بالنشر اليوم تشمل mTLS/authn/authz).
- Non-repudiation signing of bundle archives at rest (external signing/WORM is التوقيع غير القابل للإنكار لأرشيفات الحزم في حالة السكون (يتطلب التوقيع الخارجي/WORM).
الأصول
- Unsealed and sealed envelope data (event type, actor, environment, payload, بيانات الظرف المفتوح والمغلق (نوع الحدث، الفاعل، البيئة، الحمولة، الوقت، معرفات الترابط).
- Envelope integrity material (
content_hash,chain_hash, sequence position, مادة سلامة الظرف (content_hash,chain_hash, موقع التسلسل، ربط القطع). - بيانات المقطع (
SegmentGenesis، ارتباطات الأسلاف، سجلات الختم). - بايتات المرفقات وهاش المحتوى.
- محتويات الحزمة (المقاطع، الأظرف، المرفقات، نقاط إثبات).
- بيانات التحقق وقطع الحكم.
- Recorder runtime configuration (
recorder_id, schema version, auto-seal, تكوين وقت تشغيل المسجل (recorder_id، إصدار المخطط، الإغلاق التلقائي، عمق التحقق عند بدء التشغيل). - ملف تخزين SQLite وحالة الذاكرة.
- مواد مفتاح التوقيع ومعرفات المفاتيح المشتقة عند تكوين الموقّعين.
- Persisted signer-rotation state (
store_metakeys for current key, epoch, حالة تدوير الموقّع المستمرة (store_metaمفاتيح للمفتاح الحالي، العصر، وعلامة آخر حدث تدوير). - Generated contract artifacts under Docs/generated/arxi/** and manifest authority Docs/generated/arxi/index.json, including sidecar API artifacts (Docs/generated/arxi/apis/sidecar.*) and sidecar config artifacts (Docs/generated/arxi/config/sidecar.*).
- CLI artifacts (selector JSON, payload JSON, attachment file/inline payloads, عناصر CLI (JSON المحدد، JSON الحمولة، ملف المرفق/الحمولات المضمنة، JSON تركيب بوابة القرار، JSON التكوين، JSON الحزمة).
- Container deployment artifacts and runtime bind mounts (Dockerfile image outputs, compose/env definitions, mounted sidecar config/token/data/run مخرجات حاويات نشر الحاويات ونقاط الربط في وقت التشغيل (مخرجات صورة Dockerfile، تعريفات compose/env، تكوين/رمز/بيانات/مسارات تشغيل الحاويات المثبتة).
نموذج الخصم
- خصوم الدول-الأمة مع رؤية كاملة للشيفرة واستمرارية طويلة الأمد.
- محولات/عملاء غير موثوق بهم يقدمون مظروفات أو مرفقات خبيثة.
- المتسللون المساومون الذين لديهم حق الوصول للكتابة إلى التكوين، أو الملفات التنفيذية، أو التخزين.
- Attackers tampering with on-disk SQLite data, bundle files, or exported المهاجمون يتلاعبون ببيانات SQLite المخزنة على القرص، أو ملفات الحزمة، أو العناصر المصدرة.
- Attackers attempting replay, chain forking, payload mutation, or attachment المهاجمون الذين يحاولون إعادة التشغيل، أو تفرع السلسلة، أو تغيير الحمولة، أو استبدال المرفقات.
- المهاجمون يتسببون في استنفاد الموارد من خلال مدخلات كبيرة الحجم أو مكلفة.
- Malicious integrators exposing Arxi via remote transports without sufficient المتكاملون الخبيثون يكشفون Arxi عبر وسائل النقل عن بُعد دون وجود ضوابط وصول كافية.
حدود الثقة
- حدود استهلاك المحول:
UnsealedEnvelopeوبيانات المرفقات غير موثوقة. - حدود CLI/المشغل: جميع قيم سطر الأوامر وملفات JSON غير موثوقة.
- حدود تكوين وقت التشغيل: محتويات ملف التكوين ومسار التخزين غير موثوق بها.
- Sidecar HTTP boundary: request line, headers, auth token, JSON body, and حدود HTTP في Sidecar: سطر الطلب، الرؤوس، رمز المصادقة، جسم JSON، وبيانات النقل غير موثوقة.
- حدود التخزين: الصفوف/الكتل المستمرة غير موثوقة عند القراءة.
- حدود الحزمة: حزمة JSON المستوردة غير موثوقة قبل التحقق.
- Evidence provider boundary: consumer calls to list/fetch/verify/query are حدود مزود الأدلة: مكالمات المستهلك لقائمة/استرجاع/التحقق/الاستعلام هي طلبات غير موثوقة.
- Decision Gate adapter boundary: Decision Gate transcript/runpack fixture حدود موصل Decision Gate: حمولات نص/تشغيل Decision Gate غير موثوقة ويجب أن تمر بفحوصات التعيين/السلامة قبل الاستيعاب.
- Signing boundary: signer/verifier integrations and key management are external حدود التوقيع: تكاملات الموقّع/المتحقق وإدارة المفاتيح هي تبعيات ثقة خارجية.
- Contract generation boundary: generated projection artifacts are untrusted حدود توليد العقد: تعتبر القطع الأثرية الناتجة غير موثوقة حتى يتم التحقق من تجزئتها مقابل بيان الفهرس القياسي.
- External wrapper boundary: any network-facing bridge is outside this repo and حدود الغلاف الخارجي: أي جسر يواجه الشبكة هو خارج هذا المستودع ويجب أن يفرض الحماية من المصادقة والتفويض وحماية النقل.
- Container-orchestration boundary: compose/env/runtime mount definitions and host filesystem ownership/permission models are untrusted deployment inputs حدود تنسيق الحاويات: تعريفات التركيب/البيئة/نقاط التثبيت ونماذج ملكية/إذن نظام الملفات المضيف هي مدخلات نشر غير موثوقة ويجب أن تلبي قيود تعزيز رمز/تكوين الحاوية.
نقاط الدخول وسطح الهجوم
- CLI commands:
recorder segment open|seal|status|list,recorder signer rotate,recorder envelope record|record-with-attachments,query envelopes,bundle build|verify|inspect,contract generate|check,decision-gate ingest-fixture,config validate,طبيب. - Sidecar commands:
arxi-sidecar --config <path>,arxi-sidecar healthcheck --url <url>, أوامر Sidecar:arxi-sidecar --config <path>,arxi-sidecar healthcheck --url <url>,arxi-sidecar healthcheck --unix-socket <path> --path <path>. - Sidecar HTTP routes:
GET /health,GET /startup,GET /ready,POST /v1/segments,POST /v1/segments/seal,GET /v1/segments,GET /v1/segments/active,POST /v1/envelopes,POST /v1/envelopes/with-attachments,POST /v1/query/envelopes,POST /v1/bundles/build|verify|inspect,GET /v1/config. - File inputs: runtime config JSON/TOML, payload JSON/file, attachment file/inline base64, مدخلات الملفات: تكوين وقت التشغيل JSON/TOML، حمولة JSON/ملف، ملف مرفق/قاعدة 64 مشفرة مضمنة، JSON لقرار البوابة، JSON للمحدد، JSON للحزمة.
- Container deployment inputs:
docker/sidecar/Dockerfile,docker/sidecar/docker-compose.yml,docker/sidecar/.env, mountedsidecar.toml, mounted token file, مدخلات نشر الحاويات:docker/sidecar/Dockerfile،docker/sidecar/docker-compose.yml،docker/sidecar/.env، ملفsidecar.tomlالمثبت، ملف الرمز المثبت، وأدلة البيانات/التشغيل المثبتة. - Library APIs:
RecorderAdapter::emit_envelope,RecorderAdapter::emit_with_attachments,DecisionGateAdapter::ingest_fixture,RecorderEngine::open_segment|record_envelope|seal_segment, واجهات برمجة التطبيقات للمكتبة:RecorderAdapter::emit_envelope,RecorderAdapter::emit_with_attachments,DecisionGateAdapter::ingest_fixture,RecorderEngine::open_segment|record_envelope|seal_segment,EvidenceProvider::list_bundles|fetch_bundle|verify_bundle|query_envelopes. - Storage entry points: SQLite DB creation/open, SQL row materialization, attachment fetch, genesis نقاط دخول التخزين: إنشاء/فتح قاعدة بيانات SQLite، تجسيد صف SQL، جلب المرفقات، فك تشفير الجينيس.
- Bundle verification pipeline: manifest validation, attachment hash checks, content/chain checks, خط أنابيب التحقق من الحزمة: التحقق من صحة البيان، فحوصات تجزئة المرفقات، فحوصات المحتوى/السلسلة، فحوصات عبر القطاعات، مرحلة التوقيع.
ضوابط الأمان والثوابت
- ترميز JCS القياسي لمدخلات التجزئة الحتمية (
serde_jcs). - صيغة تجزئة محتوى الظرف وصيغة تجزئة السلسلة واضحة وثابتة.
- يولد الجزء الأساسي سلسلة حسابات الظرف الأول.
- تستخدم المساواة في التجزئة مقارنة في وقت ثابت في مسارات core/verifier/store.
- طبقة المحول/التحقق تفرض فحوصات الفشل المغلق قبل التسجيل.
- Envelope builder enforces required fields, UTC times, deterministic attachment يقوم منشئ الظرف بفرض الحقول المطلوبة، وأوقات UTC، وترتيب مرجع المرفقات المحدد.
- Envelope attachment and segment-genesis constructors reject empty, blank, and
ترفض مُنشئات إرفاق الحاويات وبناء القطاعات المدخلات الفارغة، والبيضاء، والتي تحتوي على أحرف تحكم
content_typeوrecorder_id. - Recorder config validation fail-closes malformed
recorder_idvalues at فشل التحقق من تكوين المسجل - يغلق القيم غير الصحيحة لـrecorder_idعند بدء تشغيل المحرك (يتطلب شكل هوية متوافق معActorId). - Core identity constructors reject blank/whitespace-only and control-character
string inputs;
key_idis enforced as exact lowercase ترفض مُنشئات الهوية الأساسية المدخلات الفارغة/التي تحتوي فقط على مسافات البيضاء وأحرف التحكم؛ يتم فرضkey_idكتنسيق دقيق بحروف صغيرة تمامًا على شكلhex(SHA-256(public_key_bytes))(64 حرفًا). - Core identity constructors enforce explicit max lengths:
trace_id/session_id/actor_id/environment_id <= 256 chars, تفرض مُنشئات الهوية الأساسية أطوالًا قصوى صريحة:trace_id/session_id/actor_id/environment_id <= 256 chars,event_type/adapter_id <= 128 chars. - String-backed identity serde paths are constructor-validated; hostile JSON مسارات التعريف المدعومة بسلاسل يتم التحقق منها عند الإنشاء؛ لا يمكن لـ JSON العدائي تجاوز ثوابت المعرف عند حدود إلغاء التسلسل.
- يفرض تخزين الإلحاق ثوابت الفقرة المفتوحة واستمرارية السلسلة.
- Store segment creation enforces single-open-segment and duplicate-segment-ID يفرض إنشاء مقطع التخزين فحوصات فشل مغلقة لـ segment واحد مفتوح و duplicate-segment-ID.
- Store query/existence paths fail closed on storage-layer query errors instead مسارات استعلام/وجود التخزين تفشل في الإغلاق عند حدوث أخطاء في استعلام طبقة التخزين بدلاً من الافتراض إلى نتائج وجود مرنة.
- مسار إضافة SQLite محصور في نطاق المعاملات لتحديثات البيانات/البيانات الذرية.
- SQLite يتيح WAL والمفاتيح الخارجية أثناء تهيئة المخطط.
- Bundle builder uses deterministic ordering (
BTreeMap/BTreeSet) and tracks يستخدم منشئ الحزم ترتيبًا حتميًا (BTreeMap/BTreeSet) ويتتبع الآباء/مرتكزات الإثبات التي تم حذفها. - Verifier executes 7 phases with trust-root-aware signature verification; it يقوم المدقق بتنفيذ 7 مراحل مع التحقق من التوقيع المدرك لجذر الثقة؛ حيث يقوم بتحديد تخطي التوقيع فقط عندما لا يكون هناك جذر ثقة مُكون.
- Verifier phase 1 fail-closes on manifest structural tampering (segment entry mismatches and attachment-manifest mismatches), not only version/algorithm مرحلة التحقق 1 تغلق تلقائيًا عند اكتشاف تلاعب هيكلي في البيان (عدم تطابق مدخلات القطاعات وعدم تطابق البيانات المرفقة)، وليس فقط عدم تطابق النسخة/الخوارزمية.
- Verifier enforces bounded-work policy before phase execution:
max segments
4096, max envelopes per segment100000, max envelopes total200000, max attachments total200000, عدد مراجع المرفقات لكل ظرف4096. - Recorder startup verification re-checks active segment read-back integrity for
تحقق من بدء التسجيل يعيد التحقق من سلامة قراءة الجزء النشط للنوافذ المحددة (
startup_verification_depth). - Evidence provider enforces stable bundle IDs and true fetch-by-ID semantics يفرض مزود الأدلة معرفات حزم مستقرة ودلالات صحيحة لجلب بواسطة المعرف للقطاعات المغلقة.
- Evidence provider enforces bounded query/materialization policy:
max
list_bundlesandquery_envelopeslimit10000, يفرض مزود الأدلة سياسة استعلام/تجسيد محدودة: الحد الأقصى لـlist_bundlesوquery_envelopesهو10000, الحد الأقصى لتجسيد مظروف لكل شريحة هو200000. - CLI enforces bounded file-read limits: config 1 MiB, payload 4 MiB, selector 1 MiB, bundle 32 MiB, trust root 1 MiB, attachment file/inline payload 16 MiB, Decision Gate fixture 8 MiB, signer يفرض CLI حدود قراءة الملفات المحدودة: config 1 MiB، payload 4 MiB، selector 1 MiB، bundle 32 MiB، trust root 1 MiB، attachment file/inline payload 16 MiB، Decision Gate fixture 8 MiB، signer key 64 KiB، signer passphrase material 1 KiB.
- CLI query enforces bounded page policy:
default page size
1000, max page size10000, and deterministic تفرض استعلامات CLI سياسة الصفحة المحدودة: حجم الصفحة الافتراضي1000، الحد الأقصى لحجم الصفحة10000، وعقد الاستمرار القائم على المؤشر المحدد في وضع JSON. - CLI runtime resolution validates
recorder_idusingActorIdconstructor semantics before command execution, includingconfig validateparity with تحقق وقت تشغيل CLI من صحةrecorder_idباستخدام دلالات منشئActorIdقبل تنفيذ الأمر، بما في ذلك توازنconfig validateمع سلوك التحقق من تكوين المسجل. - CLI signer loading is profile-aware (
securedefault) and fail-closed on encrypted-key requirements, malformed key material, insecure opt-down misuse, وعدم تطابق المفتاح والحالة في الوضع الآمن. - Explicit key-rotation workflow emits deterministic lifecycle events
(
system.adapter.key_rotated/ break-glass variant) and persists idempotence علامات في بيانات التعريف SQLite. - Contract generation emits deterministic projection artifacts with توليد العقود يصدر آثار إسقاط حتمية مع سلطة تجزئة البيان ووضع تحقق انحراف صارم.
- Contract generation/check fail closed on unsafe output-root filesystem entries, including symlinked roots or symlink traversal beneath the output فشل توليد/تحقق العقد مغلق على إدخالات نظام الملفات الجذر غير الآمن، بما في ذلك الجذور المرتبطة برموز أو التنقل عبر الرموز تحت شجرة الإخراج.
- Contract schema generation applies explicit runtime constraint overlays for
identifier/text/hash/signature fields (including full
BundleSelectorvariant algebra) and fails closed if expected schema pointer paths are مفقود. - Contract generation now emits sidecar API artifacts
(
sidecar.openapi/errors/enums/examples/compat) and generated manifest توليد العقود الآن يصدر مكونات واجهة برمجة التطبيقات الجانبية (sidecar.openapi/errors/enums/examples/compat) و تشمل السلطة المولدة للبيان تلك المسارات. - Sidecar compatibility gates fail closed in CI by validating additive-only
/v1policy, enum-wire stability, error-code registry stability, and تفشل بوابات التوافق مع Sidecar في CI من خلال التحقق من سياسة/v1التي تسمح بالإضافات فقط، واستقرار enum-wire، واستقرار سجل رموز الأخطاء، وإنفاذ عقدة عدم التغير لنقاط النهاية من العناصر الناتجة. - Sidecar config validation fail-closes invalid protocol/security settings (schema/API version, transport host/port, non-loopback token requirement, signer key parseability, hard header-size cap, and numeric limit bounds) قبل ربط المستمعين.
- Sidecar middleware stack enforces server/client correlation ID handling
(
x-server-correlation-id,x-correlation-id, legacyx-request-id), protocol-level content-type/accept checks, aggregate header byte bounds, declared content-length bounds, bounded queue admission and in-flight التزامن، وسلوك الفشل المغلق عند انتهاء مهلة الطلب. - Sidecar token auth compares bearer tokens in constant time and bypasses auth
only for explicit probe routes (
/health,/startup,/ready) oropenمصادقة رمز Sidecar تقارن رموز الحامل في وقت ثابت وتتجاوز المصادقة فقط للطرق الاستكشافية الصريحة (/health,/startup,/ready) أو وضعopen. - Sidecar probe/readiness controls are explicit and fail closed:
/healthremains lightweight process liveness,/startupreports startup completion state, and/readycan enforce storage-only or storage+enterprise dependency readiness (probes.readiness_mode) with optional capacity-exhaustion تحكمات الاستعداد/التحقق من جانب السيارة واضحة وتفشل بشكل مغلق:/healthتبقى عملية خفيفة للتحقق من الحياة،/startupتبلغ عن حالة اكتمال بدء التشغيل، و/readyيمكن أن تفرض الاستعداد للاعتماد على التخزين فقط أو التخزين + الاعتماد المؤسسي (probes.readiness_mode) مع سلوك الفشل المغلق الاختياري عند استنفاد السعة (probes.ready_fail_on_admission_saturation). - Sidecar bounds middleware explicitly bypasses probe routes so orchestrator liveness/startup/readiness signals are observable even under admission يتجاوز برنامج الوسيط لحدود Sidecar بشكل صريح مسارات الاستقصاء، بحيث تكون إشارات النشاط/البدء/الجاهزية الخاصة بالمنظم قابلة للرصد حتى في ظل تشبع القبول واستنفاد الطلبات النشطة.
- Sidecar auth failures emit RFC 6750
WWW-Authenticatechallenge metadata and فشل مصادقة Sidecar يصدر بيانات التعريف الخاصة بتحديWWW-Authenticateوفقًا لـ RFC 6750، وتستخدم أخطاء Sidecar تفاصيل المشكلة وفقًا لـ RFC 9457 (application/problem+json). - Sidecar container packaging defaults to distroless nonroot runtime and compose profiles that require explicit UID/GID mapping and mounted hardened افتراضات تعبئة حاوية Sidecar تعتمد على بيئة تشغيل غير جذرية بدون توزيع وتكوين ملفات تتطلب تعيين UID/GID صريح ومسارات موثوقة للتوكن/التكوين/البيانات.
- Sidecar mutating operations enforce persistent idempotency replay/conflict
semantics with
store_meta-backed TTL/cap retention and deterministic عمليات التحوير في Sidecar تفرض إعادة تشغيل/تعارض دائمة متسقة مع دلالاتstore_metaالمدعومة ب TTL/cap الاحتفاظ ونطاق تجزئة الطلب المحدد. - SQLite operation dispatch uses bounded queueing (
sync_channel) with تستخدم عملية إرسال SQLite قائمة انتظار محدودة (sync_channel) مع رفض مغلق حتمي عند امتلاء سعة القائمة (4096). - System tests validate tamper detection and fail-closed oversized-input تختبر أنظمة الاختبار الكشف عن التلاعب وسلوك الفشل المغلق عند إدخال بيانات كبيرة.
- System tests validate external adapter-ingest coupling using OpenClaw mock event streams, including signed/unsigned verification and sequence-gap strict تختبر أنظمة الاختبار التحقق من اقتران جهاز التكيف الخارجي باستخدام تدفقات أحداث OpenClaw الوهمية، بما في ذلك التحقق من التوقيع/عدم التوقيع وسياسات الفشل المغلقة الصارمة مقابل تسجيل الشذوذ.
- OpenClaw integration mapping applies deterministic sensitive-field redaction and bounded payload handling (string and JSON size limits) before immutable تطبيق تخطيط تكامل OpenClaw يطبق حذف الحقول الحساسة بشكل حتمي ومعالجة الحمولة المحدودة (حدود حجم السلسلة و JSON) قبل تسجيل الأدلة غير القابلة للتغيير.
- System tests validate external control-plane coupling using Decision Gate MCP runpack flow fixtures, including signed/unsigned verification and runpack integrity strict fail-closed vs anomaly-recording policies, including تختبر أنظمة الاختبار التحقق من ارتباط وحدة التحكم الخارجية باستخدام Decision Gate MCP تثبيت تدفق runpack، بما في ذلك التحقق من التوقيع/عدم التوقيع وسلامة runpack مع سياسات الفشل الصارم المغلق مقابل تسجيل الشذوذ، بما في ذلك إعادة حساب سلامة البيان الذاتي من تجزئات الملفات المعلنة.
- System tests validate sidecar subprocess lifecycle over real HTTP and fail-closed idempotency replay/conflict persistence across restart تختبر أنظمة الاختبار دورة حياة العمليات الفرعية الجانبية عبر HTTP حقيقي وتحقق من استمرارية إعادة التشغيل/التعارض الفاشل المغلق عبر حدود إعادة التشغيل.
- Decision Gate integration mapping applies deterministic transcript-field redaction and bounded payload handling (string and JSON size limits) before تطبيق تخطيط تكامل Decision Gate يتضمن حذف حقول النص بشكل حتمي ومعالجة الحمولة المحدودة (حدود حجم string و JSON) قبل تسجيل الأدلة غير القابلة للتغيير.
- Production
arxi-decision-gate-adapterenforces mapping-contract version checks, deterministic event IDs/timestamps, transcript redaction, bounded إنتاجarxi-decision-gate-adapterيفرض التحقق من إصدار عقد التعيين، ومعرفات الأحداث/الطوابع الزمنية الحتمية، وإخفاء النصوص، وبيانات التعريف المحدودة، ومعالجة سلامة حزم التشغيل الصارمة مقابل الشذوذ.
معروفة الثغرات الأمنية الحالية ذات الصلة:
- Sidecar does not include built-in TLS/mTLS; non-loopback deployments should لا تتضمن Sidecar TLS/mTLS مدمجة؛ يجب على النشر غير الدائري إنهاء TLS وفرض هوية العميل في واجهة أمامية/بوابة محصنة.
- Sidecar provides bounded local admission controls but not distributed/global rate limiting; deployment platforms still need caller quotas and abuse يوفر Sidecar ضوابط قبول محلية محدودة ولكن لا يوفر تحديد معدل موزع/عالمي؛ لا تزال منصات النشر بحاجة إلى حصص للمتصلين وضوابط للاستخدام غير السليم.
التهديدات والتخفيفات
المصادقة، التفويض، والتحكم في الوصول
- Threat: unauthorized local or remote invocation of recording/query/bundle التهديد: استدعاء غير مصرح به محليًا أو عن بُعد لمسارات التسجيل/الاستعلام/الحزمة.
- Mitigation: sidecar supports explicit token mode with constant-time bearer
token checks, RFC 6750
WWW-Authenticatechallenge responses, and fail-closed التخفيف: يدعم sidecar وضع الرمز الصريح مع فحوصات رموز الحامل في وقت ثابت، واستجابات تحديWWW-Authenticateوفقًا لمعيار RFC 6750، ومعالجة أخطاء تكوين المصادقة المغلقة؛ تظل واجهة سطر الأوامر عملية محلية. - Residual risk:
opensidecar mode is deployment-sensitive and should only be used in trusted local IPC environments; non-loopback network deployments المخاطر المتبقية: وضعopensidecar حساس للنشر ويجب استخدامه فقط في بيئات IPC المحلية الموثوقة؛ تتطلب عمليات النشر عبر الشبكة غير المتكررة أيضًا هوية طبقة البوابة وضوابط النقل.
تحقق من صحة الإدخال وتحليله
- Threat: malformed IDs, non-UTC times, invalid event types, malformed JSON, التهديد: معرفات مشوهة، أوقات غير UTC، أنواع أحداث غير صالحة، JSON مشوه، أو حمولة غامضة.
- Mitigation: typed ID constructors, UTC enforcement, strict event-type
validation, strict key-id hex shape validation, fail-closed envelope
validation, strict attachment/segment text-field validation (
content_type,recorder_id), strict recorder configrecorder_idvalidation, typed JSON تحليل. - Mitigation: bounded file reads prevent oversized JSON ingestion at CLI التخفيف: تمنع قراءات الملفات المحدودة استيعاب JSON بحجم كبير عند حدود CLI، بما في ذلك مدخلات trust-root و signer-key.
سلامة الأدلة وموثوقيتها
- Threat: payload mutation, chain forking, attachment substitution, or replayed التهديد: تغيير الحمولة، تفرع السلسلة، استبدال المرفقات، أو الأظرف المعاد تشغيلها.
- Mitigation: canonical-hash content addressing + chain continuity checks at التخفيف: محتوى canonical-hash الذي يتناول التحقق من سلامة السلسلة بالإضافة إلى فحوصات استمرارية السلسلة في وقت الإضافة والتحقق.
- Mitigation: verifier phase 1 enforces structural manifest integrity against التخفيف: مرحلة التحقق 1 تفرض سلامة الهيكلية للبيان ضد تجسيد جزء الحزمة والمواد المرفقة.
- Mitigation: strict Ed25519 verification and trust-root policy enforcement are التخفيف: يتم تضمين التحقق الصارم من Ed25519 وفرض سياسة جذر الثقة في مرحلة التحقق 6.
- Mitigation: secure-profile signer loading requires encrypted PKCS#8 key التخفيف: يتطلب تحميل الموقّع secure-profile مفتاح PKCS#8 مشفّر بشكل افتراضي وخيار صريح للتقليل من الأمان لتسهيل تجربة المطورين.
- Mitigation: explicit key-rotation events and persisted idempotence markers التخفيف: أحداث تدوير المفاتيح الصريحة وعلامات الاستمرارية المحفوظة تحافظ على استمرارية سلسلة التوقيع ومصالحة استعادة النظام بعد التعطل.
- Residual risk: authenticity remains configuration-dependent when operators المخاطر المتبقية: تظل الأصالة معتمدة على التكوين عندما يختار المشغلون التحقق بدون جذر ثقة (تحذير صريح تم إصداره).
كشف البيانات وتعريضها
- التهديد: الكشف العرضي المفرط من خلال تصدير الحزم ونتائج الاستعلام.
- التخفيف: أوامر تصدير/استعلام مدفوعة من قبل المشغل بشكل صريح ومرشحات محددة النوع.
- Residual risk: no built-in field-level redaction policy in Arxi core; wrapper المخاطر المتبقية: لا توجد سياسة حجب على مستوى الحقول مدمجة في نواة Arxi؛ يجب أن تفرض طبقات التغليف سياسة الإفصاح.
سلامة التخزين والحزمة
- التهديد: التلاعب بقاعدة البيانات/الملفات، الفساد، أو الكتابات الجزئية.
- Mitigation: SQLite WAL, transactional append, chain validation, corruption التخفيف: SQLite WAL، الإلحاق المعاملاتي، التحقق من السلسلة، اكتشاف الفساد عند تحليل الصفوف المخزنة غير الصالحة.
- Mitigation: bundle verification recomputes attachment/content/chain links and التخفيف: إعادة حساب التحقق من الحزمة تعيد حساب روابط المرفقات/المحتوى/السلسلة وتعلم عن فشل السلامة.
- Residual risk: bundle archives are not signed by default; use external المخاطر المتبقية: أرشيفات الحزم غير موقعة بشكل افتراضي؛ استخدم توقيعًا خارجيًا وضوابط تخزين غير قابلة للتغيير لضمان عدم الإنكار.
توافر واستنفاد الموارد
- Threat: oversized config/payload/selector/bundle inputs and expensive التهديد: إدخالات config/payload/selector/bundle كبيرة الحجم وأعباء التحقق المكلفة.
- التخفيف: حدود صارمة على قراءة الملفات من واجهة سطر الأوامر؛ رفض مغلق قبل التحليل.
- التخفيف: أخطاء مطبوعة ورفض مبكر على محددات/مرشحات غير صالحة.
- Mitigation: recorder verifier/provider APIs enforce bounded-work limits and التخفيف: واجهات برمجة التطبيقات لمحقق/مزود التسجيل تفرض حدود عمل محدودة وتفشل بشكل مغلق عند تحميلات الذاكرة الكبيرة.
- Mitigation: sidecar middleware enforces bounded header/body/content-length التخفيف: يقوم برنامج الوسيط الجانبي بفرض حدود على رأس الرسالة/الجسم/طول المحتوى، ووجود طابور محدود + تزامن نشط، وسلوك فشل مغلق عند انتهاء المهلة.
- Mitigation: SQLite operation dispatch is bounded; enqueue saturation fails التخفيف: عملية إرسال SQLite محدودة؛ فشل تشبع قائمة الانتظار مغلق بدلاً من السماح بنمو الذاكرة غير المحدود.
- Residual risk: no distributed/global rate limiter exists for sidecar or wrapper-exposed deployments; operators still need caller quotas and abuse التحكمات.
بيئة سلسلة التوريد والتنفيذ
- Threat: compromised binaries/config/runtime host or malicious dependency التهديد: ثغرات في الملفات التنفيذية/التكوين/المضيف أو سلوك الاعتماد الخبيث.
- Mitigation: strict lint/no-panic posture, typed errors, deterministic التخفيف: موقف صارم من lint/no-panic، أخطاء محددة، عقود حتمية، وحدود معمارية واضحة.
- Residual risk: host compromise and dependency compromise require external المخاطر المتبقية: تتطلب اختراق المضيف واختراق الاعتماد ضوابط خارجية (SBOM/تدقيق/توقيع/تقوية).
تعدد المستأجرين والعزل
- التهديد: تعرض بيانات متعددة المستأجرين في النشر المشترك.
- التخفيف: معرفات Arxi هي تسميات؛ لا توجد ادعاءات ضمنية لعزل المستأجرين.
- Residual risk: shared deployments must enforce tenant-aware storage, المخاطر المتبقية: يجب أن تفرض النشر المشترك تخزينًا واعيًا للمستأجر، وتشفيرًا، والتحكم في الوصول على مستويات التغليف/النشر.
قابلية التدقيق والمراقبة
- التهديد: عدم القدرة على إثبات ما حدث بعد الاشتباه في التلاعب.
- Mitigation: append-only segment model, deterministic hashes, bundle manifests, التخفيف: نموذج مقطع قابل للإضافة فقط، تجزئة حتمية، بيانات حزمة، مدقق غير متصل، واختبارات نظام تركز على العناصر.
- Residual risk: comprehensive security audit logging for remote auth decisions المخاطر المتبقية: تسجيل تدقيق أمني شامل لقرارات المصادقة عن بُعد يعتمد على الغلاف.
مراجع التنفيذ (التحكمات والحمايات)
سلامة النواة والغلاف
- Canonical encoding and hash formulas:
الترميز القياسي وصيغ التجزئة:
crates/arxi-envelope/src/encoding.rs. - Hash types, algorithm registry, constant-time equality:
أنواع التجزئة، سجل الخوارزميات، المساواة في الوقت الثابت:
crates/arxi-core/src/hash.rs. - Identity and input-shape validation contracts:
عقود التحقق من الهوية وشكل الإدخال:
crates/arxi-core/src/identity.rs,crates/arxi-core/src/filter.rs. - Signature contracts and key identity model:
crates/arxi-core/src/signature.rs,crates/arxi-envelope/src/signer.rs, عقود التوقيع ونموذج الهوية الرئيسية:crates/arxi-core/src/signature.rs,crates/arxi-envelope/src/signer.rs,crates/arxi-envelope/src/signature.rs. - Envelope/segment invariants:
crates/arxi-envelope/src/envelope.rs,crates/arxi-envelope/src/segment.rs, ثوابت الظرف/الجزء:crates/arxi-envelope/src/envelope.rs,crates/arxi-envelope/src/segment.rs,crates/arxi-envelope/src/attachment.rs.
وقت تشغيل المسجل والتحقق
- Recorder lifecycle, chain progression, seal behavior:
دورة حياة المسجل، تقدم السلسلة، سلوك الختم:
crates/arxi-recorder/src/engine.rs. - Auto-seal policy validation:
التحقق من سياسة الإغلاق التلقائي:
crates/arxi-recorder/src/config.rs. - Adapter boundary validation:
crates/arxi-recorder/src/validation.rs, التحقق من حدود المحول:crates/arxi-recorder/src/validation.rs,crates/arxi-recorder/src/local_adapter.rs. - Deterministic bundle assembly and proof anchors:
تجميع الحزم الحتمي وأدلة الإثبات:
crates/arxi-recorder/src/bundle_builder.rs. - 7-phase verification pipeline and warning model:
نموذج التحقق والتحذير ذو 7 مراحل:
crates/arxi-recorder/src/verifier.rs. - Evidence provider boundary behavior:
سلوك حدود مزود الأدلة:
crates/arxi-recorder/src/evidence_provider.rs.
محولات التكامل
- Decision Gate adapter ingestion, deterministic mapping, and fail-closed
integrity-policy enforcement:
استيعاب محول Decision Gate، وتخطيط حتمي، وإنفاذ سياسة النزاهة المغلقة:
crates/arxi-decision-gate-adapter/src/adapter.rs. - Decision Gate mapping and redaction/bounds policy defaults:
إعداد خريطة بوابة القرار وإعدادات سياسة الحذف/الحدود الافتراضية:
crates/arxi-decision-gate-adapter/src/policy.rs. - Decision Gate fixture input contract:
عقد إدخال جهاز بوابة القرار:
crates/arxi-decision-gate-adapter/src/model.rs. - Decision Gate adapter typed error algebra:
خطأ في نوع محول بوابة القرار:
crates/arxi-decision-gate-adapter/src/error.rs.
التخزين
- Storage contracts and invariants:
عقود التخزين والثوابت:
crates/arxi-store/src/traits.rs,crates/arxi-store/src/error.rs. - In-memory backend behavior:
سلوك الواجهة الخلفية في الذاكرة:
crates/arxi-store/src/memory.rs. - SQLite initialization, WAL, FK, connection thread model:
crates/arxi-store/src/sqlite/schema.rs,crates/arxi-store/src/sqlite/connection.rs, تهيئة SQLite، WAL، FK، نموذج خيط الاتصال:crates/arxi-store/src/sqlite/schema.rs,crates/arxi-store/src/sqlite/connection.rs,crates/arxi-store/src/sqlite/mod.rs. - SQLite envelope/segment/attachment operations:
crates/arxi-store/src/sqlite/envelope_ops.rs,crates/arxi-store/src/sqlite/segment_ops.rs, عمليات الحزمة/الجزء/المرفق في SQLite:crates/arxi-store/src/sqlite/envelope_ops.rs,crates/arxi-store/src/sqlite/segment_ops.rs,crates/arxi-store/src/sqlite/attachment_ops.rs.
واجهة سطر الأوامر وسطح التحقق
- Command routing and runtime resolution:
توجيه الأوامر وحل وقت التشغيل:
crates/arxi-cli/src/main.rs. - Input hard limits and bounded file reads:
إدخال الحدود الصعبة وقراءة الملفات المحدودة:
crates/arxi-cli/src/main.rs. - Localization and deterministic output behavior:
التوطين وسلوك الإخراج الحتمي:
crates/arxi-cli/src/i18n.rs. - Contract artifact generation and drift checks:
crates/arxi-contract/src/lib.rs,crates/arxi-contract/src/sidecar_api.rs,crates/arxi-contract/src/sidecar_api/openapi.rs,crates/arxi-contract/src/sidecar_api/artifacts.rs,crates/arxi-contract/src/sidecar_api/specs/mod.rs,scripts/ci/generate_all.sh. - Sidecar contract compatibility and optional release SLO gates:
scripts/ci/sidecar_contract_gates.py, توافق عقد Sidecar وبوابات SLO للإصدار الاختياري:scripts/ci/sidecar_contract_gates.py,scripts/ci/sidecar_perf_gate.py.
حدود خدمة Sidecar
- Sidecar bootstrap/config and transport lifecycle:
crates/arxi-sidecar-config/src/config.rs,crates/arxi-sidecar-config/src/validation.rs,crates/arxi-sidecar-config/src/validation/enterprise.rs,crates/arxi-sidecar/src/server.rs,crates/arxi-sidecar/src/shutdown.rs. - Sidecar auth and request-bound controls:
crates/arxi-sidecar/src/middleware/auth.rs,crates/arxi-sidecar/src/middleware/bounds.rs, مصادقة Sidecar والتحكمات المرتبطة بالطلبات:crates/arxi-sidecar/src/middleware/auth.rs,crates/arxi-sidecar/src/middleware/bounds.rs,crates/arxi-sidecar/src/middleware/request_id.rs. - Sidecar idempotency and error contract:
crates/arxi-sidecar/src/idempotency.rs,crates/arxi-sidecar/src/error.rs, عقد عدم التكرار والخطأ لـ Sidecar:crates/arxi-sidecar/src/idempotency.rs,crates/arxi-sidecar/src/error.rs,crates/arxi-sidecar/src/contract.rs. - Sidecar contract conformance integration tests:
crates/arxi-sidecar/tests/error_registry_contract.rs, اختبارات تكامل توافق عقد Sidecar:crates/arxi-sidecar/tests/error_registry_contract.rs,crates/arxi-sidecar/tests/idempotency_restart.rs. - Sidecar container packaging and operator profile:
docker/sidecar/Dockerfile,docker/sidecar/docker-compose.yml, حزمة حاوية Sidecar وملف تعريف المشغل:docker/sidecar/Dockerfile,docker/sidecar/docker-compose.yml,docker/sidecar/config/sidecar.toml.
التحقق من النظام
- Security/system tests:
system-tests/tests/suites/security.rs,system-tests/tests/suites/bundle.rs,system-tests/tests/suites/persistence.rs,system-tests/tests/suites/recorder.rs, اختبارات الأمان/النظام:system-tests/tests/suites/security.rs,system-tests/tests/suites/bundle.rs,system-tests/tests/suites/persistence.rs,system-tests/tests/suites/recorder.rs,system-tests/tests/suites/sidecar.rs. - Docker packaging and compose-lifecycle validation:
system-tests/tests/suites/sidecar_docker.rs, تعبئة Docker والتحقق من دورة حياة التكوين:system-tests/tests/suites/sidecar_docker.rs,system-tests/tests/helpers/docker.rs. - Registry-driven validation contract:
عقد التحقق المدفوع بالسجل:
system-tests/AGENTS.md,system-tests/test_registry.toml.
متطلبات التشغيل
- Treat all deployments as hostile environments; assume compromised insiders and اعتبر جميع النشر كبيئات عدائية؛ افترض وجود متسللين مخترقين وأعداء قادرين على مستوى الدول.
- Restrict filesystem access to store/config/bundle paths using least-privilege قيد الوصول إلى نظام الملفات لمسارات store/config/bundle باستخدام أقل الامتيازات OS ACLs.
- Use signed releases, dependency auditing, and host hardening for production استخدم الإصدارات الموقعة، وتدقيق التبعيات، وتقوية المضيف لعقد الإنتاج.
- If exposing Arxi sidecar or wrapper APIs over non-loopback networks, enforce إذا كنت تعرض واجهات برمجة التطبيقات Arxi الجانبية أو اللفائف عبر الشبكات غير الدائرية، فقم بفرض مصادقة قوية / تفويض، وإنهاء mTLS / TLS، وقوائم السماح للأوامر.
- For containerized sidecar deployments, run non-root, keep token mounts
owner-only (
0600on Unix), and map host UID/GID explicitly so hardened بالنسبة لنشر الحاويات الجانبية، قم بتشغيلها بدون صلاحيات الجذر، واحتفظ بملكية نقاط تركيب الرموز فقط (0600على أنظمة Unix)، وخصص UID/GID المضيف بشكل صريح بحيث تظل فحوصات الرموز المحصنة ومسارات البيانات القابلة للكتابة محددة. - احتفظ بحدود إدخال CLI مفعلة؛ شدد الحدود على مستوى الغلاف حيثما كان ذلك ممكنًا.
- Do not treat unsigned bundles as non-repudiable artifacts; apply external لا تعالج الحزم غير الموقعة كأدلة غير قابلة للإنكار؛ طبق التوقيع الخارجي وضوابط الاحتفاظ غير القابلة للتغيير.
- Segment tenants into isolated stores/processes unless explicit shared-tenancy قم بتقسيم المستأجرين إلى متاجر/عمليات معزولة ما لم يتم تنفيذ ضوابط مشاركة المستأجرين بشكل صريح.
- Monitor verifier warnings (especially signature-skip and partial-segment راقب تحذيرات التحقق (خاصة تحذيرات تخطي التوقيع وتحذيرات الجزء الجزئي) كنتائج ذات أهمية سياسية.
وضع الفشل
- الفشل مغلق عند المدخلات غير الصالحة أو الغامضة.
- يتم رفض الإضافات التي تنتهك حالة الشريحة أو استمرارية السلسلة.
- رفض تعريفات التكوين/التصفية/نطاق الوقت غير الصحيحة.
- Mark tampered bundles as
Invalidor fail verification with typed errors on قم بوسم الحزم المتلاعب بها على أنهاغير صالحةأو فشل التحقق مع أخطاء مكتوبة على عدم تطابق البيان/البنية التحتية. - لا تفترض الثقة في الحالة المستمرة دون إعادة التحقق من النزاهة.
نموذج تهديد دلتا (2026-02-08، أساسيات OSS + Docker)
- Initial Arxi repository threat model baseline added under تم إضافة نموذج تهديد قاعدة بيانات Arxi الأولي تحت Docs/security/threat_model.md.
- Mapped trust boundaries, controls, and residual risks to concrete current تم رسم حدود الثقة، والضوابط، والمخاطر المتبقية إلى ملفات التنفيذ الحالية المحددة.
- Closed signer/runtime wiring gap with profile-aware secure defaults, bounded تم سد فجوة التوقيع/التشغيل مع إعدادات افتراضية آمنة مدركة للملف الشخصي، وحدود مدخلات محدودة للتوقيع، ومعالجة المواد الرئيسية بطريقة تفشل في الإغلاق.
- Added explicit signer-rotation workflow with deterministic lifecycle events تم إضافة سير عمل تدوير الموقّعين بشكل صريح مع أحداث دورة حياة حتمية وبيانات تعريفية مستمرة.
- Added deterministic contract-generation boundary (
arxi-contract) with تمت إضافة حدود توليد العقود الحتمية (arxi-contract) مع سلطة تجزئة البيان وعمليات فحص الانجراف. - Hardened
arxi-contractoutput-root handling to reject symlinked roots and symlink traversal under generated artifact trees in both generate and check تم تعزيز معالجةarxi-contractلمخرجات الجذر لرفض الجذور المرتبطة برموز رمزية والتنقل عبر الرموز الرمزية تحت أشجار العناصر الناتجة في وضعي التوليد والتحقق. - Added first-party sidecar container deployment boundary: Dockerfile/Compose/config artifacts are now explicit attack surfaces and تمت إضافة حدود نشر حاويات sidecar من الطرف الأول: أصبحت ملفات Dockerfile/Compose/التكوين الآن أسطح هجوم واضحة وحدود ثقة للنشر.
- Added system-test Docker coverage for sidecar packaging hardening and تمت إضافة تغطية اختبار النظام لـ Docker لتقوية حزمة sidecar والتحقق من دورة حياة Docker Compose (فتح/تسجيل/استعلام).
- Closed tracked P1 system-test security-relevant coverage gaps for selector dedup, proof-anchor semantics, cross-segment mismatch fail-closed behavior, تم إغلاق الفجوات المتعلقة بالأمان في اختبار النظام P1 المتعقب المغلق للغطاء الخاص بـ selector dedup، ودلالات proof-anchor، وسلوك الفشل المغلق في حالة عدم التطابق عبر القطاعات، وسلوك الفشل المغلق في إغلاق المرفقات، وتوافق SQLite/في الذاكرة.
- Hardened
arxi-coreidentifier validation to reject whitespace-only and control-character string identifiers and require strict 64-char lowercase hex قيمkey_id. - Hardened deserialize boundaries so constrained identifier and envelope text تم تعزيز حدود فك التسلسل بحيث لا يمكن إنشاء حقول المعرف المقيد ونص الظرف من حمولات serde دون إجراء فحوصات المُنشئ.
- Hardened
arxi-recorderconfig and verifier boundaries: recorder startup rejects malformedrecorder_idvalues during config validation, phase-1 verification fail-closes on manifest structural mismatches, and verifier now يفرض حدودًا صريحة للعمل المحدود. - Hardened
arxi-recorderevidence-provider library boundaries with explicit تم تعزيز حدود مكتبةarxi-recorderلمزود الأدلة مع حدود فشل مغلقة صريحة لأحمال العمل الخاصة بالقوائم/الاستعلامات/التجسيد. - Hardened
arxi-storeSQLite connection dispatch with bounded queue capacity تم تعزيز اتصالarxi-storeبقاعدة بيانات SQLite مع معالجة ذات سعة قائمة محدودة ودلالات رفض التشبع الحتمية. - Added system-test coverage for malformed identifiers, bounded CLI file input surfaces, secure signer-file policy, signer-rotation recovery/corruption behavior, contract CLI symlink safety, manifest structural tamper cases, SQLite corruption materialization failures, and single-open-segment CLI تنفيذ.
- تم إغلاق جميع النتائج المتعقبة في Docs/security/audits/OSS_launch_0.md.
- Implemented
arxi-sidecaras a built-in HTTP/JSON boundary with fail-closed config validation, request auth/bounds controls, bounded queue/concurrency controls, structured error contract, and persistent idempotency semantics; updated trust boundaries, attack surfaces, mitigations, and residual risks to تعكس هذه السطح في وقت التشغيل. - Implemented generated sidecar API artifact coverage
(
sidecar.openapi/errors/enums/examples/compat) with fail-closed CI compatibility gates enforcing additive-only/v1, enum-wire stability, تم تنفيذ تغطية عنصر واجهة برمجة التطبيقات (API) الجانبي المولد (sidecar.openapi/errors/enums/examples/compat) مع بوابات توافق CI مغلقة عند الفشل تفرض فقط الإضافات لـ/v1، واستقرار enum-wire، واستقرار سجل رموز الأخطاء، وعقود عدم التغير لنقاط النهاية. - Consolidated sidecar runtime config semantics into a dedicated
arxi-sidecar-configcrate and wired sidecar runtime startup to consume its تم دمج دلالات تكوين وقت التشغيل للـ sidecar في حزمة مخصصةarxi-sidecar-configوتم توصيل بدء تشغيل وقت تشغيل الـ sidecar لاستهلاك حد التحقق من التكوين المغلق الفاشل المطبوع. - Expanded generated contract scope to include sidecar config artifacts
(
config/sidecar.schema.json,config/sidecar.compat.json,config/sidecar.example.toml,config/sidecar.md) emitted by تم توسيع نطاق العقد المولد ليشمل عناصر تكوين sidecar (config/sidecar.schema.json,config/sidecar.compat.json,config/sidecar.example.toml,config/sidecar.md) التي تم إصدارها بواسطةarxi-contractمن مساعدي إسقاطarxi-sidecar-config. - Extended sidecar compatibility gates to fail closed on sidecar config تم توسيع بوابات التوافق مع الـ sidecar لتفشل في حالة انحراف تكوين الـ sidecar وعدم التناسق بين العناصر (schema/compat/example/docs).
- Added sidecar integration/system validation for generated error-registry تم إضافة تكامل sidecar / التحقق من النظام لتوافق سجل الأخطاء المُولد واستمرارية إعادة التشغيل المعتمدة على الهوية.
نموذج التهديد دلتا (2026-02-08)
- Added enterprise sidecar boundary mode with explicit fail-closed config
validation (
enterprise.mode, control-plane URL/token requirements, and تمت إضافة وضع حدود sidecar المؤسسي مع التحقق من تكوين الفشل المغلق بشكل صريح (enterprise.mode، ومتطلبات URL/token لطبقة التحكم، ومتطلبات أمان وضع الرمز). - Added enterprise identity extraction boundary (
x-tenant-id,x-principal-id,x-authn-method, optional namespace) and fail-closed تمت إضافة حدود استخراج هوية المؤسسة (x-tenant-id,x-principal-id,x-authn-method, مساحة اسم اختيارية) وسلوك قبول مغلق عند وجود سياق هوية غير صحيح/مفقود. - Added pre-handler enterprise policy gate middleware that denies protected تمت إضافة وسيط سياسة بوابة المؤسسة قبل المعالجة الذي ينكر العمليات المحمية عندما تكون فحوصات تفويض/control-plane أو الحصص غير متاحة أو مرفوضة.
- Added managed-cloud writer-lease assertion gating for mutating operations
تمت إضافة تأكيد بوابة تأجير كاتب السحابة المدارة للعمليات المتغيرة (
x-arxi-writer-lease=trueمطلوب عند التكوين). - Added explicit sidecar enterprise boundary hook emission to control-plane
(
/v1/enterprise/sidecar/hooks) atadmissionandresultphases with fail-closed behavior for successful protected operations when hook export يفشل. - Result: sidecar ingress now has an additional external dependency on enterprise control-plane availability/integrity; outage or invalid responses are handled as fail-closed admission denials and successful-hook export النتيجة: أصبح ingress الخاص بـ sidecar يعتمد الآن على توفر/سلامة وحدة التحكم المؤسسية؛ يتم التعامل مع الانقطاع أو الاستجابات غير الصالحة كرفض دخول مغلق، وتُعتبر حالات فشل تصدير الخطاف الناجحة أخطاء طلب مغلقة.
نموذج تهديد دلتا (2026-02-08، تعزيز الاستعداد والتحقيق)
- Added explicit startup probe route (
GET /startup) to sidecar entry-point تمت إضافة مسار فحص بدء التشغيل الصريح (GET /startup) إلى نقطة دخول sidecar سياسة تجاوز فحص المخزون والمصادقة. - Added fail-closed readiness dependency modes (
storage_only,storage_and_enterprise) with config validation and control-plane readiness تمت إضافة أوضاع الاعتماد على الجاهزية الفاشلة المغلقة (storage_only,storage_and_enterprise) مع التحقق من تكوين الاعتماد وفحوصات جاهزية وحدة التحكم في الأوضاع المفعلة للمؤسسات. - Added optional readiness fail-closed behavior when request admission/execution
تمت إضافة سلوك الفشل الاختياري عند الاستعداد للإغلاق عندما يتم استنفاد سعة قبول/تنفيذ الطلبات (
request_capacity_exhaustedسبب الاستعداد). - Added explicit probe-priority middleware behavior:
/health,/startup, and/readybypass normal auth/policy/bounds request تمت إضافة سلوك وسيط أولوية الاستقصاء بشكل صريح:/health،/startup، و/readyتتجاوز بوابات المصادقة/السياسة/الحدود العادية للحفاظ على قابلية مراقبة التنسيق أثناء الحمل الزائد. - Added Docker system-test probe coverage validating containerized
/startupand/readybehavior before and after segment-open lifecycle تمت إضافة تغطية اختبار النظام في Docker للتحقق من سلوك/startupو/readyالمعبأ في الحاويات قبل وبعد انتقالات دورة حياة فتح الشريحة.
نموذج تهديد دلتا (2026-02-08، مستمر)
- Renamed enterprise boundary adapter implementation from
enterprise.rstocontrol_plane_bridge.rsto make the trust-boundary intent explicit تم إعادة تسمية تنفيذ محول حدود المؤسسة منenterprise.rsإلىcontrol_plane_bridge.rsلجعل نية حدود الثقة واضحة (جسر التحكم فقط؛ لا سلطة رياضية للأدلة). - Centralized sidecar enterprise ingress/header/hook vocabulary in
crates/arxi-sidecar/src/contract.rsand wired middleware/bridge paths to قام بتوحيد مصطلحات إدخال/رأس/خطاف الـ sidecar المؤسسي فيcrates/arxi-sidecar/src/contract.rsوربط مسارات الوسائط/الجسور بتلك الثوابت لتقليل مخاطر تجاوز السياسات الناتجة عن الانجراف. - Added conformance tests to ensure sidecar operation labels, identity headers, and hook boundary/outcome labels remain synchronized with control-plane تم إضافة اختبارات التوافق لضمان بقاء تسميات تشغيل الـ sidecar، ورؤوس الهوية، وتسميات حدود/نتائج الـ hook متزامنة مع مفردات عقد التحكم.
- Added cross-repo end-to-end enterprise lane coverage proving control-plane deny decisions fail closed at sidecar mutation boundaries while successful تم إضافة تغطية شاملة عبر المستودعات لمسار المؤسسة من النهاية إلى النهاية، مما يثبت أن قرارات رفض التحكم في الطائرة تفشل في الإغلاق عند حدود تعديل الـ sidecar، بينما تحافظ المسارات المعتمدة الناجحة على نتائج تحقق الأدلة الحتمية.
نموذج التهديد دلتا (2026-02-08، توسيع CLI OSS)
- Added CLI operator command
recorder envelope record-with-attachmentswith تمت إضافة أمر مشغل CLIrecorder envelope record-with-attachmentsمع تحقق من حدود المرفقات الفاشلة المغلقة لمدخلات الملفات و inline base64. - Added CLI operator command
decision-gate ingest-fixturethat routes fixture inputs through productionarxi-decision-gate-adapterintegrity and mapping تمت إضافة أمر مشغل CLIdecision-gate ingest-fixtureالذي يوجه مدخلات التركيب عبر سياسات النزاهة والتخطيط لـarxi-decision-gate-adapter. - Added CLI runtime config parity checks so malformed
recorder_idvalues fail closed duringconfig validateusing the same identity-shape constraints as وقت تشغيل المسجل. - Expanded CLI auto-seal boundary to include duration and combined policies, تم توسيع حدود الإغلاق التلقائي في واجهة سطر الأوامر لتشمل المدة والسياسات المجمعة، مع رفض مغلق بفشل لقيمة صفر لكل من عتبات العدد والمدة.
- Added CLI query page bounds (default
1000, max10000) and deterministic JSON pagination contract (envelopes+next_cursor) to prevent unbounded تمت إضافة حدود صفحة استعلام CLI (افتراضي1000، الحد الأقصى10000) وعقد ترقيم JSON الحتمي (envelopes+next_cursor) لمنع التشكيل غير المحدود عند حدود المشغل.