unique-sdk 2026.26.0.dev11__tar.gz → 2026.26.0.dev13__tar.gz
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.
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/PKG-INFO +1 -1
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/pyproject.toml +1 -1
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_content.py +1 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/utils/file_io.py +28 -3
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/README.md +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/__init__.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/_api_requestor.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/_api_resource.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/_api_version.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/_error.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/_http_client.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/_list_object.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/_object_classes.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/_request_options.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/_unique_object.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/_unique_ql.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/_unique_response.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/_util.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/_version.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/_webhook.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/__init__.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_acronyms.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_agentic_table.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_analytics_order.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_benchmarking.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_briefing.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_chat_completion.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_dynamic_frontend.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_elicitation.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_embedding.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_event.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_folder.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_group.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_integrated.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_llm_models.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_mcp.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_message.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_message_assessment.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_message_execution.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_message_log.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_message_tool.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_module.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_scheduled_task.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_search.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_search_string.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_short_term_memory.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_space.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_user.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_web_search.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/__init__.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/__main__.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/cli.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/__init__.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/_citation_manifest.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/cite_file.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/dynamic_frontend.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/elicitation.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/files.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/folders.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/mcp.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/navigation.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/read.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/scheduled_tasks.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/search.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/subagent.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/web_search.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/web_search_config.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/config.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/formatting.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/shell.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/skills/unique-cli-elicitation/SKILL.md +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/skills/unique-cli-file-management/SKILL.md +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/skills/unique-cli-mcp/SKILL.md +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/skills/unique-cli-scheduled-tasks/SKILL.md +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/skills/unique-cli-search/SKILL.md +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/skills/unique-cli-subagent/SKILL.md +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/skills/unique-cli-web-search/SKILL.md +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/state.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/utils/analytics_order_run.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/utils/benchmarking_run.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/utils/chat_history.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/utils/chat_in_space.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/utils/sources.py +0 -0
- {unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/utils/token.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: unique-sdk
|
|
3
|
-
Version: 2026.26.0.
|
|
3
|
+
Version: 2026.26.0.dev13
|
|
4
4
|
Summary:
|
|
5
5
|
Author: Martin Fadler, Konstantin Krauss, Andreas Hauri
|
|
6
6
|
Author-email: Martin Fadler <martin.fadler@unique.ch>, Konstantin Krauss <konstantin@unique.ch>, Andreas Hauri <andreas@unique.ch>
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_content.py
RENAMED
|
@@ -219,6 +219,7 @@ class Content(APIResource["Content"]):
|
|
|
219
219
|
contentId: NotRequired[str]
|
|
220
220
|
filePath: NotRequired[str]
|
|
221
221
|
ownerId: NotRequired[str]
|
|
222
|
+
ownerType: NotRequired[Literal["CHAT"]]
|
|
222
223
|
parentFolderPath: NotRequired[str]
|
|
223
224
|
title: NotRequired[str]
|
|
224
225
|
metadata: NotRequired[dict[str, str | None]]
|
|
@@ -20,6 +20,20 @@ class _PreviewKwargs(TypedDict, total=False):
|
|
|
20
20
|
previewPdfFileName: str
|
|
21
21
|
|
|
22
22
|
|
|
23
|
+
class _VersioningKwargs(TypedDict, total=False):
|
|
24
|
+
"""Subset of ``Content.UpsertParams`` carrying ``versioningEnabled``,
|
|
25
|
+
forwarded conditionally for the same reason as ``_PreviewKwargs``.
|
|
26
|
+
|
|
27
|
+
Forwarding ``versioningEnabled=None`` would serialize as JSON
|
|
28
|
+
``null``, which node-ingestion rejects (the Prisma
|
|
29
|
+
``Content.versioningEnabled`` column is a non-null boolean). Omitting
|
|
30
|
+
the key entirely lets the backend apply its own default, preserving
|
|
31
|
+
the legacy upload behavior for callers that never opt into
|
|
32
|
+
versioning."""
|
|
33
|
+
|
|
34
|
+
versioningEnabled: bool
|
|
35
|
+
|
|
36
|
+
|
|
23
37
|
# download readUrl a random directory in /tmp
|
|
24
38
|
def download_file(url: str, filename: str):
|
|
25
39
|
# Guard for callers without a type checker: fail fast with a clear error before reaching requests.
|
|
@@ -163,6 +177,17 @@ def upload_file(
|
|
|
163
177
|
|
|
164
178
|
size = os.path.getsize(path_to_file)
|
|
165
179
|
|
|
180
|
+
# Forward ``versioningEnabled`` only when the caller opted in. A
|
|
181
|
+
# default of ``None`` would otherwise serialize as JSON ``null``,
|
|
182
|
+
# which node-ingestion rejects on the non-null Prisma column; an
|
|
183
|
+
# omitted key lets the backend apply its own default (legacy
|
|
184
|
+
# behavior).
|
|
185
|
+
versioning_kwargs: _VersioningKwargs = (
|
|
186
|
+
{"versioningEnabled": versioning_enabled}
|
|
187
|
+
if versioning_enabled is not None
|
|
188
|
+
else {}
|
|
189
|
+
)
|
|
190
|
+
|
|
166
191
|
# Step 1 — first upsert WITHOUT ``previewPdfFileName``. The id we
|
|
167
192
|
# need to derive a collision-free preview blob name does not exist
|
|
168
193
|
# yet; deriving from ``displayed_filename`` instead would race
|
|
@@ -181,7 +206,7 @@ def upload_file(
|
|
|
181
206
|
},
|
|
182
207
|
scopeId=scope_or_unique_path,
|
|
183
208
|
chatId=chat_id,
|
|
184
|
-
|
|
209
|
+
**versioning_kwargs,
|
|
185
210
|
)
|
|
186
211
|
|
|
187
212
|
# Step 2 — PUT the original bytes to the SAS URL minted by Step 1.
|
|
@@ -234,7 +259,7 @@ def upload_file(
|
|
|
234
259
|
},
|
|
235
260
|
fileUrl=createdContent.readUrl,
|
|
236
261
|
chatId=chat_id,
|
|
237
|
-
|
|
262
|
+
**versioning_kwargs,
|
|
238
263
|
**preview_kwargs,
|
|
239
264
|
)
|
|
240
265
|
else:
|
|
@@ -252,7 +277,7 @@ def upload_file(
|
|
|
252
277
|
},
|
|
253
278
|
fileUrl=createdContent.readUrl,
|
|
254
279
|
scopeId=scope_or_unique_path,
|
|
255
|
-
|
|
280
|
+
**versioning_kwargs,
|
|
256
281
|
**preview_kwargs,
|
|
257
282
|
)
|
|
258
283
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/__init__.py
RENAMED
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_acronyms.py
RENAMED
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_agentic_table.py
RENAMED
|
File without changes
|
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_benchmarking.py
RENAMED
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_briefing.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_elicitation.py
RENAMED
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_embedding.py
RENAMED
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_event.py
RENAMED
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_folder.py
RENAMED
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_group.py
RENAMED
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_integrated.py
RENAMED
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_llm_models.py
RENAMED
|
File without changes
|
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_message.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_message_log.py
RENAMED
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_message_tool.py
RENAMED
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_module.py
RENAMED
|
File without changes
|
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_search.py
RENAMED
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_search_string.py
RENAMED
|
File without changes
|
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_space.py
RENAMED
|
File without changes
|
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/api_resources/_web_search.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/cite_file.py
RENAMED
|
File without changes
|
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/elicitation.py
RENAMED
|
File without changes
|
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/folders.py
RENAMED
|
File without changes
|
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/navigation.py
RENAMED
|
File without changes
|
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/scheduled_tasks.py
RENAMED
|
File without changes
|
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/subagent.py
RENAMED
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/cli/commands/web_search.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/utils/analytics_order_run.py
RENAMED
|
File without changes
|
{unique_sdk-2026.26.0.dev11 → unique_sdk-2026.26.0.dev13}/unique_sdk/utils/benchmarking_run.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|