{
  "name": "sample-agent-ledger-csv",
  "version": "1.0",
  "source": {
    "kind": "csv",
    "files": {
      "audit_log": "agent_events-sample.csv"
    }
  },
  "map": {
    "audit_log.id": "ticket",
    "audit_log.timestamp": "when_utc",
    "audit_log.agent_id": "agent_ref",
    "audit_log.subject_principal": "delegated_for",
    "audit_log.authority_commitment": "mandate_ref",
    "audit_log.model_artifact_source": "model_host",
    "audit_log.model_artifact_revision": "model_tag",
    "audit_log.model_artifact_digest": "model_weight_digest",
    "audit_log.tool_name": "action",
    "audit_log.input_hash": "args_digest",
    "audit_log.output_hash": "result_digest",
    "audit_log.decision": "verdict",
    "audit_log.outcome_class": "end_state",
    "audit_log.parent_id": "parent_ticket",
    "audit_log.data_class": "data_bucket",
    "audit_log.data_purpose": "purpose_code"
  },
  "notes": "示例映射契约：把一份客户 CSV 执行日志的列名，对到八项技术项要求的逻辑字段上。刻意不映射 scope_grant_id / approval_id / input_guard / output_guard / anomaly_flags / retention_until / current_hash，也不提供 scope_grants、approval_bindings、anomalies、kill_switch_events 四张表 —— 这些格子必须如实判「无字段」。你的账本照这份结构改写 map 段即可；映射不上就是无字段，不按列名相似度猜。"
}