@toloka-platform/sdk 0.1.0-preview.6 → 0.1.0-preview.7

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 (101) hide show
  1. package/README.md +7 -11
  2. package/dist/cli/toloka.js +208 -123
  3. package/dist/cli/toloka.js.jsc +0 -0
  4. package/dist/cli/toloka.js.jsc.sha256 +1 -1
  5. package/dist/cli/toloka.js.sha256 +1 -1
  6. package/docs/authoring.md +17 -4
  7. package/docs/cli-v2.md +3 -3
  8. package/docs/cli.md +29 -16
  9. package/docs/getting-started.md +7 -12
  10. package/docs/limitations.md +6 -6
  11. package/docs/testing-examples.md +248 -0
  12. package/docs/testing.md +115 -0
  13. package/examples/face-image-collection/README.md +7 -1
  14. package/examples/face-image-collection/fields.ts +20 -8
  15. package/examples/face-image-collection/nodes/annotate-faces/node.ts +1 -9
  16. package/examples/face-image-collection/nodes/order-faces/node.ts +1 -1
  17. package/examples/face-image-collection/pipeline.browser.integration.spec.ts +78 -0
  18. package/examples/video-pair-rating/README.md +14 -6
  19. package/examples/video-pair-rating/nodes/adjudicate/node.ts +1 -3
  20. package/examples/video-pair-rating/nodes/adjudicate_op/node.ts +1 -3
  21. package/examples/video-pair-rating/nodes/overall_preference_pick/node.ts +1 -1
  22. package/examples/video-pair-rating/nodes/rate_pair/node.ts +1 -1
  23. package/examples/video-pair-rating/pipeline.browser.integration.spec.ts +267 -0
  24. package/openapi/gen/api.ts +48 -11
  25. package/openapi/gen/models/createDatasetExportBody.ts +3 -3
  26. package/openapi/gen/models/createDatasetExportBodyOneOf.ts +6 -0
  27. package/openapi/gen/models/createDatasetExportBodyOneOfFormat.ts +2 -0
  28. package/openapi/gen/models/createDatasetExportBodyOneOfThree.ts +10 -0
  29. package/openapi/gen/models/createDatasetExportBodyOneOfThreeContract.ts +2 -0
  30. package/openapi/gen/models/createDatasetExportBodyOneOfThreeFormat.ts +2 -0
  31. package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilter.ts +9 -0
  32. package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilterFieldSourcesItem.ts +6 -0
  33. package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItem.ts +4 -0
  34. package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItemOneOf.ts +5 -0
  35. package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItemOneOfTwo.ts +5 -0
  36. package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilterFieldValuesItem.ts +12 -0
  37. package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilterFieldValuesItemOperator.ts +2 -0
  38. package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItem.ts +4 -0
  39. package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItemOneOf.ts +5 -0
  40. package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItemOneOfTwo.ts +5 -0
  41. package/openapi/gen/models/createDatasetExportBodyOneOfThreeItemFilterFieldValuesItemValue.ts +2 -0
  42. package/openapi/gen/models/datasetExportReport.ts +9 -0
  43. package/openapi/gen/models/datasetExportReportErrorsItem.ts +5 -0
  44. package/openapi/gen/models/datasetExportReportTokens.ts +7 -0
  45. package/openapi/gen/models/exportJob.ts +2 -0
  46. package/openapi/gen/models/exportJobReport.ts +3 -0
  47. package/openapi/gen/models/index.ts +48 -0
  48. package/openapi/gen/models/sampleDatasetItemsBody.ts +4 -0
  49. package/openapi/gen/models/sampleDatasetItemsBodyAnyOf.ts +8 -0
  50. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfItemFilter.ts +9 -0
  51. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItem.ts +6 -0
  52. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItemSourcesItem.ts +4 -0
  53. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItemSourcesItemOneOf.ts +5 -0
  54. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItemSourcesItemOneOfTwo.ts +5 -0
  55. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfItemFilterFieldValuesItem.ts +12 -0
  56. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemOperator.ts +2 -0
  57. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemSourcesItem.ts +4 -0
  58. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemSourcesItemOneOf.ts +5 -0
  59. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemSourcesItemOneOfTwo.ts +5 -0
  60. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemValue.ts +2 -0
  61. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfOnethree.ts +8 -0
  62. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfOnethreeItemFilter.ts +9 -0
  63. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItem.ts +6 -0
  64. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItemSourcesItem.ts +4 -0
  65. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItemSourcesItemOneOf.ts +5 -0
  66. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItemSourcesItemOneOfTwo.ts +5 -0
  67. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItem.ts +12 -0
  68. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemOperator.ts +2 -0
  69. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemSourcesItem.ts +4 -0
  70. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemSourcesItemOneOf.ts +5 -0
  71. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemSourcesItemOneOfTwo.ts +5 -0
  72. package/openapi/gen/models/sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemValue.ts +2 -0
  73. package/openapi/gen/models/sampleJob.ts +13 -0
  74. package/openapi/gen/models/sampleJobStatus.ts +2 -0
  75. package/openapi/gen/models/sampleResult.ts +5 -0
  76. package/package.json +23 -2
  77. package/skills/catalog.json +14 -6
  78. package/skills/toloka-build/SKILL.md +34 -12
  79. package/skills/toloka-build/references/node-semantics.md +27 -24
  80. package/skills/toloka-build/references/workflow-and-cli.md +55 -26
  81. package/skills/toloka-report-issue/references/report-template.md +1 -1
  82. package/src/checks/ast.ts +32 -0
  83. package/src/checks/index.ts +14 -0
  84. package/src/checks/postprocess-collisions.ts +145 -0
  85. package/src/checks/task-ui-declarations.generated.ts +19 -0
  86. package/src/checks/task-ui-typecheck.ts +345 -0
  87. package/src/checks/typescript-vfs.d.ts +26 -0
  88. package/src/checks/typescript-vfs.js +5 -0
  89. package/src/cli/analytics.ts +1 -0
  90. package/src/cli/check.ts +977 -0
  91. package/src/cli/program.ts +147 -19
  92. package/src/cli/project-context.ts +14 -4
  93. package/src/cli/runs.ts +21 -11
  94. package/src/cli/skill.ts +17 -6
  95. package/src/testing/code-node.ts +160 -0
  96. package/src/testing/index.ts +15 -0
  97. package/src/testing/task-ui-browser.ts +120 -0
  98. package/src/testing/task-ui-validation.ts +135 -0
  99. package/src/testing/task-ui.ts +557 -0
  100. package/src/testing/test-evidence.ts +170 -0
  101. package/src/testing/types.ts +141 -0
@@ -0,0 +1,10 @@
1
+ import type { CreateDatasetExportBodyOneOfThreeFormat } from './createDatasetExportBodyOneOfThreeFormat';
2
+ import type { CreateDatasetExportBodyOneOfThreeContract } from './createDatasetExportBodyOneOfThreeContract';
3
+ import type { CreateDatasetExportBodyOneOfThreeItemFilter } from './createDatasetExportBodyOneOfThreeItemFilter';
4
+
5
+ export type CreateDatasetExportBodyOneOfThree = {
6
+ format: CreateDatasetExportBodyOneOfThreeFormat;
7
+ contract: CreateDatasetExportBodyOneOfThreeContract;
8
+ itemFilter?: CreateDatasetExportBodyOneOfThreeItemFilter;
9
+ validateOnly?: boolean;
10
+ };
@@ -0,0 +1,2 @@
1
+
2
+ export type CreateDatasetExportBodyOneOfThreeContract = 'openai-chat-v1';
@@ -0,0 +1,2 @@
1
+
2
+ export type CreateDatasetExportBodyOneOfThreeFormat = 'training-jsonl';
@@ -0,0 +1,9 @@
1
+ import type { CreateDatasetExportBodyOneOfThreeItemFilterFieldValuesItem } from './createDatasetExportBodyOneOfThreeItemFilterFieldValuesItem';
2
+ import type { CreateDatasetExportBodyOneOfThreeItemFilterFieldSourcesItem } from './createDatasetExportBodyOneOfThreeItemFilterFieldSourcesItem';
3
+
4
+ export type CreateDatasetExportBodyOneOfThreeItemFilter = {
5
+ fieldValues?: CreateDatasetExportBodyOneOfThreeItemFilterFieldValuesItem[];
6
+ fieldSources?: CreateDatasetExportBodyOneOfThreeItemFilterFieldSourcesItem[];
7
+ missingRevisionFields?: string[];
8
+ createdBefore?: string;
9
+ };
@@ -0,0 +1,6 @@
1
+ import type { CreateDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItem } from './createDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItem';
2
+
3
+ export type CreateDatasetExportBodyOneOfThreeItemFilterFieldSourcesItem = {
4
+ fieldId: string;
5
+ sources: CreateDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItem[];
6
+ };
@@ -0,0 +1,4 @@
1
+ import type { CreateDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItemOneOf } from './createDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItemOneOf';
2
+ import type { CreateDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItemOneOfTwo } from './createDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItemOneOfTwo';
3
+
4
+ export type CreateDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItem = CreateDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItemOneOf | CreateDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItemOneOfTwo;
@@ -0,0 +1,5 @@
1
+
2
+ export type CreateDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItemOneOf = {
3
+ type: 'user';
4
+ userId: string;
5
+ };
@@ -0,0 +1,5 @@
1
+
2
+ export type CreateDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItemOneOfTwo = {
3
+ type: 'system';
4
+ source: string;
5
+ };
@@ -0,0 +1,12 @@
1
+ import type { CreateDatasetExportBodyOneOfThreeItemFilterFieldValuesItemOperator } from './createDatasetExportBodyOneOfThreeItemFilterFieldValuesItemOperator';
2
+ import type { CreateDatasetExportBodyOneOfThreeItemFilterFieldValuesItemValue } from './createDatasetExportBodyOneOfThreeItemFilterFieldValuesItemValue';
3
+ import type { CreateDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItem } from './createDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItem';
4
+
5
+ export type CreateDatasetExportBodyOneOfThreeItemFilterFieldValuesItem = {
6
+ jsonPath: string;
7
+ operator: CreateDatasetExportBodyOneOfThreeItemFilterFieldValuesItemOperator;
8
+ value: CreateDatasetExportBodyOneOfThreeItemFilterFieldValuesItemValue;
9
+ fieldId: string;
10
+ latestOnly?: boolean;
11
+ sources?: CreateDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItem[];
12
+ };
@@ -0,0 +1,2 @@
1
+
2
+ export type CreateDatasetExportBodyOneOfThreeItemFilterFieldValuesItemOperator = 'text_eq' | 'text_neq';
@@ -0,0 +1,4 @@
1
+ import type { CreateDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItemOneOf } from './createDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItemOneOf';
2
+ import type { CreateDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItemOneOfTwo } from './createDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItemOneOfTwo';
3
+
4
+ export type CreateDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItem = CreateDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItemOneOf | CreateDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItemOneOfTwo;
@@ -0,0 +1,5 @@
1
+
2
+ export type CreateDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItemOneOf = {
3
+ type: 'user';
4
+ userId: string;
5
+ };
@@ -0,0 +1,5 @@
1
+
2
+ export type CreateDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItemOneOfTwo = {
3
+ type: 'system';
4
+ source: string;
5
+ };
@@ -0,0 +1,2 @@
1
+
2
+ export type CreateDatasetExportBodyOneOfThreeItemFilterFieldValuesItemValue = string | number | boolean | null;
@@ -0,0 +1,9 @@
1
+ import type { DatasetExportReportErrorsItem } from './datasetExportReportErrorsItem';
2
+ import type { DatasetExportReportTokens } from './datasetExportReportTokens';
3
+
4
+ export interface DatasetExportReport {
5
+ validCount: number;
6
+ invalidCount: number;
7
+ errors: DatasetExportReportErrorsItem[];
8
+ tokens: DatasetExportReportTokens;
9
+ }
@@ -0,0 +1,5 @@
1
+
2
+ export type DatasetExportReportErrorsItem = {
3
+ itemIndex: number;
4
+ reason: string;
5
+ };
@@ -0,0 +1,7 @@
1
+
2
+ export type DatasetExportReportTokens = {
3
+ p50: number;
4
+ p95: number;
5
+ max: number;
6
+ total: number;
7
+ };
@@ -2,6 +2,7 @@ import type { ExportId } from './exportId';
2
2
  import type { DatasetId } from './datasetId';
3
3
  import type { ExportJobStatus } from './exportJobStatus';
4
4
  import type { ExportJobResult } from './exportJobResult';
5
+ import type { ExportJobReport } from './exportJobReport';
5
6
 
6
7
  export interface ExportJob {
7
8
  id: ExportId;
@@ -9,4 +10,5 @@ export interface ExportJob {
9
10
  status: ExportJobStatus;
10
11
  createdAt: string;
11
12
  result: ExportJobResult;
13
+ report: ExportJobReport;
12
14
  }
@@ -0,0 +1,3 @@
1
+ import type { DatasetExportReport } from './datasetExportReport';
2
+
3
+ export type ExportJobReport = DatasetExportReport | null;
@@ -73,6 +73,22 @@ export * from './copyPipelineBody';
73
73
  export * from './createDatasetBody';
74
74
  export * from './createDatasetBodyProfile';
75
75
  export * from './createDatasetExportBody';
76
+ export * from './createDatasetExportBodyOneOf';
77
+ export * from './createDatasetExportBodyOneOfFormat';
78
+ export * from './createDatasetExportBodyOneOfThree';
79
+ export * from './createDatasetExportBodyOneOfThreeContract';
80
+ export * from './createDatasetExportBodyOneOfThreeFormat';
81
+ export * from './createDatasetExportBodyOneOfThreeItemFilter';
82
+ export * from './createDatasetExportBodyOneOfThreeItemFilterFieldSourcesItem';
83
+ export * from './createDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItem';
84
+ export * from './createDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItemOneOf';
85
+ export * from './createDatasetExportBodyOneOfThreeItemFilterFieldSourcesItemSourcesItemOneOfTwo';
86
+ export * from './createDatasetExportBodyOneOfThreeItemFilterFieldValuesItem';
87
+ export * from './createDatasetExportBodyOneOfThreeItemFilterFieldValuesItemOperator';
88
+ export * from './createDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItem';
89
+ export * from './createDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItemOneOf';
90
+ export * from './createDatasetExportBodyOneOfThreeItemFilterFieldValuesItemSourcesItemOneOfTwo';
91
+ export * from './createDatasetExportBodyOneOfThreeItemFilterFieldValuesItemValue';
76
92
  export * from './createDatasetField200';
77
93
  export * from './createDatasetFieldBody';
78
94
  export * from './createDatasetFieldBodyAnyOf';
@@ -105,6 +121,9 @@ export * from './createdDatasetFields';
105
121
  export * from './currentUser';
106
122
  export * from './currentUserEmail';
107
123
  export * from './dataset';
124
+ export * from './datasetExportReport';
125
+ export * from './datasetExportReportErrorsItem';
126
+ export * from './datasetExportReportTokens';
108
127
  export * from './datasetField';
109
128
  export * from './datasetFieldDescription';
110
129
  export * from './datasetFieldId';
@@ -134,6 +153,7 @@ export * from './estimatePipelineCostBodyItemFilterFieldValuesItemSourcesItemOne
134
153
  export * from './estimatePipelineCostBodyItemFilterFieldValuesItemValue';
135
154
  export * from './exportId';
136
155
  export * from './exportJob';
156
+ export * from './exportJobReport';
137
157
  export * from './exportJobResult';
138
158
  export * from './exportJobResultDownloadUrl';
139
159
  export * from './exportJobStatus';
@@ -731,6 +751,34 @@ export * from './runJobError';
731
751
  export * from './runJobStatus';
732
752
  export * from './runStats';
733
753
  export * from './runSummary';
754
+ export * from './sampleDatasetItemsBody';
755
+ export * from './sampleDatasetItemsBodyAnyOf';
756
+ export * from './sampleDatasetItemsBodyAnyOfItemFilter';
757
+ export * from './sampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItem';
758
+ export * from './sampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItemSourcesItem';
759
+ export * from './sampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItemSourcesItemOneOf';
760
+ export * from './sampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItemSourcesItemOneOfTwo';
761
+ export * from './sampleDatasetItemsBodyAnyOfItemFilterFieldValuesItem';
762
+ export * from './sampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemOperator';
763
+ export * from './sampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemSourcesItem';
764
+ export * from './sampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemSourcesItemOneOf';
765
+ export * from './sampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemSourcesItemOneOfTwo';
766
+ export * from './sampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemValue';
767
+ export * from './sampleDatasetItemsBodyAnyOfOnethree';
768
+ export * from './sampleDatasetItemsBodyAnyOfOnethreeItemFilter';
769
+ export * from './sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItem';
770
+ export * from './sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItemSourcesItem';
771
+ export * from './sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItemSourcesItemOneOf';
772
+ export * from './sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItemSourcesItemOneOfTwo';
773
+ export * from './sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItem';
774
+ export * from './sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemOperator';
775
+ export * from './sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemSourcesItem';
776
+ export * from './sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemSourcesItemOneOf';
777
+ export * from './sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemSourcesItemOneOfTwo';
778
+ export * from './sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemValue';
779
+ export * from './sampleJob';
780
+ export * from './sampleJobStatus';
781
+ export * from './sampleResult';
734
782
  export * from './setProjectSecretBody';
735
783
  export * from './updatePipelineBody';
736
784
  export * from './updateProjectBody';
@@ -0,0 +1,4 @@
1
+ import type { SampleDatasetItemsBodyAnyOf } from './sampleDatasetItemsBodyAnyOf';
2
+ import type { SampleDatasetItemsBodyAnyOfOnethree } from './sampleDatasetItemsBodyAnyOfOnethree';
3
+
4
+ export type SampleDatasetItemsBody = SampleDatasetItemsBodyAnyOf | SampleDatasetItemsBodyAnyOfOnethree;
@@ -0,0 +1,8 @@
1
+ import type { SampleDatasetItemsBodyAnyOfItemFilter } from './sampleDatasetItemsBodyAnyOfItemFilter';
2
+
3
+ export type SampleDatasetItemsBodyAnyOf = {
4
+ markField: string;
5
+ markValue: string;
6
+ itemFilter?: SampleDatasetItemsBodyAnyOfItemFilter;
7
+ count: number;
8
+ };
@@ -0,0 +1,9 @@
1
+ import type { SampleDatasetItemsBodyAnyOfItemFilterFieldValuesItem } from './sampleDatasetItemsBodyAnyOfItemFilterFieldValuesItem';
2
+ import type { SampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItem } from './sampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItem';
3
+
4
+ export type SampleDatasetItemsBodyAnyOfItemFilter = {
5
+ fieldValues?: SampleDatasetItemsBodyAnyOfItemFilterFieldValuesItem[];
6
+ fieldSources?: SampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItem[];
7
+ missingRevisionFields?: string[];
8
+ createdBefore?: string;
9
+ };
@@ -0,0 +1,6 @@
1
+ import type { SampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItemSourcesItem } from './sampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItemSourcesItem';
2
+
3
+ export type SampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItem = {
4
+ fieldId: string;
5
+ sources: SampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItemSourcesItem[];
6
+ };
@@ -0,0 +1,4 @@
1
+ import type { SampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItemSourcesItemOneOf } from './sampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItemSourcesItemOneOf';
2
+ import type { SampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItemSourcesItemOneOfTwo } from './sampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItemSourcesItemOneOfTwo';
3
+
4
+ export type SampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItemSourcesItem = SampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItemSourcesItemOneOf | SampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItemSourcesItemOneOfTwo;
@@ -0,0 +1,5 @@
1
+
2
+ export type SampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItemSourcesItemOneOf = {
3
+ type: 'user';
4
+ userId: string;
5
+ };
@@ -0,0 +1,5 @@
1
+
2
+ export type SampleDatasetItemsBodyAnyOfItemFilterFieldSourcesItemSourcesItemOneOfTwo = {
3
+ type: 'system';
4
+ source: string;
5
+ };
@@ -0,0 +1,12 @@
1
+ import type { SampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemOperator } from './sampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemOperator';
2
+ import type { SampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemValue } from './sampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemValue';
3
+ import type { SampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemSourcesItem } from './sampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemSourcesItem';
4
+
5
+ export type SampleDatasetItemsBodyAnyOfItemFilterFieldValuesItem = {
6
+ jsonPath: string;
7
+ operator: SampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemOperator;
8
+ value: SampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemValue;
9
+ fieldId: string;
10
+ latestOnly?: boolean;
11
+ sources?: SampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemSourcesItem[];
12
+ };
@@ -0,0 +1,2 @@
1
+
2
+ export type SampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemOperator = 'text_eq' | 'text_neq';
@@ -0,0 +1,4 @@
1
+ import type { SampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemSourcesItemOneOf } from './sampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemSourcesItemOneOf';
2
+ import type { SampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemSourcesItemOneOfTwo } from './sampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemSourcesItemOneOfTwo';
3
+
4
+ export type SampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemSourcesItem = SampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemSourcesItemOneOf | SampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemSourcesItemOneOfTwo;
@@ -0,0 +1,5 @@
1
+
2
+ export type SampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemSourcesItemOneOf = {
3
+ type: 'user';
4
+ userId: string;
5
+ };
@@ -0,0 +1,5 @@
1
+
2
+ export type SampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemSourcesItemOneOfTwo = {
3
+ type: 'system';
4
+ source: string;
5
+ };
@@ -0,0 +1,2 @@
1
+
2
+ export type SampleDatasetItemsBodyAnyOfItemFilterFieldValuesItemValue = string | number | boolean | null;
@@ -0,0 +1,8 @@
1
+ import type { SampleDatasetItemsBodyAnyOfOnethreeItemFilter } from './sampleDatasetItemsBodyAnyOfOnethreeItemFilter';
2
+
3
+ export type SampleDatasetItemsBodyAnyOfOnethree = {
4
+ markField: string;
5
+ markValue: string;
6
+ itemFilter?: SampleDatasetItemsBodyAnyOfOnethreeItemFilter;
7
+ fraction: number;
8
+ };
@@ -0,0 +1,9 @@
1
+ import type { SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItem } from './sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItem';
2
+ import type { SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItem } from './sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItem';
3
+
4
+ export type SampleDatasetItemsBodyAnyOfOnethreeItemFilter = {
5
+ fieldValues?: SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItem[];
6
+ fieldSources?: SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItem[];
7
+ missingRevisionFields?: string[];
8
+ createdBefore?: string;
9
+ };
@@ -0,0 +1,6 @@
1
+ import type { SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItemSourcesItem } from './sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItemSourcesItem';
2
+
3
+ export type SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItem = {
4
+ fieldId: string;
5
+ sources: SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItemSourcesItem[];
6
+ };
@@ -0,0 +1,4 @@
1
+ import type { SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItemSourcesItemOneOf } from './sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItemSourcesItemOneOf';
2
+ import type { SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItemSourcesItemOneOfTwo } from './sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItemSourcesItemOneOfTwo';
3
+
4
+ export type SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItemSourcesItem = SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItemSourcesItemOneOf | SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItemSourcesItemOneOfTwo;
@@ -0,0 +1,5 @@
1
+
2
+ export type SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItemSourcesItemOneOf = {
3
+ type: 'user';
4
+ userId: string;
5
+ };
@@ -0,0 +1,5 @@
1
+
2
+ export type SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldSourcesItemSourcesItemOneOfTwo = {
3
+ type: 'system';
4
+ source: string;
5
+ };
@@ -0,0 +1,12 @@
1
+ import type { SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemOperator } from './sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemOperator';
2
+ import type { SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemValue } from './sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemValue';
3
+ import type { SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemSourcesItem } from './sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemSourcesItem';
4
+
5
+ export type SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItem = {
6
+ jsonPath: string;
7
+ operator: SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemOperator;
8
+ value: SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemValue;
9
+ fieldId: string;
10
+ latestOnly?: boolean;
11
+ sources?: SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemSourcesItem[];
12
+ };
@@ -0,0 +1,2 @@
1
+
2
+ export type SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemOperator = 'text_eq' | 'text_neq';
@@ -0,0 +1,4 @@
1
+ import type { SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemSourcesItemOneOf } from './sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemSourcesItemOneOf';
2
+ import type { SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemSourcesItemOneOfTwo } from './sampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemSourcesItemOneOfTwo';
3
+
4
+ export type SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemSourcesItem = SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemSourcesItemOneOf | SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemSourcesItemOneOfTwo;
@@ -0,0 +1,5 @@
1
+
2
+ export type SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemSourcesItemOneOf = {
3
+ type: 'user';
4
+ userId: string;
5
+ };
@@ -0,0 +1,5 @@
1
+
2
+ export type SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemSourcesItemOneOfTwo = {
3
+ type: 'system';
4
+ source: string;
5
+ };
@@ -0,0 +1,2 @@
1
+
2
+ export type SampleDatasetItemsBodyAnyOfOnethreeItemFilterFieldValuesItemValue = string | number | boolean | null;
@@ -0,0 +1,13 @@
1
+ import type { DatasetId } from './datasetId';
2
+ import type { SampleJobStatus } from './sampleJobStatus';
3
+
4
+ export interface SampleJob {
5
+ id: string;
6
+ datasetId: DatasetId;
7
+ fieldId: string;
8
+ markerValue: string;
9
+ status: SampleJobStatus;
10
+ target: number;
11
+ marked: number;
12
+ createdAt: string;
13
+ }
@@ -0,0 +1,2 @@
1
+
2
+ export type SampleJobStatus = 'running' | 'succeeded';
@@ -0,0 +1,5 @@
1
+
2
+ export interface SampleResult {
3
+ id: string;
4
+ target: number;
5
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@toloka-platform/sdk",
3
- "version": "0.1.0-preview.6",
3
+ "version": "0.1.0-preview.7",
4
4
  "private": false,
5
5
  "description": "Preview. Build, inspect, and operate Toloka pipeline projects as TypeScript source. The public API may change.",
6
6
  "license": "Apache-2.0",
@@ -21,6 +21,8 @@
21
21
  "main": "./src/index.ts",
22
22
  "exports": {
23
23
  ".": "./src/index.ts",
24
+ "./testing": "./src/testing/index.ts",
25
+ "./checks": "./src/checks/index.ts",
24
26
  "./examples/face-image-collection": "./examples/face-image-collection/pipeline.ts"
25
27
  },
26
28
  "publishConfig": {
@@ -33,24 +35,43 @@
33
35
  "generate": "orval --config ./openapi/orval.config.js",
34
36
  "prepack": "bun run build",
35
37
  "sync-skill-catalog": "bun ./scripts/sync-skill-catalog.ts",
38
+ "sync-task-ui-declarations": "bun ./scripts/sync-task-ui-declarations.ts",
36
39
  "test": "vitest run",
40
+ "test:browser": "vitest run --config vitest.browser.config.ts",
37
41
  "typecheck": "tsc --noEmit"
38
42
  },
39
43
  "dependencies": {
40
44
  "@inquirer/select": "5.2.1",
45
+ "@typescript/vfs": "1.6.2",
41
46
  "ajv": "8.17.1",
42
47
  "ajv-formats": "3.0.1",
43
48
  "commander": "15.0.0",
44
49
  "es-toolkit": "1.42.0",
45
- "posthog-node": "5.46.1"
50
+ "jsonpath-rfc9535": "1.3.0",
51
+ "oxc-parser": "0.138.0",
52
+ "posthog-node": "5.46.1",
53
+ "typescript-api": "npm:typescript@6.0.3"
46
54
  },
47
55
  "devDependencies": {
48
56
  "@types/node": "24.10.1",
49
57
  "orval": "7.17.0",
58
+ "playwright": "1.56.1",
50
59
  "typescript": "7.0.2",
51
60
  "vitest": "4.1.0",
52
61
  "yaml": "2.9.0"
53
62
  },
63
+ "peerDependencies": {
64
+ "playwright": ">=1.56.1 <2",
65
+ "vitest": ">=4.1.0 <5"
66
+ },
67
+ "peerDependenciesMeta": {
68
+ "playwright": {
69
+ "optional": true
70
+ },
71
+ "vitest": {
72
+ "optional": true
73
+ }
74
+ },
54
75
  "engines": {
55
76
  "bun": "1.4.0"
56
77
  }
@@ -3,10 +3,18 @@
3
3
  {
4
4
  "id": "toloka-build",
5
5
  "name": "Build Toloka pipelines as code",
6
- "description": "Build, inspect, and change Toloka platform pipeline projects as TypeScript source with @toloka-platform/sdk and toloka. Use when the user wants to create, adopt, inspect, plan, or apply a pipeline project as code.",
7
- "tags": ["pipelines", "authoring", "sdk"],
8
- "version": "0.1.0-preview.6",
9
- "digest": "d45d1124d27e19ee43c260ddf0c259ccdc343c5d641c2aeb538d6fedaeb99183",
6
+ "description": "Onboard users and build, test, inspect, or change Toloka platform pipeline projects as TypeScript source with @toloka-platform/sdk, toloka check, and toloka apply. Use when the user wants to get started, create, adopt, inspect, plan, apply, test, check, or run a pipeline project as code.",
7
+ "tags": [
8
+ "pipelines",
9
+ "authoring",
10
+ "sdk",
11
+ "onboarding",
12
+ "getting-started",
13
+ "testing",
14
+ "checks"
15
+ ],
16
+ "version": "0.1.0-preview.7",
17
+ "digest": "f1d2920113dba10f9decd3c65457c2bdd84227754aece441182ed9bb9eed0eee",
10
18
  "files": ["SKILL.md", "references/node-semantics.md", "references/workflow-and-cli.md"]
11
19
  },
12
20
  {
@@ -14,8 +22,8 @@
14
22
  "name": "Report a Toloka problem",
15
23
  "description": "Report a problem with the Toloka platform, CLI, or SDK as a redacted Markdown issue report sent through the toloka CLI only after explicit approval. Use when the user hits unexpected behavior, an error, or a bug and wants Toloka engineers to investigate.",
16
24
  "tags": ["support", "issue", "bug", "report"],
17
- "version": "0.1.0-preview.6",
18
- "digest": "b71d06333786826edd51b909dfe8a20633870f235d03df4aae83d20c26e99205",
25
+ "version": "0.1.0-preview.7",
26
+ "digest": "400d1e37dec535ccbf975086a5df1678a3c1c555a27548de4ffc90242fdfe6fd",
19
27
  "files": ["SKILL.md", "references/report-template.md"]
20
28
  }
21
29
  ]