fleet-python 0.2.73b1__tar.gz → 0.2.74__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 (91) hide show
  1. {fleet_python-0.2.73b1/fleet_python.egg-info → fleet_python-0.2.74}/PKG-INFO +1 -1
  2. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/__init__.py +1 -1
  3. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/_async/__init__.py +1 -1
  4. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/_async/base.py +7 -3
  5. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/_async/instance/client.py +1 -1
  6. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/_async/tasks.py +3 -1
  7. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/base.py +7 -3
  8. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/instance/client.py +1 -1
  9. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/tasks.py +1 -0
  10. {fleet_python-0.2.73b1 → fleet_python-0.2.74/fleet_python.egg-info}/PKG-INFO +1 -1
  11. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/pyproject.toml +1 -1
  12. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/LICENSE +0 -0
  13. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/README.md +0 -0
  14. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/diff_example.py +0 -0
  15. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/dsl_example.py +0 -0
  16. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/example.py +0 -0
  17. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/exampleResume.py +0 -0
  18. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/example_account.py +0 -0
  19. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/example_action_log.py +0 -0
  20. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/example_client.py +0 -0
  21. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/example_mcp_anthropic.py +0 -0
  22. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/example_mcp_openai.py +0 -0
  23. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/example_sync.py +0 -0
  24. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/example_task.py +0 -0
  25. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/example_tasks.py +0 -0
  26. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/example_verifier.py +0 -0
  27. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/export_tasks.py +0 -0
  28. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/fetch_tasks.py +0 -0
  29. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/gemini_example.py +0 -0
  30. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/import_tasks.py +0 -0
  31. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/iterate_verifiers.py +0 -0
  32. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/json_tasks_example.py +0 -0
  33. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/nova_act_example.py +0 -0
  34. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/openai_example.py +0 -0
  35. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/openai_simple_example.py +0 -0
  36. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/query_builder_example.py +0 -0
  37. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/quickstart.py +0 -0
  38. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/examples/test_cdp_logging.py +0 -0
  39. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/_async/client.py +0 -0
  40. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/_async/env/__init__.py +0 -0
  41. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/_async/env/client.py +0 -0
  42. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/_async/exceptions.py +0 -0
  43. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/_async/global_client.py +0 -0
  44. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/_async/instance/__init__.py +0 -0
  45. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/_async/instance/base.py +0 -0
  46. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/_async/models.py +0 -0
  47. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/_async/resources/__init__.py +0 -0
  48. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/_async/resources/base.py +0 -0
  49. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/_async/resources/browser.py +0 -0
  50. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/_async/resources/mcp.py +0 -0
  51. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/_async/resources/sqlite.py +0 -0
  52. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/_async/verifiers/__init__.py +0 -0
  53. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/_async/verifiers/bundler.py +0 -0
  54. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/_async/verifiers/verifier.py +0 -0
  55. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/client.py +0 -0
  56. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/config.py +0 -0
  57. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/env/__init__.py +0 -0
  58. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/env/client.py +0 -0
  59. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/exceptions.py +0 -0
  60. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/global_client.py +0 -0
  61. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/instance/__init__.py +0 -0
  62. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/instance/base.py +0 -0
  63. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/instance/models.py +0 -0
  64. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/models.py +0 -0
  65. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/resources/__init__.py +0 -0
  66. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/resources/base.py +0 -0
  67. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/resources/browser.py +0 -0
  68. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/resources/mcp.py +0 -0
  69. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/resources/sqlite.py +0 -0
  70. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/types.py +0 -0
  71. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/verifiers/__init__.py +0 -0
  72. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/verifiers/bundler.py +0 -0
  73. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/verifiers/code.py +0 -0
  74. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/verifiers/db.py +0 -0
  75. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/verifiers/decorator.py +0 -0
  76. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/verifiers/parse.py +0 -0
  77. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/verifiers/sql_differ.py +0 -0
  78. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet/verifiers/verifier.py +0 -0
  79. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet_python.egg-info/SOURCES.txt +0 -0
  80. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet_python.egg-info/dependency_links.txt +0 -0
  81. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet_python.egg-info/requires.txt +0 -0
  82. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/fleet_python.egg-info/top_level.txt +0 -0
  83. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/scripts/fix_sync_imports.py +0 -0
  84. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/scripts/unasync.py +0 -0
  85. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/setup.cfg +0 -0
  86. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/tests/__init__.py +0 -0
  87. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/tests/test_app_method.py +0 -0
  88. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/tests/test_instance_dispatch.py +0 -0
  89. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/tests/test_sqlite_resource_dual_mode.py +0 -0
  90. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/tests/test_sqlite_shared_memory_behavior.py +0 -0
  91. {fleet_python-0.2.73b1 → fleet_python-0.2.74}/tests/test_verifier_from_string.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fleet-python
3
- Version: 0.2.73b1
3
+ Version: 0.2.74
4
4
  Summary: Python SDK for Fleet environments
5
5
  Author-email: Fleet AI <nic@fleet.so>
6
6
  License: Apache-2.0
@@ -73,7 +73,7 @@ from . import env
73
73
  from . import global_client as _global_client
74
74
  from ._async import global_client as _async_global_client
75
75
 
76
- __version__ = "0.2.72"
76
+ __version__ = "0.2.74"
77
77
 
78
78
  __all__ = [
79
79
  # Core classes
@@ -44,7 +44,7 @@ from ..types import VerifierFunction
44
44
  from .. import env
45
45
  from . import global_client as _async_global_client
46
46
 
47
- __version__ = "0.2.72"
47
+ __version__ = "0.2.74"
48
48
 
49
49
  __all__ = [
50
50
  # Core classes
@@ -2,6 +2,7 @@ import httpx
2
2
  from typing import Dict, Any, Optional
3
3
  import json
4
4
  import logging
5
+ import time
5
6
  import uuid
6
7
 
7
8
  from ..models import InstanceResponse
@@ -25,7 +26,7 @@ from .exceptions import (
25
26
  try:
26
27
  from .. import __version__
27
28
  except ImportError:
28
- __version__ = "0.2.72"
29
+ __version__ = "0.2.74"
29
30
 
30
31
  logger = logging.getLogger(__name__)
31
32
 
@@ -51,11 +52,14 @@ class BaseWrapper:
51
52
  "X-Fleet-SDK-Version": __version__,
52
53
  }
53
54
  headers["Authorization"] = f"Bearer {self.api_key}"
54
-
55
+
55
56
  # Add request ID for idempotency (persists across retries)
56
57
  if request_id:
57
58
  headers["X-Request-ID"] = request_id
58
-
59
+
60
+ # Add timestamp for all requests
61
+ headers["X-Request-Timestamp"] = str(int(time.time() * 1000))
62
+
59
63
  return headers
60
64
 
61
65
 
@@ -138,7 +138,7 @@ class AsyncInstanceClient:
138
138
 
139
139
  async def _load_resources(self) -> None:
140
140
  if self._resources is None:
141
- response = await self.client.request("GET", "/resources", timeout=1.0)
141
+ response = await self.client.request("GET", "/resources")
142
142
  if response.status_code != 200:
143
143
  self._resources = []
144
144
  return
@@ -280,7 +280,7 @@ class Task(BaseModel):
280
280
 
281
281
 
282
282
  def verifier_from_string(
283
- verifier_func: str, verifier_id: str, verifier_key: str, sha256: str = ""
283
+ verifier_func: str, verifier_id: str, verifier_key: str, sha256: str = "", verifier_runtime_version: str = ""
284
284
  ) -> "VerifierFunction":
285
285
  """Create a verifier function from string code.
286
286
 
@@ -289,6 +289,7 @@ def verifier_from_string(
289
289
  verifier_id: Unique identifier for the verifier
290
290
  verifier_key: Key/name for the verifier
291
291
  sha256: SHA256 hash of the verifier code
292
+ verifier_runtime_version: Verifier runtime version
292
293
 
293
294
  Returns:
294
295
  VerifierFunction instance that can be used to verify tasks
@@ -381,6 +382,7 @@ def verifier_from_string(
381
382
  verifier_id=verifier_id,
382
383
  sha256=sha256,
383
384
  raw_code=verifier_func,
385
+ verifier_runtime_version=verifier_runtime_version if verifier_runtime_version else None,
384
386
  )
385
387
 
386
388
  return verifier_instance
@@ -2,6 +2,7 @@ import httpx
2
2
  from typing import Dict, Any, Optional
3
3
  import json
4
4
  import logging
5
+ import time
5
6
  import uuid
6
7
 
7
8
  from .models import InstanceResponse
@@ -25,7 +26,7 @@ from .exceptions import (
25
26
  try:
26
27
  from . import __version__
27
28
  except ImportError:
28
- __version__ = "0.2.72"
29
+ __version__ = "0.2.74"
29
30
 
30
31
  logger = logging.getLogger(__name__)
31
32
 
@@ -51,11 +52,14 @@ class BaseWrapper:
51
52
  "X-Fleet-SDK-Version": __version__,
52
53
  }
53
54
  headers["Authorization"] = f"Bearer {self.api_key}"
54
-
55
+
55
56
  # Add request ID for idempotency (persists across retries)
56
57
  if request_id:
57
58
  headers["X-Request-ID"] = request_id
58
-
59
+
60
+ # Add timestamp for all requests
61
+ headers["X-Request-Timestamp"] = str(int(time.time() * 1000))
62
+
59
63
  return headers
60
64
 
61
65
 
@@ -136,7 +136,7 @@ class InstanceClient:
136
136
 
137
137
  def _load_resources(self) -> None:
138
138
  if self._resources is None:
139
- response = self.client.request("GET", "/resources", timeout=1.0)
139
+ response = self.client.request("GET", "/resources")
140
140
  if response.status_code != 200:
141
141
  self._resources = []
142
142
  return
@@ -284,6 +284,7 @@ def verifier_from_string(
284
284
  verifier_id: Unique identifier for the verifier
285
285
  verifier_key: Key/name for the verifier
286
286
  sha256: SHA256 hash of the verifier code
287
+ verifier_runtime_version: Verifier runtime version
287
288
 
288
289
  Returns:
289
290
  VerifierFunction instance that can be used to verify tasks
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fleet-python
3
- Version: 0.2.73b1
3
+ Version: 0.2.74
4
4
  Summary: Python SDK for Fleet environments
5
5
  Author-email: Fleet AI <nic@fleet.so>
6
6
  License: Apache-2.0
@@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
5
5
  [project]
6
6
  name = "fleet-python"
7
7
 
8
- version = "0.2.73b1"
8
+ version = "0.2.74"
9
9
  description = "Python SDK for Fleet environments"
10
10
  authors = [
11
11
  {name = "Fleet AI", email = "nic@fleet.so"},
File without changes
File without changes
File without changes