@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,6 +1,6 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "urn:ifsoul:protocol:0.3.0:character",
3
+ "$id": "urn:ifsoul:protocol:0.4.0:character",
4
4
  "oneOf": [
5
5
  {
6
6
  "$ref": "#/$defs/template"
@@ -14,13 +14,13 @@
14
14
  "type": "object",
15
15
  "properties": {
16
16
  "schemaVersion": {
17
- "const": "0.3.0"
17
+ "const": "0.4.0"
18
18
  },
19
19
  "kind": {
20
20
  "const": "character-template"
21
21
  },
22
22
  "templateId": {
23
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
23
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
24
24
  },
25
25
  "revision": {
26
26
  "type": "integer",
@@ -59,12 +59,12 @@
59
59
  "additionalProperties": false
60
60
  },
61
61
  "extensions": {
62
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/extensions"
62
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/extensions"
63
63
  },
64
64
  "requiredExtensions": {
65
65
  "type": "array",
66
66
  "items": {
67
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/extensionName"
67
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/extensionName"
68
68
  },
69
69
  "minItems": 0,
70
70
  "maxItems": 16,
@@ -85,25 +85,25 @@
85
85
  "type": "object",
86
86
  "properties": {
87
87
  "schemaVersion": {
88
- "const": "0.3.0"
88
+ "const": "0.4.0"
89
89
  },
90
90
  "kind": {
91
91
  "const": "character-instance"
92
92
  },
93
93
  "characterId": {
94
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
94
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
95
95
  },
96
96
  "participantId": {
97
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
97
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
98
98
  },
99
99
  "createdAt": {
100
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/utc"
100
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/utc"
101
101
  },
102
102
  "template": {
103
103
  "type": "object",
104
104
  "properties": {
105
105
  "templateId": {
106
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
106
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
107
107
  },
108
108
  "revision": {
109
109
  "type": "integer",
@@ -120,7 +120,7 @@
120
120
  "memoryRecordIds": {
121
121
  "type": "array",
122
122
  "items": {
123
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
123
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
124
124
  },
125
125
  "minItems": 0,
126
126
  "uniqueItems": true
@@ -128,7 +128,7 @@
128
128
  "relationshipMemoryIds": {
129
129
  "type": "array",
130
130
  "items": {
131
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
131
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
132
132
  },
133
133
  "minItems": 0,
134
134
  "uniqueItems": true
@@ -142,13 +142,13 @@
142
142
  "enum": ["fork", "import"]
143
143
  },
144
144
  "sourceCharacterId": {
145
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
145
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
146
146
  },
147
147
  "sourceArchiveId": {
148
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
148
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
149
149
  },
150
150
  "recordedAt": {
151
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/utc"
151
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/utc"
152
152
  }
153
153
  },
154
154
  "required": [
@@ -163,12 +163,12 @@
163
163
  "maxItems": 64
164
164
  },
165
165
  "extensions": {
166
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/extensions"
166
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/extensions"
167
167
  },
168
168
  "requiredExtensions": {
169
169
  "type": "array",
170
170
  "items": {
171
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/extensionName"
171
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/extensionName"
172
172
  },
173
173
  "minItems": 0,
174
174
  "maxItems": 16,
@@ -204,7 +204,7 @@
204
204
  "type": "object",
205
205
  "maxProperties": 32,
206
206
  "propertyNames": {
207
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
207
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
208
208
  },
209
209
  "additionalProperties": {
210
210
  "anyOf": [
@@ -227,7 +227,7 @@
227
227
  "type": "object",
228
228
  "properties": {
229
229
  "preferenceId": {
230
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
230
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
231
231
  },
232
232
  "subject": {
233
233
  "type": "string",
@@ -293,7 +293,7 @@
293
293
  "type": "object",
294
294
  "properties": {
295
295
  "goalId": {
296
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
296
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
297
297
  },
298
298
  "description": {
299
299
  "type": "string",
@@ -301,7 +301,7 @@
301
301
  "maxLength": 500
302
302
  },
303
303
  "priority": {
304
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/priority"
304
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/priority"
305
305
  },
306
306
  "status": {
307
307
  "enum": ["desired", "active", "paused", "complete"]
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "urn:ifsoul:protocol:0.3.0:common",
3
+ "$id": "urn:ifsoul:protocol:0.4.0:common",
4
4
  "description": "Shared definitions only; not an exchange document.",
5
5
  "$defs": {
6
6
  "id": {
@@ -20,7 +20,7 @@
20
20
  "type": "object",
21
21
  "maxProperties": 16,
22
22
  "propertyNames": {
23
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/extensionName"
23
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/extensionName"
24
24
  },
25
25
  "additionalProperties": true
26
26
  },
@@ -28,16 +28,16 @@
28
28
  "type": "object",
29
29
  "properties": {
30
30
  "environmentId": {
31
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
31
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
32
32
  },
33
33
  "sessionId": {
34
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
34
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
35
35
  },
36
36
  "characterId": {
37
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
37
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
38
38
  },
39
39
  "embodimentId": {
40
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
40
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
41
41
  }
42
42
  },
43
43
  "required": ["environmentId", "sessionId", "characterId", "embodimentId"],
@@ -47,7 +47,7 @@
47
47
  "type": "object",
48
48
  "properties": {
49
49
  "timelineId": {
50
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
50
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
51
51
  },
52
52
  "tick": {
53
53
  "type": "integer",
@@ -67,10 +67,10 @@
67
67
  "const": "utc"
68
68
  },
69
69
  "startAt": {
70
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/utc"
70
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/utc"
71
71
  },
72
72
  "endAt": {
73
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/utc"
73
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/utc"
74
74
  }
75
75
  },
76
76
  "required": ["basis", "startAt", "endAt"],
@@ -83,7 +83,7 @@
83
83
  "const": "world-ticks"
84
84
  },
85
85
  "timelineId": {
86
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
86
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
87
87
  },
88
88
  "fromTick": {
89
89
  "type": "integer",
@@ -110,7 +110,7 @@
110
110
  "const": "entity-ref"
111
111
  },
112
112
  "entityId": {
113
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
113
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
114
114
  }
115
115
  },
116
116
  "required": ["type", "entityId"],
@@ -123,7 +123,7 @@
123
123
  "const": "choice"
124
124
  },
125
125
  "value": {
126
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
126
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
127
127
  }
128
128
  },
129
129
  "required": ["type", "value"],
@@ -139,7 +139,7 @@
139
139
  "type": "number"
140
140
  },
141
141
  "unit": {
142
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
142
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
143
143
  }
144
144
  },
145
145
  "required": ["type", "value", "unit"],
@@ -169,7 +169,7 @@
169
169
  "participantIds": {
170
170
  "type": "array",
171
171
  "items": {
172
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
172
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
173
173
  },
174
174
  "minItems": 0,
175
175
  "maxItems": 32,
@@ -216,7 +216,7 @@
216
216
  ]
217
217
  },
218
218
  "sourceId": {
219
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
219
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
220
220
  }
221
221
  },
222
222
  "required": ["sourceType", "sourceId"],
@@ -1,34 +1,34 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "urn:ifsoul:protocol:0.3.0:context",
3
+ "$id": "urn:ifsoul:protocol:0.4.0:context",
4
4
  "type": "object",
5
5
  "properties": {
6
6
  "schemaVersion": {
7
- "const": "0.3.0"
7
+ "const": "0.4.0"
8
8
  },
9
9
  "kind": {
10
10
  "const": "context-report"
11
11
  },
12
12
  "reportId": {
13
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
13
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
14
14
  },
15
15
  "contextRevision": {
16
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
16
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
17
17
  },
18
18
  "environmentRevision": {
19
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
19
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
20
20
  },
21
21
  "correlationId": {
22
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
22
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
23
23
  },
24
24
  "binding": {
25
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/binding"
25
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/binding"
26
26
  },
27
27
  "recordedAt": {
28
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/utc"
28
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/utc"
29
29
  },
30
30
  "period": {
31
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/period"
31
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/period"
32
32
  },
33
33
  "observedState": {
34
34
  "type": "object",
@@ -44,10 +44,10 @@
44
44
  "type": "object",
45
45
  "properties": {
46
46
  "subjectId": {
47
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
47
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
48
48
  },
49
49
  "propertyId": {
50
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
50
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
51
51
  },
52
52
  "value": {
53
53
  "anyOf": [
@@ -80,7 +80,7 @@
80
80
  "type": "object",
81
81
  "properties": {
82
82
  "needId": {
83
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
83
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
84
84
  },
85
85
  "description": {
86
86
  "type": "string",
@@ -88,7 +88,7 @@
88
88
  "maxLength": 500
89
89
  },
90
90
  "priority": {
91
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/priority"
91
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/priority"
92
92
  },
93
93
  "status": {
94
94
  "enum": ["current", "resolved", "unknown"]
@@ -106,7 +106,7 @@
106
106
  "type": "object",
107
107
  "properties": {
108
108
  "planId": {
109
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
109
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
110
110
  },
111
111
  "taskStates": {
112
112
  "type": "array",
@@ -114,10 +114,10 @@
114
114
  "type": "object",
115
115
  "properties": {
116
116
  "taskId": {
117
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
117
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
118
118
  },
119
119
  "status": {
120
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/taskStatus"
120
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/taskStatus"
121
121
  }
122
122
  },
123
123
  "required": ["taskId", "status"],
@@ -139,13 +139,13 @@
139
139
  "type": "object",
140
140
  "properties": {
141
141
  "changeId": {
142
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
142
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
143
143
  },
144
144
  "kind": {
145
145
  "enum": ["change", "event"]
146
146
  },
147
147
  "recordedAt": {
148
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/utc"
148
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/utc"
149
149
  },
150
150
  "summary": {
151
151
  "type": "string",
@@ -153,7 +153,7 @@
153
153
  "maxLength": 1000
154
154
  },
155
155
  "worldTime": {
156
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/worldTime"
156
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/worldTime"
157
157
  }
158
158
  },
159
159
  "required": ["changeId", "kind", "recordedAt", "summary"],
@@ -166,13 +166,13 @@
166
166
  "type": "object",
167
167
  "properties": {
168
168
  "requestId": {
169
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
169
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
170
170
  },
171
171
  "cadence": {
172
172
  "enum": ["host-requested", "daily", "event-driven"]
173
173
  },
174
174
  "horizon": {
175
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/period"
175
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/period"
176
176
  },
177
177
  "maxTasks": {
178
178
  "type": "integer",
@@ -182,7 +182,7 @@
182
182
  "allowedIntentIds": {
183
183
  "type": "array",
184
184
  "items": {
185
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
185
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
186
186
  },
187
187
  "minItems": 0,
188
188
  "maxItems": 32,
@@ -199,12 +199,12 @@
199
199
  "additionalProperties": false
200
200
  },
201
201
  "extensions": {
202
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/extensions"
202
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/extensions"
203
203
  },
204
204
  "requiredExtensions": {
205
205
  "type": "array",
206
206
  "items": {
207
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/extensionName"
207
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/extensionName"
208
208
  },
209
209
  "minItems": 0,
210
210
  "maxItems": 16,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
- "$id": "urn:ifsoul:protocol:0.3.0:conversation",
3
+ "$id": "urn:ifsoul:protocol:0.4.0:conversation",
4
4
  "oneOf": [
5
5
  {
6
6
  "$ref": "#/$defs/request"
@@ -17,40 +17,40 @@
17
17
  "type": "object",
18
18
  "properties": {
19
19
  "schemaVersion": {
20
- "const": "0.3.0"
20
+ "const": "0.4.0"
21
21
  },
22
22
  "kind": {
23
23
  "const": "conversation-request"
24
24
  },
25
25
  "binding": {
26
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/binding"
26
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/binding"
27
27
  },
28
28
  "requestId": {
29
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
29
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
30
30
  },
31
31
  "correlationId": {
32
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
32
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
33
33
  },
34
34
  "channelId": {
35
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
35
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
36
36
  },
37
37
  "speakerParticipantId": {
38
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
38
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
39
39
  },
40
40
  "recipientParticipantIds": {
41
41
  "type": "array",
42
42
  "items": {
43
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
43
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
44
44
  },
45
45
  "minItems": 0,
46
46
  "maxItems": 32,
47
47
  "uniqueItems": true
48
48
  },
49
49
  "environmentRevision": {
50
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
50
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
51
51
  },
52
52
  "contextRevision": {
53
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
53
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
54
54
  },
55
55
  "mode": {
56
56
  "enum": ["host-requested", "live-channel"]
@@ -62,10 +62,10 @@
62
62
  "enum": ["text", "speech", "vocalization", "gesture", "status"]
63
63
  },
64
64
  "receivedAt": {
65
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/utc"
65
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/utc"
66
66
  },
67
67
  "deadlineAt": {
68
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/utc"
68
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/utc"
69
69
  },
70
70
  "messages": {
71
71
  "type": "array",
@@ -73,13 +73,13 @@
73
73
  "type": "object",
74
74
  "properties": {
75
75
  "messageId": {
76
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
76
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
77
77
  },
78
78
  "participantId": {
79
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
79
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
80
80
  },
81
81
  "recordedAt": {
82
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/utc"
82
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/utc"
83
83
  },
84
84
  "modality": {
85
85
  "enum": ["text", "speech", "vocalization", "gesture", "status"]
@@ -103,12 +103,12 @@
103
103
  "maxItems": 50
104
104
  },
105
105
  "extensions": {
106
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/extensions"
106
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/extensions"
107
107
  },
108
108
  "requiredExtensions": {
109
109
  "type": "array",
110
110
  "items": {
111
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/extensionName"
111
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/extensionName"
112
112
  },
113
113
  "minItems": 0,
114
114
  "maxItems": 16,
@@ -158,43 +158,43 @@
158
158
  "type": "object",
159
159
  "properties": {
160
160
  "schemaVersion": {
161
- "const": "0.3.0"
161
+ "const": "0.4.0"
162
162
  },
163
163
  "kind": {
164
164
  "const": "conversation-response"
165
165
  },
166
166
  "binding": {
167
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/binding"
167
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/binding"
168
168
  },
169
169
  "requestId": {
170
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
170
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
171
171
  },
172
172
  "correlationId": {
173
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
173
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
174
174
  },
175
175
  "channelId": {
176
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
176
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
177
177
  },
178
178
  "speakerParticipantId": {
179
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
179
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
180
180
  },
181
181
  "recipientParticipantIds": {
182
182
  "type": "array",
183
183
  "items": {
184
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
184
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
185
185
  },
186
186
  "minItems": 0,
187
187
  "maxItems": 32,
188
188
  "uniqueItems": true
189
189
  },
190
190
  "responseId": {
191
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
191
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
192
192
  },
193
193
  "createdAt": {
194
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/utc"
194
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/utc"
195
195
  },
196
196
  "expiresAt": {
197
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/utc"
197
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/utc"
198
198
  },
199
199
  "output": {
200
200
  "oneOf": [
@@ -243,12 +243,12 @@
243
243
  ]
244
244
  },
245
245
  "extensions": {
246
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/extensions"
246
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/extensions"
247
247
  },
248
248
  "requiredExtensions": {
249
249
  "type": "array",
250
250
  "items": {
251
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/extensionName"
251
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/extensionName"
252
252
  },
253
253
  "minItems": 0,
254
254
  "maxItems": 16,
@@ -275,31 +275,31 @@
275
275
  "type": "object",
276
276
  "properties": {
277
277
  "schemaVersion": {
278
- "const": "0.3.0"
278
+ "const": "0.4.0"
279
279
  },
280
280
  "kind": {
281
281
  "const": "conversation-delivery"
282
282
  },
283
283
  "binding": {
284
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/binding"
284
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/binding"
285
285
  },
286
286
  "requestId": {
287
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
287
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
288
288
  },
289
289
  "responseId": {
290
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
290
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
291
291
  },
292
292
  "correlationId": {
293
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
293
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
294
294
  },
295
295
  "channelId": {
296
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
296
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
297
297
  },
298
298
  "deliveryId": {
299
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/id"
299
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/id"
300
300
  },
301
301
  "recordedAt": {
302
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/utc"
302
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/utc"
303
303
  },
304
304
  "status": {
305
305
  "enum": ["accepted", "delivered", "rejected", "unknown"]
@@ -310,12 +310,12 @@
310
310
  "maxLength": 500
311
311
  },
312
312
  "extensions": {
313
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/extensions"
313
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/extensions"
314
314
  },
315
315
  "requiredExtensions": {
316
316
  "type": "array",
317
317
  "items": {
318
- "$ref": "urn:ifsoul:protocol:0.3.0:common#/$defs/extensionName"
318
+ "$ref": "urn:ifsoul:protocol:0.4.0:common#/$defs/extensionName"
319
319
  },
320
320
  "minItems": 0,
321
321
  "maxItems": 16,