@loxtep/sdk 0.9.36 → 0.9.37

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.
package/CHANGELOG.md CHANGED
@@ -8,6 +8,12 @@ and this project adheres to
8
8
 
9
9
  ## [Unreleased]
10
10
 
11
+ ## [0.9.37] - 2026-10-21
12
+
13
+ ### Added
14
+
15
+ - Entity schemas accept `output_queue_display_name` and `error_queue_display_name` on connections, transformations, validations, quality rules, agents, and approvals. Data products accept `output_queue_display_name` for the upstream writer's output queue. `loxtep lint` and project push keep these fields. Schemas are pinned to `LoxtepInc/loxtep` `f6be71ea3ee9b1ca0a898a520152cc68c9c48a41`.
16
+
11
17
  ## [0.9.36] - 2026-10-21
12
18
 
13
19
  ### Fixed
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@loxtep/sdk",
3
- "version": "0.9.36",
3
+ "version": "0.9.37",
4
4
  "description": "Loxtep SDK for Node.js — the Enterprise Context Layer: data products, workflows, projects, queues, and machine-usable context for AI",
5
5
  "author": "Loxtep <engineering@loxtep.io>",
6
6
  "homepage": "https://loxtep.io",
@@ -4,7 +4,7 @@ These JSON Schema draft-07 files are byte-identical copies of the Loxtep platfor
4
4
  single entity-schema source, used by `loxtep lint` and `validateEntity()`.
5
5
 
6
6
  **Source:** `LoxtepInc/loxtep` `platform-backend/_core/src/workspace/entity-json-schemas/`
7
- **Pinned commit:** `3dbf25ff227874d1a475c7a82939893fcc4c222b` (git blob ids per file in `SOURCE.json`)
7
+ **Pinned commit:** `f6be71ea3ee9b1ca0a898a520152cc68c9c48a41` (git blob ids per file in `SOURCE.json`)
8
8
 
9
9
  **Sync** (from `nodejs/`, with a loxtep checkout at the commit to pin):
10
10
 
@@ -1,23 +1,23 @@
1
1
  {
2
2
  "repository": "LoxtepInc/loxtep",
3
3
  "path": "platform-backend/_core/src/workspace/entity-json-schemas",
4
- "commit": "3dbf25ff227874d1a475c7a82939893fcc4c222b",
4
+ "commit": "f6be71ea3ee9b1ca0a898a520152cc68c9c48a41",
5
5
  "files": {
6
- "agent.json": "925caaa71058fea41f4820a92232169af9e391b3",
7
- "approval.json": "b341fe232f1f2a7ceb3d100f9475abc3ca790c22",
8
- "connection.json": "7252312151bdaebd2ee579208636b0b1c73aacb2",
6
+ "agent.json": "894158338a8bd3b08b7a042006be0d669aa0fe56",
7
+ "approval.json": "37cad8aff6e250be2bc8ccb966d97018d48f0663",
8
+ "connection.json": "0c2b1d92c1aa5d731a9c23817de190deff840c87",
9
9
  "connector.json": "712b7f7abb0c06aecd29a76b667950a0eda070d7",
10
10
  "container.json": "3b5b3a51d4f27645e3db2e8e2992aeee984de5ee",
11
11
  "contract.json": "04fec0f7f4c26890e8163d88770a5613316b245d",
12
- "data-product.json": "ceb1b6211740b85be37dd4ce64753db240c42851",
12
+ "data-product.json": "ebf208b50d0330958daf73bfdd81c1444cc037f0",
13
13
  "domain.json": "42e83648bdebec54fabdb1ba9f7d7a1369f3ba05",
14
14
  "export.json": "44ef4bb5c21860a66cd57d86e06a66ff7813c225",
15
15
  "odps-product.json": "53b8eb5eb070d0d1e60a91fe908e038ee3e5d599",
16
16
  "projection.json": "5457e3f233f936d3fba38bc8513fb99a54961607",
17
- "quality-rule.json": "917a26d325d47c39d68630df5bd9e0c0c411a246",
17
+ "quality-rule.json": "d0c298616b2e20a02256cde2f63acf38f7bb6f3f",
18
18
  "schema.json": "38940cc4e8b59a70cf44699459af0b8a09f0fc52",
19
- "transformation.json": "7f5c8a5f771964d0637ec2f38def6d7c8dbd3fd1",
20
- "validation.json": "bba581abb2f12a360ba910f7ed912bafdefa81dd",
19
+ "transformation.json": "af95be38f90adafc0c7b9179d454c0593d9b49bd",
20
+ "validation.json": "056452196c622c7bac0bdd496db623ee2e22f083",
21
21
  "workflow-graph.json": "9715eea18965bea97fc5546edb4b37629c77315b",
22
22
  "workflow.json": "afe25e55833ac957bdcd62d32e6c9df83779c54b"
23
23
  }
@@ -91,6 +91,18 @@
91
91
  "type": "string",
92
92
  "format": "date-time",
93
93
  "description": "ISO 8601 timestamp when the node was last updated"
94
+ },
95
+ "output_queue_display_name": {
96
+ "type": ["string", "null"],
97
+ "minLength": 1,
98
+ "maxLength": 255,
99
+ "description": "Observe label for this agent's output queue. Deploy writes it onto the existing queue id and leaves bindings, checkpoints, and bot pause unchanged. Unset: the generated label stays the fallback and is not overwritten."
100
+ },
101
+ "error_queue_display_name": {
102
+ "type": ["string", "null"],
103
+ "minLength": 1,
104
+ "maxLength": 255,
105
+ "description": "Observe label for this agent's error queue. Distinct from error_queue_name, which is the queue id. Deploy writes the label onto that existing queue id and leaves bindings, checkpoints, and bot pause unchanged. Unset: the generated label stays the fallback and is not overwritten."
94
106
  }
95
107
  },
96
108
  "additionalProperties": true
@@ -86,6 +86,18 @@
86
86
  "type": "string",
87
87
  "format": "date-time",
88
88
  "description": "ISO 8601 timestamp when the node was last updated"
89
+ },
90
+ "output_queue_display_name": {
91
+ "type": ["string", "null"],
92
+ "minLength": 1,
93
+ "maxLength": 255,
94
+ "description": "Observe label for this approval node's approved queue. Deploy writes it onto the existing queue id and leaves bindings, checkpoints, and bot pause unchanged. Unset: the generated label stays the fallback and is not overwritten."
95
+ },
96
+ "error_queue_display_name": {
97
+ "type": ["string", "null"],
98
+ "minLength": 1,
99
+ "maxLength": 255,
100
+ "description": "Observe label for this approval node's rejected queue. Deploy writes it onto the existing queue id and leaves bindings, checkpoints, and bot pause unchanged. Unset: the generated label stays the fallback and is not overwritten."
89
101
  }
90
102
  },
91
103
  "additionalProperties": true
@@ -392,6 +392,18 @@
392
392
  null
393
393
  ],
394
394
  "description": "Entity type of the upstream entity."
395
+ },
396
+ "output_queue_display_name": {
397
+ "type": ["string", "null"],
398
+ "minLength": 1,
399
+ "maxLength": 255,
400
+ "description": "Observe label for this connection's output queue (ingested). Deploy writes it onto the existing queue id and leaves bindings, checkpoints, and bot pause unchanged. Unset: the generated label stays the fallback and is not overwritten."
401
+ },
402
+ "error_queue_display_name": {
403
+ "type": ["string", "null"],
404
+ "minLength": 1,
405
+ "maxLength": 255,
406
+ "description": "Observe label for this connection's error queue. Deploy writes it onto the existing queue id and leaves bindings, checkpoints, and bot pause unchanged. Unset: the generated label stays the fallback and is not overwritten."
395
407
  }
396
408
  },
397
409
  "additionalProperties": false
@@ -162,6 +162,12 @@
162
162
  "format": "date-time",
163
163
  "description": "ISO 8601 timestamp when data product was deleted (soft delete)"
164
164
  },
165
+ "output_queue_display_name": {
166
+ "type": ["string", "null"],
167
+ "minLength": 1,
168
+ "maxLength": 255,
169
+ "description": "Observe label for the upstream writer's output queue when that writer does not declare its own. Deploy writes it onto the existing queue id and leaves bindings, checkpoints, and bot pause unchanged. The writer's output_queue_display_name wins when both are set."
170
+ },
165
171
  "schema": {
166
172
  "description": "Product schema stored on the data product (object or JSON string). Read by medallion, metrics, and semantic bootstrap as dp.schema.",
167
173
  "oneOf": [
@@ -89,6 +89,19 @@
89
89
  "maxLength": 500,
90
90
  "description": "Custom error message when rule fails"
91
91
  },
92
+ "batch_size": {
93
+ "type": ["integer", "null"],
94
+ "minimum": 1,
95
+ "maximum": 10000,
96
+ "description": "Runtime tuning: events per handler call (rstreams offload batch). Does not cap events read per run; that is bounded by the Lambda timeout and memory thresholds. Unset: 300. Out-of-range values fail deploy."
97
+ },
98
+ "runtime_memory_mb": {
99
+ "description": "Runtime tuning: shared runtimes Lambda memory tier (connectors-{mb}). Unset: 256. Any other value fails deploy.",
100
+ "oneOf": [
101
+ { "type": "null" },
102
+ { "type": "integer", "enum": [256, 512, 1024, 2048] }
103
+ ]
104
+ },
92
105
  "metadata": {
93
106
  "type": "object",
94
107
  "additionalProperties": true,
@@ -119,6 +132,18 @@
119
132
  "type": ["string", "null"],
120
133
  "format": "date-time",
121
134
  "description": "ISO 8601 timestamp when quality rule was deleted (soft delete)"
135
+ },
136
+ "output_queue_display_name": {
137
+ "type": ["string", "null"],
138
+ "minLength": 1,
139
+ "maxLength": 255,
140
+ "description": "Observe label for this quality rule's output queue. Deploy writes it onto the existing queue id and leaves bindings, checkpoints, and bot pause unchanged. Unset: the generated label stays the fallback and is not overwritten."
141
+ },
142
+ "error_queue_display_name": {
143
+ "type": ["string", "null"],
144
+ "minLength": 1,
145
+ "maxLength": 255,
146
+ "description": "Observe label for this quality rule's error queue. Deploy writes it onto the existing queue id and leaves bindings, checkpoints, and bot pause unchanged. Unset: the generated label stays the fallback and is not overwritten."
122
147
  }
123
148
  },
124
149
  "additionalProperties": false
@@ -120,6 +120,11 @@
120
120
  "index_field": "time",
121
121
  "index_as": "obs_date",
122
122
  "carry_fields": ["latitude", "longitude", "elevation", "timezone"]
123
+ },
124
+ {
125
+ "field": "items",
126
+ "include_original": true,
127
+ "on_empty": "drop"
123
128
  }
124
129
  ]
125
130
  },
@@ -138,6 +143,19 @@
138
143
  "minimum": 0,
139
144
  "description": "Default execution order when used in workflows (lower = earlier)"
140
145
  },
146
+ "batch_size": {
147
+ "type": ["integer", "null"],
148
+ "minimum": 1,
149
+ "maximum": 10000,
150
+ "description": "Runtime tuning: events per handler call (rstreams offload batch). Does not cap events read per run; that is bounded by the Lambda timeout and memory thresholds. Unset: 300. Out-of-range values fail deploy."
151
+ },
152
+ "runtime_memory_mb": {
153
+ "description": "Runtime tuning: shared runtimes Lambda memory tier (transformers-{mb}). Unset: derived from transform_type (256/512/1024). Any other value fails deploy.",
154
+ "oneOf": [
155
+ { "type": "null" },
156
+ { "type": "integer", "enum": [256, 512, 1024, 2048] }
157
+ ]
158
+ },
141
159
  "metadata": {
142
160
  "type": "object",
143
161
  "additionalProperties": true,
@@ -168,6 +186,18 @@
168
186
  "type": ["string", "null"],
169
187
  "format": "date-time",
170
188
  "description": "ISO 8601 timestamp when transformation was deleted (soft delete)"
189
+ },
190
+ "output_queue_display_name": {
191
+ "type": ["string", "null"],
192
+ "minLength": 1,
193
+ "maxLength": 255,
194
+ "description": "Observe label for this transformation's output queue. Deploy writes it onto the existing queue id and leaves bindings, checkpoints, and bot pause unchanged. Unset: the generated label stays the fallback and is not overwritten."
195
+ },
196
+ "error_queue_display_name": {
197
+ "type": ["string", "null"],
198
+ "minLength": 1,
199
+ "maxLength": 255,
200
+ "description": "Observe label for this transformation's error queue. Deploy writes it onto the existing queue id and leaves bindings, checkpoints, and bot pause unchanged. Unset: the generated label stays the fallback and is not overwritten."
171
201
  }
172
202
  },
173
203
  "additionalProperties": false
@@ -122,6 +122,19 @@
122
122
  "minimum": 0,
123
123
  "description": "Default execution order when used in workflows (lower = earlier)"
124
124
  },
125
+ "batch_size": {
126
+ "type": ["integer", "null"],
127
+ "minimum": 1,
128
+ "maximum": 10000,
129
+ "description": "Runtime tuning: events per handler call (rstreams offload batch). Does not cap events read per run; that is bounded by the Lambda timeout and memory thresholds. Unset: 300. Out-of-range values fail deploy."
130
+ },
131
+ "runtime_memory_mb": {
132
+ "description": "Runtime tuning: shared runtimes Lambda memory tier (connectors-{mb}). Unset: 256. Any other value fails deploy.",
133
+ "oneOf": [
134
+ { "type": "null" },
135
+ { "type": "integer", "enum": [256, 512, 1024, 2048] }
136
+ ]
137
+ },
125
138
  "metadata": {
126
139
  "type": "object",
127
140
  "additionalProperties": true,
@@ -152,6 +165,18 @@
152
165
  "type": ["string", "null"],
153
166
  "format": "date-time",
154
167
  "description": "ISO 8601 timestamp when validation was deleted (soft delete)"
168
+ },
169
+ "output_queue_display_name": {
170
+ "type": ["string", "null"],
171
+ "minLength": 1,
172
+ "maxLength": 255,
173
+ "description": "Observe label for this validation's output queue. Deploy writes it onto the existing queue id and leaves bindings, checkpoints, and bot pause unchanged. Unset: the generated label stays the fallback and is not overwritten."
174
+ },
175
+ "error_queue_display_name": {
176
+ "type": ["string", "null"],
177
+ "minLength": 1,
178
+ "maxLength": 255,
179
+ "description": "Observe label for this validation's error queue. Deploy writes it onto the existing queue id and leaves bindings, checkpoints, and bot pause unchanged. Unset: the generated label stays the fallback and is not overwritten."
155
180
  }
156
181
  },
157
182
  "additionalProperties": false