evolve-sdk 0.0.52.dev760__tar.gz → 0.0.52.dev764__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.dev760 → evolve_sdk-0.0.52.dev764}/PKG-INFO +1 -1
  2. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/__init__.py +3 -1
  3. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/hosted.py +56 -0
  4. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve_sdk.egg-info/PKG-INFO +1 -1
  5. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/pyproject.toml +1 -1
  6. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/LICENSE +0 -0
  7. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/MANIFEST.in +0 -0
  8. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/README.md +0 -0
  9. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/bridge/__init__.py +0 -0
  10. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/bridge/dist/bridge.bundle.cjs +0 -0
  11. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/_http.py +0 -0
  12. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/agent.py +0 -0
  13. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/bridge.py +0 -0
  14. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/browser_credentials.py +0 -0
  15. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/browser_profiles.py +0 -0
  16. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/config.py +0 -0
  17. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/integrations.py +0 -0
  18. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/managed_secrets.py +0 -0
  19. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/pipeline/__init__.py +0 -0
  20. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/pipeline/pipeline.py +0 -0
  21. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/pipeline/types.py +0 -0
  22. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/prompts/__init__.py +0 -0
  23. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/prompts/agent_md/judge.md +0 -0
  24. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/prompts/agent_md/reduce.md +0 -0
  25. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/prompts/agent_md/verify.md +0 -0
  26. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/prompts/user/judge.md +0 -0
  27. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/prompts/user/retry_feedback.md +0 -0
  28. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/prompts/user/verify.md +0 -0
  29. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/results.py +0 -0
  30. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/retry.py +0 -0
  31. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/schema.py +0 -0
  32. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/sessions_client.py +0 -0
  33. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/storage_client.py +0 -0
  34. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/swarm/__init__.py +0 -0
  35. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/swarm/results.py +0 -0
  36. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/swarm/swarm.py +0 -0
  37. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/swarm/types.py +0 -0
  38. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve/utils.py +0 -0
  39. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve_sdk.egg-info/SOURCES.txt +0 -0
  40. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve_sdk.egg-info/dependency_links.txt +0 -0
  41. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve_sdk.egg-info/requires.txt +0 -0
  42. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/evolve_sdk.egg-info/top_level.txt +0 -0
  43. {evolve_sdk-0.0.52.dev760 → evolve_sdk-0.0.52.dev764}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: evolve-sdk
3
- Version: 0.0.52.dev760
3
+ Version: 0.0.52.dev764
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
@@ -65,6 +65,7 @@ from .hosted import (
65
65
  DatasetVersion,
66
66
  DatasetVersionGate,
67
67
  DatasetVersionGateFailedTask,
68
+ DatasetVersionSource,
68
69
  DatasetsClient,
69
70
  EvalSandboxProvider,
70
71
  EvolveAPIError,
@@ -392,7 +393,7 @@ async def list_checkpoints(
392
393
  await store.close()
393
394
 
394
395
 
395
- __version__ = '0.0.52.dev760'
396
+ __version__ = '0.0.52.dev764'
396
397
 
397
398
  __all__ = [
398
399
  # Main classes
@@ -478,6 +479,7 @@ __all__ = [
478
479
  'DatasetManifestAuthor',
479
480
  'DatasetManifestMetadata',
480
481
  'DatasetVersion',
482
+ 'DatasetVersionSource',
481
483
  'DatasetVersionGate',
482
484
  'DatasetVersionGateFailedTask',
483
485
  'DatasetRef',
@@ -428,6 +428,31 @@ class DatasetManifestMetadata:
428
428
  task_count: Optional[int] = None
429
429
 
430
430
 
431
+ @dataclass
432
+ class DatasetVersionSource:
433
+ """One version's git provenance.
434
+
435
+ The repository, the ref exactly as requested, the RESOLVED commit the
436
+ clone landed on (for an annotated tag, the peeled commit — never the tag
437
+ object), and the repository subfolder the corpus was read from. Served on
438
+ EVERY git-imported version whatever its state — a version whose activation
439
+ gate FAILED can never become the active version, so this is where its
440
+ imported bytes stay observable.
441
+ """
442
+ #: The ref the import was asked for, exactly as requested: a sha, a tag,
443
+ #: or (legacy rows) a branch.
444
+ ref: str
445
+ #: The commit the corpus was actually read from — the resolved sha,
446
+ #: peeled for an annotated tag.
447
+ commit: str
448
+ #: The repository this version was imported from, userinfo (an embedded
449
+ #: token) stripped; ``None`` only when the stored url cannot be parsed.
450
+ git_url: Optional[str] = None
451
+ #: The repository subfolder the corpus was read from; ``None`` =
452
+ #: repository root.
453
+ path: Optional[str] = None
454
+
455
+
431
456
  @dataclass
432
457
  class DatasetVersion:
433
458
  """One immutable version of a dataset — one shape on every surface."""
@@ -439,6 +464,11 @@ class DatasetVersion:
439
464
  #: ``None`` when the corpus carried no manifest, and on servers that
440
465
  #: predate the field — absence is "nothing to report", never a crash.
441
466
  manifest: Optional[DatasetManifestMetadata] = None
467
+ #: What THIS version was imported from — git only. ``None`` when the
468
+ #: version was not imported from a git remote (an uploaded tarball, a
469
+ #: seeded directory, a pre-provenance row), and on servers that predate
470
+ #: the field — never a fabricated value.
471
+ source: Optional[DatasetVersionSource] = None
442
472
  #: Activation-gate progress. ``None`` when no gate was scheduled for this
443
473
  #: version, and also ``None`` when the server predates the gate field — a
444
474
  #: missing gate never means "passed", only "nothing to report".
@@ -1894,6 +1924,31 @@ def _map_version_manifest(data: Any) -> Optional[DatasetManifestMetadata]:
1894
1924
  )
1895
1925
 
1896
1926
 
1927
+ def _map_version_source(data: Any) -> Optional[DatasetVersionSource]:
1928
+ """Map a version's own git provenance, tolerating every server generation.
1929
+
1930
+ Absent (an older server, or a non-git version — an uploaded tarball has
1931
+ no git upstream) or unreadable input is ``None`` — "nothing to report",
1932
+ never a fabricated value and never a crash. Served on every git-imported
1933
+ version, including one whose activation gate FAILED (it can never
1934
+ activate, so it never appears as ``upstream``).
1935
+ """
1936
+ if not isinstance(data, dict):
1937
+ return None
1938
+ ref = data.get('ref')
1939
+ commit = data.get('commit')
1940
+ if not isinstance(ref, str) or not isinstance(commit, str):
1941
+ return None
1942
+ git_url = data.get('git_url')
1943
+ path = data.get('path')
1944
+ return DatasetVersionSource(
1945
+ ref=ref,
1946
+ commit=commit,
1947
+ git_url=git_url if isinstance(git_url, str) else None,
1948
+ path=path if isinstance(path, str) else None,
1949
+ )
1950
+
1951
+
1897
1952
  def _map_dataset_version(data: Dict[str, Any]) -> DatasetVersion:
1898
1953
  return DatasetVersion(
1899
1954
  version=data['version'],
@@ -1901,6 +1956,7 @@ def _map_dataset_version(data: Dict[str, Any]) -> DatasetVersion:
1901
1956
  created_at=data.get('created_at', ''),
1902
1957
  task_count=int(data.get('task_count', 0)),
1903
1958
  manifest=_map_version_manifest(data.get('manifest')),
1959
+ source=_map_version_source(data.get('source')),
1904
1960
  gate=_map_version_gate(data.get('gate')),
1905
1961
  )
1906
1962
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: evolve-sdk
3
- Version: 0.0.52.dev760
3
+ Version: 0.0.52.dev764
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.dev760"
7
+ version = "0.0.52.dev764"
8
8
  description = "Pythonic SDK for multi-agent orchestration in E2B sandboxes"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"