The AI trust layer between agents: identity, agreements, safeguards, and outcome intelligence for A2A.

Viewing files at commit 922a6b480fb8Commit detailsView latest

schemas/v0.1/source_record_envelope.schema.json 150 lines · 3.5 KB · json
1
{
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
  "type": "object",
4
  "properties": {
5
    "eventId": {
6
      "type": "string",
7
      "format": "uuid",
8
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
9
    },
10
    "operatorId": {
11
      "type": "string",
12
      "minLength": 1
13
    },
14
    "kind": {
15
      "type": "string",
16
      "pattern": "^[a-z][a-z0-9_]*$"
17
    },
18
    "recordId": {
19
      "type": "string",
20
      "minLength": 1
21
    },
22
    "schemaName": {
23
      "type": "string",
24
      "minLength": 1
25
    },
26
    "schemaVersion": {
27
      "type": "string",
28
      "minLength": 1
29
    },
30
    "payload": {
31
      "$ref": "#/$defs/__schema0"
32
    },
33
    "payloadDigest": {
34
      "type": "string",
35
      "pattern": "^[a-zA-Z0-9_-]{43}$"
36
    },
37
    "entityRefs": {
38
      "default": {},
39
      "type": "object",
40
      "propertyNames": {
41
        "type": "string"
42
      },
43
      "additionalProperties": {
44
        "type": "string",
45
        "minLength": 1
46
      }
47
    },
48
    "provenance": {
49
      "type": "string",
50
      "enum": [
51
        "self_declared",
52
        "operator_attested",
53
        "cryptographically_verified",
54
        "domain_verified",
55
        "third_party_verified",
56
        "observed",
57
        "disputed"
58
      ]
59
    },
60
    "visibility": {
61
      "type": "string",
62
      "enum": [
63
        "local_only",
64
        "private_requester",
65
        "private_responder",
66
        "shared_participants",
67
        "network_aggregate"
68
      ]
69
    },
70
    "retentionClass": {
71
      "type": "string",
72
      "enum": [
73
        "account",
74
        "audit",
75
        "operational",
76
        "temporary"
77
      ]
78
    },
79
    "learningScope": {
80
      "type": "string",
81
      "enum": [
82
        "not_evaluated",
83
        "excluded",
84
        "local_only",
85
        "network_aggregate"
86
      ]
87
    },
88
    "reportedAt": {
89
      "type": "string",
90
      "format": "date-time",
91
      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
92
    },
93
    "ingestedAt": {
94
      "type": "string",
95
      "format": "date-time",
96
      "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
97
    }
98
  },
99
  "required": [
100
    "eventId",
101
    "operatorId",
102
    "kind",
103
    "recordId",
104
    "schemaName",
105
    "schemaVersion",
106
    "payload",
107
    "payloadDigest",
108
    "entityRefs",
109
    "provenance",
110
    "visibility",
111
    "retentionClass",
112
    "learningScope",
113
    "reportedAt",
114
    "ingestedAt"
115
  ],
116
  "additionalProperties": false,
117
  "$defs": {
118
    "__schema0": {
119
      "anyOf": [
120
        {
121
          "type": "string"
122
        },
123
        {
124
          "type": "number"
125
        },
126
        {
127
          "type": "boolean"
128
        },
129
        {
130
          "type": "null"
131
        },
132
        {
133
          "type": "array",
134
          "items": {
135
            "$ref": "#/$defs/__schema0"
136
          }
137
        },
138
        {
139
          "type": "object",
140
          "propertyNames": {
141
            "type": "string"
142
          },
143
          "additionalProperties": {
144
            "$ref": "#/$defs/__schema0"
145
          }
146
        }
147
      ]
148
    }
149
  }
150
}