@objectstack/spec 0.7.1 → 0.7.2

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 (91) hide show
  1. package/dist/ai/agent-action.zod.d.ts +8 -8
  2. package/dist/ai/model-registry.zod.d.ts +6 -6
  3. package/dist/ai/orchestration.zod.d.ts +6 -6
  4. package/dist/ai/predictive.zod.d.ts +2 -2
  5. package/dist/ai/rag-pipeline.zod.d.ts +2 -2
  6. package/dist/api/batch.zod.d.ts +81 -8
  7. package/dist/api/batch.zod.d.ts.map +1 -1
  8. package/dist/api/batch.zod.js +14 -1
  9. package/dist/api/graphql.zod.d.ts +224 -224
  10. package/dist/api/odata.zod.d.ts +379 -0
  11. package/dist/api/odata.zod.d.ts.map +1 -1
  12. package/dist/api/odata.zod.js +14 -1
  13. package/dist/api/protocol.zod.d.ts +18 -18
  14. package/dist/api/realtime.zod.d.ts +133 -0
  15. package/dist/api/realtime.zod.d.ts.map +1 -1
  16. package/dist/api/realtime.zod.js +14 -1
  17. package/dist/api/websocket.zod.d.ts +2 -2
  18. package/dist/auth/config.zod.d.ts +12 -12
  19. package/dist/auth/identity.zod.d.ts +3 -3
  20. package/dist/automation/approval.zod.d.ts +16 -16
  21. package/dist/automation/etl.zod.d.ts +2 -2
  22. package/dist/automation/sync.zod.d.ts +4 -4
  23. package/dist/automation/webhook.zod.d.ts +2 -2
  24. package/dist/automation/workflow.zod.d.ts +28 -28
  25. package/dist/data/object.zod.d.ts.map +1 -1
  26. package/dist/data/object.zod.js +3 -1
  27. package/dist/hub/composer.zod.d.ts +9 -8
  28. package/dist/hub/composer.zod.d.ts.map +1 -1
  29. package/dist/hub/marketplace.zod.d.ts +1 -0
  30. package/dist/hub/marketplace.zod.d.ts.map +1 -1
  31. package/dist/hub/plugin-registry.zod.d.ts +9 -9
  32. package/dist/hub/space.zod.d.ts +5 -4
  33. package/dist/hub/space.zod.d.ts.map +1 -1
  34. package/dist/integration/connector/database.zod.d.ts +33 -33
  35. package/dist/integration/connector/file-storage.zod.d.ts +52 -52
  36. package/dist/integration/connector/message-queue.zod.d.ts +43 -43
  37. package/dist/integration/connector/saas.zod.d.ts +31 -30
  38. package/dist/integration/connector/saas.zod.d.ts.map +1 -1
  39. package/dist/integration/connector.zod.d.ts +34 -34
  40. package/dist/stack.zod.d.ts +78 -78
  41. package/dist/system/change-management.zod.d.ts +2 -2
  42. package/dist/system/collaboration.zod.d.ts +6 -6
  43. package/dist/system/events.zod.d.ts +2536 -0
  44. package/dist/system/events.zod.d.ts.map +1 -1
  45. package/dist/system/events.zod.js +582 -1
  46. package/dist/system/http-server.zod.d.ts +2 -2
  47. package/dist/system/index.d.ts +1 -0
  48. package/dist/system/index.d.ts.map +1 -1
  49. package/dist/system/index.js +1 -0
  50. package/dist/system/job.zod.d.ts +3 -2
  51. package/dist/system/job.zod.d.ts.map +1 -1
  52. package/dist/system/logging.zod.d.ts +10 -10
  53. package/dist/system/manifest.zod.d.ts +6 -6
  54. package/dist/system/message-queue.zod.d.ts +10 -10
  55. package/dist/system/metadata-loader.zod.d.ts +3 -3
  56. package/dist/system/notification.zod.d.ts +12 -12
  57. package/dist/system/plugin-capability.zod.d.ts +6 -6
  58. package/dist/system/startup-orchestrator.zod.d.ts +2 -2
  59. package/dist/system/worker.zod.d.ts +1458 -0
  60. package/dist/system/worker.zod.d.ts.map +1 -0
  61. package/dist/system/worker.zod.js +479 -0
  62. package/json-schema/api/BatchConfig.json +51 -0
  63. package/json-schema/api/ODataConfig.json +132 -0
  64. package/json-schema/api/RealtimeConfig.json +90 -0
  65. package/json-schema/data/Object.json +4 -1
  66. package/json-schema/system/BatchProgress.json +72 -0
  67. package/json-schema/system/BatchTask.json +63 -0
  68. package/json-schema/system/DeadLetterQueueEntry.json +137 -0
  69. package/json-schema/system/Event.json +24 -0
  70. package/json-schema/system/EventBusConfig.json +552 -0
  71. package/json-schema/system/EventHandler.json +34 -0
  72. package/json-schema/system/EventLogEntry.json +153 -0
  73. package/json-schema/system/EventMessageQueueConfig.json +79 -0
  74. package/json-schema/system/EventMetadata.json +20 -0
  75. package/json-schema/system/EventPersistence.json +11 -0
  76. package/json-schema/system/EventPriority.json +16 -0
  77. package/json-schema/system/EventQueueConfig.json +67 -0
  78. package/json-schema/system/EventReplayConfig.json +50 -0
  79. package/json-schema/system/EventSourcingConfig.json +65 -0
  80. package/json-schema/system/EventTypeDefinition.json +45 -0
  81. package/json-schema/system/EventWebhookConfig.json +119 -0
  82. package/json-schema/system/QueueConfig.json +133 -0
  83. package/json-schema/system/RealTimeNotificationConfig.json +85 -0
  84. package/json-schema/system/Task.json +145 -0
  85. package/json-schema/system/TaskExecutionResult.json +85 -0
  86. package/json-schema/system/TaskPriority.json +16 -0
  87. package/json-schema/system/TaskRetryPolicy.json +46 -0
  88. package/json-schema/system/TaskStatus.json +19 -0
  89. package/json-schema/system/WorkerConfig.json +188 -0
  90. package/json-schema/system/WorkerStats.json +90 -0
  91. package/package.json +9 -1
@@ -0,0 +1,90 @@
1
+ {
2
+ "$ref": "#/definitions/RealtimeConfig",
3
+ "definitions": {
4
+ "RealtimeConfig": {
5
+ "type": "object",
6
+ "properties": {
7
+ "enabled": {
8
+ "type": "boolean",
9
+ "default": true,
10
+ "description": "Enable realtime synchronization"
11
+ },
12
+ "transport": {
13
+ "type": "string",
14
+ "enum": [
15
+ "websocket",
16
+ "sse",
17
+ "polling"
18
+ ],
19
+ "default": "websocket",
20
+ "description": "Transport protocol"
21
+ },
22
+ "subscriptions": {
23
+ "type": "array",
24
+ "items": {
25
+ "type": "object",
26
+ "properties": {
27
+ "id": {
28
+ "type": "string",
29
+ "format": "uuid",
30
+ "description": "Unique subscription identifier"
31
+ },
32
+ "events": {
33
+ "type": "array",
34
+ "items": {
35
+ "type": "object",
36
+ "properties": {
37
+ "type": {
38
+ "type": "string",
39
+ "enum": [
40
+ "record.created",
41
+ "record.updated",
42
+ "record.deleted",
43
+ "field.changed"
44
+ ],
45
+ "description": "Type of event to subscribe to"
46
+ },
47
+ "object": {
48
+ "type": "string",
49
+ "description": "Object name to subscribe to"
50
+ },
51
+ "filters": {
52
+ "description": "Filter conditions"
53
+ }
54
+ },
55
+ "required": [
56
+ "type"
57
+ ],
58
+ "additionalProperties": false
59
+ },
60
+ "description": "Array of events to subscribe to"
61
+ },
62
+ "transport": {
63
+ "type": "string",
64
+ "enum": [
65
+ "websocket",
66
+ "sse",
67
+ "polling"
68
+ ],
69
+ "description": "Transport protocol to use"
70
+ },
71
+ "channel": {
72
+ "type": "string",
73
+ "description": "Optional channel name for grouping subscriptions"
74
+ }
75
+ },
76
+ "required": [
77
+ "id",
78
+ "events",
79
+ "transport"
80
+ ],
81
+ "additionalProperties": false
82
+ },
83
+ "description": "Default subscriptions"
84
+ }
85
+ },
86
+ "additionalProperties": true
87
+ }
88
+ },
89
+ "$schema": "http://json-schema.org/draft-07/schema#"
90
+ }
@@ -913,7 +913,10 @@
913
913
  ],
914
914
  "additionalProperties": false
915
915
  },
916
- "description": "Field definitions map"
916
+ "propertyNames": {
917
+ "pattern": "^[a-z_][a-z0-9_]*$"
918
+ },
919
+ "description": "Field definitions map. Keys must be snake_case identifiers."
917
920
  },
918
921
  "indexes": {
919
922
  "type": "array",
@@ -0,0 +1,72 @@
1
+ {
2
+ "$ref": "#/definitions/BatchProgress",
3
+ "definitions": {
4
+ "BatchProgress": {
5
+ "type": "object",
6
+ "properties": {
7
+ "batchId": {
8
+ "type": "string",
9
+ "description": "Batch job identifier"
10
+ },
11
+ "total": {
12
+ "type": "integer",
13
+ "minimum": 0,
14
+ "description": "Total number of items"
15
+ },
16
+ "processed": {
17
+ "type": "integer",
18
+ "minimum": 0,
19
+ "default": 0,
20
+ "description": "Items processed"
21
+ },
22
+ "succeeded": {
23
+ "type": "integer",
24
+ "minimum": 0,
25
+ "default": 0,
26
+ "description": "Items succeeded"
27
+ },
28
+ "failed": {
29
+ "type": "integer",
30
+ "minimum": 0,
31
+ "default": 0,
32
+ "description": "Items failed"
33
+ },
34
+ "percentage": {
35
+ "type": "number",
36
+ "minimum": 0,
37
+ "maximum": 100,
38
+ "description": "Progress percentage"
39
+ },
40
+ "status": {
41
+ "type": "string",
42
+ "enum": [
43
+ "pending",
44
+ "running",
45
+ "completed",
46
+ "failed",
47
+ "cancelled"
48
+ ],
49
+ "description": "Batch status"
50
+ },
51
+ "startedAt": {
52
+ "type": "string",
53
+ "format": "date-time",
54
+ "description": "When batch started"
55
+ },
56
+ "completedAt": {
57
+ "type": "string",
58
+ "format": "date-time",
59
+ "description": "When batch completed"
60
+ }
61
+ },
62
+ "required": [
63
+ "batchId",
64
+ "total",
65
+ "percentage",
66
+ "status"
67
+ ],
68
+ "additionalProperties": false
69
+ }
70
+ },
71
+ "$schema": "http://json-schema.org/draft-07/schema#"
72
+ }
@@ -0,0 +1,63 @@
1
+ {
2
+ "$ref": "#/definitions/BatchTask",
3
+ "definitions": {
4
+ "BatchTask": {
5
+ "type": "object",
6
+ "properties": {
7
+ "id": {
8
+ "type": "string",
9
+ "description": "Unique batch job identifier"
10
+ },
11
+ "type": {
12
+ "type": "string",
13
+ "pattern": "^[a-z_][a-z0-9_]*$",
14
+ "description": "Task type (snake_case)"
15
+ },
16
+ "items": {
17
+ "type": "array",
18
+ "description": "Array of items to process"
19
+ },
20
+ "batchSize": {
21
+ "type": "integer",
22
+ "minimum": 1,
23
+ "default": 100,
24
+ "description": "Number of items per batch"
25
+ },
26
+ "queue": {
27
+ "type": "string",
28
+ "default": "batch",
29
+ "description": "Queue for batch tasks"
30
+ },
31
+ "priority": {
32
+ "type": "string",
33
+ "enum": [
34
+ "critical",
35
+ "high",
36
+ "normal",
37
+ "low",
38
+ "background"
39
+ ],
40
+ "default": "normal",
41
+ "description": "Batch task priority"
42
+ },
43
+ "parallel": {
44
+ "type": "boolean",
45
+ "default": true,
46
+ "description": "Process batches in parallel"
47
+ },
48
+ "stopOnError": {
49
+ "type": "boolean",
50
+ "default": false,
51
+ "description": "Stop batch if any item fails"
52
+ }
53
+ },
54
+ "required": [
55
+ "id",
56
+ "type",
57
+ "items"
58
+ ],
59
+ "additionalProperties": false
60
+ }
61
+ },
62
+ "$schema": "http://json-schema.org/draft-07/schema#"
63
+ }
@@ -0,0 +1,137 @@
1
+ {
2
+ "$ref": "#/definitions/DeadLetterQueueEntry",
3
+ "definitions": {
4
+ "DeadLetterQueueEntry": {
5
+ "type": "object",
6
+ "properties": {
7
+ "id": {
8
+ "type": "string",
9
+ "description": "Unique entry identifier"
10
+ },
11
+ "event": {
12
+ "type": "object",
13
+ "properties": {
14
+ "id": {
15
+ "type": "string",
16
+ "description": "Unique event identifier"
17
+ },
18
+ "name": {
19
+ "type": "string",
20
+ "minLength": 3,
21
+ "pattern": "^[a-z][a-z0-9_.]*$",
22
+ "description": "Event name (lowercase with dots, e.g., user.created, order.paid)"
23
+ },
24
+ "payload": {
25
+ "description": "Event payload schema"
26
+ },
27
+ "metadata": {
28
+ "type": "object",
29
+ "properties": {
30
+ "source": {
31
+ "type": "string",
32
+ "description": "Event source (e.g., plugin name, system component)"
33
+ },
34
+ "timestamp": {
35
+ "type": "string",
36
+ "format": "date-time",
37
+ "description": "ISO 8601 datetime when event was created"
38
+ },
39
+ "userId": {
40
+ "type": "string",
41
+ "description": "User who triggered the event"
42
+ },
43
+ "tenantId": {
44
+ "type": "string",
45
+ "description": "Tenant identifier for multi-tenant systems"
46
+ },
47
+ "correlationId": {
48
+ "type": "string",
49
+ "description": "Correlation ID for event tracing"
50
+ },
51
+ "causationId": {
52
+ "type": "string",
53
+ "description": "ID of the event that caused this event"
54
+ },
55
+ "priority": {
56
+ "type": "string",
57
+ "enum": [
58
+ "critical",
59
+ "high",
60
+ "normal",
61
+ "low",
62
+ "background"
63
+ ],
64
+ "default": "normal",
65
+ "description": "Event priority"
66
+ }
67
+ },
68
+ "required": [
69
+ "source",
70
+ "timestamp"
71
+ ],
72
+ "additionalProperties": false,
73
+ "description": "Event metadata"
74
+ }
75
+ },
76
+ "required": [
77
+ "name",
78
+ "metadata"
79
+ ],
80
+ "additionalProperties": false,
81
+ "description": "Original event"
82
+ },
83
+ "error": {
84
+ "type": "object",
85
+ "properties": {
86
+ "message": {
87
+ "type": "string",
88
+ "description": "Error message"
89
+ },
90
+ "stack": {
91
+ "type": "string",
92
+ "description": "Error stack trace"
93
+ },
94
+ "code": {
95
+ "type": "string",
96
+ "description": "Error code"
97
+ }
98
+ },
99
+ "required": [
100
+ "message"
101
+ ],
102
+ "additionalProperties": false,
103
+ "description": "Failure details"
104
+ },
105
+ "retries": {
106
+ "type": "integer",
107
+ "minimum": 0,
108
+ "description": "Number of retry attempts"
109
+ },
110
+ "firstFailedAt": {
111
+ "type": "string",
112
+ "format": "date-time",
113
+ "description": "When event first failed"
114
+ },
115
+ "lastFailedAt": {
116
+ "type": "string",
117
+ "format": "date-time",
118
+ "description": "When event last failed"
119
+ },
120
+ "failedHandler": {
121
+ "type": "string",
122
+ "description": "Handler ID that failed"
123
+ }
124
+ },
125
+ "required": [
126
+ "id",
127
+ "event",
128
+ "error",
129
+ "retries",
130
+ "firstFailedAt",
131
+ "lastFailedAt"
132
+ ],
133
+ "additionalProperties": false
134
+ }
135
+ },
136
+ "$schema": "http://json-schema.org/draft-07/schema#"
137
+ }
@@ -4,6 +4,10 @@
4
4
  "Event": {
5
5
  "type": "object",
6
6
  "properties": {
7
+ "id": {
8
+ "type": "string",
9
+ "description": "Unique event identifier"
10
+ },
7
11
  "name": {
8
12
  "type": "string",
9
13
  "minLength": 3,
@@ -32,6 +36,26 @@
32
36
  "tenantId": {
33
37
  "type": "string",
34
38
  "description": "Tenant identifier for multi-tenant systems"
39
+ },
40
+ "correlationId": {
41
+ "type": "string",
42
+ "description": "Correlation ID for event tracing"
43
+ },
44
+ "causationId": {
45
+ "type": "string",
46
+ "description": "ID of the event that caused this event"
47
+ },
48
+ "priority": {
49
+ "type": "string",
50
+ "enum": [
51
+ "critical",
52
+ "high",
53
+ "normal",
54
+ "low",
55
+ "background"
56
+ ],
57
+ "default": "normal",
58
+ "description": "Event priority"
35
59
  }
36
60
  },
37
61
  "required": [