@toloka-platform/sdk 0.2.0-preview.1 → 0.2.0-preview.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 (22) hide show
  1. package/dist/cli/toloka.js +3 -3
  2. package/dist/cli/toloka.js.jsc +0 -0
  3. package/dist/cli/toloka.js.jsc.sha256 +1 -1
  4. package/dist/cli/toloka.js.sha256 +1 -1
  5. package/docs/limitations.md +1 -1
  6. package/openapi/gen/models/generationNodeSettingsAudienceAndPricingOneOfOneoneGenerationModelId.ts +1 -1
  7. package/openapi/gen/models/generationNodeSettingsQualityAssuranceOneOfFourLlmQaModelId.ts +1 -1
  8. package/openapi/gen/models/generationNodeSettingsQualityAssuranceOneOfLlmQaModelId.ts +1 -1
  9. package/openapi/gen/models/pipelineGraphSnapshotGraphNodesItemOneOfOnefoursevenSettingsQualityAssuranceOneOfLlmQaModelId.ts +1 -1
  10. package/openapi/gen/models/pipelineGraphSnapshotGraphNodesItemOneOfThreeoneSettingsAudienceAndPricingOneOfOneoneGenerationModelId.ts +1 -1
  11. package/openapi/gen/models/pipelineGraphSnapshotGraphNodesItemOneOfThreeoneSettingsQualityAssuranceOneOfFourLlmQaModelId.ts +1 -1
  12. package/openapi/gen/models/pipelineGraphSnapshotGraphNodesItemOneOfThreeoneSettingsQualityAssuranceOneOfLlmQaModelId.ts +1 -1
  13. package/openapi/gen/models/quorumNodeSettingsQualityAssuranceOneOfLlmQaModelId.ts +1 -1
  14. package/openapi/gen/models/validatePipelineGraphBodyGraphNodesItemOneOfOnefoursevenSettingsQualityAssuranceOneOfLlmQaModelId.ts +1 -1
  15. package/openapi/gen/models/validatePipelineGraphBodyGraphNodesItemOneOfThreeoneSettingsAudienceAndPricingOneOfOneoneGenerationModelId.ts +1 -1
  16. package/openapi/gen/models/validatePipelineGraphBodyGraphNodesItemOneOfThreeoneSettingsQualityAssuranceOneOfFourLlmQaModelId.ts +1 -1
  17. package/openapi/gen/models/validatePipelineGraphBodyGraphNodesItemOneOfThreeoneSettingsQualityAssuranceOneOfLlmQaModelId.ts +1 -1
  18. package/package.json +1 -1
  19. package/skills/catalog.json +4 -4
  20. package/skills/toloka-build/references/node-semantics.md +2 -1
  21. package/skills/toloka-report-issue/references/report-template.md +1 -1
  22. package/src/pipeline-graph-v1.contract.json +16 -6
Binary file
@@ -1 +1 @@
1
- 19983b733a3e06f8b57ec971da718a2d169e6afe9c45a37ba02cf4a30a6bc6f1 toloka.js.jsc
1
+ 4bc560d638ddf49386ccbb12f7eeaaa0922fd26ab13c69065cbb8540c27cbe50 toloka.js.jsc
@@ -1 +1 @@
1
- e9731d96ceea4fa47b10bf5b846240437fe966e231929ed5f02a586aa886c22a toloka.js
1
+ e7e688bae427a1230ea0cbcacf81224527dc592f0e9087d584462d5ab3ec2059 toloka.js
@@ -2,7 +2,7 @@
2
2
 
3
3
  What this Beta SDK does not do yet, stated plainly so you can decide what to depend on.
4
4
 
5
- `@toloka-platform/sdk` is `0.2.0-preview.1`. This is a Beta: the authoring API, the CLI surface, and the generated source layout can change before general availability. Pin an exact version. Do not depend on this in production yet.
5
+ `@toloka-platform/sdk` is `0.2.0-preview.2`. This is a Beta: the authoring API, the CLI surface, and the generated source layout can change before general availability. Pin an exact version. Do not depend on this in production yet.
6
6
 
7
7
  ## Local checks do not certify deployability
8
8
 
@@ -1,2 +1,2 @@
1
1
 
2
- export type GenerationNodeSettingsAudienceAndPricingOneOfOneoneGenerationModelId = 'gpt-5.4' | 'gpt-5.4-mini' | 'claude-sonnet-4-6' | 'gemini-3.1-pro-preview' | 'gemini-3.5-flash' | 'claude-sonnet-5' | 'gpt-5.6-terra' | 'gpt-5.6-luna';
2
+ export type GenerationNodeSettingsAudienceAndPricingOneOfOneoneGenerationModelId = 'gpt-5.4' | 'gpt-5.4-mini' | 'claude-sonnet-4-6' | 'gemini-3.1-pro-preview' | 'gemini-3.5-flash' | 'gemini-3.7-flash' | 'claude-sonnet-5' | 'claude-opus-5' | 'claude-fable-5' | 'gpt-5.6-terra' | 'gpt-5.6-luna' | 'gpt-5.6-sol';
@@ -1,2 +1,2 @@
1
1
 
2
- export type GenerationNodeSettingsQualityAssuranceOneOfFourLlmQaModelId = 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5' | 'gpt-5-mini' | 'claude-sonnet-4-6';
2
+ export type GenerationNodeSettingsQualityAssuranceOneOfFourLlmQaModelId = 'gpt-5.6-terra' | 'gpt-5.6-luna' | 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5' | 'gpt-5-mini' | 'claude-sonnet-4-6';
@@ -1,2 +1,2 @@
1
1
 
2
- export type GenerationNodeSettingsQualityAssuranceOneOfLlmQaModelId = 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5' | 'gpt-5-mini' | 'claude-sonnet-4-6';
2
+ export type GenerationNodeSettingsQualityAssuranceOneOfLlmQaModelId = 'gpt-5.6-terra' | 'gpt-5.6-luna' | 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5' | 'gpt-5-mini' | 'claude-sonnet-4-6';
@@ -1,2 +1,2 @@
1
1
 
2
- export type PipelineGraphSnapshotGraphNodesItemOneOfOnefoursevenSettingsQualityAssuranceOneOfLlmQaModelId = 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5' | 'gpt-5-mini' | 'claude-sonnet-4-6';
2
+ export type PipelineGraphSnapshotGraphNodesItemOneOfOnefoursevenSettingsQualityAssuranceOneOfLlmQaModelId = 'gpt-5.6-terra' | 'gpt-5.6-luna' | 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5' | 'gpt-5-mini' | 'claude-sonnet-4-6';
@@ -1,2 +1,2 @@
1
1
 
2
- export type PipelineGraphSnapshotGraphNodesItemOneOfThreeoneSettingsAudienceAndPricingOneOfOneoneGenerationModelId = 'gpt-5.4' | 'gpt-5.4-mini' | 'claude-sonnet-4-6' | 'gemini-3.1-pro-preview' | 'gemini-3.5-flash' | 'claude-sonnet-5' | 'gpt-5.6-terra' | 'gpt-5.6-luna';
2
+ export type PipelineGraphSnapshotGraphNodesItemOneOfThreeoneSettingsAudienceAndPricingOneOfOneoneGenerationModelId = 'gpt-5.4' | 'gpt-5.4-mini' | 'claude-sonnet-4-6' | 'gemini-3.1-pro-preview' | 'gemini-3.5-flash' | 'gemini-3.7-flash' | 'claude-sonnet-5' | 'claude-opus-5' | 'claude-fable-5' | 'gpt-5.6-terra' | 'gpt-5.6-luna' | 'gpt-5.6-sol';
@@ -1,2 +1,2 @@
1
1
 
2
- export type PipelineGraphSnapshotGraphNodesItemOneOfThreeoneSettingsQualityAssuranceOneOfFourLlmQaModelId = 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5' | 'gpt-5-mini' | 'claude-sonnet-4-6';
2
+ export type PipelineGraphSnapshotGraphNodesItemOneOfThreeoneSettingsQualityAssuranceOneOfFourLlmQaModelId = 'gpt-5.6-terra' | 'gpt-5.6-luna' | 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5' | 'gpt-5-mini' | 'claude-sonnet-4-6';
@@ -1,2 +1,2 @@
1
1
 
2
- export type PipelineGraphSnapshotGraphNodesItemOneOfThreeoneSettingsQualityAssuranceOneOfLlmQaModelId = 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5' | 'gpt-5-mini' | 'claude-sonnet-4-6';
2
+ export type PipelineGraphSnapshotGraphNodesItemOneOfThreeoneSettingsQualityAssuranceOneOfLlmQaModelId = 'gpt-5.6-terra' | 'gpt-5.6-luna' | 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5' | 'gpt-5-mini' | 'claude-sonnet-4-6';
@@ -1,2 +1,2 @@
1
1
 
2
- export type QuorumNodeSettingsQualityAssuranceOneOfLlmQaModelId = 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5' | 'gpt-5-mini' | 'claude-sonnet-4-6';
2
+ export type QuorumNodeSettingsQualityAssuranceOneOfLlmQaModelId = 'gpt-5.6-terra' | 'gpt-5.6-luna' | 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5' | 'gpt-5-mini' | 'claude-sonnet-4-6';
@@ -1,2 +1,2 @@
1
1
 
2
- export type ValidatePipelineGraphBodyGraphNodesItemOneOfOnefoursevenSettingsQualityAssuranceOneOfLlmQaModelId = 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5' | 'gpt-5-mini' | 'claude-sonnet-4-6';
2
+ export type ValidatePipelineGraphBodyGraphNodesItemOneOfOnefoursevenSettingsQualityAssuranceOneOfLlmQaModelId = 'gpt-5.6-terra' | 'gpt-5.6-luna' | 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5' | 'gpt-5-mini' | 'claude-sonnet-4-6';
@@ -1,2 +1,2 @@
1
1
 
2
- export type ValidatePipelineGraphBodyGraphNodesItemOneOfThreeoneSettingsAudienceAndPricingOneOfOneoneGenerationModelId = 'gpt-5.4' | 'gpt-5.4-mini' | 'claude-sonnet-4-6' | 'gemini-3.1-pro-preview' | 'gemini-3.5-flash' | 'claude-sonnet-5' | 'gpt-5.6-terra' | 'gpt-5.6-luna';
2
+ export type ValidatePipelineGraphBodyGraphNodesItemOneOfThreeoneSettingsAudienceAndPricingOneOfOneoneGenerationModelId = 'gpt-5.4' | 'gpt-5.4-mini' | 'claude-sonnet-4-6' | 'gemini-3.1-pro-preview' | 'gemini-3.5-flash' | 'gemini-3.7-flash' | 'claude-sonnet-5' | 'claude-opus-5' | 'claude-fable-5' | 'gpt-5.6-terra' | 'gpt-5.6-luna' | 'gpt-5.6-sol';
@@ -1,2 +1,2 @@
1
1
 
2
- export type ValidatePipelineGraphBodyGraphNodesItemOneOfThreeoneSettingsQualityAssuranceOneOfFourLlmQaModelId = 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5' | 'gpt-5-mini' | 'claude-sonnet-4-6';
2
+ export type ValidatePipelineGraphBodyGraphNodesItemOneOfThreeoneSettingsQualityAssuranceOneOfFourLlmQaModelId = 'gpt-5.6-terra' | 'gpt-5.6-luna' | 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5' | 'gpt-5-mini' | 'claude-sonnet-4-6';
@@ -1,2 +1,2 @@
1
1
 
2
- export type ValidatePipelineGraphBodyGraphNodesItemOneOfThreeoneSettingsQualityAssuranceOneOfLlmQaModelId = 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5' | 'gpt-5-mini' | 'claude-sonnet-4-6';
2
+ export type ValidatePipelineGraphBodyGraphNodesItemOneOfThreeoneSettingsQualityAssuranceOneOfLlmQaModelId = 'gpt-5.6-terra' | 'gpt-5.6-luna' | 'gpt-5.4' | 'gpt-5.4-mini' | 'gpt-5' | 'gpt-5-mini' | 'claude-sonnet-4-6';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@toloka-platform/sdk",
3
- "version": "0.2.0-preview.1",
3
+ "version": "0.2.0-preview.2",
4
4
  "private": false,
5
5
  "description": "Beta. Build, inspect, and operate Toloka pipeline projects as TypeScript source. The public API may change.",
6
6
  "license": "Apache-2.0",
@@ -13,8 +13,8 @@
13
13
  "testing",
14
14
  "checks"
15
15
  ],
16
- "version": "0.2.0-preview.1",
17
- "digest": "5e5bdd01d1f87d2de65af6ac4d7c3f48f1e79e62355a5e3774a9e205c21fbf2c",
16
+ "version": "0.2.0-preview.2",
17
+ "digest": "0777193859ccc60959ba91c2733e8d1631d1b4c89f313c9989ed6c67b40f1c5a",
18
18
  "files": [
19
19
  "SKILL.md",
20
20
  "references/node-semantics.md",
@@ -31,8 +31,8 @@
31
31
  "bug",
32
32
  "report"
33
33
  ],
34
- "version": "0.2.0-preview.1",
35
- "digest": "c4743435270c6fee22b230eab8ac1ef642262a94e960ada91f9bba5894eb03b5",
34
+ "version": "0.2.0-preview.2",
35
+ "digest": "9faa9ed606cdb55ca701d2662f8633daebe49b865ff9b8f4cf9bb7d9b621f675",
36
36
  "files": [
37
37
  "SKILL.md",
38
38
  "references/report-template.md"
@@ -167,7 +167,7 @@ For humans, set `audienceType: 'human'`, `verifiedExperts`, all three audience f
167
167
 
168
168
  Start with `$0.20` and 120 seconds when the task gives no stronger signal, then change them only for an explicit rate or clearly longer work. The per-expert cap is normally off. For `data_collection`, use a cap of 50 by default; use 1 for one-response-per-expert collection.
169
169
 
170
- Use `audienceType: 'synthetic'` only when the user explicitly asks for synthetic or model-generated data. Configure its optional `generationModelId`, `reasoningEffort`, and `llmInstruction`; do not include human pricing or audience fields. Synthetic generation is incompatible with `data_collection`, human QA, audience reuse, expert sourcing, and Training.
170
+ Use `audienceType: 'synthetic'` only when the user explicitly asks for synthetic or model-generated data. Set the required `maxCostPerAttempt`, the per-attempt ceiling in charged US dollars across fresh input, cached input, and output together, and configure the optional `generationModelId`, `reasoningEffort`, and `llmInstruction`; do not include human pricing or audience fields. Take `generationModelId` only from the union the SDK exports, and never invent an id; when the user names no model, omit the property and accept the platform default instead of guessing one. Synthetic generation is incompatible with `data_collection`, human QA, audience reuse, expert sourcing, and Training.
171
171
 
172
172
  #### Training, Exam, UI, and advanced settings
173
173
 
@@ -188,6 +188,7 @@ Use `reuseAudienceWithNodeId` only with real imported `{ pipelineId, nodeId }` v
188
188
  - Do not treat the constructor's generated placeholder Training or blank UI as production-ready configuration.
189
189
  - Do not pair `projectType: 'general'` with `verifiedExperts: false`. General projects require an ID-verified audience, and the server rejects the graph with `General projects require an ID-verified audience`. `data_collection` supports both modes but requires a hardware upload or recording component supported by the current UI catalog. An annotation task with an unverified audience therefore cannot be expressed: `general` demands verified experts and `data_collection` demands an upload control the task has no use for. When a request asks for one, say so and let the requester choose, rather than quietly flipping a setting.
190
190
  - Do not omit `ui.constants`. It is required alongside `code`, `data`, `preprocess`, and `postprocess`; `'{}'` is the right value when there is nothing to pass. Omitting it fails validation with `must have required property 'constants'`, usually reported together with a misleading `type must be equal to constant` from the failed node discrimination.
191
+ - Do not omit `maxCostPerAttempt` from a synthetic `audienceAndPricing`. Omitting it fails validation with `must have required property 'maxCostPerAttempt'`, reported together with a misleading `type must be equal to constant` and the human branch's `must have required property 'verifiedExperts'` from the failed `oneOf` discrimination.
191
192
  - Do not ship a generation node without Training. `onboarding` is mandatory: at least three `steps`, of which at least one carries a `quiz` block. The server rejects fewer with `Onboarding must have at least 3 steps` and `Onboarding must include at least one quiz block`.
192
193
  - Do not treat the server's materialized defaults as your configuration. A deployed node reports `qualityAssurance`, `exam`, `reuseAudienceWithNodeId`, and `smartSearch` even when source never set them. Leave them out unless you mean to control them. Omitted top-level object keys are preserved, but defaults materialized inside list elements can still cause drift; use the generic import-and-diff recovery flow.
193
194
 
@@ -26,7 +26,7 @@ The CLI exits 1 with `Potato API request failed with status 500`. The same comma
26
26
 
27
27
  ## Environment
28
28
 
29
- - toloka CLI 0.2.0-preview.1 (`toloka --version`), Bun 1.4.0, macOS 15
29
+ - toloka CLI 0.2.0-preview.2 (`toloka --version`), Bun 1.4.0, macOS 15
30
30
  - Platform: https://platform.toloka.ai
31
31
 
32
32
  ## Redactions
@@ -1358,7 +1358,7 @@
1358
1358
  "qualityAssurance": {
1359
1359
  "default": {
1360
1360
  "qaMode": "llm_only",
1361
- "llmQaModelId": "gpt-5.4"
1361
+ "llmQaModelId": "gpt-5.6-terra"
1362
1362
  },
1363
1363
  "oneOf": [
1364
1364
  {
@@ -1369,9 +1369,11 @@
1369
1369
  "const": "llm_only"
1370
1370
  },
1371
1371
  "llmQaModelId": {
1372
- "default": "gpt-5.4",
1372
+ "default": "gpt-5.6-terra",
1373
1373
  "type": "string",
1374
1374
  "enum": [
1375
+ "gpt-5.6-terra",
1376
+ "gpt-5.6-luna",
1375
1377
  "gpt-5.4",
1376
1378
  "gpt-5.4-mini",
1377
1379
  "gpt-5",
@@ -1424,9 +1426,11 @@
1424
1426
  "exclusiveMinimum": 0
1425
1427
  },
1426
1428
  "llmQaModelId": {
1427
- "default": "gpt-5.4",
1429
+ "default": "gpt-5.6-terra",
1428
1430
  "type": "string",
1429
1431
  "enum": [
1432
+ "gpt-5.6-terra",
1433
+ "gpt-5.6-luna",
1430
1434
  "gpt-5.4",
1431
1435
  "gpt-5.4-mini",
1432
1436
  "gpt-5",
@@ -1617,9 +1621,13 @@
1617
1621
  "claude-sonnet-4-6",
1618
1622
  "gemini-3.1-pro-preview",
1619
1623
  "gemini-3.5-flash",
1624
+ "gemini-3.7-flash",
1620
1625
  "claude-sonnet-5",
1626
+ "claude-opus-5",
1627
+ "claude-fable-5",
1621
1628
  "gpt-5.6-terra",
1622
- "gpt-5.6-luna"
1629
+ "gpt-5.6-luna",
1630
+ "gpt-5.6-sol"
1623
1631
  ]
1624
1632
  },
1625
1633
  "reasoningEffort": {
@@ -3426,7 +3434,7 @@
3426
3434
  "qualityAssurance": {
3427
3435
  "default": {
3428
3436
  "qaMode": "llm_only",
3429
- "llmQaModelId": "gpt-5.4"
3437
+ "llmQaModelId": "gpt-5.6-terra"
3430
3438
  },
3431
3439
  "oneOf": [
3432
3440
  {
@@ -3437,9 +3445,11 @@
3437
3445
  "const": "llm_only"
3438
3446
  },
3439
3447
  "llmQaModelId": {
3440
- "default": "gpt-5.4",
3448
+ "default": "gpt-5.6-terra",
3441
3449
  "type": "string",
3442
3450
  "enum": [
3451
+ "gpt-5.6-terra",
3452
+ "gpt-5.6-luna",
3443
3453
  "gpt-5.4",
3444
3454
  "gpt-5.4-mini",
3445
3455
  "gpt-5",