instance-repo 1.1.0.dev0__tar.gz → 1.1.1.dev0__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.
Files changed (48) hide show
  1. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/PKG-INFO +1 -1
  2. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/__init__.py +1 -1
  3. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/clients/splits.py +20 -2
  4. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo.egg-info/PKG-INFO +1 -1
  5. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/pyproject.toml +1 -1
  6. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/README.md +0 -0
  7. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/_routing.py +0 -0
  8. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/_site_defaults.py +0 -0
  9. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/artifacts.py +0 -0
  10. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/bootstrap.py +0 -0
  11. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/cache.py +0 -0
  12. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/cli.py +0 -0
  13. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/clients/__init__.py +0 -0
  14. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/clients/benchmarks.py +0 -0
  15. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/clients/config.py +0 -0
  16. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/clients/datasets.py +0 -0
  17. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/clients/images.py +0 -0
  18. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/clients/instances.py +0 -0
  19. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/clients/reports.py +0 -0
  20. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/clients/scaffold.py +0 -0
  21. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/clients/versions.py +0 -0
  22. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/clients/workflows.py +0 -0
  23. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/concurrency.py +0 -0
  24. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/content.py +0 -0
  25. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/endpoints.py +0 -0
  26. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/errors.py +0 -0
  27. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/image.py +0 -0
  28. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/layout.py +0 -0
  29. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/loader.py +0 -0
  30. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/models.py +0 -0
  31. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/paths.py +0 -0
  32. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/release.py +0 -0
  33. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/repo.py +0 -0
  34. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/retry.py +0 -0
  35. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/store/__init__.py +0 -0
  36. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/store/acr.py +0 -0
  37. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/store/base.py +0 -0
  38. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/store/oss.py +0 -0
  39. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/store/registry.py +0 -0
  40. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/tasktoml.py +0 -0
  41. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/transport.py +0 -0
  42. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo/validate.py +0 -0
  43. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo.egg-info/SOURCES.txt +0 -0
  44. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo.egg-info/dependency_links.txt +0 -0
  45. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo.egg-info/entry_points.txt +0 -0
  46. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo.egg-info/requires.txt +0 -0
  47. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/instance_repo.egg-info/top_level.txt +0 -0
  48. {instance_repo-1.1.0.dev0 → instance_repo-1.1.1.dev0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: instance-repo
3
- Version: 1.1.0.dev0
3
+ Version: 1.1.1.dev0
4
4
  Summary: InstanceRepo SDK — 评测 Instance 统一存储客户端(SDK-only;控制面由 apiserver 承载)
5
5
  Requires-Python: >=3.10
6
6
  Description-Content-Type: text/markdown
@@ -18,7 +18,7 @@ from .errors import (
18
18
  TransportError,
19
19
  )
20
20
 
21
- __version__ = "1.1.0.dev0"
21
+ __version__ = "1.1.1.dev0"
22
22
 
23
23
  __all__ = [
24
24
  "Repo", "load_instances",
@@ -224,11 +224,20 @@ class SplitsClient:
224
224
 
225
225
  def update(self, dataset: str, split: str | None = None, *,
226
226
  version: str | None = None, run_type: str = "",
227
- dataset_split_id: str | None = None) -> DatasetSplit:
227
+ dataset_split_id: str | None = None,
228
+ environment: str | None = None) -> DatasetSplit:
228
229
  """更新 split 记录(``PATCH /datasets/splits/detail``)。
229
230
 
230
231
  服务端 body 仅接受 ``run_type``(**必填**:"train"/"eval",空串=清除);
231
- 仅 online 环境(split 记录 pre 环境的写经 versions.update 走集合路由)。
232
+ 写端点**仅限 online**(apiserver 对显式 pre 返回 400;pre 环境 split 的
233
+ run_type 变更经 ``versions.update(split_run_types=...)`` 走集合路由)。
234
+
235
+ ``environment`` 语义与 :meth:`get`/:meth:`list` 对齐:显式参数优先,
236
+ 缺省由 profile 派生。派生/显式为 ``pre`` 时**前置拒绝**(SchemaError)
237
+ ——避免「存在性检查读 pre、写入却落 online」的读写环境撕裂(AP CLI
238
+ review 真机锤实:读 pre 查到、写 online 报 not found 或改错记录)。
239
+ 显式 ``"online"`` 会拼进 query,请求自文档化;为空(无 profile)时
240
+ 不拼参,服务端默认 online(向后兼容)。
232
241
 
233
242
  寻址二选一:``dataset_split_id``(优先,split-first 精确记录 id)或
234
243
  ``dataset``+``split``(+可选 ``version``)name 三元组。
@@ -243,6 +252,15 @@ class SplitsClient:
243
252
  f"&split={quote(split, safe='')}")
244
253
  if (version or "").strip():
245
254
  q += f"&version={quote(version, safe='')}"
255
+ env = self._env(environment)
256
+ if env == "pre":
257
+ raise SchemaError(
258
+ "splits.update is online-only: the split record write endpoint "
259
+ "(PATCH /datasets/splits/detail) only accepts the online "
260
+ "environment. To change the run_type of a pre split, use "
261
+ "versions.update(split_run_types={split: run_type}) instead.")
262
+ if env == "online":
263
+ q += "&environment=online"
246
264
  rt = run_type or ""
247
265
  if rt and rt not in RUN_TYPE_VALUES: # 空串=清除,合法
248
266
  raise SchemaError(
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: instance-repo
3
- Version: 1.1.0.dev0
3
+ Version: 1.1.1.dev0
4
4
  Summary: InstanceRepo SDK — 评测 Instance 统一存储客户端(SDK-only;控制面由 apiserver 承载)
5
5
  Requires-Python: >=3.10
6
6
  Description-Content-Type: text/markdown
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "instance-repo"
7
- version = "1.1.0.dev0"
7
+ version = "1.1.1.dev0"
8
8
  description = "InstanceRepo SDK — 评测 Instance 统一存储客户端(SDK-only;控制面由 apiserver 承载)"
9
9
  requires-python = ">=3.10"
10
10
  readme = "README.md"