evolve-sdk 0.0.52.dev709__tar.gz → 0.0.52.dev713__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 (43) hide show
  1. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/PKG-INFO +1 -1
  2. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/__init__.py +3 -1
  3. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/hosted.py +46 -0
  4. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve_sdk.egg-info/PKG-INFO +1 -1
  5. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/pyproject.toml +1 -1
  6. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/LICENSE +0 -0
  7. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/MANIFEST.in +0 -0
  8. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/README.md +0 -0
  9. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/bridge/__init__.py +0 -0
  10. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/bridge/dist/bridge.bundle.cjs +0 -0
  11. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/_http.py +0 -0
  12. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/agent.py +0 -0
  13. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/bridge.py +0 -0
  14. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/browser_credentials.py +0 -0
  15. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/browser_profiles.py +0 -0
  16. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/config.py +0 -0
  17. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/integrations.py +0 -0
  18. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/managed_secrets.py +0 -0
  19. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/pipeline/__init__.py +0 -0
  20. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/pipeline/pipeline.py +0 -0
  21. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/pipeline/types.py +0 -0
  22. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/prompts/__init__.py +0 -0
  23. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/prompts/agent_md/judge.md +0 -0
  24. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/prompts/agent_md/reduce.md +0 -0
  25. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/prompts/agent_md/verify.md +0 -0
  26. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/prompts/user/judge.md +0 -0
  27. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/prompts/user/retry_feedback.md +0 -0
  28. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/prompts/user/verify.md +0 -0
  29. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/results.py +0 -0
  30. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/retry.py +0 -0
  31. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/schema.py +0 -0
  32. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/sessions_client.py +0 -0
  33. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/storage_client.py +0 -0
  34. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/swarm/__init__.py +0 -0
  35. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/swarm/results.py +0 -0
  36. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/swarm/swarm.py +0 -0
  37. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/swarm/types.py +0 -0
  38. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve/utils.py +0 -0
  39. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve_sdk.egg-info/SOURCES.txt +0 -0
  40. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve_sdk.egg-info/dependency_links.txt +0 -0
  41. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve_sdk.egg-info/requires.txt +0 -0
  42. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/evolve_sdk.egg-info/top_level.txt +0 -0
  43. {evolve_sdk-0.0.52.dev709 → evolve_sdk-0.0.52.dev713}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: evolve-sdk
3
- Version: 0.0.52.dev709
3
+ Version: 0.0.52.dev713
4
4
  Summary: Pythonic SDK for multi-agent orchestration in E2B sandboxes
5
5
  Author-email: "Swarmlink, Inc." <brandomagnani@evolvingmachines.ai>
6
6
  License: Apache-2.0
@@ -59,6 +59,7 @@ from .hosted import (
59
59
  DatasetRef,
60
60
  DatasetSelector,
61
61
  DatasetVersion,
62
+ DatasetVersionGate,
62
63
  DatasetsClient,
63
64
  EvalSandboxProvider,
64
65
  EvolveAPIError,
@@ -361,7 +362,7 @@ async def list_checkpoints(
361
362
  await store.close()
362
363
 
363
364
 
364
- __version__ = '0.0.52.dev709'
365
+ __version__ = '0.0.52.dev713'
365
366
 
366
367
  __all__ = [
367
368
  # Main classes
@@ -442,6 +443,7 @@ __all__ = [
442
443
  'Dataset',
443
444
  'ActiveDataset',
444
445
  'DatasetVersion',
446
+ 'DatasetVersionGate',
445
447
  'DatasetRef',
446
448
  'DatasetSelector',
447
449
  'DatasetImport',
@@ -301,6 +301,21 @@ AttemptPhase = Literal[
301
301
  ]
302
302
 
303
303
 
304
+ @dataclass
305
+ class DatasetVersionGate:
306
+ """The activation gate's progress for one dataset version.
307
+
308
+ ``status`` is the gate's own lifecycle (``PENDING`` → ``RUNNING`` →
309
+ ``PASSED``/``FAILED`` as wire values). ``code`` and ``message`` are set on
310
+ failure — one machine word and one human sentence — and are ``None`` while
311
+ the gate is healthy. ``attempts`` counts gate runs so far.
312
+ """
313
+ status: str
314
+ attempts: int
315
+ code: Optional[str] = None
316
+ message: Optional[str] = None
317
+
318
+
304
319
  @dataclass
305
320
  class DatasetVersion:
306
321
  """One immutable version of a dataset — one shape on every surface."""
@@ -308,6 +323,10 @@ class DatasetVersion:
308
323
  state: str
309
324
  created_at: str
310
325
  task_count: int
326
+ #: Activation-gate progress. ``None`` when no gate was scheduled for this
327
+ #: version, and also ``None`` when the server predates the gate field — a
328
+ #: missing gate never means "passed", only "nothing to report".
329
+ gate: Optional[DatasetVersionGate] = None
311
330
 
312
331
 
313
332
  @dataclass
@@ -1160,12 +1179,39 @@ def _map_capability_document(raw: Dict[str, Any]) -> CapabilityDocument:
1160
1179
  )
1161
1180
 
1162
1181
 
1182
+ def _map_version_gate(data: Any) -> Optional[DatasetVersionGate]:
1183
+ """Map a version's activation-gate field, tolerating every server generation.
1184
+
1185
+ An older server has no ``gate`` field at all; the current server sends the
1186
+ nested form (``{status, attempts, failure: {code, message}}``); the flat
1187
+ form carries ``code``/``message`` directly. Anything unreadable becomes
1188
+ ``None`` — a missing gate is "nothing to report", never a crash and never
1189
+ "passed".
1190
+ """
1191
+ if not isinstance(data, dict) or not isinstance(data.get('status'), str):
1192
+ return None
1193
+ failure = data.get('failure')
1194
+ failure = failure if isinstance(failure, dict) else {}
1195
+ code = data.get('code') if isinstance(data.get('code'), str) else failure.get('code')
1196
+ message = (
1197
+ data.get('message') if isinstance(data.get('message'), str) else failure.get('message')
1198
+ )
1199
+ attempts = data.get('attempts')
1200
+ return DatasetVersionGate(
1201
+ status=data['status'],
1202
+ attempts=attempts if isinstance(attempts, int) and not isinstance(attempts, bool) else 0,
1203
+ code=code if isinstance(code, str) else None,
1204
+ message=message if isinstance(message, str) else None,
1205
+ )
1206
+
1207
+
1163
1208
  def _map_dataset_version(data: Dict[str, Any]) -> DatasetVersion:
1164
1209
  return DatasetVersion(
1165
1210
  version=data['version'],
1166
1211
  state=data.get('state', ''),
1167
1212
  created_at=data.get('created_at', ''),
1168
1213
  task_count=int(data.get('task_count', 0)),
1214
+ gate=_map_version_gate(data.get('gate')),
1169
1215
  )
1170
1216
 
1171
1217
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: evolve-sdk
3
- Version: 0.0.52.dev709
3
+ Version: 0.0.52.dev713
4
4
  Summary: Pythonic SDK for multi-agent orchestration in E2B sandboxes
5
5
  Author-email: "Swarmlink, Inc." <brandomagnani@evolvingmachines.ai>
6
6
  License: Apache-2.0
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "evolve-sdk"
7
- version = "0.0.52.dev709"
7
+ version = "0.0.52.dev713"
8
8
  description = "Pythonic SDK for multi-agent orchestration in E2B sandboxes"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"