跳转到主要内容
# =============================================================
# 4. DICTIONARY (数据字典)
# 定义协议的准入边界与产出物数据结构(Artifacts)
# =============================================================
dictionary:
  # Ingress: 输入准入规则
  inputs:
    - name: "target_asin"
      type: "string"
      pattern: "^[A-Z0-9]{10}$"
      required: true
    - name: "priority"
      type: "enum"
      values: ["standard", "high"]
      default: "standard"

  # Artifacts: 交付资产声明(协议仅定义数据契约,不定义交付方式)
  artifacts:
    - id: "selection_report_data"
      type: "DATA_OBJECT"
      description: "选品最终评估核心数据集"
      schema:
        type: "object"
        required: ["decision", "confidence"]
        properties:
          decision: { "type": "string", "enum": ["GO", "NO_GO"] }
          confidence: { "type": "number", "minimum": 0, "maximum": 1 }
          analysis_summary: { "type": "string" }
          estimated_roi: { "type": "number" }

1、Namespace (变量命名空间) 规范

定义协议内部所有参数的唯一寻址路径。变量命名必须遵循 snake_case
  • inputs.<key>全局只读域。由协议启动时外部注入的初始业务参数。
  • steps.<node_id>.<key>节点局部域。存储特定逻辑节点执行后的中间产物或最终结果。
  • data.<source_id>.<key>外部拉取域。通过 external_data 动获取的结构化信息快照。
  • env.<key>环境私密域。由执行引擎在运行时注入的受保护密钥、API Tokens。
  • system.<key>系统元数据域。引擎生成的运行状态,如 trace_id, timestamp, runtime_version
  • outputs.<key>交付资产域。定义最终对外分发的报文、文件或可视化报告。

2、Strong Typing (强类型约束) 规范

所有声明的变量必须强制指定物理类型,执行引擎在节点入栈前进行 Type Assertion (类型断言)
类型关键字描述说明核心约束参数 (Constraints)
string文本字符串pattern (正则), min_len, max_len
number数值(整型/浮点)min, max, precision (精度控制)
boolean布尔逻辑N/A
enum枚举值options (合法值白名单列表)
json结构化对象schema_ref (JSON Schema), export_as_file (是否转为文件)
html可视化资产template_ref (模板 ID), css_theme (样式主题)
array数组列表items_type (成员类型), min_items
file原始文件流extensions (后缀限制), max_size (单位 MB)

3、Inputs 输入准入规则

Inputs 是协议启动的先决条件。它采用主动校验模式,在任何逻辑节点运行前进行阻断式检查。
参数名必填类型说明
nameString变量名称。在后续 Topology 中通过 {{inputs.name}} 引用。
typeEnum数据类型。支持 string, number, boolean, enum
patternRegex正则约束。针对 string 类型,如 ASIN 码或 SKU 格式。
valuesArray枚举值列表。当 typeenum 时必填,限定合法取值范围。
defaultAny默认值。若调用者未提供该参数,则使用此值。
requiredBool必填标识。若为 true 且调用者未提供及无默认值,引擎拒绝执行。

4、Artifacts 交付资产声明

参数名必填类型说明
idString资产标识。用于在 TERMINUS 节点中通过 artifact_ref 绑定。
typeEnum资产存储类型。目前标准为 DATA_OBJECT(纯结构化数据)。
descriptionString资产描述。定义该产出物在业务上的含义。
schemaObjectJSON Schema 标准约束。定义输出数据的字段名、类型、必填项及数值范围。