تخطَّ إلى المحتوى

كتالوج امتدادات الإثراء

المرجع المعتمد لكل امتداد x-* يظهر في docs/specifications/api/*.json. يُفرض التوافق مع scripts/utils/extension_constants.py عبر tests/test_extension_catalog.py.

ثلاث فئات من الامتدادات موثّقة هنا:

  • مُضافة هنا — الامتدادات التي تضيفها أدوات الإثراء لدينا (x-f5xc-* و x-ves-cli-* / x-ves-field-* / x-ves-operation-* / متغيرات الاكتشاف). وهي الامتدادات التي يجب أن تستهلكها الأدوات اللاحقة.
  • مُمرَّرة من المصدر الأصلي — الامتدادات التي تُصدرها F5 في المواصفات المصدرية ونحتفظ بها دون تغيير (x-ves-proto-*، x-displayname، إلخ). موثّقة للشفافية لكنها غير مُتحكَّم بها من هذا المستودع.
  • مُضافة مستقبلاً — لم تُصدَر بعد؛ توثّق هنا فور أن يبدأ أحد أدوات الإثراء بإنتاجها (لا ينطبق عند التعبئة الأولية).

لكل إدخال أدناه هذا الشكل بالضبط. يتسامح اختبار التوافق في tests/test_extension_catalog.py مع كون نص القسم مختصراً طالما أن ترويسة ### x-name موجودة وعلامة Pass-through from upstream: حاضرة بقيمة yes أو no.

### x-<name>
- **Applied at:** <schema | parameter | operation | path-item | info | response>
- **Purpose:** <one sentence>
- **Consumers:** <CLI | VSCode | Terraform | Web UI | multiple | N/A>
- **Value type:** <string | number | boolean | object | array>
- **Value schema:** <JSON Schema snippet, or N/A>
- **Injected by:** <scripts/utils/<enricher>.py, or "upstream">
- **Driven by config:** <config/<file>.yaml, or "hardcoded", or "upstream">
- **Example:** <short snippet>
- **Pass-through from upstream:** <yes/no>

مُضاف — على مستوى المواصفة (قسم info)

Section titled “مُضاف — على مستوى المواصفة (قسم info)”
  • Applied at: info
  • Purpose: يحدد الاسم المختصر لنطاق CLI (مثال: http_loadbalancer) لمواصفة محسّنة.
  • Consumers: CLI
  • Value type: string
  • Value schema: {"type": "string"}
  • Injected by: scripts/merge_specs.py
  • Driven by config: hardcoded
  • Example: "x-f5xc-cli-domain": "http_loadbalancer"
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: كتلة بيانات تعريفية على مستوى CLI (اسم الأداة، تلميحات الإصدار، تجميع النطاق).
  • Consumers: CLI
  • Value type: object
  • Value schema: {"type": "object"}
  • Injected by: scripts/merge_specs.py
  • Driven by config: config/cli_metadata.yaml
  • Example: "x-f5xc-cli-metadata": {"tool": "xcsh", "domain": "http_loadbalancer"}
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: الطابع الزمني لمواصفة المصدر الأصلي التي بُني منها الملف المحسّن.
  • Consumers: multiple
  • Value type: string
  • Value schema: {"type": "string", "format": "date-time"}
  • Injected by: scripts/merge_specs.py
  • Driven by config: hardcoded
  • Example: "x-f5xc-upstream-timestamp": "2026-04-21T12:00:00Z"
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: ETag لأصل إصدار مواصفة المصدر الأصلي.
  • Consumers: multiple
  • Value type: string
  • Value schema: {"type": "string"}
  • Injected by: scripts/merge_specs.py
  • Driven by config: hardcoded
  • Example: "x-f5xc-upstream-etag": "\"abc123\""
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: إصدار دلالي مختوم على المواصفة المحسّنة بواسطة خط الأنابيب.
  • Consumers: multiple
  • Value type: string
  • Value schema: {"type": "string"}
  • Injected by: scripts/merge_specs.py
  • Driven by config: hardcoded
  • Example: "x-f5xc-enriched-version": "3.2.1"
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: كتلة مسرد المصطلحات والعلامات التجارية المطبّقة على كل مواصفة نطاق.
  • Consumers: multiple
  • Value type: object
  • Value schema: {"type": "object"}
  • Injected by: scripts/utils/branding.py
  • Driven by config: config/branding.yaml
  • Example: "x-f5xc-glossary": {"XC": "F5 Distributed Cloud"}
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: الطابع الزمني عند تنفيذ تمريرة اكتشاف الـ API المباشر.
  • Consumers: multiple
  • Value type: string
  • Value schema: {"type": "string", "format": "date-time"}
  • Injected by: scripts/utils/discovery_enricher.py
  • Driven by config: config/discovery.yaml
  • Example: "x-f5xc-discovered-at": "2026-04-21T09:15:00Z"
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: عنوان URL الأساسي للـ API المباشر الذي جرى فحصه أثناء الاكتشاف.
  • Consumers: multiple
  • Value type: string
  • Value schema: {"type": "string", "format": "uri"}
  • Injected by: scripts/utils/discovery_enricher.py
  • Driven by config: config/discovery.yaml
  • Example: "x-f5xc-api-url": "https://f5-amer-ent.console.ves.volterra.io"
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: عنوان URL لصفحة وثائق مرجع API المستضافة لهذا النطاق.
  • Consumers: multiple
  • Value type: string
  • Value schema: {"type": "string", "format": "uri"}
  • Injected by: scripts/utils/external_docs_enricher.py
  • Driven by config: none (derived from domain name)
  • Example: "x-f5xc-api-reference-url": "https://f5-sales-demo.github.io/api-specs-enriched/api-reference/sites/"
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: وقت الاستجابة المرصود (بالملي ثانية) للـ API الذي جرى فحصه أثناء الاكتشاف.
  • Consumers: multiple
  • Value type: number
  • Value schema: {"type": "number"}
  • Injected by: scripts/utils/discovery_enricher.py
  • Driven by config: config/discovery.yaml
  • Example: "x-f5xc-response-time-ms": 42
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: إرشادات أفضل الممارسات المنتقاة لنطاق معين.
  • Consumers: multiple
  • Value type: array
  • Value schema: {"type": "array", "items": {"type": "object"}}
  • Injected by: scripts/utils/best_practices_enricher.py
  • Driven by config: config/best_practices.yaml
  • Example: "x-f5xc-best-practices": [{"id": "bp-1", "text": "Prefer HTTPS"}]
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: سير عمل مسمّاة خطوة بخطوة لإنجاز المهام الشائعة في نطاق معين.
  • Consumers: multiple
  • Value type: array
  • Value schema: {"type": "array", "items": {"type": "object"}}
  • Injected by: scripts/utils/guided_workflow_enricher.py
  • Driven by config: config/guided_workflows.yaml
  • Example: "x-f5xc-guided-workflows": [{"name": "create-lb", "steps": [...]}]
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: جدول توسعة الاختصارات لكل نطاق.
  • Consumers: multiple
  • Value type: object
  • Value schema: {"type": "object", "additionalProperties": {"type": "string"}}
  • Injected by: scripts/utils/acronym_enricher.py
  • Driven by config: config/acronyms.yaml
  • Example: "x-f5xc-acronyms": {"LB": "Load Balancer"}
  • Pass-through from upstream: no
  • Applied at: spec info
  • Purpose: شجرة التنقل العامة في وحدة التحكم — مساحة العمل وتسلسل القوائم.
  • Consumers: console-catalog, xcsh, browser-automation
  • Value type: object
  • Value schema: {"type": "object", "properties": {"workspaces": "object"}}
  • Injected by: scripts/utils/console_ui_enricher.py
  • Driven by config: config/console_ui.yaml
  • Example: "x-f5xc-console-navigation": {"workspaces": {"web-app-and-api-protection": {"label": "Web App & API Protection", "route_prefix": "/web/workspaces/web-app-and-api-protection"}}}
  • Pass-through from upstream: no

مُضاف — على مستوى المخطط (مخططات المكونات)

Section titled “مُضاف — على مستوى المخطط (مخططات المكونات)”
  • Applied at: schema
  • Purpose: الحد الأدنى من الحقول المطلوبة لنجاح عملية POST/PUT لهذا المورد.
  • Consumers: multiple
  • Value type: object
  • Value schema: {"type": "object"}
  • Injected by: scripts/utils/minimum_configuration_enricher.py
  • Driven by config: config/minimum_configs.yaml
  • Example: "x-f5xc-minimum-configuration": {"required_fields": ["name"]}
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: يوفر بيانات تعريفية تتعلق بقيد مساحة الاسم وتوصيتها وتصنيفها لمورد معين.
  • Consumers: multiple
  • Value type: object
  • Value schema: {"type": "object", "properties": {"constraint": {"type": "object"}, "recommendation": {"type": "object"}, "classification": {"type": "object"}}}
  • Injected by: scripts/utils/namespace_profile_enricher.py
  • Driven by config: config/namespace_profile.yaml
  • Example: "x-f5xc-namespace-profile": {"constraint": {"allowed": ["system", "shared", "user"]}, "recommendation": {"default": "shared"}, "classification": {"multi_tenant_pattern": "shared-ref"}}
  • Pass-through from upstream: no
  • Applied at: schema
  • Purpose: الترتيب المقترح للخصائص لعرضها في واجهة المستخدم أو CLI.
  • Consumers: multiple
  • Value type: array
  • Value schema: {"type": "array", "items": {"type": "string"}}
  • Injected by: scripts/utils/field_metadata_enricher.py
  • Driven by config: config/field_metadata.yaml
  • Example: "x-f5xc-displayorder": ["name", "description", "spec"]
  • Pass-through from upstream: no
  • Applied at: schema
  • Purpose: اسم نوع مورد Terraform الذي يرتبط بهذا المخطط.
  • Consumers: Terraform
  • Value type: string
  • Value schema: {"type": "string"}
  • Injected by: scripts/utils/field_metadata_enricher.py
  • Driven by config: config/field_metadata.yaml
  • Example: "x-f5xc-terraform-resource": "volterra_http_loadbalancer"
  • Pass-through from upstream: no
  • Applied at: schema
  • Purpose: اسم عرض مقروء للبشر لمخطط مورد (يتجاوز التوليد التلقائي).
  • Consumers: multiple
  • Value type: string
  • Value schema: {"type": "string"}
  • Injected by: scripts/utils/field_metadata_enricher.py
  • Driven by config: config/field_metadata.yaml
  • Example: "x-f5xc-display-name": "HTTP Load Balancer"
  • Pass-through from upstream: no
  • Applied at: schema
  • Purpose: تنقل واجهة وحدة التحكم والتوجيه وبنية النموذج لهذا المورد.
  • Consumers: console-catalog, xcsh, vscode-xcsh, browser-automation
  • Value type: object
  • Value schema: {"type": "object", "properties": {"workspace": "string", "menu_path": "array", "route_pattern": "string", "breadcrumbs": "array", "add_action": "object", "form_sections": "array", "metadata": "object"}}
  • Injected by: scripts/utils/console_ui_enricher.py
  • Driven by config: config/console_ui.yaml
  • Example: "x-f5xc-console": {"workspace": "web-app-and-api-protection", "menu_path": ["Manage", "Load Balancers", "HTTP Load Balancers"]}
  • Pass-through from upstream: no
  • Applied at: schema
  • Purpose: يشير إلى مخطط تكون عمليته موردًا من نمط الإجراءات، مثل approve، بحيث يُنشئ codegen موردًا من نوع الإجراء بدلاً من CRUD.
  • Consumers: Terraform
  • Value type: string
  • Value schema: {"type": "string"}
  • Injected by: scripts/utils/schema_override_enricher.py
  • Driven by config: config/schema_overrides.yaml
  • Example: "x-f5xc-action": "approve"
  • Pass-through from upstream: no

مُضاف — على مستوى الخاصية

Section titled “مُضاف — على مستوى الخاصية”
  • Applied at: schema property
  • Purpose: وصف خاصية محسّن يُكمّل الـ description الأصلي.
  • Consumers: multiple
  • Value type: string
  • Value schema: {"type": "string"}
  • Injected by: scripts/utils/field_metadata_enricher.py
  • Driven by config: config/field_descriptions.yaml
  • Example: "x-f5xc-description": "Fully-qualified domain name used for TLS SNI."
  • Pass-through from upstream: no
  • Applied at: schema property
  • Purpose: قواعد التحقق التصريحية المستخلصة من ves.io.schema.rules في protobuf الأصلي.
  • Consumers: multiple
  • Value type: object
  • Value schema: {"type": "object"}
  • Injected by: scripts/utils/validation_enricher.py
  • Driven by config: config/validation_rules.yaml
  • Example: "x-f5xc-validation": {"min_len": 1, "max_len": 64}
  • Pass-through from upstream: no
  • Applied at: schema property
  • Purpose: قيم مثال توضيحية متعددة لخاصية معينة.
  • Consumers: multiple
  • Value type: array
  • Value schema: {"type": "array"}
  • Injected by: scripts/utils/resource_examples_enricher.py
  • Driven by config: config/resource_examples.yaml
  • Example: "x-f5xc-examples": ["example.com", "api.example.com"]
  • Pass-through from upstream: no
  • Applied at: schema property
  • Purpose: قيمة مثال أساسية واحدة.
  • Consumers: multiple
  • Value type: string
  • Value schema: {}
  • Injected by: scripts/utils/field_description_enricher.py
  • Driven by config: config/field_descriptions.yaml
  • Example: "x-f5xc-example": "example.com"
  • Pass-through from upstream: no
  • Applied at: schema property
  • Purpose: تلميحات إكمال الصدفة (تعداد ثابت أو أمر ديناميكي).
  • Consumers: CLI
  • Value type: object
  • Value schema: {"type": "object"}
  • Injected by: scripts/utils/field_metadata_enricher.py
  • Driven by config: config/field_metadata.yaml
  • Example: "x-f5xc-completion": {"source": "command", "cmd": "xcsh namespace list"}
  • Pass-through from upstream: no
  • Applied at: schema property
  • Purpose: القيمة الافتراضية أو القيم الافتراضية لعرضها في المستندات المُولَّدة وواجهات المستخدم.
  • Consumers: multiple
  • Value type: object
  • Value schema: {"type": "object"}
  • Injected by: scripts/utils/field_metadata_enricher.py
  • Driven by config: config/field_metadata.yaml
  • Example: "x-f5xc-defaults": {"value": "default"}
  • Pass-through from upstream: no
  • Applied at: schema property
  • Purpose: يسرد عمليات HTTP (POST/PUT/…) التي تتطلب هذه الخاصية.
  • Consumers: multiple
  • Value type: array
  • Value schema: {"type": "array", "items": {"type": "string"}}
  • Injected by: scripts/utils/field_metadata_enricher.py
  • Driven by config: config/field_metadata.yaml
  • Example: "x-f5xc-required-for-operations": ["POST", "PUT"]
  • Pass-through from upstream: no
  • Applied at: schema property
  • Purpose: يسرد مجموعات الميزات المسمّاة التي تتطلب هذه الخاصية.
  • Consumers: multiple
  • Value type: array
  • Value schema: {"type": "array", "items": {"type": "string"}}
  • Injected by: scripts/utils/minimum_configuration_enricher.py
  • Driven by config: config/minimum_configs.yaml
  • Example: "x-f5xc-required-for": ["tls-origin", "mtls"]
  • Pass-through from upstream: no
  • Applied at: schema property
  • Purpose: المتطلبات الشرطية (مثال: مطلوب عندما تساوي حقل شقيق قيمة X).
  • Consumers: multiple
  • Value type: array
  • Value schema: {"type": "array", "items": {"type": "object"}}
  • Injected by: scripts/utils/field_metadata_enricher.py
  • Driven by config: config/field_metadata.yaml
  • Example: "x-f5xc-conditions": [{"when": "tls.enabled == true", "require": "cert"}]
  • Pass-through from upstream: no
  • Applied at: schema property
  • Purpose: إشعار الإهمال مع إرشادات الاستبدال.
  • Consumers: multiple
  • Value type: object
  • Value schema: {"type": "object"}
  • Injected by: scripts/utils/field_metadata_enricher.py
  • Driven by config: config/field_metadata.yaml
  • Example: "x-f5xc-deprecated": {"since": "3.0.0", "use": "new_field"}
  • Pass-through from upstream: no
  • Applied at: schema property
  • Purpose: القيمة الافتراضية التي يعيّنها الخادم عند إغفال العميل للخاصية.
  • Consumers: multiple
  • Value type: string
  • Value schema: {}
  • Injected by: scripts/utils/default_value_enricher.py
  • Driven by config: config/discovered_defaults.yaml
  • Example: "x-f5xc-server-default": "ROUND_ROBIN"
  • Pass-through from upstream: no
  • Applied at: schema property
  • Purpose: القيمة الموصى بها في الإنتاج لحقل تكون قيمة الخادم الافتراضية له دون المستوى الأمثل.
  • Consumers: multiple
  • Value type: string
  • Value schema: {}
  • Injected by: scripts/utils/default_value_enricher.py
  • Driven by config: config/discovered_defaults.yaml
  • Example: "x-f5xc-recommended-value": "LEAST_REQUEST"
  • Pass-through from upstream: no
  • Applied at: schema property
  • Purpose: لكتل oneOf، يشير إلى المتغير الموصى به.
  • Consumers: multiple
  • Value type: string
  • Value schema: {"type": "string"}
  • Injected by: scripts/utils/default_value_enricher.py
  • Driven by config: config/discovered_defaults.yaml
  • Example: "x-f5xc-recommended-oneof-variant": "tls_parameters"
  • Pass-through from upstream: no
  • Applied at: schema property
  • Purpose: يسرد الخصائص الشقيقة التي لا يمكن تعيينها بجانب هذه الخاصية.
  • Consumers: multiple
  • Value type: array
  • Value schema: {"type": "array", "items": {"type": "string"}}
  • Injected by: scripts/utils/conflicts_with_enricher.py
  • Driven by config: hardcoded
  • Example: "x-f5xc-conflicts-with": ["plaintext", "auto_cert"]
  • Pass-through from upstream: no
  • Applied at: schema property
  • Purpose: يُعلن عن نوع مورد حقل ObjectRefType المُشار إليه (المورد الذي يشير إليه ويجب أن يوجد مسبقاً)، مع تحديد اختيار oneOf، والمتطلب عند الإنشاء، والعدديّة — البُعد المرجعي للموارد في نموذج الاعتمادية.
  • Consumers: terraform, cli, mcp, IDE, ai-assistants
  • Value type: array
  • Value schema: {"type": "array", "items": {"type": "object", "properties": {"resource_kind": {"type": ["string", "null"]}, "field_path": {"type": "string"}, "gated_by": {"type": ["object", "null"]}, "required": {"type": "boolean"}, "cardinality": {"type": "string"}}}}
  • Injected by: scripts/utils/references_enricher.py
  • Driven by config: config/resource_references.yaml
  • Example: "x-f5xc-references": [{"resource_kind": "app_firewall", "field_path": "app_firewall", "gated_by": {"choice": "waf_choice"}, "required": false, "cardinality": "single"}]
  • Pass-through from upstream: no
  • Applied at: schema (CreateSpecType)
  • Purpose: قيم مثال الحقول عند الإنشاء لكل حقل (خريطة مسطحة من مسار الحقل إلى القيمة) مستخلصة من x-f5xc-minimum-configuration.example_yaml — المصدر الوحيد الحتمي لقيم الإنشاء المستخدمة في توليد النماذج وسير العمل اللاحقة.
  • Consumers: cli, workflow-generator, sweep, ai-assistants
  • Value type: object
  • Value schema: {"type": "object", "additionalProperties": true}
  • Injected by: scripts/utils/example_field_enricher.py
  • Driven by config: derived from x-f5xc-minimum-configuration.example_yaml
  • Example: "x-f5xc-field-examples": {"spec.port": 8080}
  • Pass-through from upstream: no
  • Applied at: schema property
  • Purpose: يوثّق التبعيات عبر الحقول حيث يتطلب حقل ما أن يكون حقل آخر محدداً.
  • Consumers: compile_catalog.py, xcsh CLI
  • Value type: array
  • Value schema: {"type": "array", "items": {"type": "object", "properties": {"field": {"type": "string"}, "required": {"type": "boolean"}, "reason": {"type": "string"}}}}
  • Injected by: scripts/utils/dependency_enricher.py
  • Driven by config: config/minimum_configs.yaml (dependencies section)
  • Example: "x-f5xc-requires": [{"field": "tls_config", "required": true, "reason": "use_tls requires tls_config sub-field"}]
  • Pass-through from upstream: no
  • Applied at: schema property
  • Purpose: قيود رقمية أو نصية مستخلصة من فحص الـ API المباشر أو الأنماط الثابتة.
  • Consumers: multiple
  • Value type: object
  • Value schema: {"type": "object"}
  • Injected by: scripts/utils/constraint_enricher.py
  • Driven by config: config/constraint_patterns.yaml
  • Example: "x-f5xc-constraints": {"min": 1, "max": 65535, "source": "live-api"}
  • Pass-through from upstream: no
  • Applied at: schema property
  • Purpose: يُعلن ما إذا كان الحقل يجب أن يكون فريداً ضمن نطاقه.
  • Consumers: multiple
  • Value type: object
  • Value schema: {"type": "object"}
  • Injected by: scripts/utils/uniqueness_enricher.py
  • Driven by config: hardcoded
  • Example: "x-f5xc-uniqueness": {"scope": "namespace"}
  • Pass-through from upstream: no
  • Applied at: schema property
  • Purpose: بيانات تعريفية لعنصر نموذج وحدة التحكم لهذه الخاصية في الـ API.
  • Consumers: console-catalog, xcsh, browser-automation
  • Value type: object
  • Value schema: {"type": "object", "properties": {"widget_type": "string", "label": "string", "default": "any", "selector": "string", "form_section": "string", "show_when": "object", "advanced": "boolean"}}
  • Injected by: scripts/utils/console_ui_enricher.py
  • Driven by config: config/console_field_metadata.yaml
  • Example: "x-f5xc-console-field": {"widget_type": "listbox", "default": "HTTPS with Automatic Certificate", "form_section": "domains-and-lb-type"}
  • Pass-through from upstream: no

مُضاف — على مستوى العملية

Section titled “مُضاف — على مستوى العملية”
  • Applied at: operation
  • Purpose: يسمّي حقول نص العملية التي يجب توفيرها لنجاح التنفيذ.
  • Consumers: multiple
  • Value type: array
  • Value schema: {"type": "array", "items": {"type": "string"}}
  • Injected by: scripts/utils/operation_metadata_enricher.py
  • Driven by config: config/operation_metadata.yaml
  • Example: "x-f5xc-required-fields": ["metadata.name", "spec.domains"]
  • Pass-through from upstream: no
  • Applied at: operation
  • Purpose: يصنّف نطاق تأثير العملية (منخفض/متوسط/مرتفع/حرج).
  • Consumers: multiple
  • Value type: string
  • Value schema: {"type": "string", "enum": ["low", "medium", "high", "critical"]}
  • Injected by: scripts/utils/operation_metadata_enricher.py
  • Driven by config: config/operation_metadata.yaml
  • Example: "x-f5xc-danger-level": "high"
  • Pass-through from upstream: no
  • Applied at: operation
  • Purpose: ما إذا كان CLI أو واجهة المستخدم يجب أن يطلب من المستخدم التأكيد قبل التنفيذ.
  • Consumers: multiple
  • Value type: boolean
  • Value schema: {"type": "boolean"}
  • Injected by: scripts/utils/operation_metadata_enricher.py
  • Driven by config: config/operation_metadata.yaml
  • Example: "x-f5xc-confirmation-required": true
  • Pass-through from upstream: no
  • Applied at: operation
  • Purpose: يسرد الآثار الجانبية الملحوظة للعملية (إعادة التشغيل، إعادة الضبط، إلخ).
  • Consumers: multiple
  • Value type: array
  • Value schema: {"type": "array", "items": {"type": "string"}}
  • Injected by: scripts/utils/operation_metadata_enricher.py
  • Driven by config: config/operation_metadata.yaml
  • Example: "x-f5xc-side-effects": ["invalidates-cache"]
  • Pass-through from upstream: no
  • Applied at: operation
  • Purpose: وقت الاستجابة المقاس تجريبياً لهذه العملية أثناء الاكتشاف.
  • Consumers: multiple
  • Value type: object
  • Value schema: {"type": "object"}
  • Injected by: scripts/utils/discovery_enricher.py
  • Driven by config: config/discovery_enrichment.yaml
  • Example: "x-f5xc-discovered-response-time": {"p50_ms": 40, "p95_ms": 120}
  • Pass-through from upstream: no
  • Applied at: operation
  • Purpose: حدود المعدل المرصودة / السلوك المرصود من الـ API المباشر.
  • Consumers: multiple
  • Value type: object
  • Value schema: {"type": "object"}
  • Injected by: scripts/utils/discovery_enricher.py
  • Driven by config: config/discovery_enrichment.yaml
  • Example: "x-f5xc-discovered-rate-limits": {"limit": 100, "window_s": 60}
  • Pass-through from upstream: no
  • Applied at: operation
  • Purpose: كتالوج استجابات الأخطاء المرصودة أثناء الاكتشاف المباشر، مع عيّنات من البيانات.
  • Consumers: multiple
  • Value type: array
  • Value schema: {"type": "array", "items": {"type": "object"}}
  • Injected by: scripts/utils/discovery_enricher.py
  • Driven by config: config/discovery_enrichment.yaml
  • Example: "x-f5xc-discovered-error-catalog": [{"status": 400, "reason": "bad_request"}]
  • Pass-through from upstream: no

مُضاف — على مستوى الفهرس (بيانات تعريفية للنطاق)

Section titled “مُضاف — على مستوى الفهرس (بيانات تعريفية للنطاق)”
  • Applied at: info
  • Purpose: فئة التجميع العليا لـ CLI / واجهة المستخدم / المستندات / Terraform لنطاق معين.
  • Consumers: multiple
  • Value type: string
  • Value schema: {"type": "string"}
  • Injected by: scripts/merge_specs.py
  • Driven by config: config/domain_patterns.yaml
  • Example: "x-f5xc-category": "networking"
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: قائمة أنواع الموارد الرئيسية التي تُعرّف النطاق.
  • Consumers: multiple
  • Value type: array
  • Value schema: {"type": "array", "items": {"type": "string"}}
  • Injected by: scripts/merge_specs.py
  • Driven by config: config/domain_patterns.yaml
  • Example: "x-f5xc-primary-resources": ["http_loadbalancer"]
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: الموارد التي تستلزم عناية خاصة (حرجة للإنتاج).
  • Consumers: multiple
  • Value type: array
  • Value schema: {"type": "array", "items": {"type": "string"}}
  • Injected by: scripts/merge_specs.py
  • Driven by config: config/critical_resources.yaml
  • Example: "x-f5xc-critical-resources": ["tls_certificate"]
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: وصف مختصر للنطاق (~60 حرفاً). ينطبق أيضاً على مستوى الخاصية للأوصاف الطويلة.
  • Consumers: multiple
  • Value type: string
  • Value schema: {"type": "string"}
  • Injected by: scripts/utils/property_description_short_enricher.py
  • Driven by config: config/property_description_short.yaml
  • Example: "x-f5xc-description-short": "Layer-7 HTTPS load balancing."
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: وصف متوسط للنطاق (~150 حرفاً). ينطبق أيضاً على مستوى الخاصية.
  • Consumers: multiple
  • Value type: string
  • Value schema: {"type": "string"}
  • Injected by: scripts/utils/property_description_short_enricher.py
  • Driven by config: config/property_description_short.yaml
  • Example: "x-f5xc-description-medium": "HTTP/HTTPS load balancer with advanced routing, WAF, and TLS."
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: وصف طويل للنطاق (~500 حرف).
  • Consumers: multiple
  • Value type: string
  • Value schema: {"type": "string"}
  • Injected by: scripts/utils/description_enricher.py
  • Driven by config: config/domain_descriptions.yaml
  • Example: "x-f5xc-description-long": "Full paragraph describing the domain..."
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: مستوى التعقيد النسبي لتأليف التكوينات في هذا النطاق.
  • Consumers: multiple
  • Value type: string
  • Value schema: {"type": "string", "enum": ["low", "medium", "high"]}
  • Injected by: scripts/merge_specs.py
  • Driven by config: config/domain_patterns.yaml
  • Example: "x-f5xc-complexity": "medium"
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: الحد الأدنى من مستوى اشتراك F5 XC المطلوب.
  • Consumers: multiple
  • Value type: string
  • Value schema: {"type": "string"}
  • Injected by: scripts/merge_specs.py
  • Driven by config: config/domain_patterns.yaml
  • Example: "x-f5xc-requires-tier": "enterprise"
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: يضع علامة على النطاق باعتباره ميزة معاينة / تجريبية.
  • Consumers: multiple
  • Value type: boolean
  • Value schema: {"type": "boolean"}
  • Injected by: scripts/merge_specs.py
  • Driven by config: config/domain_patterns.yaml
  • Example: "x-f5xc-is-preview": false
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: حالات الاستخدام المسمّاة التي يدعمها هذا النطاق.
  • Consumers: multiple
  • Value type: array
  • Value schema: {"type": "array", "items": {"type": "string"}}
  • Injected by: scripts/merge_specs.py
  • Driven by config: config/domain_patterns.yaml
  • Example: "x-f5xc-use-cases": ["tls-termination", "waf"]
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: معرّف الأيقونة المستخدمة عند عرض هذا النطاق في واجهة المستخدم.
  • Consumers: Web UI
  • Value type: string
  • Value schema: {"type": "string"}
  • Injected by: scripts/merge_specs.py
  • Driven by config: config/domain_patterns.yaml
  • Example: "x-f5xc-icon": "f5xc:load-balancer"
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: SVG مضمّن (أو مسار) لشعار علامة تجارية يمثّل النطاق.
  • Consumers: Web UI
  • Value type: string
  • Value schema: {"type": "string"}
  • Injected by: scripts/merge_specs.py
  • Driven by config: config/domain_patterns.yaml
  • Example: "x-f5xc-logo-svg": "<svg>...</svg>"
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: روابط تقاطع مع نطاقات أخرى تُستخدم عادةً معاً مع هذا النطاق.
  • Consumers: multiple
  • Value type: array
  • Value schema: {"type": "array", "items": {"type": "string"}}
  • Injected by: scripts/merge_specs.py
  • Driven by config: config/domain_patterns.yaml
  • Example: "x-f5xc-related-domains": ["origin_pool", "tls_certificate"]
  • Pass-through from upstream: no
  • Applied at: info
  • Purpose: الاسم المختصر لقسم التوثيق / مجموعة التنقل في المستندات المُصيَّرة.
  • Consumers: multiple
  • Value type: string
  • Value schema: {"type": "string"}
  • Injected by: scripts/merge_specs.py
  • Driven by config: config/domain_patterns.yaml
  • Example: "x-f5xc-doc-section": "load-balancing"
  • Pass-through from upstream: no

مُمرَّر من المصدر الأصلي

Section titled “مُمرَّر من المصدر الأصلي”
  • Applied at: upstream
  • Purpose: محفوظ دون تغيير من مواصفة F5 الأصلية.
  • Consumers: N/A
  • Value type: varies
  • Value schema: N/A
  • Injected by: upstream
  • Driven by config: upstream
  • Example: "x-ves-proto-package": "ves.io.schema.virtual_host"
  • Pass-through from upstream: yes
  • Applied at: upstream
  • Purpose: محفوظ دون تغيير من مواصفة F5 الأصلية.
  • Consumers: N/A
  • Value type: varies
  • Value schema: N/A
  • Injected by: upstream
  • Driven by config: upstream
  • Example: "x-ves-proto-file": "ves.io/schema/virtual_host/types.proto"
  • Pass-through from upstream: yes
  • Applied at: upstream
  • Purpose: محفوظ دون تغيير من مواصفة F5 الأصلية.
  • Consumers: N/A
  • Value type: varies
  • Value schema: N/A
  • Injected by: upstream
  • Driven by config: upstream
  • Example: "x-ves-proto-message": "ves.io.schema.virtual_host.CreateSpecType"
  • Pass-through from upstream: yes
  • Applied at: upstream
  • Purpose: محفوظ دون تغيير من مواصفة F5 الأصلية.
  • Consumers: N/A
  • Value type: varies
  • Value schema: N/A
  • Injected by: upstream
  • Driven by config: upstream
  • Example: "x-ves-proto-service": "ves.io.schema.virtual_host.API"
  • Pass-through from upstream: yes
  • Applied at: upstream
  • Purpose: محفوظ دون تغيير من مواصفة F5 الأصلية.
  • Consumers: N/A
  • Value type: varies
  • Value schema: N/A
  • Injected by: upstream
  • Driven by config: upstream
  • Example: "x-ves-proto-rpc": "ves.io.schema.api_sec.api_crawler.API.Create"
  • Pass-through from upstream: yes
  • Applied at: upstream
  • Purpose: محفوظ دون تغيير من مواصفة F5 الأصلية.
  • Consumers: N/A
  • Value type: varies
  • Value schema: N/A
  • Injected by: upstream
  • Driven by config: upstream
  • Example: "x-displayname": "Namespace"
  • Pass-through from upstream: yes
  • Applied at: upstream
  • Purpose: محفوظ دون تغيير من مواصفة F5 الأصلية.
  • Consumers: N/A
  • Value type: varies
  • Value schema: N/A
  • Injected by: upstream
  • Driven by config: upstream
  • Example: راجع وثائق F5 الأصلية.
  • Pass-through from upstream: yes
  • Applied at: upstream
  • Purpose: محفوظ دون تغيير من مواصفة F5 الأصلية.
  • Consumers: N/A
  • Value type: varies
  • Value schema: N/A
  • Injected by: upstream
  • Driven by config: upstream
  • Example: راجع وثائق F5 الأصلية.
  • Pass-through from upstream: yes
  • Applied at: upstream
  • Purpose: محفوظ دون تغيير من مواصفة F5 الأصلية.
  • Consumers: N/A
  • Value type: varies
  • Value schema: N/A
  • Injected by: upstream
  • Driven by config: upstream
  • Example: راجع وثائق F5 الأصلية.
  • Pass-through from upstream: yes
  • Applied at: schema property
  • Purpose: مفتاح الخاصية الأصلي من المصدر الذي يجب إرساله في الطلب. تعيد المنطقة الوسيطة تسمية أسماء الخصائص المكتوبة بشكل خاطئ في F5 وتسجل المفتاح الأصلي هنا، لأن خادم F5 لا يقبل سوى التهجئة الأصلية.
  • Consumers: Terraform
  • Value type: string
  • Value schema: {"type": "string"}
  • Injected by: upstream (f5-sales-demo/api-specs)
  • Driven by config: upstream
  • Example: "blocked_service": {"x-f5xc-wire-name": "blocked_sevice"}
  • Pass-through from upstream: yes