@naturali/sdk 0.55.0 → 0.55.1

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
@@ -2023,7 +2023,7 @@ var Tasks = class {
2023
2023
  * Update a task
2024
2024
  *
2025
2025
  * Edit the card's `title`, `assignee` or `payload`. At least one is required.
2026
- * `payload` is **shallow-merged** over what is there: keys the request omits are preserved, so setting one field never discards what a column's automation wrote (`payload.last_result`). The merged result is validated against the board's `payload_schema`.
2026
+ * `payload` is **shallow-merged** over what is there: keys the request omits are preserved. The merged result is validated against the board's `payload_schema`. `last_result` is read-only and lives in its own field — a payload write can never discard or forge it.
2027
2027
  * `state` and `board_id` are rejected — a card moves only through `:transition`, and it never changes boards.
2028
2028
  *
2029
2029
  */
package/dist/index.d.cts CHANGED
@@ -2506,13 +2506,20 @@ type Task = {
2506
2506
  */
2507
2507
  status: 'open' | 'closed';
2508
2508
  /**
2509
- * The card's working data — what a column's `input_mapping` reads and what a completed dispatch writes back to (`payload.last_result`). Store references to artifacts (file and document ids), not the artifacts themselves.
2510
- * **`last_result` is shaped by the kind of column that wrote it.** An agent column writes its generation output. A **tool** column writes the enclosing run's state, which puts the tool's own result one level down under `nodes.tool` — so a later column chains off a tool column with `{"var": "task.payload.last_result.nodes.tool.<field>"}`, not `last_result.<field>`. (Inside the tool column's *own* `on_complete`, `result.<field>` works as documented; only chaining from a *later* column sees the run-state shape.)
2509
+ * The card's working data — entirely caller-owned, and what a column's `input_mapping` reads. Store references to artifacts (file and document ids), not the artifacts themselves. A dispatch's result does **not** land here — see `last_result`.
2511
2510
  *
2512
2511
  */
2513
2512
  payload: {
2514
2513
  [key: string]: unknown;
2515
2514
  };
2515
+ /**
2516
+ * The most recent column's dispatch result — read-only, and overwritten whole by every dispatch (never merged with the previous one). Null until the card's first dispatch settles.
2517
+ * **Shaped by the kind of column that wrote it.** An agent column writes its generation output. A **tool** or **poll** column writes the enclosing run's state, which puts the tool's own result one level down under `nodes.tool` (or `nodes.poll`) — so a later column chains off one with `{"var": "task.last_result.nodes.tool.<field>"}`, not `last_result.<field>`. (Inside that column's *own* `on_complete`, `result.<field>` works as documented; only chaining from a *later* column sees the run-state shape.) A delay column writes nothing meaningful here — it dispatches no tool.
2518
+ *
2519
+ */
2520
+ last_result: {
2521
+ [key: string]: unknown;
2522
+ } | null;
2516
2523
  /**
2517
2524
  * Informational label; it does not restrict who may move the card.
2518
2525
  */
@@ -2523,8 +2530,8 @@ type Task = {
2523
2530
  */
2524
2531
  automation_status: 'running' | 'completed' | 'failed' | 'unrouted';
2525
2532
  /**
2526
- * The in-flight dispatch, if any. `kind` is always the column's own kind — the same `agent` / `tool` the board was written with — never the name of the machinery underneath.
2527
- * An agent column reports `{ kind: "agent", id, status }`, where `id` is the generation — real provenance, readable through Generations. A tool column reports `{ kind: "tool", tool_id, status }`: the machinery a tool column runs on is naturali's own and is not addressable by a caller, so it is named by the tool it stands for rather than by an internal id.
2533
+ * The in-flight dispatch, if any. `kind` is always the column's own kind — the same `agent` / `tool` / `poll` / `delay` the board was written with — never the name of the machinery underneath.
2534
+ * An agent column reports `{ kind: "agent", id, status }`, where `id` is the generation — real provenance, readable through Generations. A tool or poll column reports `{ kind: "tool" | "poll", tool_id, status }`: the machinery these columns run on is naturali's own and is not addressable by a caller, so it is named by the tool it stands for rather than by an internal id. A delay column names no tool, so it reports `{ kind: "delay", status }` with no `tool_id`.
2528
2535
  *
2529
2536
  */
2530
2537
  active_dispatch: {
@@ -9456,7 +9463,7 @@ declare class Tasks {
9456
9463
  * Update a task
9457
9464
  *
9458
9465
  * Edit the card's `title`, `assignee` or `payload`. At least one is required.
9459
- * `payload` is **shallow-merged** over what is there: keys the request omits are preserved, so setting one field never discards what a column's automation wrote (`payload.last_result`). The merged result is validated against the board's `payload_schema`.
9466
+ * `payload` is **shallow-merged** over what is there: keys the request omits are preserved. The merged result is validated against the board's `payload_schema`. `last_result` is read-only and lives in its own field — a payload write can never discard or forge it.
9460
9467
  * `state` and `board_id` are rejected — a card moves only through `:transition`, and it never changes boards.
9461
9468
  *
9462
9469
  */
package/dist/index.d.mts CHANGED
@@ -2506,13 +2506,20 @@ type Task = {
2506
2506
  */
2507
2507
  status: 'open' | 'closed';
2508
2508
  /**
2509
- * The card's working data — what a column's `input_mapping` reads and what a completed dispatch writes back to (`payload.last_result`). Store references to artifacts (file and document ids), not the artifacts themselves.
2510
- * **`last_result` is shaped by the kind of column that wrote it.** An agent column writes its generation output. A **tool** column writes the enclosing run's state, which puts the tool's own result one level down under `nodes.tool` — so a later column chains off a tool column with `{"var": "task.payload.last_result.nodes.tool.<field>"}`, not `last_result.<field>`. (Inside the tool column's *own* `on_complete`, `result.<field>` works as documented; only chaining from a *later* column sees the run-state shape.)
2509
+ * The card's working data — entirely caller-owned, and what a column's `input_mapping` reads. Store references to artifacts (file and document ids), not the artifacts themselves. A dispatch's result does **not** land here — see `last_result`.
2511
2510
  *
2512
2511
  */
2513
2512
  payload: {
2514
2513
  [key: string]: unknown;
2515
2514
  };
2515
+ /**
2516
+ * The most recent column's dispatch result — read-only, and overwritten whole by every dispatch (never merged with the previous one). Null until the card's first dispatch settles.
2517
+ * **Shaped by the kind of column that wrote it.** An agent column writes its generation output. A **tool** or **poll** column writes the enclosing run's state, which puts the tool's own result one level down under `nodes.tool` (or `nodes.poll`) — so a later column chains off one with `{"var": "task.last_result.nodes.tool.<field>"}`, not `last_result.<field>`. (Inside that column's *own* `on_complete`, `result.<field>` works as documented; only chaining from a *later* column sees the run-state shape.) A delay column writes nothing meaningful here — it dispatches no tool.
2518
+ *
2519
+ */
2520
+ last_result: {
2521
+ [key: string]: unknown;
2522
+ } | null;
2516
2523
  /**
2517
2524
  * Informational label; it does not restrict who may move the card.
2518
2525
  */
@@ -2523,8 +2530,8 @@ type Task = {
2523
2530
  */
2524
2531
  automation_status: 'running' | 'completed' | 'failed' | 'unrouted';
2525
2532
  /**
2526
- * The in-flight dispatch, if any. `kind` is always the column's own kind — the same `agent` / `tool` the board was written with — never the name of the machinery underneath.
2527
- * An agent column reports `{ kind: "agent", id, status }`, where `id` is the generation — real provenance, readable through Generations. A tool column reports `{ kind: "tool", tool_id, status }`: the machinery a tool column runs on is naturali's own and is not addressable by a caller, so it is named by the tool it stands for rather than by an internal id.
2533
+ * The in-flight dispatch, if any. `kind` is always the column's own kind — the same `agent` / `tool` / `poll` / `delay` the board was written with — never the name of the machinery underneath.
2534
+ * An agent column reports `{ kind: "agent", id, status }`, where `id` is the generation — real provenance, readable through Generations. A tool or poll column reports `{ kind: "tool" | "poll", tool_id, status }`: the machinery these columns run on is naturali's own and is not addressable by a caller, so it is named by the tool it stands for rather than by an internal id. A delay column names no tool, so it reports `{ kind: "delay", status }` with no `tool_id`.
2528
2535
  *
2529
2536
  */
2530
2537
  active_dispatch: {
@@ -9456,7 +9463,7 @@ declare class Tasks {
9456
9463
  * Update a task
9457
9464
  *
9458
9465
  * Edit the card's `title`, `assignee` or `payload`. At least one is required.
9459
- * `payload` is **shallow-merged** over what is there: keys the request omits are preserved, so setting one field never discards what a column's automation wrote (`payload.last_result`). The merged result is validated against the board's `payload_schema`.
9466
+ * `payload` is **shallow-merged** over what is there: keys the request omits are preserved. The merged result is validated against the board's `payload_schema`. `last_result` is read-only and lives in its own field — a payload write can never discard or forge it.
9460
9467
  * `state` and `board_id` are rejected — a card moves only through `:transition`, and it never changes boards.
9461
9468
  *
9462
9469
  */
package/dist/index.mjs CHANGED
@@ -2022,7 +2022,7 @@ var Tasks = class {
2022
2022
  * Update a task
2023
2023
  *
2024
2024
  * Edit the card's `title`, `assignee` or `payload`. At least one is required.
2025
- * `payload` is **shallow-merged** over what is there: keys the request omits are preserved, so setting one field never discards what a column's automation wrote (`payload.last_result`). The merged result is validated against the board's `payload_schema`.
2025
+ * `payload` is **shallow-merged** over what is there: keys the request omits are preserved. The merged result is validated against the board's `payload_schema`. `last_result` is read-only and lives in its own field — a payload write can never discard or forge it.
2026
2026
  * `state` and `board_id` are rejected — a card moves only through `:transition`, and it never changes boards.
2027
2027
  *
2028
2028
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@naturali/sdk",
3
- "version": "0.55.0",
3
+ "version": "0.55.1",
4
4
  "description": "TypeScript SDK for the naturali.ai API, generated from its OpenAPI specs",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -37,7 +37,7 @@
37
37
  "tsx": "^4.23.1",
38
38
  "typescript": "~6.0.3",
39
39
  "vitest": "^4.1.10",
40
- "@naturali/api": "0.55.0"
40
+ "@naturali/api": "0.55.1"
41
41
  },
42
42
  "scripts": {
43
43
  "generate": "tsx scripts/generate.ts",