@openwop/spec-artifacts 2.0.0-rc.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 (229) hide show
  1. package/CORPUS-STAMP.json +234 -0
  2. package/LICENSE +201 -0
  3. package/README.md +7 -0
  4. package/api/.redocly.lint-ignore.yaml +22 -0
  5. package/api/asyncapi.yaml +834 -0
  6. package/api/grpc/openwop.proto +251 -0
  7. package/api/openapi.yaml +2693 -0
  8. package/api/redocly.yaml +23 -0
  9. package/api/seams-v2.yaml +680 -0
  10. package/api/v2/asyncapi.yaml +528 -0
  11. package/api/v2/openapi.yaml +3139 -0
  12. package/api/v2/redocly.yaml +16 -0
  13. package/package.json +10 -0
  14. package/schemas/README.md +144 -0
  15. package/schemas/a2a-task-state.schema.json +78 -0
  16. package/schemas/a2ui-surface-delta-frame.schema.json +48 -0
  17. package/schemas/agent-deployment-transition.schema.json +49 -0
  18. package/schemas/agent-deployment.schema.json +54 -0
  19. package/schemas/agent-eval-suite.schema.json +140 -0
  20. package/schemas/agent-inventory-response.schema.json +115 -0
  21. package/schemas/agent-manifest.schema.json +156 -0
  22. package/schemas/agent-org-chart.schema.json +82 -0
  23. package/schemas/agent-ref.schema.json +63 -0
  24. package/schemas/agent-roster-entry.schema.json +81 -0
  25. package/schemas/agent-roster-response.schema.json +21 -0
  26. package/schemas/ai-envelope.schema.json +134 -0
  27. package/schemas/annotation-create.schema.json +37 -0
  28. package/schemas/annotation.schema.json +56 -0
  29. package/schemas/artifact-type-pack-manifest.schema.json +244 -0
  30. package/schemas/audit-verify-result.schema.json +90 -0
  31. package/schemas/budget-policy.schema.json +18 -0
  32. package/schemas/capabilities.schema.json +4160 -0
  33. package/schemas/certification-bundle-v2.schema.json +118 -0
  34. package/schemas/channel-presence-payload.schema.json +41 -0
  35. package/schemas/channel-written-payload.schema.json +55 -0
  36. package/schemas/chat-card-pack-manifest.schema.json +253 -0
  37. package/schemas/compact-tool-descriptor.schema.json +51 -0
  38. package/schemas/compensation-policy.schema.json +64 -0
  39. package/schemas/conformance-certification-bundle.schema.json +86 -0
  40. package/schemas/connection-pack-manifest.schema.json +353 -0
  41. package/schemas/conversation-event.schema.json +168 -0
  42. package/schemas/conversation-turn.schema.json +117 -0
  43. package/schemas/core-conformance-mock-agent-config.schema.json +152 -0
  44. package/schemas/credential-provenance.schema.json +18 -0
  45. package/schemas/credential-reference.schema.json +21 -0
  46. package/schemas/debug-bundle.schema.json +196 -0
  47. package/schemas/dispatch-config.schema.json +112 -0
  48. package/schemas/envelopes/clarification.request.schema.json +52 -0
  49. package/schemas/envelopes/error.schema.json +30 -0
  50. package/schemas/envelopes/media.audio.schema.json +38 -0
  51. package/schemas/envelopes/media.file.schema.json +37 -0
  52. package/schemas/envelopes/media.image.schema.json +33 -0
  53. package/schemas/envelopes/schema.request.schema.json +26 -0
  54. package/schemas/envelopes/schema.response.schema.json +22 -0
  55. package/schemas/envelopes/ui.a2ui-surface.schema.json +154 -0
  56. package/schemas/error-envelope.schema.json +25 -0
  57. package/schemas/eval-summary.schema.json +92 -0
  58. package/schemas/export-bundle.schema.json +66 -0
  59. package/schemas/form-content-pack-manifest.schema.json +243 -0
  60. package/schemas/frontend-plugin-manifest.schema.json +109 -0
  61. package/schemas/goal.schema.json +104 -0
  62. package/schemas/heartbeat-evaluated.schema.json +14 -0
  63. package/schemas/heartbeat-state-changed.schema.json +14 -0
  64. package/schemas/localized-content-language-settings.schema.json +26 -0
  65. package/schemas/localized-content-page-response.schema.json +60 -0
  66. package/schemas/localized-content-page.schema.json +62 -0
  67. package/schemas/localized-content-section.schema.json +51 -0
  68. package/schemas/memory-entry.schema.json +36 -0
  69. package/schemas/memory-list-options.schema.json +37 -0
  70. package/schemas/node-pack-manifest.schema.json +654 -0
  71. package/schemas/orchestrator-decision.schema.json +90 -0
  72. package/schemas/org-chart-responsibility-view.schema.json +26 -0
  73. package/schemas/pack-lockfile.schema.json +108 -0
  74. package/schemas/prompt-kind.schema.json +8 -0
  75. package/schemas/prompt-pack-manifest.schema.json +117 -0
  76. package/schemas/prompt-ref.schema.json +40 -0
  77. package/schemas/prompt-template.schema.json +149 -0
  78. package/schemas/proposal.schema.json +84 -0
  79. package/schemas/registry-version-manifest.schema.json +208 -0
  80. package/schemas/residency.schema.json +16 -0
  81. package/schemas/run-ancestry-response.schema.json +54 -0
  82. package/schemas/run-diff-response.schema.json +64 -0
  83. package/schemas/run-event-payloads.schema.json +4452 -0
  84. package/schemas/run-event.schema.json +211 -0
  85. package/schemas/run-options.schema.json +80 -0
  86. package/schemas/run-orchestrator-decided-event.schema.json +20 -0
  87. package/schemas/run-snapshot.schema.json +148 -0
  88. package/schemas/security-advisory.schema.json +109 -0
  89. package/schemas/self-hosted-runner-dispatch-frame.schema.json +79 -0
  90. package/schemas/self-hosted-runner-registration.schema.json +53 -0
  91. package/schemas/self-hosted-runner-result-frame.schema.json +38 -0
  92. package/schemas/subject.schema.json +56 -0
  93. package/schemas/suspend-request.schema.json +207 -0
  94. package/schemas/tool-descriptor.schema.json +63 -0
  95. package/schemas/trigger-event.schema.json +222 -0
  96. package/schemas/trigger-subscription-registration.schema.json +67 -0
  97. package/schemas/trigger-subscription.schema.json +26 -0
  98. package/schemas/ui-plugin-message.schema.json +90 -0
  99. package/schemas/v2/a2a-task-state.schema.json +102 -0
  100. package/schemas/v2/a2ui-surface-delta-frame.schema.json +62 -0
  101. package/schemas/v2/agent-deployment-transition.schema.json +67 -0
  102. package/schemas/v2/agent-deployment.schema.json +68 -0
  103. package/schemas/v2/agent-eval-suite.schema.json +214 -0
  104. package/schemas/v2/agent-inventory-response.schema.json +172 -0
  105. package/schemas/v2/agent-manifest.schema.json +218 -0
  106. package/schemas/v2/agent-org-chart.schema.json +149 -0
  107. package/schemas/v2/agent-ref.schema.json +67 -0
  108. package/schemas/v2/agent-roster-entry.schema.json +104 -0
  109. package/schemas/v2/agent-roster-response.schema.json +27 -0
  110. package/schemas/v2/ai-envelope.schema.json +167 -0
  111. package/schemas/v2/annotation-create.schema.json +109 -0
  112. package/schemas/v2/annotation.schema.json +142 -0
  113. package/schemas/v2/artifact-type-pack-manifest.schema.json +245 -0
  114. package/schemas/v2/audit-verify-result.schema.json +110 -0
  115. package/schemas/v2/budget-policy.schema.json +61 -0
  116. package/schemas/v2/capabilities.schema.json +7644 -0
  117. package/schemas/v2/certification-bundle.schema.json +401 -0
  118. package/schemas/v2/channel-presence-payload.schema.json +60 -0
  119. package/schemas/v2/channel-written-payload.schema.json +64 -0
  120. package/schemas/v2/chat-card-pack-manifest.schema.json +254 -0
  121. package/schemas/v2/compact-tool-descriptor.schema.json +108 -0
  122. package/schemas/v2/compensation-policy.schema.json +91 -0
  123. package/schemas/v2/compensation-projection.schema.json +95 -0
  124. package/schemas/v2/configurable.schema.json +110 -0
  125. package/schemas/v2/connection-pack-manifest.schema.json +354 -0
  126. package/schemas/v2/conversation-event.schema.json +281 -0
  127. package/schemas/v2/conversation-turn.schema.json +165 -0
  128. package/schemas/v2/credential-provenance.schema.json +62 -0
  129. package/schemas/v2/credential-reference.schema.json +28 -0
  130. package/schemas/v2/debug-bundle.schema.json +312 -0
  131. package/schemas/v2/dispatch-config.schema.json +147 -0
  132. package/schemas/v2/effect-ledger-projection.schema.json +71 -0
  133. package/schemas/v2/effect-seam-manifest.schema.json +98 -0
  134. package/schemas/v2/envelopes/clarification.request.schema.json +59 -0
  135. package/schemas/v2/envelopes/error.schema.json +35 -0
  136. package/schemas/v2/envelopes/media.audio.schema.json +41 -0
  137. package/schemas/v2/envelopes/media.file.schema.json +40 -0
  138. package/schemas/v2/envelopes/media.image.schema.json +36 -0
  139. package/schemas/v2/envelopes/schema.request.schema.json +29 -0
  140. package/schemas/v2/envelopes/schema.response.schema.json +26 -0
  141. package/schemas/v2/envelopes/ui.a2ui-surface.schema.json +292 -0
  142. package/schemas/v2/error-envelope.schema.json +229 -0
  143. package/schemas/v2/eval-summary.schema.json +166 -0
  144. package/schemas/v2/export-bundle.schema.json +94 -0
  145. package/schemas/v2/form-content-pack-manifest.schema.json +241 -0
  146. package/schemas/v2/frontend-plugin-manifest.schema.json +152 -0
  147. package/schemas/v2/goal.schema.json +188 -0
  148. package/schemas/v2/heartbeat-evaluated.schema.json +34 -0
  149. package/schemas/v2/heartbeat-state-changed.schema.json +31 -0
  150. package/schemas/v2/ids.schema.json +31 -0
  151. package/schemas/v2/localized-content-language-settings.schema.json +34 -0
  152. package/schemas/v2/localized-content-page-response.schema.json +94 -0
  153. package/schemas/v2/localized-content-page.schema.json +87 -0
  154. package/schemas/v2/localized-content-section.schema.json +63 -0
  155. package/schemas/v2/memory-entry.schema.json +45 -0
  156. package/schemas/v2/memory-list-options.schema.json +41 -0
  157. package/schemas/v2/node-pack-manifest.schema.json +657 -0
  158. package/schemas/v2/orchestrator-decision.schema.json +120 -0
  159. package/schemas/v2/org-chart-responsibility-view.schema.json +36 -0
  160. package/schemas/v2/pack-lockfile.schema.json +139 -0
  161. package/schemas/v2/prompt-kind.schema.json +14 -0
  162. package/schemas/v2/prompt-pack-manifest.schema.json +118 -0
  163. package/schemas/v2/prompt-ref.schema.json +42 -0
  164. package/schemas/v2/prompt-template.schema.json +209 -0
  165. package/schemas/v2/proposal.schema.json +145 -0
  166. package/schemas/v2/registry-version-manifest.schema.json +292 -0
  167. package/schemas/v2/residency.schema.json +19 -0
  168. package/schemas/v2/run-ancestry-response.schema.json +68 -0
  169. package/schemas/v2/run-diff-response.schema.json +80 -0
  170. package/schemas/v2/run-event-payloads.schema.json +4588 -0
  171. package/schemas/v2/run-event.schema.json +324 -0
  172. package/schemas/v2/run-options.schema.json +90 -0
  173. package/schemas/v2/run-orchestrator-decided-event.schema.json +22 -0
  174. package/schemas/v2/run-snapshot.schema.json +207 -0
  175. package/schemas/v2/security-advisory.schema.json +138 -0
  176. package/schemas/v2/self-hosted-runner-dispatch-frame.schema.json +119 -0
  177. package/schemas/v2/self-hosted-runner-registration.schema.json +74 -0
  178. package/schemas/v2/self-hosted-runner-result-frame.schema.json +47 -0
  179. package/schemas/v2/subject-link.schema.json +69 -0
  180. package/schemas/v2/subject.schema.json +597 -0
  181. package/schemas/v2/suspend-request.schema.json +370 -0
  182. package/schemas/v2/tool-descriptor.schema.json +150 -0
  183. package/schemas/v2/trigger-event.schema.json +508 -0
  184. package/schemas/v2/trigger-subscription-registration.schema.json +99 -0
  185. package/schemas/v2/trigger-subscription.schema.json +79 -0
  186. package/schemas/v2/ui-plugin-message.schema.json +149 -0
  187. package/schemas/v2/workflow-chain-pack-manifest.schema.json +610 -0
  188. package/schemas/v2/workflow-definition.schema.json +864 -0
  189. package/schemas/v2/workload-identity.schema.json +115 -0
  190. package/schemas/v2/workspace-file-create.schema.json +23 -0
  191. package/schemas/v2/workspace-file.schema.json +45 -0
  192. package/schemas/workflow-chain-pack-manifest.schema.json +615 -0
  193. package/schemas/workflow-definition.schema.json +850 -0
  194. package/schemas/workload-identity.schema.json +79 -0
  195. package/schemas/workspace-file-create.schema.json +20 -0
  196. package/schemas/workspace-file.schema.json +39 -0
  197. package/spec/v1/alias-detectors.json +283 -0
  198. package/spec/v1/capability-declaration-classes.json +176 -0
  199. package/spec/v1/core-standard-manifest.json +423 -0
  200. package/spec/v1/deprecations.json +854 -0
  201. package/spec/v1/deprecations.schema.json +187 -0
  202. package/spec/v1/event-codemap.json +1089 -0
  203. package/spec/v1/event-codemap.schema.json +41 -0
  204. package/spec/v1/extensions.json +1273 -0
  205. package/spec/v1/gaps.json +14581 -0
  206. package/spec/v1/gaps.schema.json +55 -0
  207. package/spec/v1/migrations.json +1822 -0
  208. package/spec/v1/migrations.schema.json +44 -0
  209. package/spec/v1/operation-path-manifest.json +462 -0
  210. package/spec/v1/spec-gaps.json +4823 -0
  211. package/spec/v2/declaration.json +1862 -0
  212. package/spec/v2/declaration.schema.json +305 -0
  213. package/spec/v2/errors.json +837 -0
  214. package/spec/v2/event-codemap.json +1099 -0
  215. package/spec/v2/event-codemap.schema.json +114 -0
  216. package/spec/v2/ext/provider-idempotency/registry.json +6 -0
  217. package/spec/v2/facets/a2a.schema.json +51 -0
  218. package/spec/v2/facets/aiProviders.schema.json +56 -0
  219. package/spec/v2/facets/auth.schema.json +91 -0
  220. package/spec/v2/facets/heartbeat.schema.json +20 -0
  221. package/spec/v2/facets/interrupt.schema.json +29 -0
  222. package/spec/v2/facets/mcp.schema.json +81 -0
  223. package/spec/v2/facets/replay.schema.json +34 -0
  224. package/spec/v2/facets/sandbox.schema.json +31 -0
  225. package/spec/v2/facets/webhooks.schema.json +18 -0
  226. package/spec/v2/path-manifest.json +279 -0
  227. package/spec/v2/peer-dependency-aliases.json +165 -0
  228. package/spec/v2/profiles.json +45 -0
  229. package/spec/v2/release.json +6 -0
@@ -0,0 +1,1089 @@
1
+ {
2
+ "$schema": "./event-codemap.schema.json",
3
+ "$comment": "GENERATED by scripts/generate-event-codemap.mjs from schemas/run-event.schema.json + run-event-payloads.schema.json. v2 names are MECHANICAL PROPOSALS (v2 charter C.4 naming rule: domain.verb-ed, kebab, two segments, no reserved core. prefix); `review: true` marks rows needing a semantic decision. Hand fields v2Override / note / status survive regeneration. No consumer reads this in v1.x; the v2 C.4 child RFC edits it and every host backfills from it.",
4
+ "version": 1,
5
+ "updated": "2026-09-03",
6
+ "grammar": "^[a-z][a-z0-9]*(?:-[a-z0-9]+)*\\.[a-z][a-z0-9]*(?:-[a-z0-9]+)*$",
7
+ "counts": {
8
+ "rows": 117,
9
+ "review": 0,
10
+ "overridden": 20
11
+ },
12
+ "rows": [
13
+ {
14
+ "v1": "run.started",
15
+ "v2": "run.started",
16
+ "payloadDef": "runStarted",
17
+ "status": "proposed",
18
+ "review": false,
19
+ "notes": []
20
+ },
21
+ {
22
+ "v1": "run.completed",
23
+ "v2": "run.completed",
24
+ "payloadDef": "runCompleted",
25
+ "status": "proposed",
26
+ "review": false,
27
+ "notes": []
28
+ },
29
+ {
30
+ "v1": "run.failed",
31
+ "v2": "run.failed",
32
+ "payloadDef": "runFailed",
33
+ "status": "proposed",
34
+ "review": false,
35
+ "notes": []
36
+ },
37
+ {
38
+ "v1": "run.cancelled",
39
+ "v2": "run.cancelled",
40
+ "payloadDef": "runCancelled",
41
+ "status": "proposed",
42
+ "review": false,
43
+ "notes": []
44
+ },
45
+ {
46
+ "v1": "run.resuming",
47
+ "v2": "run.resume-started",
48
+ "v2Override": "run.resume-started",
49
+ "payloadDef": "runResuming",
50
+ "status": "decided",
51
+ "review": false,
52
+ "notes": [
53
+ "verb is not past-tense — tense is a C.4 decision, not normalised here"
54
+ ],
55
+ "note": "state descriptor → transition (RFC 0171 §A.2)"
56
+ },
57
+ {
58
+ "v1": "run.paused",
59
+ "v2": "run.paused",
60
+ "payloadDef": "runPaused",
61
+ "status": "proposed",
62
+ "review": false,
63
+ "notes": []
64
+ },
65
+ {
66
+ "v1": "run.resumed",
67
+ "v2": "run.resumed",
68
+ "payloadDef": "runResumed",
69
+ "status": "proposed",
70
+ "review": false,
71
+ "notes": []
72
+ },
73
+ {
74
+ "v1": "run.restored-from-snapshot",
75
+ "v2": "run.restored-from-snapshot",
76
+ "payloadDef": "runRestoredFromSnapshot",
77
+ "status": "proposed",
78
+ "review": false,
79
+ "notes": []
80
+ },
81
+ {
82
+ "v1": "run.dead_lettered",
83
+ "v2": "run.dead-lettered",
84
+ "payloadDef": "runDeadLettered",
85
+ "status": "proposed",
86
+ "review": false,
87
+ "notes": [
88
+ "case/separator normalised"
89
+ ]
90
+ },
91
+ {
92
+ "v1": "node.started",
93
+ "v2": "node.started",
94
+ "payloadDef": "nodeStarted",
95
+ "status": "proposed",
96
+ "review": false,
97
+ "notes": []
98
+ },
99
+ {
100
+ "v1": "node.completed",
101
+ "v2": "node.completed",
102
+ "payloadDef": "nodeCompleted",
103
+ "status": "proposed",
104
+ "review": false,
105
+ "notes": []
106
+ },
107
+ {
108
+ "v1": "node.failed",
109
+ "v2": "node.failed",
110
+ "payloadDef": "nodeFailed",
111
+ "status": "proposed",
112
+ "review": false,
113
+ "notes": []
114
+ },
115
+ {
116
+ "v1": "node.suspended",
117
+ "v2": "node.suspended",
118
+ "payloadDef": "nodeSuspended",
119
+ "status": "proposed",
120
+ "review": false,
121
+ "notes": []
122
+ },
123
+ {
124
+ "v1": "node.suspend-failed",
125
+ "v2": "node.suspend-failed",
126
+ "payloadDef": "nodeSuspendFailed",
127
+ "status": "proposed",
128
+ "review": false,
129
+ "notes": []
130
+ },
131
+ {
132
+ "v1": "node.resumed",
133
+ "v2": "node.resumed",
134
+ "payloadDef": "nodeResumed",
135
+ "status": "proposed",
136
+ "review": false,
137
+ "notes": []
138
+ },
139
+ {
140
+ "v1": "node.retried",
141
+ "v2": "node.retried",
142
+ "payloadDef": "nodeRetried",
143
+ "status": "proposed",
144
+ "review": false,
145
+ "notes": []
146
+ },
147
+ {
148
+ "v1": "node.skipped",
149
+ "v2": "node.skipped",
150
+ "payloadDef": "nodeSkipped",
151
+ "status": "proposed",
152
+ "review": false,
153
+ "notes": []
154
+ },
155
+ {
156
+ "v1": "node.cancelled",
157
+ "v2": "node.cancelled",
158
+ "payloadDef": "nodeCancelled",
159
+ "status": "proposed",
160
+ "review": false,
161
+ "notes": []
162
+ },
163
+ {
164
+ "v1": "approval.requested",
165
+ "v2": "approval.requested",
166
+ "payloadDef": "approvalRequested",
167
+ "status": "proposed",
168
+ "review": false,
169
+ "notes": []
170
+ },
171
+ {
172
+ "v1": "approval.received",
173
+ "v2": "approval.received",
174
+ "payloadDef": "approvalReceived",
175
+ "status": "proposed",
176
+ "review": false,
177
+ "notes": []
178
+ },
179
+ {
180
+ "v1": "approval.granted",
181
+ "v2": "approval.granted",
182
+ "payloadDef": "approvalGranted",
183
+ "status": "proposed",
184
+ "review": false,
185
+ "notes": []
186
+ },
187
+ {
188
+ "v1": "approval.rejected",
189
+ "v2": "approval.rejected",
190
+ "payloadDef": "approvalRejected",
191
+ "status": "proposed",
192
+ "review": false,
193
+ "notes": []
194
+ },
195
+ {
196
+ "v1": "approval.overridden",
197
+ "v2": "approval.overridden",
198
+ "payloadDef": "approvalOverridden",
199
+ "status": "proposed",
200
+ "review": false,
201
+ "notes": []
202
+ },
203
+ {
204
+ "v1": "clarification.requested",
205
+ "v2": "clarification.requested",
206
+ "payloadDef": "clarificationRequested",
207
+ "status": "proposed",
208
+ "review": false,
209
+ "notes": []
210
+ },
211
+ {
212
+ "v1": "clarification.resolved",
213
+ "v2": "clarification.resolved",
214
+ "payloadDef": "clarificationResolved",
215
+ "status": "proposed",
216
+ "review": false,
217
+ "notes": []
218
+ },
219
+ {
220
+ "v1": "interrupt.requested",
221
+ "v2": "interrupt.requested",
222
+ "payloadDef": "interruptRequested",
223
+ "status": "proposed",
224
+ "review": false,
225
+ "notes": []
226
+ },
227
+ {
228
+ "v1": "interrupt.resolved",
229
+ "v2": "interrupt.resolved",
230
+ "payloadDef": "interruptResolved",
231
+ "status": "proposed",
232
+ "review": false,
233
+ "notes": []
234
+ },
235
+ {
236
+ "v1": "channel.written",
237
+ "v2": "channel.written",
238
+ "payloadDef": "channelWritten",
239
+ "status": "proposed",
240
+ "review": false,
241
+ "notes": []
242
+ },
243
+ {
244
+ "v1": "channel.presence",
245
+ "v2": "channel.presence",
246
+ "v2Override": "channel.presence",
247
+ "payloadDef": "channelPresence",
248
+ "status": "decided",
249
+ "review": false,
250
+ "notes": [
251
+ "verb is not past-tense — tense is a C.4 decision, not normalised here"
252
+ ],
253
+ "note": "artifact event; noun form permitted (RFC 0171 §A.2 exception list)"
254
+ },
255
+ {
256
+ "v1": "context.summarized",
257
+ "v2": "context.summarized",
258
+ "payloadDef": "contextSummarized",
259
+ "status": "proposed",
260
+ "review": false,
261
+ "notes": []
262
+ },
263
+ {
264
+ "v1": "artifact.created",
265
+ "v2": "artifact.created",
266
+ "payloadDef": "artifactCreated",
267
+ "status": "proposed",
268
+ "review": false,
269
+ "notes": []
270
+ },
271
+ {
272
+ "v1": "output.chunk",
273
+ "v2": "output.chunk",
274
+ "v2Override": "output.chunk",
275
+ "payloadDef": "outputChunk",
276
+ "status": "decided",
277
+ "review": false,
278
+ "notes": [
279
+ "verb is not past-tense — tense is a C.4 decision, not normalised here"
280
+ ],
281
+ "note": "artifact event; noun form permitted"
282
+ },
283
+ {
284
+ "v1": "variable.changed",
285
+ "v2": "variable.changed",
286
+ "payloadDef": "variableChanged",
287
+ "status": "proposed",
288
+ "review": false,
289
+ "notes": []
290
+ },
291
+ {
292
+ "v1": "log.appended",
293
+ "v2": "log.appended",
294
+ "payloadDef": "logAppended",
295
+ "status": "proposed",
296
+ "review": false,
297
+ "notes": []
298
+ },
299
+ {
300
+ "v1": "version.pinned",
301
+ "v2": "version.pinned",
302
+ "payloadDef": "versionPinned",
303
+ "status": "proposed",
304
+ "review": false,
305
+ "notes": []
306
+ },
307
+ {
308
+ "v1": "workflow.restored",
309
+ "v2": "workflow.restored",
310
+ "payloadDef": "workflowRestored",
311
+ "status": "proposed",
312
+ "review": false,
313
+ "notes": []
314
+ },
315
+ {
316
+ "v1": "workflow.loopback-limit",
317
+ "v2": "workflow.loopback-limit",
318
+ "payloadDef": "workflowLoopbackLimit",
319
+ "status": "proposed",
320
+ "review": false,
321
+ "notes": []
322
+ },
323
+ {
324
+ "v1": "workflow.stalled",
325
+ "v2": "workflow.stalled",
326
+ "payloadDef": "workflowStalled",
327
+ "status": "proposed",
328
+ "review": false,
329
+ "notes": []
330
+ },
331
+ {
332
+ "v1": "cap.breached",
333
+ "v2": "cap.breached",
334
+ "payloadDef": "capBreached",
335
+ "status": "proposed",
336
+ "review": false,
337
+ "notes": []
338
+ },
339
+ {
340
+ "v1": "lease.acquired",
341
+ "v2": "lease.acquired",
342
+ "payloadDef": "leaseLifecycle",
343
+ "status": "proposed",
344
+ "review": false,
345
+ "notes": []
346
+ },
347
+ {
348
+ "v1": "lease.renewed",
349
+ "v2": "lease.renewed",
350
+ "payloadDef": "leaseLifecycle",
351
+ "status": "proposed",
352
+ "review": false,
353
+ "notes": []
354
+ },
355
+ {
356
+ "v1": "lease.lost",
357
+ "v2": "lease.lost",
358
+ "payloadDef": "leaseLifecycle",
359
+ "status": "proposed",
360
+ "review": false,
361
+ "notes": []
362
+ },
363
+ {
364
+ "v1": "lease.handed-off",
365
+ "v2": "lease.handed-off",
366
+ "v2Override": "lease.handed-off",
367
+ "payloadDef": "leaseHandedOff",
368
+ "status": "decided",
369
+ "review": false,
370
+ "notes": [
371
+ "verb is not past-tense — tense is a C.4 decision, not normalised here"
372
+ ],
373
+ "note": "already a past-tense transition"
374
+ },
375
+ {
376
+ "v1": "replay.diverged",
377
+ "v2": "replay.diverged",
378
+ "payloadDef": "replayDiverged",
379
+ "status": "proposed",
380
+ "review": false,
381
+ "notes": []
382
+ },
383
+ {
384
+ "v1": "replay.divergedAtRefusal",
385
+ "v2": "replay.diverged-at-refusal",
386
+ "v2Override": "replay.diverged-at-refusal",
387
+ "payloadDef": "replayDivergedAtRefusal",
388
+ "status": "decided",
389
+ "review": false,
390
+ "notes": [
391
+ "case/separator normalised",
392
+ "verb is not past-tense — tense is a C.4 decision, not normalised here"
393
+ ],
394
+ "note": "case/separator normalised"
395
+ },
396
+ {
397
+ "v1": "agent.reasoned",
398
+ "v2": "agent.reasoned",
399
+ "payloadDef": "agentReasoned",
400
+ "status": "proposed",
401
+ "review": false,
402
+ "notes": []
403
+ },
404
+ {
405
+ "v1": "agent.reasoning.delta",
406
+ "v2": "agent.reasoning-delta",
407
+ "v2Override": "agent.reasoning-delta",
408
+ "payloadDef": "agentReasoningDelta",
409
+ "status": "decided",
410
+ "review": false,
411
+ "notes": [
412
+ "3 segments folded to two",
413
+ "verb is not past-tense — tense is a C.4 decision, not normalised here"
414
+ ],
415
+ "note": "artifact event; three segments folded"
416
+ },
417
+ {
418
+ "v1": "provider.usage",
419
+ "v2": "provider.usage",
420
+ "v2Override": "provider.usage",
421
+ "payloadDef": "providerUsage",
422
+ "status": "decided",
423
+ "review": false,
424
+ "notes": [
425
+ "verb is not past-tense — tense is a C.4 decision, not normalised here"
426
+ ],
427
+ "note": "artifact event; noun form permitted"
428
+ },
429
+ {
430
+ "v1": "prompt.composed",
431
+ "v2": "prompt.composed",
432
+ "payloadDef": "promptComposed",
433
+ "status": "proposed",
434
+ "review": false,
435
+ "notes": []
436
+ },
437
+ {
438
+ "v1": "agent.promptResolved",
439
+ "v2": "agent.prompt-resolved",
440
+ "payloadDef": "agentPromptResolved",
441
+ "status": "proposed",
442
+ "review": false,
443
+ "notes": [
444
+ "case/separator normalised"
445
+ ]
446
+ },
447
+ {
448
+ "v1": "model.capability.substituted",
449
+ "v2": "model.capability-substituted",
450
+ "payloadDef": "modelCapabilitySubstituted",
451
+ "status": "proposed",
452
+ "review": false,
453
+ "notes": [
454
+ "3 segments folded to two"
455
+ ]
456
+ },
457
+ {
458
+ "v1": "model.capability.insufficient",
459
+ "v2": "model.capability-insufficient",
460
+ "payloadDef": "modelCapabilityInsufficient",
461
+ "status": "proposed",
462
+ "review": false,
463
+ "notes": [
464
+ "3 segments folded to two"
465
+ ]
466
+ },
467
+ {
468
+ "v1": "envelope.retry.attempted",
469
+ "v2": "envelope.retry-attempted",
470
+ "payloadDef": "envelopeRetryAttempted",
471
+ "status": "proposed",
472
+ "review": false,
473
+ "notes": [
474
+ "3 segments folded to two"
475
+ ]
476
+ },
477
+ {
478
+ "v1": "envelope.retry.exhausted",
479
+ "v2": "envelope.retry-exhausted",
480
+ "payloadDef": "envelopeRetryExhausted",
481
+ "status": "proposed",
482
+ "review": false,
483
+ "notes": [
484
+ "3 segments folded to two"
485
+ ]
486
+ },
487
+ {
488
+ "v1": "envelope.refusal",
489
+ "v2": "envelope.refusal",
490
+ "v2Override": "envelope.refusal",
491
+ "payloadDef": "envelopeRefusal",
492
+ "status": "decided",
493
+ "review": false,
494
+ "notes": [
495
+ "verb is not past-tense — tense is a C.4 decision, not normalised here"
496
+ ],
497
+ "note": "artifact event; noun form permitted"
498
+ },
499
+ {
500
+ "v1": "envelope.truncated",
501
+ "v2": "envelope.truncated",
502
+ "payloadDef": "envelopeTruncated",
503
+ "status": "proposed",
504
+ "review": false,
505
+ "notes": []
506
+ },
507
+ {
508
+ "v1": "envelope.nlToFormat.engaged",
509
+ "v2": "envelope.nl-to-format-engaged",
510
+ "v2Override": "envelope.nl-to-format-engaged",
511
+ "payloadDef": "envelopeNlToFormatEngaged",
512
+ "status": "decided",
513
+ "review": false,
514
+ "notes": [
515
+ "3 segments folded to two",
516
+ "case/separator normalised"
517
+ ],
518
+ "note": "three-segment fold re-verified (RFC 0171 adversarial review 4)"
519
+ },
520
+ {
521
+ "v1": "envelope.recovery.applied",
522
+ "v2": "envelope.recovery-applied",
523
+ "payloadDef": "envelopeRecoveryApplied",
524
+ "status": "proposed",
525
+ "review": false,
526
+ "notes": [
527
+ "3 segments folded to two"
528
+ ]
529
+ },
530
+ {
531
+ "v1": "agent.toolCalled",
532
+ "v2": "agent.tool-called",
533
+ "payloadDef": "agentToolCalled",
534
+ "status": "proposed",
535
+ "review": false,
536
+ "notes": [
537
+ "case/separator normalised"
538
+ ]
539
+ },
540
+ {
541
+ "v1": "agent.toolReturned",
542
+ "v2": "agent.tool-returned",
543
+ "payloadDef": "agentToolReturned",
544
+ "status": "proposed",
545
+ "review": false,
546
+ "notes": [
547
+ "case/separator normalised"
548
+ ]
549
+ },
550
+ {
551
+ "v1": "agent.handoff",
552
+ "v2": "agent.handoff",
553
+ "v2Override": "agent.handoff",
554
+ "payloadDef": "agentHandoff",
555
+ "status": "decided",
556
+ "review": false,
557
+ "notes": [
558
+ "verb is not past-tense — tense is a C.4 decision, not normalised here"
559
+ ],
560
+ "note": "artifact event; noun form permitted"
561
+ },
562
+ {
563
+ "v1": "agent.decided",
564
+ "v2": "agent.decided",
565
+ "payloadDef": "agentDecided",
566
+ "status": "proposed",
567
+ "review": false,
568
+ "notes": []
569
+ },
570
+ {
571
+ "v1": "agent.verified",
572
+ "v2": "agent.verified",
573
+ "payloadDef": "agentVerified",
574
+ "status": "proposed",
575
+ "review": false,
576
+ "notes": []
577
+ },
578
+ {
579
+ "v1": "agent.invocation.started",
580
+ "v2": "agent.invocation-started",
581
+ "payloadDef": "agentInvocationStarted",
582
+ "status": "proposed",
583
+ "review": false,
584
+ "notes": [
585
+ "3 segments folded to two"
586
+ ]
587
+ },
588
+ {
589
+ "v1": "agent.invocation.completed",
590
+ "v2": "agent.invocation-completed",
591
+ "payloadDef": "agentInvocationCompleted",
592
+ "status": "proposed",
593
+ "review": false,
594
+ "notes": [
595
+ "3 segments folded to two"
596
+ ]
597
+ },
598
+ {
599
+ "v1": "eval.started",
600
+ "v2": "eval.started",
601
+ "payloadDef": "evalStarted",
602
+ "status": "proposed",
603
+ "review": false,
604
+ "notes": []
605
+ },
606
+ {
607
+ "v1": "eval.scored",
608
+ "v2": "eval.scored",
609
+ "payloadDef": "evalScored",
610
+ "status": "proposed",
611
+ "review": false,
612
+ "notes": []
613
+ },
614
+ {
615
+ "v1": "eval.completed",
616
+ "v2": "eval.completed",
617
+ "payloadDef": "evalCompleted",
618
+ "status": "proposed",
619
+ "review": false,
620
+ "notes": []
621
+ },
622
+ {
623
+ "v1": "deployment.promoted",
624
+ "v2": "deployment.promoted",
625
+ "payloadDef": "deploymentPromoted",
626
+ "status": "proposed",
627
+ "review": false,
628
+ "notes": []
629
+ },
630
+ {
631
+ "v1": "deployment.rolled-back",
632
+ "v2": "deployment.rolled-back",
633
+ "v2Override": "deployment.rolled-back",
634
+ "payloadDef": "deploymentRolledBack",
635
+ "status": "decided",
636
+ "review": false,
637
+ "notes": [
638
+ "verb is not past-tense — tense is a C.4 decision, not normalised here"
639
+ ],
640
+ "note": "already a past-tense transition"
641
+ },
642
+ {
643
+ "v1": "deployment.canary.adjusted",
644
+ "v2": "deployment.canary-adjusted",
645
+ "payloadDef": "deploymentCanaryAdjusted",
646
+ "status": "proposed",
647
+ "review": false,
648
+ "notes": [
649
+ "3 segments folded to two"
650
+ ]
651
+ },
652
+ {
653
+ "v1": "deployment.state.changed",
654
+ "v2": "deployment.state-changed",
655
+ "payloadDef": "deploymentStateChanged",
656
+ "status": "proposed",
657
+ "review": false,
658
+ "notes": [
659
+ "3 segments folded to two"
660
+ ]
661
+ },
662
+ {
663
+ "v1": "roster.run.initiated",
664
+ "v2": "roster.run-initiated",
665
+ "payloadDef": "rosterRunInitiated",
666
+ "status": "proposed",
667
+ "review": false,
668
+ "notes": [
669
+ "3 segments folded to two"
670
+ ]
671
+ },
672
+ {
673
+ "v1": "tool.session.opened",
674
+ "v2": "tool.session-opened",
675
+ "payloadDef": "toolSessionOpened",
676
+ "status": "proposed",
677
+ "review": false,
678
+ "notes": [
679
+ "3 segments folded to two"
680
+ ]
681
+ },
682
+ {
683
+ "v1": "tool.session.closed",
684
+ "v2": "tool.session-closed",
685
+ "payloadDef": "toolSessionClosed",
686
+ "status": "proposed",
687
+ "review": false,
688
+ "notes": [
689
+ "3 segments folded to two"
690
+ ]
691
+ },
692
+ {
693
+ "v1": "egress.decided",
694
+ "v2": "egress.decided",
695
+ "payloadDef": "egressDecided",
696
+ "status": "proposed",
697
+ "review": false,
698
+ "notes": []
699
+ },
700
+ {
701
+ "v1": "trigger.subscription.state.changed",
702
+ "v2": "trigger.subscription-state-changed",
703
+ "v2Override": "trigger.subscription-state-changed",
704
+ "payloadDef": "triggerSubscriptionStateChanged",
705
+ "status": "decided",
706
+ "review": false,
707
+ "notes": [
708
+ "4 segments folded to two"
709
+ ],
710
+ "note": "four-segment fold re-verified (RFC 0171 adversarial review 4)"
711
+ },
712
+ {
713
+ "v1": "trigger.delivery.attempted",
714
+ "v2": "trigger.delivery-attempted",
715
+ "payloadDef": "triggerDeliveryAttempted",
716
+ "status": "proposed",
717
+ "review": false,
718
+ "notes": [
719
+ "3 segments folded to two"
720
+ ]
721
+ },
722
+ {
723
+ "v1": "budget.reserved",
724
+ "v2": "budget.reserved",
725
+ "payloadDef": "budgetReserved",
726
+ "status": "proposed",
727
+ "review": false,
728
+ "notes": []
729
+ },
730
+ {
731
+ "v1": "budget.consumed",
732
+ "v2": "budget.consumed",
733
+ "payloadDef": "budgetConsumed",
734
+ "status": "proposed",
735
+ "review": false,
736
+ "notes": []
737
+ },
738
+ {
739
+ "v1": "budget.threshold.crossed",
740
+ "v2": "budget.threshold-crossed",
741
+ "payloadDef": "budgetThresholdCrossed",
742
+ "status": "proposed",
743
+ "review": false,
744
+ "notes": [
745
+ "3 segments folded to two"
746
+ ]
747
+ },
748
+ {
749
+ "v1": "budget.exhausted",
750
+ "v2": "budget.exhausted",
751
+ "payloadDef": "budgetExhausted",
752
+ "status": "proposed",
753
+ "review": false,
754
+ "notes": []
755
+ },
756
+ {
757
+ "v1": "runOrchestrator.decided",
758
+ "v2": "orchestrator.decided",
759
+ "v2Override": "orchestrator.decided",
760
+ "payloadDef": "runOrchestratorDecided",
761
+ "status": "decided",
762
+ "review": false,
763
+ "notes": [
764
+ "case/separator normalised",
765
+ "domain `runOrchestrator` renamed `run-orchestrator` — confirm it is the same domain as `run`"
766
+ ],
767
+ "note": "orchestrator is its own domain, not `run` (RFC 0171 adversarial review 3)"
768
+ },
769
+ {
770
+ "v1": "node.dispatched",
771
+ "v2": "node.dispatched",
772
+ "payloadDef": "nodeDispatched",
773
+ "status": "proposed",
774
+ "review": false,
775
+ "notes": []
776
+ },
777
+ {
778
+ "v1": "core.dispatch.fanOut",
779
+ "v2": "dispatch.fanned-out",
780
+ "v2Override": "dispatch.fanned-out",
781
+ "payloadDef": "dispatchFanOut",
782
+ "status": "decided",
783
+ "review": false,
784
+ "notes": [
785
+ "reserved `core.` prefix dropped (the vendor regex reserves it)",
786
+ "case/separator normalised"
787
+ ],
788
+ "note": "reserved core. dropped; transition"
789
+ },
790
+ {
791
+ "v1": "core.dispatch.join",
792
+ "v2": "dispatch.joined",
793
+ "v2Override": "dispatch.joined",
794
+ "payloadDef": "dispatchJoin",
795
+ "status": "decided",
796
+ "review": false,
797
+ "notes": [
798
+ "reserved `core.` prefix dropped (the vendor regex reserves it)",
799
+ "verb is not past-tense — tense is a C.4 decision, not normalised here"
800
+ ],
801
+ "note": "reserved core. dropped; transition"
802
+ },
803
+ {
804
+ "v1": "conversation.opened",
805
+ "v2": "conversation.opened",
806
+ "payloadDef": "conversationOpened",
807
+ "status": "proposed",
808
+ "review": false,
809
+ "notes": []
810
+ },
811
+ {
812
+ "v1": "conversation.exchanged",
813
+ "v2": "conversation.exchanged",
814
+ "payloadDef": "conversationExchanged",
815
+ "status": "proposed",
816
+ "review": false,
817
+ "notes": []
818
+ },
819
+ {
820
+ "v1": "conversation.closed",
821
+ "v2": "conversation.closed",
822
+ "payloadDef": "conversationClosed",
823
+ "status": "proposed",
824
+ "review": false,
825
+ "notes": []
826
+ },
827
+ {
828
+ "v1": "memory.compacted",
829
+ "v2": "memory.compacted",
830
+ "payloadDef": "memoryCompacted",
831
+ "status": "proposed",
832
+ "review": false,
833
+ "notes": []
834
+ },
835
+ {
836
+ "v1": "memory.written",
837
+ "v2": "memory.written",
838
+ "payloadDef": "memoryWritten",
839
+ "status": "proposed",
840
+ "review": false,
841
+ "notes": []
842
+ },
843
+ {
844
+ "v1": "agent.memory.consolidated",
845
+ "v2": "agent.memory-consolidated",
846
+ "payloadDef": "agentMemoryConsolidated",
847
+ "status": "proposed",
848
+ "review": false,
849
+ "notes": [
850
+ "3 segments folded to two"
851
+ ]
852
+ },
853
+ {
854
+ "v1": "commitment.fired",
855
+ "v2": "commitment.fired",
856
+ "payloadDef": "commitmentFired",
857
+ "status": "proposed",
858
+ "review": false,
859
+ "notes": []
860
+ },
861
+ {
862
+ "v1": "workspace.updated",
863
+ "v2": "workspace.updated",
864
+ "payloadDef": "workspaceUpdated",
865
+ "status": "proposed",
866
+ "review": false,
867
+ "notes": []
868
+ },
869
+ {
870
+ "v1": "core.workflowChain.event",
871
+ "v2": "workflow-chain.event",
872
+ "v2Override": "workflow-chain.event",
873
+ "payloadDef": "coreWorkflowChainEvent",
874
+ "status": "decided",
875
+ "review": false,
876
+ "notes": [
877
+ "reserved `core.` prefix dropped (the vendor regex reserves it)",
878
+ "case/separator normalised",
879
+ "domain `workflowChain` renamed `workflow-chain` — confirm it is the same domain as `workflow`"
880
+ ],
881
+ "note": "reserved core. dropped; workflow-chain is a distinct domain from workflow"
882
+ },
883
+ {
884
+ "v1": "core.workflowChain.confidence-escalated",
885
+ "v2": "workflow-chain.confidence-escalated",
886
+ "v2Override": "workflow-chain.confidence-escalated",
887
+ "payloadDef": "coreWorkflowChainConfidenceEscalated",
888
+ "status": "decided",
889
+ "review": false,
890
+ "notes": [
891
+ "reserved `core.` prefix dropped (the vendor regex reserves it)",
892
+ "case/separator normalised",
893
+ "domain `workflowChain` renamed `workflow-chain` — confirm it is the same domain as `workflow`"
894
+ ],
895
+ "note": "reserved core. dropped"
896
+ },
897
+ {
898
+ "v1": "connector.authorized",
899
+ "v2": "connector.authorized",
900
+ "payloadDef": "connectorAuthorized",
901
+ "status": "proposed",
902
+ "review": false,
903
+ "notes": []
904
+ },
905
+ {
906
+ "v1": "connector.auth_expired",
907
+ "v2": "connector.auth-expired",
908
+ "payloadDef": "connectorAuthExpired",
909
+ "status": "proposed",
910
+ "review": false,
911
+ "notes": [
912
+ "case/separator normalised"
913
+ ]
914
+ },
915
+ {
916
+ "v1": "authorization.decided",
917
+ "v2": "authorization.decided",
918
+ "payloadDef": "authorizationDecided",
919
+ "status": "proposed",
920
+ "review": false,
921
+ "notes": []
922
+ },
923
+ {
924
+ "v1": "proposal.created",
925
+ "v2": "proposal.created",
926
+ "payloadDef": "proposalCreated",
927
+ "status": "proposed",
928
+ "review": false,
929
+ "notes": []
930
+ },
931
+ {
932
+ "v1": "proposal.activated",
933
+ "v2": "proposal.activated",
934
+ "payloadDef": "proposalActivated",
935
+ "status": "proposed",
936
+ "review": false,
937
+ "notes": []
938
+ },
939
+ {
940
+ "v1": "goal.evaluated",
941
+ "v2": "goal.evaluated",
942
+ "payloadDef": "goalEvaluated",
943
+ "status": "proposed",
944
+ "review": false,
945
+ "notes": []
946
+ },
947
+ {
948
+ "v1": "goal.closed",
949
+ "v2": "goal.closed",
950
+ "payloadDef": "goalClosed",
951
+ "status": "proposed",
952
+ "review": false,
953
+ "notes": []
954
+ },
955
+ {
956
+ "v1": "import.applied",
957
+ "v2": "import.applied",
958
+ "payloadDef": "importApplied",
959
+ "status": "proposed",
960
+ "review": false,
961
+ "notes": []
962
+ },
963
+ {
964
+ "v1": "voice.speech_start",
965
+ "v2": "voice.speech-start",
966
+ "payloadDef": "voiceSpeechStart",
967
+ "status": "proposed",
968
+ "review": false,
969
+ "notes": [
970
+ "case/separator normalised"
971
+ ]
972
+ },
973
+ {
974
+ "v1": "voice.transcript",
975
+ "v2": "voice.transcript",
976
+ "payloadDef": "voiceTranscript",
977
+ "status": "proposed",
978
+ "review": false,
979
+ "notes": []
980
+ },
981
+ {
982
+ "v1": "voice.endpoint_candidate",
983
+ "v2": "voice.endpoint-candidate",
984
+ "v2Override": "voice.endpoint-candidate",
985
+ "payloadDef": "voiceEndpointCandidate",
986
+ "status": "decided",
987
+ "review": false,
988
+ "notes": [
989
+ "case/separator normalised",
990
+ "verb is not past-tense — tense is a C.4 decision, not normalised here"
991
+ ],
992
+ "note": "artifact event; separator normalised"
993
+ },
994
+ {
995
+ "v1": "voice.turn_commit",
996
+ "v2": "voice.turn-commit",
997
+ "payloadDef": "voiceTurnCommit",
998
+ "status": "proposed",
999
+ "review": false,
1000
+ "notes": [
1001
+ "case/separator normalised"
1002
+ ]
1003
+ },
1004
+ {
1005
+ "v1": "voice.synthesis_chunk",
1006
+ "v2": "voice.synthesis-chunk",
1007
+ "v2Override": "voice.synthesis-chunk",
1008
+ "payloadDef": "voiceSynthesisChunk",
1009
+ "status": "decided",
1010
+ "review": false,
1011
+ "notes": [
1012
+ "case/separator normalised",
1013
+ "verb is not past-tense — tense is a C.4 decision, not normalised here"
1014
+ ],
1015
+ "note": "artifact event; separator normalised"
1016
+ },
1017
+ {
1018
+ "v1": "voice.barge_in",
1019
+ "v2": "voice.barge-in",
1020
+ "v2Override": "voice.barge-in",
1021
+ "payloadDef": "voiceBargeIn",
1022
+ "status": "decided",
1023
+ "review": false,
1024
+ "notes": [
1025
+ "case/separator normalised",
1026
+ "verb is not past-tense — tense is a C.4 decision, not normalised here"
1027
+ ],
1028
+ "note": "separator normalised"
1029
+ },
1030
+ {
1031
+ "v1": "voice.cancelled",
1032
+ "v2": "voice.cancelled",
1033
+ "payloadDef": "voiceCancelled",
1034
+ "status": "proposed",
1035
+ "review": false,
1036
+ "notes": []
1037
+ },
1038
+ {
1039
+ "v1": "compensation.requested",
1040
+ "v2": "compensation.requested",
1041
+ "payloadDef": "compensationRequested",
1042
+ "status": "proposed",
1043
+ "review": false,
1044
+ "notes": []
1045
+ },
1046
+ {
1047
+ "v1": "compensation.started",
1048
+ "v2": "compensation.started",
1049
+ "payloadDef": "compensationStarted",
1050
+ "status": "proposed",
1051
+ "review": false,
1052
+ "notes": []
1053
+ },
1054
+ {
1055
+ "v1": "compensation.completed",
1056
+ "v2": "compensation.completed",
1057
+ "payloadDef": "compensationCompleted",
1058
+ "status": "proposed",
1059
+ "review": false,
1060
+ "notes": []
1061
+ },
1062
+ {
1063
+ "v1": "compensation.failed",
1064
+ "v2": "compensation.failed",
1065
+ "payloadDef": "compensationFailed",
1066
+ "status": "proposed",
1067
+ "review": false,
1068
+ "notes": []
1069
+ },
1070
+ {
1071
+ "v1": "compensation.paused",
1072
+ "v2": "compensation.paused",
1073
+ "payloadDef": "compensationPaused",
1074
+ "status": "proposed",
1075
+ "review": false,
1076
+ "notes": []
1077
+ },
1078
+ {
1079
+ "v1": "compensation.manual_intervention_required",
1080
+ "v2": "compensation.manual-intervention-required",
1081
+ "payloadDef": "compensationManualInterventionRequired",
1082
+ "status": "proposed",
1083
+ "review": false,
1084
+ "notes": [
1085
+ "case/separator normalised"
1086
+ ]
1087
+ }
1088
+ ]
1089
+ }