@ifsoul/core 0.3.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/README.md +30 -33
  2. package/dist/packages/memory/src/sql.js +54 -5
  3. package/dist/packages/protocol/src/generated/validators.cjs +1 -1
  4. package/dist/packages/protocol/src/index.d.ts +1 -6
  5. package/dist/packages/protocol/src/index.js +3 -16
  6. package/dist/packages/protocol/src/types.d.ts +1 -1
  7. package/dist/packages/runtime/src/behavior-types.d.ts +150 -0
  8. package/dist/packages/runtime/src/behavior-types.js +1 -0
  9. package/dist/packages/runtime/src/behavior.d.ts +40 -0
  10. package/dist/packages/runtime/src/behavior.js +621 -0
  11. package/dist/packages/runtime/src/group-scheduler.d.ts +165 -0
  12. package/dist/packages/runtime/src/group-scheduler.js +647 -0
  13. package/dist/packages/runtime/src/index.d.ts +4 -0
  14. package/dist/packages/runtime/src/index.js +4 -1
  15. package/dist/packages/runtime/src/participants.d.ts +107 -0
  16. package/dist/packages/runtime/src/participants.js +309 -0
  17. package/dist/packages/runtime/src/types.d.ts +1 -0
  18. package/package.json +2 -3
  19. package/packages/protocol/schemas/current/archive.schema.json +16 -16
  20. package/packages/protocol/schemas/current/character.schema.json +21 -21
  21. package/packages/protocol/schemas/current/common.schema.json +15 -15
  22. package/packages/protocol/schemas/current/context.schema.json +24 -24
  23. package/packages/protocol/schemas/current/conversation.schema.json +39 -39
  24. package/packages/protocol/schemas/current/environment.schema.json +18 -18
  25. package/packages/protocol/schemas/current/memory.schema.json +66 -66
  26. package/packages/protocol/schemas/current/model-provider.schema.json +40 -40
  27. package/packages/protocol/schemas/current/planning.schema.json +61 -61
  28. package/packages/protocol/schemas/current/provider-common.schema.json +6 -6
  29. package/release.json +7 -12
  30. package/specs/README.md +3 -86
  31. package/specs/current/README.md +3 -5
  32. package/specs/current/examples/archive-fork.json +12 -12
  33. package/specs/current/examples/archive-resume.json +12 -12
  34. package/specs/current/examples/character-instance.json +1 -1
  35. package/specs/current/examples/character-template.json +1 -1
  36. package/specs/current/examples/context-after-inspection.json +1 -1
  37. package/specs/current/examples/context-chat.json +1 -1
  38. package/specs/current/examples/context-daily.json +1 -1
  39. package/specs/current/examples/context-no-speech.json +1 -1
  40. package/specs/current/examples/conversation-delivery.json +1 -1
  41. package/specs/current/examples/conversation-live-request.json +1 -1
  42. package/specs/current/examples/conversation-live-response.json +1 -1
  43. package/specs/current/examples/conversation-no-speech-request.json +1 -1
  44. package/specs/current/examples/conversation-no-speech-response.json +1 -1
  45. package/specs/current/examples/conversation-requested-request.json +1 -1
  46. package/specs/current/examples/conversation-requested-response.json +1 -1
  47. package/specs/current/examples/environment-chat.json +1 -1
  48. package/specs/current/examples/environment-game.json +1 -1
  49. package/specs/current/examples/environment-no-speech.json +1 -1
  50. package/specs/current/examples/intent-checkpoint.json +1 -1
  51. package/specs/current/examples/memory-episode.json +1 -1
  52. package/specs/current/examples/memory-event-conversation.json +1 -1
  53. package/specs/current/examples/memory-event-observed.json +2 -2
  54. package/specs/current/examples/memory-event-plan-proposal.json +2 -2
  55. package/specs/current/examples/memory-event-proposed.json +2 -2
  56. package/specs/current/examples/memory-fact.json +1 -1
  57. package/specs/current/examples/memory-relationship.json +1 -1
  58. package/specs/current/examples/memory-working-context.json +1 -1
  59. package/specs/current/examples/plan-cancel-request.json +1 -1
  60. package/specs/current/examples/plan-cancel-result.json +1 -1
  61. package/specs/current/examples/plan-daily.json +1 -1
  62. package/specs/current/examples/plan-partial-decision.json +1 -1
  63. package/specs/current/examples/portable-memory.jsonl +9 -9
  64. package/specs/current/examples/task-outcome.json +1 -1
  65. package/specs/current/examples/task-progress.json +1 -1
  66. package/specs/current/model-provider/examples/capabilities.json +1 -1
  67. package/specs/current/model-provider/examples/error.json +1 -1
  68. package/specs/current/model-provider/examples/request.json +1 -1
  69. package/specs/current/model-provider/examples/response.json +1 -1
  70. package/docs/npm-publishing.md +0 -44
  71. package/packages/protocol/schemas/action-result.schema.json +0 -187
  72. package/packages/protocol/schemas/action.schema.json +0 -68
  73. package/packages/protocol/schemas/archive-manifest.schema.json +0 -126
  74. package/packages/protocol/schemas/capability.schema.json +0 -131
  75. package/packages/protocol/schemas/character-instance.schema.json +0 -73
  76. package/packages/protocol/schemas/character-template.schema.json +0 -67
  77. package/packages/protocol/schemas/common.schema.json +0 -154
  78. package/packages/protocol/schemas/derived-memory.schema.json +0 -145
  79. package/packages/protocol/schemas/memory-event.schema.json +0 -123
  80. package/packages/protocol/schemas/model-provider.schema.json +0 -326
  81. package/packages/protocol/schemas/perception.schema.json +0 -89
  82. package/packages/protocol/schemas/permission-policy.schema.json +0 -153
  83. package/packages/protocol/schemas/v0.2/archive.schema.json +0 -205
  84. package/packages/protocol/schemas/v0.2/character.schema.json +0 -344
  85. package/packages/protocol/schemas/v0.2/common.schema.json +0 -239
  86. package/packages/protocol/schemas/v0.2/context.schema.json +0 -230
  87. package/packages/protocol/schemas/v0.2/conversation.schema.json +0 -340
  88. package/packages/protocol/schemas/v0.2/environment.schema.json +0 -244
  89. package/packages/protocol/schemas/v0.2/memory.schema.json +0 -495
  90. package/packages/protocol/schemas/v0.2/planning.schema.json +0 -443
  91. package/packages/protocol/schemas/world-event.schema.json +0 -74
  92. package/specs/character/README.md +0 -84
  93. package/specs/character/examples/archive-manifest.json +0 -32
  94. package/specs/character/examples/character-instance.json +0 -20
  95. package/specs/character/examples/character-template.json +0 -19
  96. package/specs/memory/README.md +0 -80
  97. package/specs/memory/examples/derived-memory.json +0 -21
  98. package/specs/memory/examples/memory-event.json +0 -35
  99. package/specs/model-provider/README.md +0 -85
  100. package/specs/model-provider/examples/capabilities.json +0 -10
  101. package/specs/model-provider/examples/error.json +0 -18
  102. package/specs/model-provider/examples/request.json +0 -17
  103. package/specs/model-provider/examples/response.json +0 -19
  104. package/specs/v0.2/README.md +0 -421
  105. package/specs/v0.2/examples/archive-fork.json +0 -64
  106. package/specs/v0.2/examples/archive-resume.json +0 -63
  107. package/specs/v0.2/examples/character-instance.json +0 -57
  108. package/specs/v0.2/examples/character-template.json +0 -45
  109. package/specs/v0.2/examples/context-after-inspection.json +0 -44
  110. package/specs/v0.2/examples/context-chat.json +0 -27
  111. package/specs/v0.2/examples/context-daily.json +0 -69
  112. package/specs/v0.2/examples/context-no-speech.json +0 -27
  113. package/specs/v0.2/examples/conversation-delivery.json +0 -17
  114. package/specs/v0.2/examples/conversation-live-request.json +0 -31
  115. package/specs/v0.2/examples/conversation-live-response.json +0 -23
  116. package/specs/v0.2/examples/conversation-no-speech-request.json +0 -23
  117. package/specs/v0.2/examples/conversation-no-speech-response.json +0 -22
  118. package/specs/v0.2/examples/conversation-requested-request.json +0 -31
  119. package/specs/v0.2/examples/conversation-requested-response.json +0 -23
  120. package/specs/v0.2/examples/environment-chat.json +0 -43
  121. package/specs/v0.2/examples/environment-game.json +0 -80
  122. package/specs/v0.2/examples/environment-no-speech.json +0 -47
  123. package/specs/v0.2/examples/intent-checkpoint.json +0 -29
  124. package/specs/v0.2/examples/memory-episode.json +0 -28
  125. package/specs/v0.2/examples/memory-event-conversation.json +0 -32
  126. package/specs/v0.2/examples/memory-event-observed.json +0 -50
  127. package/specs/v0.2/examples/memory-event-plan-proposal.json +0 -82
  128. package/specs/v0.2/examples/memory-event-proposed.json +0 -53
  129. package/specs/v0.2/examples/memory-fact.json +0 -23
  130. package/specs/v0.2/examples/memory-relationship.json +0 -25
  131. package/specs/v0.2/examples/memory-working-context.json +0 -24
  132. package/specs/v0.2/examples/plan-cancel-request.json +0 -16
  133. package/specs/v0.2/examples/plan-cancel-result.json +0 -21
  134. package/specs/v0.2/examples/plan-daily.json +0 -57
  135. package/specs/v0.2/examples/plan-partial-decision.json +0 -28
  136. package/specs/v0.2/examples/portable-memory.jsonl +0 -9
  137. package/specs/v0.2/examples/task-outcome.json +0 -21
  138. package/specs/v0.2/examples/task-progress.json +0 -19
  139. package/specs/world-adapter/README.md +0 -114
  140. package/specs/world-adapter/examples/action-result-unknown.json +0 -23
  141. package/specs/world-adapter/examples/action-result.json +0 -45
  142. package/specs/world-adapter/examples/action.json +0 -17
  143. package/specs/world-adapter/examples/capability.json +0 -44
  144. package/specs/world-adapter/examples/perception.json +0 -30
  145. package/specs/world-adapter/examples/permission-decision.json +0 -14
  146. package/specs/world-adapter/examples/permission-policy.json +0 -17
  147. package/specs/world-adapter/examples/world-event.json +0 -25
@@ -1,67 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "urn:ifsoul:protocol:draft-0.1.0:character-template",
4
- "type": "object",
5
- "properties": {
6
- "schemaVersion": {
7
- "const": "draft-0.1.0"
8
- },
9
- "kind": {
10
- "const": "character-template"
11
- },
12
- "templateId": {
13
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
14
- },
15
- "revision": {
16
- "type": "integer",
17
- "minimum": 1
18
- },
19
- "profile": {
20
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/profile"
21
- },
22
- "provenance": {
23
- "type": "object",
24
- "properties": {
25
- "authors": {
26
- "type": "array",
27
- "items": {
28
- "type": "string",
29
- "minLength": 1
30
- },
31
- "minItems": 1,
32
- "uniqueItems": true
33
- },
34
- "license": {
35
- "type": "string",
36
- "minLength": 1
37
- },
38
- "source": {
39
- "type": "string",
40
- "minLength": 1
41
- }
42
- },
43
- "required": ["authors", "license"],
44
- "additionalProperties": false
45
- },
46
- "extensions": {
47
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/extensions"
48
- },
49
- "requiredExtensions": {
50
- "type": "array",
51
- "items": {
52
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/extensionName"
53
- },
54
- "minItems": 0,
55
- "uniqueItems": true
56
- }
57
- },
58
- "required": [
59
- "schemaVersion",
60
- "kind",
61
- "templateId",
62
- "revision",
63
- "profile",
64
- "provenance"
65
- ],
66
- "additionalProperties": false
67
- }
@@ -1,154 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "urn:ifsoul:protocol:draft-0.1.0:common",
4
- "description": "Shared definitions, not an exchange document.",
5
- "$defs": {
6
- "id": {
7
- "type": "string",
8
- "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$"
9
- },
10
- "utcTimestamp": {
11
- "type": "string",
12
- "format": "date-time",
13
- "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d{1,9})?Z$"
14
- },
15
- "extensionName": {
16
- "type": "string",
17
- "pattern": "^[a-z][a-z0-9-]*(?:\\.[a-z][a-z0-9-]*)+$"
18
- },
19
- "extensions": {
20
- "type": "object",
21
- "propertyNames": {
22
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/extensionName"
23
- },
24
- "additionalProperties": true
25
- },
26
- "jsonObject": {
27
- "type": "object",
28
- "additionalProperties": true
29
- },
30
- "jsonSchema": {
31
- "type": "object",
32
- "description": "A JSON Schema 2020-12 object; meta-validation and reference policy are separate checks.",
33
- "additionalProperties": true
34
- },
35
- "worldTime": {
36
- "type": "object",
37
- "properties": {
38
- "timelineId": {
39
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
40
- },
41
- "tick": {
42
- "type": "integer",
43
- "minimum": 0,
44
- "maximum": 9007199254740991
45
- }
46
- },
47
- "required": ["timelineId", "tick"],
48
- "additionalProperties": false
49
- },
50
- "scope": {
51
- "type": "object",
52
- "properties": {
53
- "audience": {
54
- "enum": ["private", "participants", "public"]
55
- },
56
- "subjectIds": {
57
- "type": "array",
58
- "items": {
59
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
60
- },
61
- "minItems": 0,
62
- "uniqueItems": true
63
- },
64
- "export": {
65
- "enum": ["allowed", "consent-required", "forbidden"]
66
- }
67
- },
68
- "required": ["audience", "subjectIds", "export"],
69
- "additionalProperties": false
70
- },
71
- "profile": {
72
- "type": "object",
73
- "properties": {
74
- "name": {
75
- "type": "string",
76
- "minLength": 1
77
- },
78
- "description": {
79
- "type": "string",
80
- "minLength": 1
81
- },
82
- "traits": {
83
- "type": "object",
84
- "propertyNames": {
85
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
86
- },
87
- "additionalProperties": {
88
- "anyOf": [
89
- {
90
- "type": "string"
91
- },
92
- {
93
- "type": "number"
94
- },
95
- {
96
- "type": "boolean"
97
- }
98
- ]
99
- }
100
- }
101
- },
102
- "required": ["name", "description", "traits"],
103
- "additionalProperties": false
104
- },
105
- "error": {
106
- "type": "object",
107
- "properties": {
108
- "code": {
109
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
110
- },
111
- "message": {
112
- "type": "string",
113
- "minLength": 1
114
- },
115
- "retry": {
116
- "enum": [
117
- "never",
118
- "after-correction",
119
- "same-request",
120
- "reconcile-first"
121
- ]
122
- },
123
- "retryAfterMs": {
124
- "type": "integer",
125
- "minimum": 0,
126
- "maximum": 9007199254740991
127
- }
128
- },
129
- "required": ["code", "message", "retry"],
130
- "additionalProperties": false
131
- },
132
- "usage": {
133
- "type": "object",
134
- "properties": {
135
- "inputTokens": {
136
- "type": "integer",
137
- "minimum": 0,
138
- "maximum": 9007199254740991
139
- },
140
- "outputTokens": {
141
- "type": "integer",
142
- "minimum": 0,
143
- "maximum": 9007199254740991
144
- },
145
- "estimated": {
146
- "type": "boolean"
147
- }
148
- },
149
- "required": ["inputTokens", "outputTokens", "estimated"],
150
- "additionalProperties": false
151
- }
152
- },
153
- "not": {}
154
- }
@@ -1,145 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "urn:ifsoul:protocol:draft-0.1.0:derived-memory",
4
- "type": "object",
5
- "properties": {
6
- "schemaVersion": {
7
- "const": "draft-0.1.0"
8
- },
9
- "kind": {
10
- "const": "derived-memory"
11
- },
12
- "memoryId": {
13
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
14
- },
15
- "characterId": {
16
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
17
- },
18
- "createdAt": {
19
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/utcTimestamp"
20
- },
21
- "scope": {
22
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/scope"
23
- },
24
- "sourceEventIds": {
25
- "type": "array",
26
- "items": {
27
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
28
- },
29
- "minItems": 1,
30
- "uniqueItems": true
31
- },
32
- "derivation": {
33
- "type": "object",
34
- "properties": {
35
- "algorithmId": {
36
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
37
- },
38
- "algorithmVersion": {
39
- "type": "string",
40
- "minLength": 1
41
- },
42
- "modelId": {
43
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
44
- }
45
- },
46
- "required": ["algorithmId", "algorithmVersion"],
47
- "additionalProperties": false
48
- },
49
- "payload": {
50
- "oneOf": [
51
- {
52
- "type": "object",
53
- "properties": {
54
- "type": {
55
- "const": "fact"
56
- },
57
- "text": {
58
- "type": "string",
59
- "minLength": 1
60
- }
61
- },
62
- "required": ["type", "text"],
63
- "additionalProperties": false
64
- },
65
- {
66
- "type": "object",
67
- "properties": {
68
- "type": {
69
- "const": "relationship"
70
- },
71
- "subjectId": {
72
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
73
- },
74
- "relation": {
75
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
76
- },
77
- "objectId": {
78
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
79
- },
80
- "description": {
81
- "type": "string",
82
- "minLength": 1
83
- }
84
- },
85
- "required": ["type", "subjectId", "relation", "objectId"],
86
- "additionalProperties": false
87
- },
88
- {
89
- "type": "object",
90
- "properties": {
91
- "type": {
92
- "const": "summary"
93
- },
94
- "text": {
95
- "type": "string",
96
- "minLength": 1
97
- }
98
- },
99
- "required": ["type", "text"],
100
- "additionalProperties": false
101
- },
102
- {
103
- "type": "object",
104
- "properties": {
105
- "type": {
106
- "const": "embedding"
107
- },
108
- "vector": {
109
- "type": "array",
110
- "items": {
111
- "type": "number"
112
- },
113
- "minItems": 1
114
- }
115
- },
116
- "required": ["type", "vector"],
117
- "additionalProperties": false
118
- }
119
- ]
120
- },
121
- "extensions": {
122
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/extensions"
123
- },
124
- "requiredExtensions": {
125
- "type": "array",
126
- "items": {
127
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/extensionName"
128
- },
129
- "minItems": 0,
130
- "uniqueItems": true
131
- }
132
- },
133
- "required": [
134
- "schemaVersion",
135
- "kind",
136
- "memoryId",
137
- "characterId",
138
- "createdAt",
139
- "scope",
140
- "sourceEventIds",
141
- "derivation",
142
- "payload"
143
- ],
144
- "additionalProperties": false
145
- }
@@ -1,123 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "urn:ifsoul:protocol:draft-0.1.0:memory-event",
4
- "type": "object",
5
- "properties": {
6
- "schemaVersion": {
7
- "const": "draft-0.1.0"
8
- },
9
- "kind": {
10
- "const": "memory-event"
11
- },
12
- "eventId": {
13
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
14
- },
15
- "characterId": {
16
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
17
- },
18
- "worldId": {
19
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
20
- },
21
- "sessionId": {
22
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
23
- },
24
- "source": {
25
- "type": "object",
26
- "properties": {
27
- "sourceId": {
28
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
29
- },
30
- "kind": {
31
- "enum": ["world-adapter", "runtime", "user", "import"]
32
- },
33
- "sequence": {
34
- "type": "integer",
35
- "minimum": 0,
36
- "maximum": 9007199254740991
37
- }
38
- },
39
- "required": ["sourceId", "kind", "sequence"],
40
- "additionalProperties": false
41
- },
42
- "observerId": {
43
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
44
- },
45
- "recordedAt": {
46
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/utcTimestamp"
47
- },
48
- "worldTime": {
49
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/worldTime"
50
- },
51
- "scope": {
52
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/scope"
53
- },
54
- "payload": {
55
- "type": "object",
56
- "properties": {
57
- "type": {
58
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
59
- },
60
- "data": {
61
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/jsonObject"
62
- }
63
- },
64
- "required": ["type", "data"],
65
- "additionalProperties": false
66
- },
67
- "provenance": {
68
- "type": "object",
69
- "properties": {
70
- "eventIds": {
71
- "type": "array",
72
- "items": {
73
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
74
- },
75
- "minItems": 0,
76
- "uniqueItems": true
77
- },
78
- "worldEventIds": {
79
- "type": "array",
80
- "items": {
81
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/id"
82
- },
83
- "minItems": 0,
84
- "uniqueItems": true
85
- }
86
- },
87
- "required": ["eventIds", "worldEventIds"],
88
- "additionalProperties": false
89
- },
90
- "confidence": {
91
- "type": "number",
92
- "minimum": 0,
93
- "maximum": 1
94
- },
95
- "extensions": {
96
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/extensions"
97
- },
98
- "requiredExtensions": {
99
- "type": "array",
100
- "items": {
101
- "$ref": "urn:ifsoul:protocol:draft-0.1.0:common#/$defs/extensionName"
102
- },
103
- "minItems": 0,
104
- "uniqueItems": true
105
- }
106
- },
107
- "required": [
108
- "schemaVersion",
109
- "kind",
110
- "eventId",
111
- "characterId",
112
- "worldId",
113
- "sessionId",
114
- "source",
115
- "observerId",
116
- "recordedAt",
117
- "worldTime",
118
- "scope",
119
- "payload",
120
- "provenance"
121
- ],
122
- "additionalProperties": false
123
- }