dataiku-sdk 0.12.3 → 0.12.4
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/src/skill.js +7 -0
- package/package.json +1 -1
package/dist/src/skill.js
CHANGED
|
@@ -96,6 +96,9 @@ dss recipe set-payload compute_orders --file code.py --project-key MYPROJ
|
|
|
96
96
|
dss job build-and-wait orders --include-logs --project-key MYPROJ
|
|
97
97
|
dss scenario run daily_build --project-key MYPROJ
|
|
98
98
|
dss sql query --connection analytics --sql "select 1" --project-key MYPROJ
|
|
99
|
+
dss sql query --dataset MYPROJ.orders --sql-file query.sql
|
|
100
|
+
dss notebook clear-jupyter-outputs exploration --dry-run --project-key MYPROJ
|
|
101
|
+
dss api-service list-packages churn-service --project-key MYPROJ
|
|
99
102
|
dss batch --data-file steps.json
|
|
100
103
|
\`\`\`
|
|
101
104
|
For fake-DSS smoke tests, return project lists as JSON arrays such as \`[{"projectKey":"MYPROJ","name":"My Project"}]\` from \`/public/api/projects/\`; recipe payload commands read \`/public/api/projects/<PROJECT>/recipes/<NAME>?includePayload=true\` and expect a JSON object shaped like \`{"recipe":{"name":"<NAME>","type":"python"},"payload":"..."}\`.
|
|
@@ -116,6 +119,9 @@ Mutations print a small JSON ack to stdout and exit 0 on success (e.g. \`{"updat
|
|
|
116
119
|
- Build failures: \`dss job log <id> --errors-only\` surfaces just error/traceback lines, and \`--output PATH\` saves the full log to a file. Logs are one long line with JVM noise; the \`Error in Python process: At line <N>\` marker maps \`<N>\` straight to your recipe payload's source line.
|
|
117
120
|
- Schema changes aren't automatic for code recipes: after changing a python/SQL/prepare recipe's output columns run \`dss dataset refresh-schema\` (or rebuild) before downstream reads, and \`dss dataset validate-build\` to catch file-backed misconfig before launching a build. Exception: \`dss recipe create --type sync\` copies the input schema onto a schemaless dataset output at create time (see \`syncOutputSchemaPropagated\` in the result), so a fresh sync output builds populated without a manual refresh.
|
|
118
121
|
- \`dss dataset download\` is capped (default 100k rows) and returns \`{ path, rows, truncated, limit }\`: check \`truncated\` and raise \`--limit N\` when you need more — treat it as a sample, not a guaranteed full export. Without \`--output\` the file lands in the current working directory (and a \`dataset_download_default_location\` warning names that path); pass \`--output PATH\` to control the destination. For very large tables, aggregate in SQL or read inside a recipe instead.
|
|
122
|
+
- \`dss api-service list-packages SERVICE\` first verifies the parent service through its settings. A \`not_found\` error means the service is missing (verify the service ID and project key); an empty array means the service exists but has no deployable packages. Do not reinterpret \`not_found\` as an empty package list or retry the lower-level packages route.
|
|
123
|
+
- \`dss notebook clear-jupyter-outputs NAME --dry-run\` returns the full \`current\` and \`next\` notebook states. Applying it clears \`outputs\` and resets \`execution_count\` to \`0\` only on code cells, preserving markdown and raw cells unchanged.
|
|
124
|
+
- \`dss sql query ... --dataset PROJECT.NAME\` first queries through the dataset. If DSS rejects that dataset connection as neither SQL nor HDFS, the CLI reads dataset metadata and retries with \`params.connection\` (using its schema or catalog as the database when available). A readable dataset with no usable connection exits with \`validation_failed\` and advises \`--connection\`; dataset metadata \`404\` and \`403\` errors propagate as \`not_found\` and \`permission_denied\`.
|
|
119
125
|
|
|
120
126
|
## Error envelope
|
|
121
127
|
|
|
@@ -135,6 +141,7 @@ Parse each stderr line as JSON; on non-zero exit the final line is an error even
|
|
|
135
141
|
\`\`\`
|
|
136
142
|
|
|
137
143
|
Use \`code\`, \`category\`, \`exitCode\`, \`retryable\`, \`status\`, and \`details\` for recovery logic. Do not scrape message text when a structured field is available.
|
|
144
|
+
Treat \`details.body\` as sanitized metadata only: it contains at most \`requestId\`/\`request_id\`/\`errorId\`/\`elapsedMs\` plus locally trusted target/timing fields, not the arbitrary DSS response body. \`details.statusText\` is canonical text derived from the numeric status, not a remote reason phrase. Base recovery on top-level \`code\`, \`category\`, \`status\`, \`retryable\`, \`requestId\`, \`hint\`, and \`details.dssCategory\`; never parse or expose assumed server-body fields.
|
|
138
145
|
`;
|
|
139
146
|
const SKILL_FRONTMATTER = `---
|
|
140
147
|
name: dataiku-dss
|