fleet-python 0.2.41__tar.gz → 0.2.42__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.

Potentially problematic release.


This version of fleet-python might be problematic. Click here for more details.

Files changed (81) hide show
  1. {fleet_python-0.2.41 → fleet_python-0.2.42}/PKG-INFO +1 -1
  2. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/_async/client.py +27 -0
  3. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/_async/models.py +5 -0
  4. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/_async/tasks.py +33 -3
  5. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/client.py +27 -0
  6. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/models.py +5 -0
  7. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/tasks.py +33 -3
  8. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet_python.egg-info/PKG-INFO +1 -1
  9. {fleet_python-0.2.41 → fleet_python-0.2.42}/pyproject.toml +1 -1
  10. {fleet_python-0.2.41 → fleet_python-0.2.42}/LICENSE +0 -0
  11. {fleet_python-0.2.41 → fleet_python-0.2.42}/README.md +0 -0
  12. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/diff_example.py +0 -0
  13. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/dsl_example.py +0 -0
  14. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/example.py +0 -0
  15. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/exampleResume.py +0 -0
  16. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/example_account.py +0 -0
  17. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/example_action_log.py +0 -0
  18. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/example_client.py +0 -0
  19. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/example_mcp_anthropic.py +0 -0
  20. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/example_mcp_openai.py +0 -0
  21. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/example_sync.py +0 -0
  22. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/example_task.py +0 -0
  23. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/example_tasks.py +0 -0
  24. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/example_verifier.py +0 -0
  25. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/gemini_example.py +0 -0
  26. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/json_tasks_example.py +0 -0
  27. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/nova_act_example.py +0 -0
  28. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/openai_example.py +0 -0
  29. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/openai_simple_example.py +0 -0
  30. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/query_builder_example.py +0 -0
  31. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/quickstart.py +0 -0
  32. {fleet_python-0.2.41 → fleet_python-0.2.42}/examples/test_cdp_logging.py +0 -0
  33. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/__init__.py +0 -0
  34. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/_async/__init__.py +0 -0
  35. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/_async/base.py +0 -0
  36. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/_async/env/__init__.py +0 -0
  37. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/_async/env/client.py +0 -0
  38. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/_async/exceptions.py +0 -0
  39. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/_async/global_client.py +0 -0
  40. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/_async/instance/__init__.py +0 -0
  41. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/_async/instance/base.py +0 -0
  42. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/_async/instance/client.py +0 -0
  43. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/_async/resources/__init__.py +0 -0
  44. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/_async/resources/base.py +0 -0
  45. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/_async/resources/browser.py +0 -0
  46. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/_async/resources/mcp.py +0 -0
  47. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/_async/resources/sqlite.py +0 -0
  48. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/_async/verifiers/__init__.py +0 -0
  49. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/_async/verifiers/bundler.py +0 -0
  50. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/_async/verifiers/verifier.py +0 -0
  51. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/base.py +0 -0
  52. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/config.py +0 -0
  53. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/env/__init__.py +0 -0
  54. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/env/client.py +0 -0
  55. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/exceptions.py +0 -0
  56. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/global_client.py +0 -0
  57. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/instance/__init__.py +0 -0
  58. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/instance/base.py +0 -0
  59. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/instance/client.py +0 -0
  60. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/instance/models.py +0 -0
  61. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/resources/__init__.py +0 -0
  62. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/resources/base.py +0 -0
  63. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/resources/browser.py +0 -0
  64. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/resources/mcp.py +0 -0
  65. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/resources/sqlite.py +0 -0
  66. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/types.py +0 -0
  67. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/verifiers/__init__.py +0 -0
  68. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/verifiers/bundler.py +0 -0
  69. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/verifiers/code.py +0 -0
  70. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/verifiers/db.py +0 -0
  71. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/verifiers/decorator.py +0 -0
  72. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/verifiers/parse.py +0 -0
  73. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/verifiers/sql_differ.py +0 -0
  74. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet/verifiers/verifier.py +0 -0
  75. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet_python.egg-info/SOURCES.txt +0 -0
  76. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet_python.egg-info/dependency_links.txt +0 -0
  77. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet_python.egg-info/requires.txt +0 -0
  78. {fleet_python-0.2.41 → fleet_python-0.2.42}/fleet_python.egg-info/top_level.txt +0 -0
  79. {fleet_python-0.2.41 → fleet_python-0.2.42}/scripts/fix_sync_imports.py +0 -0
  80. {fleet_python-0.2.41 → fleet_python-0.2.42}/scripts/unasync.py +0 -0
  81. {fleet_python-0.2.41 → fleet_python-0.2.42}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fleet-python
3
- Version: 0.2.41
3
+ Version: 0.2.42
4
4
  Summary: Python SDK for Fleet environments
5
5
  Author-email: Fleet AI <nic@fleet.so>
6
6
  License: Apache-2.0
@@ -32,6 +32,8 @@ from ..models import (
32
32
  TaskListResponse,
33
33
  AccountResponse,
34
34
  TaskRequest,
35
+ TaskResponse,
36
+ TaskUpdateRequest,
35
37
  )
36
38
  from .tasks import Task
37
39
 
@@ -501,6 +503,31 @@ class AsyncFleet:
501
503
  response = await self.client.request("GET", "/v1/account")
502
504
  return AccountResponse(**response.json())
503
505
 
506
+ async def update_task(
507
+ self,
508
+ task_key: str,
509
+ prompt: Optional[str] = None,
510
+ verifier_code: Optional[str] = None
511
+ ) -> TaskResponse:
512
+ """Update an existing task.
513
+
514
+ Args:
515
+ task_key: The key of the task to update
516
+ prompt: New prompt text for the task (optional)
517
+ verifier_code: Python code for task verification (optional)
518
+
519
+ Returns:
520
+ TaskResponse containing the updated task details
521
+ """
522
+ payload = TaskUpdateRequest(
523
+ prompt=prompt,
524
+ verifier_code=verifier_code
525
+ )
526
+ response = await self.client.request(
527
+ "PUT", f"/v1/tasks/{task_key}", json=payload.model_dump(exclude_none=True)
528
+ )
529
+ return TaskResponse(**response.json())
530
+
504
531
  async def _create_verifier_from_data(
505
532
  self, verifier_id: str, verifier_key: str, verifier_code: str, verifier_sha: str
506
533
  ) -> "AsyncVerifierFunction":
@@ -156,6 +156,11 @@ class TaskRequest(BaseModel):
156
156
  env_variables: Optional[Dict[str, Any]] = Field(None, title="Env Variables")
157
157
 
158
158
 
159
+ class TaskUpdateRequest(BaseModel):
160
+ prompt: Optional[str] = Field(None, title="Prompt")
161
+ verifier_code: Optional[str] = Field(None, title="Verifier Code")
162
+
163
+
159
164
  class VerifierData(BaseModel):
160
165
  verifier_id: str = Field(..., title="Verifier Id")
161
166
  key: str = Field(..., title="Key")
@@ -201,8 +201,38 @@ async def load_tasks(
201
201
 
202
202
  client = get_client()
203
203
  return await client.load_tasks(
204
- env_key=env_key,
205
- keys=keys,
206
- version=version,
204
+ env_key=env_key,
205
+ keys=keys,
206
+ version=version,
207
207
  team_id=team_id
208
208
  )
209
+
210
+
211
+ async def update_task(
212
+ task_key: str,
213
+ prompt: Optional[str] = None,
214
+ verifier_code: Optional[str] = None
215
+ ):
216
+ """Convenience function to update an existing task.
217
+
218
+ Args:
219
+ task_key: The key of the task to update
220
+ prompt: New prompt text for the task (optional)
221
+ verifier_code: Python code for task verification (optional)
222
+
223
+ Returns:
224
+ TaskResponse containing the updated task details
225
+
226
+ Examples:
227
+ response = await fleet.update_task("my-task", prompt="New prompt text")
228
+ response = await fleet.update_task("my-task", verifier_code="def verify(env): return True")
229
+ """
230
+ from .global_client import get_client
231
+ from ..models import TaskResponse
232
+
233
+ client = get_client()
234
+ return await client.update_task(
235
+ task_key=task_key,
236
+ prompt=prompt,
237
+ verifier_code=verifier_code
238
+ )
@@ -32,6 +32,8 @@ from .models import (
32
32
  TaskListResponse,
33
33
  AccountResponse,
34
34
  TaskRequest,
35
+ TaskResponse,
36
+ TaskUpdateRequest,
35
37
  )
36
38
  from .tasks import Task
37
39
 
@@ -497,6 +499,31 @@ class Fleet:
497
499
  response = self.client.request("GET", "/v1/account")
498
500
  return AccountResponse(**response.json())
499
501
 
502
+ def update_task(
503
+ self,
504
+ task_key: str,
505
+ prompt: Optional[str] = None,
506
+ verifier_code: Optional[str] = None
507
+ ) -> TaskResponse:
508
+ """Update an existing task.
509
+
510
+ Args:
511
+ task_key: The key of the task to update
512
+ prompt: New prompt text for the task (optional)
513
+ verifier_code: Python code for task verification (optional)
514
+
515
+ Returns:
516
+ TaskResponse containing the updated task details
517
+ """
518
+ payload = TaskUpdateRequest(
519
+ prompt=prompt,
520
+ verifier_code=verifier_code
521
+ )
522
+ response = self.client.request(
523
+ "PUT", f"/v1/tasks/{task_key}", json=payload.model_dump(exclude_none=True)
524
+ )
525
+ return TaskResponse(**response.json())
526
+
500
527
  def _create_verifier_from_data(
501
528
  self, verifier_id: str, verifier_key: str, verifier_code: str, verifier_sha: str
502
529
  ) -> "SyncVerifierFunction":
@@ -156,6 +156,11 @@ class TaskRequest(BaseModel):
156
156
  env_variables: Optional[Dict[str, Any]] = Field(None, title="Env Variables")
157
157
 
158
158
 
159
+ class TaskUpdateRequest(BaseModel):
160
+ prompt: Optional[str] = Field(None, title="Prompt")
161
+ verifier_code: Optional[str] = Field(None, title="Verifier Code")
162
+
163
+
159
164
  class VerifierData(BaseModel):
160
165
  verifier_id: str = Field(..., title="Verifier Id")
161
166
  key: str = Field(..., title="Key")
@@ -232,8 +232,38 @@ def load_tasks(
232
232
 
233
233
  client = get_client()
234
234
  return client.load_tasks(
235
- env_key=env_key,
236
- keys=keys,
237
- version=version,
235
+ env_key=env_key,
236
+ keys=keys,
237
+ version=version,
238
238
  team_id=team_id
239
239
  )
240
+
241
+
242
+ def update_task(
243
+ task_key: str,
244
+ prompt: Optional[str] = None,
245
+ verifier_code: Optional[str] = None
246
+ ):
247
+ """Convenience function to update an existing task.
248
+
249
+ Args:
250
+ task_key: The key of the task to update
251
+ prompt: New prompt text for the task (optional)
252
+ verifier_code: Python code for task verification (optional)
253
+
254
+ Returns:
255
+ TaskResponse containing the updated task details
256
+
257
+ Examples:
258
+ response = fleet.update_task("my-task", prompt="New prompt text")
259
+ response = fleet.update_task("my-task", verifier_code="def verify(env): return True")
260
+ """
261
+ from .global_client import get_client
262
+ from .models import TaskResponse
263
+
264
+ client = get_client()
265
+ return client.update_task(
266
+ task_key=task_key,
267
+ prompt=prompt,
268
+ verifier_code=verifier_code
269
+ )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fleet-python
3
- Version: 0.2.41
3
+ Version: 0.2.42
4
4
  Summary: Python SDK for Fleet environments
5
5
  Author-email: Fleet AI <nic@fleet.so>
6
6
  License: Apache-2.0
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "fleet-python"
7
- version = "0.2.41"
7
+ version = "0.2.42"
8
8
  description = "Python SDK for Fleet environments"
9
9
  authors = [
10
10
  {name = "Fleet AI", email = "nic@fleet.so"},
File without changes
File without changes
File without changes