projectdavid-common 0.21.8__tar.gz → 0.22.0__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 (39) hide show
  1. {projectdavid_common-0.21.8/src/projectdavid_common.egg-info → projectdavid_common-0.22.0}/PKG-INFO +1 -1
  2. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/pyproject.toml +1 -1
  3. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/schemas/actions_schema.py +4 -4
  4. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/schemas/assistants_schema.py +23 -0
  5. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0/src/projectdavid_common.egg-info}/PKG-INFO +1 -1
  6. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/MANIFEST.in +0 -0
  7. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/README.md +0 -0
  8. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/setup.cfg +0 -0
  9. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/__init__.py +0 -0
  10. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/constants/__init__.py +0 -0
  11. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/constants/ai_model_map.py +0 -0
  12. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/constants/assistant_map.py +0 -0
  13. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/constants/mime_types.py +0 -0
  14. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/constants/platform.py +0 -0
  15. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/constants/timeouts.py +0 -0
  16. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/constants/tools.py +0 -0
  17. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/schemas/__init__.py +0 -0
  18. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/schemas/api_key_schemas.py +0 -0
  19. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/schemas/enums.py +0 -0
  20. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/schemas/files_schema.py +0 -0
  21. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/schemas/inference_schema.py +0 -0
  22. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/schemas/messages_schema.py +0 -0
  23. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/schemas/runs_schema.py +0 -0
  24. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/schemas/stream_schema.py +0 -0
  25. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/schemas/threads_schema.py +0 -0
  26. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/schemas/users_schema.py +0 -0
  27. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/schemas/vector_search_envelope.py +0 -0
  28. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/schemas/vectors_schema.py +0 -0
  29. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/utilities/__init__.py +0 -0
  30. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/utilities/identifier_service.py +0 -0
  31. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/utilities/logging_service.py +0 -0
  32. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/utils.py +0 -0
  33. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common/validation.py +0 -0
  34. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common.egg-info/SOURCES.txt +0 -0
  35. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common.egg-info/dependency_links.txt +0 -0
  36. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common.egg-info/entry_points.txt +0 -0
  37. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common.egg-info/requires.txt +0 -0
  38. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/src/projectdavid_common.egg-info/top_level.txt +0 -0
  39. {projectdavid_common-0.21.8 → projectdavid_common-0.22.0}/tests/test_vector_store_models.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: projectdavid_common
3
- Version: 0.21.8
3
+ Version: 0.22.0
4
4
  Summary: Common shared custom packages
5
5
  Author-email: "Francis N." <francis.neequaye@projectdavid.co.uk>
6
6
  License: MIT
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "projectdavid_common"
7
- version = "0.21.8"
7
+ version = "0.22.0"
8
8
  description = "Common shared custom packages"
9
9
  readme = "README.md"
10
10
  authors = [
@@ -21,7 +21,7 @@ class ActionBase(BaseModel):
21
21
  turn_index: Optional[int] = 0
22
22
 
23
23
  # Telemetry
24
- decision_payload: Optional[Dict[str, Any]] = None
24
+ decision: Optional[Dict[str, Any]] = None
25
25
  confidence_score: Optional[float] = None
26
26
 
27
27
  model_config = ConfigDict(from_attributes=True)
@@ -50,7 +50,7 @@ class ActionCreate(BaseModel):
50
50
  turn_index: Optional[int] = 0
51
51
 
52
52
  # [NEW] Telemetry Fields (Passed from Worker/Router)
53
- decision_payload: Optional[Dict[str, Any]] = None
53
+ decision: Optional[Dict[str, Any]] = None
54
54
 
55
55
  @field_validator("tool_name", mode="before")
56
56
  @classmethod
@@ -67,7 +67,7 @@ class ActionCreate(BaseModel):
67
67
  "tool_call_id": "call_abc123",
68
68
  "function_args": {"arg1": "value1"},
69
69
  "status": "pending",
70
- "decision_payload": {
70
+ "decision": {
71
71
  "reason": "User requested flight times explicitly.",
72
72
  "confidence": 0.95,
73
73
  "selected_tool": "get_flight_times",
@@ -88,7 +88,7 @@ class ActionRead(BaseModel):
88
88
  turn_index: Optional[int] = None
89
89
 
90
90
  # [NEW] Telemetry Fields (Exposed to Client/Dashboard)
91
- decision_payload: Optional[Dict[str, Any]] = None
91
+ decision: Optional[Dict[str, Any]] = None
92
92
  confidence_score: Optional[float] = None
93
93
 
94
94
  triggered_at: Optional[str] = None
@@ -27,6 +27,17 @@ class AssistantCreate(BaseModel):
27
27
  temperature: float = Field(1.0, ge=0, le=2)
28
28
  response_format: str = Field("auto")
29
29
 
30
+ # ─── agentic settings (Level 3) ───────────
31
+ max_turns: int = Field(
32
+ 1, ge=1, description="Max iterations. 1 = Standard, >1 = Autonomous loops."
33
+ )
34
+ agent_mode: bool = Field(
35
+ False, description="False = Standard (Level 2), True = Autonomous (Level 3)."
36
+ )
37
+ decision_telemetry: bool = Field(
38
+ False, description="Enable detailed reasoning/confidence logging."
39
+ )
40
+
30
41
  # ─── webhooks ─────────────────────────────
31
42
  webhook_url: Optional[HttpUrl] = None
32
43
  webhook_secret: Optional[str] = Field(None, min_length=16)
@@ -36,6 +47,8 @@ class AssistantCreate(BaseModel):
36
47
  "example": {
37
48
  "name": "Search Assistant",
38
49
  "model": "gpt-4o-mini",
50
+ "agent_mode": True,
51
+ "decision_telemetry": True,
39
52
  "tool_resources": {"file_search": {"vector_store_ids": ["vs_docs"]}},
40
53
  }
41
54
  }
@@ -64,6 +77,11 @@ class AssistantRead(BaseModel):
64
77
  temperature: float
65
78
  response_format: str
66
79
 
80
+ # ─── agentic settings ─────────────────────
81
+ max_turns: int
82
+ agent_mode: bool
83
+ decision_telemetry: bool
84
+
67
85
  vector_stores: List[VectorStoreRead] = Field(default_factory=list)
68
86
  webhook_url: Optional[HttpUrl] = None
69
87
 
@@ -84,6 +102,11 @@ class AssistantUpdate(BaseModel):
84
102
  temperature: Optional[float] = Field(None, ge=0, le=2)
85
103
  response_format: Optional[str] = None
86
104
 
105
+ # ─── agentic settings ─────────────────────
106
+ max_turns: Optional[int] = Field(None, ge=1)
107
+ agent_mode: Optional[bool] = None
108
+ decision_telemetry: Optional[bool] = None
109
+
87
110
  # ─── relationship IDs (lists of strings) ──
88
111
  tools: Optional[List[dict]] = Field(None, description="OpenAI-style tool specs (dicts).")
89
112
  users: Optional[List[str]] = None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: projectdavid_common
3
- Version: 0.21.8
3
+ Version: 0.22.0
4
4
  Summary: Common shared custom packages
5
5
  Author-email: "Francis N." <francis.neequaye@projectdavid.co.uk>
6
6
  License: MIT