@soat/sdk 0.53.0 → 0.54.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.
package/dist/index.cjs CHANGED
@@ -623,7 +623,7 @@ var Activity = class {
623
623
  /**
624
624
  * List activity feed entries
625
625
  *
626
- * Returns activity entries for a project, newest first, filterable by kind and severity. Paginated with an opaque cursor rather than offset/limit — pass the previous page's `next_cursor` to fetch the next one; a `null` `next_cursor` means there is no more data.
626
+ * Returns activity entries for a project, newest first, filterable by kind, severity, agent, generation and orchestration run — every filter composable with the rest. Paginated with an opaque cursor rather than offset/limit — pass the previous page's `next_cursor` to fetch the next one; a `null` `next_cursor` means there is no more data.
627
627
  */
628
628
  static listActivity(options) {
629
629
  return (options?.client ?? client).get({
package/dist/index.d.cts CHANGED
@@ -347,7 +347,7 @@ type ActivityEntry = {
347
347
  */
348
348
  summary?: string;
349
349
  /**
350
- * Kind-specific structured context (tool, args digest, node id, generation id, guardrail policy version)
350
+ * Kind-specific structured context (tool, args digest, node id, guardrail policy version)
351
351
  */
352
352
  detail?: {
353
353
  [key: string]: unknown;
@@ -360,6 +360,10 @@ type ActivityEntry = {
360
360
  * Associated agent, if any
361
361
  */
362
362
  agent_id?: string | null;
363
+ /**
364
+ * The agent generation the entry was produced during, if any. Filter on it with the `generation_id` query parameter to read everything one turn did.
365
+ */
366
+ generation_id?: string | null;
363
367
  /**
364
368
  * Producer-specific reference (the approval, exception, or trigger firing id the entry came from, or the executed tool's id)
365
369
  */
@@ -5004,6 +5008,10 @@ type OrchestrationRun = {
5004
5008
  metadata?: {
5005
5009
  [key: string]: unknown;
5006
5010
  } | null;
5011
+ /**
5012
+ * The deduplication key the run was started under, unique within the project and claimed for as long as the run record exists. Null for a run started without one, which every platform-started run is.
5013
+ */
5014
+ idempotency_key?: string | null;
5007
5015
  /**
5008
5016
  * The run whose node started this one — set only on a child a `loop` or `sub_orchestration` node spawned, null for a run a caller started. A child is its own run with its own usage events, so this is what makes a delegated run's spend attributable to the run that ordered it.
5009
5017
  */
@@ -5180,6 +5188,14 @@ type StartOrchestrationRunRequest = {
5180
5188
  metadata?: {
5181
5189
  [key: string]: unknown;
5182
5190
  };
5191
+ /**
5192
+ * Deduplication key, unique within the project, that makes a retry of an ambiguous failure safe. The first request under a key starts the run and answers `201`; any later request carrying the same key answers `200` with that same run, whatever state it has reached — including a retry that arrives while the original is still running.
5193
+ *
5194
+ * The key is claimed by the run record and stays claimed for as long as the record exists, so it never silently expires and lets a second run through.
5195
+ *
5196
+ * `orchestration_id`, `input`, `tool_context` and `metadata` are the request the key names: reusing a key with any of them changed is `409 IDEMPOTENCY_KEY_REUSED` rather than a replay of a run that does something else. `wait` is not part of that comparison — it says how the caller waits, not what the run is — so a retry may flip it.
5197
+ */
5198
+ idempotency_key?: string;
5183
5199
  /**
5184
5200
  * When true, block until the run reaches a terminal (succeeded/failed) or awaiting_input state and return the settled run. When false (default), return immediately with status "queued" and execute the run in the background.
5185
5201
  */
@@ -7141,6 +7157,18 @@ type ListActivityData = {
7141
7157
  * Filter by severity
7142
7158
  */
7143
7159
  severity?: 'info' | 'warning' | 'critical';
7160
+ /**
7161
+ * Filter to entries produced by one agent. Composable with every other filter — entries carry one agent, one generation and one run, so naming two narrows to the rows where both hold.
7162
+ */
7163
+ agent_id?: string;
7164
+ /**
7165
+ * Filter to entries produced during one agent generation. This is what turns `tool_resolution_failed` from alertable into usable: the warning for a suspect turn is one query rather than a scan of the project's feed.
7166
+ */
7167
+ generation_id?: string;
7168
+ /**
7169
+ * Filter to entries produced during one orchestration run.
7170
+ */
7171
+ orchestration_run_id?: string;
7144
7172
  /**
7145
7173
  * Opaque cursor from a previous page's `next_cursor`
7146
7174
  */
@@ -14852,7 +14880,7 @@ type StartOrchestrationRunData = {
14852
14880
  };
14853
14881
  type StartOrchestrationRunErrors = {
14854
14882
  /**
14855
- * Validation error (e.g. a `tool_context` key that cannot become a header, or `metadata` that is not a JSON object). No run is created.
14883
+ * Validation error (e.g. a `tool_context` key that cannot become a header, `metadata` that is not a JSON object, or an `idempotency_key` that is not a non-empty string of at most 255 characters). No run is created.
14856
14884
  */
14857
14885
  400: unknown;
14858
14886
  /**
@@ -14867,8 +14895,16 @@ type StartOrchestrationRunErrors = {
14867
14895
  * Orchestration not found
14868
14896
  */
14869
14897
  404: unknown;
14898
+ /**
14899
+ * `IDEMPOTENCY_KEY_REUSED` — the key is already claimed by a run started from a different request. No run is created.
14900
+ */
14901
+ 409: unknown;
14870
14902
  };
14871
14903
  type StartOrchestrationRunResponses = {
14904
+ /**
14905
+ * Duplicate request — the run the `idempotency_key` already names is returned and no second run is started.
14906
+ */
14907
+ 200: OrchestrationRun;
14872
14908
  /**
14873
14909
  * Run created and executed
14874
14910
  */
@@ -18699,7 +18735,7 @@ export declare class Activity {
18699
18735
  /**
18700
18736
  * List activity feed entries
18701
18737
  *
18702
- * Returns activity entries for a project, newest first, filterable by kind and severity. Paginated with an opaque cursor rather than offset/limit — pass the previous page's `next_cursor` to fetch the next one; a `null` `next_cursor` means there is no more data.
18738
+ * Returns activity entries for a project, newest first, filterable by kind, severity, agent, generation and orchestration run — every filter composable with the rest. Paginated with an opaque cursor rather than offset/limit — pass the previous page's `next_cursor` to fetch the next one; a `null` `next_cursor` means there is no more data.
18703
18739
  */
18704
18740
  static listActivity<ThrowOnError extends boolean = false>(options?: Options<ListActivityData, ThrowOnError>): RequestResult<ListActivityResponses, ListActivityErrors, ThrowOnError>;
18705
18741
  }
package/dist/index.d.mts CHANGED
@@ -347,7 +347,7 @@ type ActivityEntry = {
347
347
  */
348
348
  summary?: string;
349
349
  /**
350
- * Kind-specific structured context (tool, args digest, node id, generation id, guardrail policy version)
350
+ * Kind-specific structured context (tool, args digest, node id, guardrail policy version)
351
351
  */
352
352
  detail?: {
353
353
  [key: string]: unknown;
@@ -360,6 +360,10 @@ type ActivityEntry = {
360
360
  * Associated agent, if any
361
361
  */
362
362
  agent_id?: string | null;
363
+ /**
364
+ * The agent generation the entry was produced during, if any. Filter on it with the `generation_id` query parameter to read everything one turn did.
365
+ */
366
+ generation_id?: string | null;
363
367
  /**
364
368
  * Producer-specific reference (the approval, exception, or trigger firing id the entry came from, or the executed tool's id)
365
369
  */
@@ -5004,6 +5008,10 @@ type OrchestrationRun = {
5004
5008
  metadata?: {
5005
5009
  [key: string]: unknown;
5006
5010
  } | null;
5011
+ /**
5012
+ * The deduplication key the run was started under, unique within the project and claimed for as long as the run record exists. Null for a run started without one, which every platform-started run is.
5013
+ */
5014
+ idempotency_key?: string | null;
5007
5015
  /**
5008
5016
  * The run whose node started this one — set only on a child a `loop` or `sub_orchestration` node spawned, null for a run a caller started. A child is its own run with its own usage events, so this is what makes a delegated run's spend attributable to the run that ordered it.
5009
5017
  */
@@ -5180,6 +5188,14 @@ type StartOrchestrationRunRequest = {
5180
5188
  metadata?: {
5181
5189
  [key: string]: unknown;
5182
5190
  };
5191
+ /**
5192
+ * Deduplication key, unique within the project, that makes a retry of an ambiguous failure safe. The first request under a key starts the run and answers `201`; any later request carrying the same key answers `200` with that same run, whatever state it has reached — including a retry that arrives while the original is still running.
5193
+ *
5194
+ * The key is claimed by the run record and stays claimed for as long as the record exists, so it never silently expires and lets a second run through.
5195
+ *
5196
+ * `orchestration_id`, `input`, `tool_context` and `metadata` are the request the key names: reusing a key with any of them changed is `409 IDEMPOTENCY_KEY_REUSED` rather than a replay of a run that does something else. `wait` is not part of that comparison — it says how the caller waits, not what the run is — so a retry may flip it.
5197
+ */
5198
+ idempotency_key?: string;
5183
5199
  /**
5184
5200
  * When true, block until the run reaches a terminal (succeeded/failed) or awaiting_input state and return the settled run. When false (default), return immediately with status "queued" and execute the run in the background.
5185
5201
  */
@@ -7141,6 +7157,18 @@ type ListActivityData = {
7141
7157
  * Filter by severity
7142
7158
  */
7143
7159
  severity?: 'info' | 'warning' | 'critical';
7160
+ /**
7161
+ * Filter to entries produced by one agent. Composable with every other filter — entries carry one agent, one generation and one run, so naming two narrows to the rows where both hold.
7162
+ */
7163
+ agent_id?: string;
7164
+ /**
7165
+ * Filter to entries produced during one agent generation. This is what turns `tool_resolution_failed` from alertable into usable: the warning for a suspect turn is one query rather than a scan of the project's feed.
7166
+ */
7167
+ generation_id?: string;
7168
+ /**
7169
+ * Filter to entries produced during one orchestration run.
7170
+ */
7171
+ orchestration_run_id?: string;
7144
7172
  /**
7145
7173
  * Opaque cursor from a previous page's `next_cursor`
7146
7174
  */
@@ -14852,7 +14880,7 @@ type StartOrchestrationRunData = {
14852
14880
  };
14853
14881
  type StartOrchestrationRunErrors = {
14854
14882
  /**
14855
- * Validation error (e.g. a `tool_context` key that cannot become a header, or `metadata` that is not a JSON object). No run is created.
14883
+ * Validation error (e.g. a `tool_context` key that cannot become a header, `metadata` that is not a JSON object, or an `idempotency_key` that is not a non-empty string of at most 255 characters). No run is created.
14856
14884
  */
14857
14885
  400: unknown;
14858
14886
  /**
@@ -14867,8 +14895,16 @@ type StartOrchestrationRunErrors = {
14867
14895
  * Orchestration not found
14868
14896
  */
14869
14897
  404: unknown;
14898
+ /**
14899
+ * `IDEMPOTENCY_KEY_REUSED` — the key is already claimed by a run started from a different request. No run is created.
14900
+ */
14901
+ 409: unknown;
14870
14902
  };
14871
14903
  type StartOrchestrationRunResponses = {
14904
+ /**
14905
+ * Duplicate request — the run the `idempotency_key` already names is returned and no second run is started.
14906
+ */
14907
+ 200: OrchestrationRun;
14872
14908
  /**
14873
14909
  * Run created and executed
14874
14910
  */
@@ -18699,7 +18735,7 @@ export declare class Activity {
18699
18735
  /**
18700
18736
  * List activity feed entries
18701
18737
  *
18702
- * Returns activity entries for a project, newest first, filterable by kind and severity. Paginated with an opaque cursor rather than offset/limit — pass the previous page's `next_cursor` to fetch the next one; a `null` `next_cursor` means there is no more data.
18738
+ * Returns activity entries for a project, newest first, filterable by kind, severity, agent, generation and orchestration run — every filter composable with the rest. Paginated with an opaque cursor rather than offset/limit — pass the previous page's `next_cursor` to fetch the next one; a `null` `next_cursor` means there is no more data.
18703
18739
  */
18704
18740
  static listActivity<ThrowOnError extends boolean = false>(options?: Options<ListActivityData, ThrowOnError>): RequestResult<ListActivityResponses, ListActivityErrors, ThrowOnError>;
18705
18741
  }
package/dist/index.mjs CHANGED
@@ -622,7 +622,7 @@ var Activity = class {
622
622
  /**
623
623
  * List activity feed entries
624
624
  *
625
- * Returns activity entries for a project, newest first, filterable by kind and severity. Paginated with an opaque cursor rather than offset/limit — pass the previous page's `next_cursor` to fetch the next one; a `null` `next_cursor` means there is no more data.
625
+ * Returns activity entries for a project, newest first, filterable by kind, severity, agent, generation and orchestration run — every filter composable with the rest. Paginated with an opaque cursor rather than offset/limit — pass the previous page's `next_cursor` to fetch the next one; a `null` `next_cursor` means there is no more data.
626
626
  */
627
627
  static listActivity(options) {
628
628
  return (options?.client ?? client).get({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@soat/sdk",
3
- "version": "0.53.0",
3
+ "version": "0.54.0",
4
4
  "description": "TypeScript SDK for SOAT — open-source infrastructure for production-ready AI agents.",
5
5
  "keywords": [
6
6
  "ai-agents",