python-base-agent 2026.2.13__py3-none-any.whl

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 (134) hide show
  1. base_agent/__init__.py +49 -0
  2. base_agent/agent.py +1060 -0
  3. base_agent/config.py +220 -0
  4. base_agent/contracts/__init__.py +209 -0
  5. base_agent/contracts/access_control_summary_part.py +42 -0
  6. base_agent/contracts/agent_loop_part.py +87 -0
  7. base_agent/contracts/agent_tool_part.py +15 -0
  8. base_agent/contracts/append_entity_class_part.py +15 -0
  9. base_agent/contracts/broadcast_message.py +30 -0
  10. base_agent/contracts/broadcast_message_type.py +13 -0
  11. base_agent/contracts/cache_stability_metadata.py +27 -0
  12. base_agent/contracts/code_generation.py +18 -0
  13. base_agent/contracts/context_management_notification.py +20 -0
  14. base_agent/contracts/context_management_pipeline.py +21 -0
  15. base_agent/contracts/cross_vector_similarity_search_request.py +14 -0
  16. base_agent/contracts/data_classification_tag.py +12 -0
  17. base_agent/contracts/data_lineage_part.py +46 -0
  18. base_agent/contracts/data_part.py +15 -0
  19. base_agent/contracts/data_pointer_part.py +20 -0
  20. base_agent/contracts/embedding_request.py +15 -0
  21. base_agent/contracts/embedding_response.py +21 -0
  22. base_agent/contracts/entity_matching_form_data.py +79 -0
  23. base_agent/contracts/entity_vector_text_search_match.py +12 -0
  24. base_agent/contracts/entity_vector_text_search_request.py +14 -0
  25. base_agent/contracts/entity_vector_text_search_result.py +24 -0
  26. base_agent/contracts/entity_vectorization_job_info.py +24 -0
  27. base_agent/contracts/entity_vectorization_jobs_result.py +30 -0
  28. base_agent/contracts/entity_vectorization_progress.py +14 -0
  29. base_agent/contracts/entity_vectorization_request.py +15 -0
  30. base_agent/contracts/entity_vectorization_result.py +17 -0
  31. base_agent/contracts/envelope.py +20 -0
  32. base_agent/contracts/error_part.py +24 -0
  33. base_agent/contracts/error_part_type.py +14 -0
  34. base_agent/contracts/file_part.py +17 -0
  35. base_agent/contracts/file_pointer_part.py +17 -0
  36. base_agent/contracts/file_revectorization_request_event.py +19 -0
  37. base_agent/contracts/file_vectorization_request_event.py +22 -0
  38. base_agent/contracts/for_each_part.py +30 -0
  39. base_agent/contracts/fuzzy_matching_params.py +21 -0
  40. base_agent/contracts/group_plan.py +16 -0
  41. base_agent/contracts/header.py +69 -0
  42. base_agent/contracts/human_input_request.py +16 -0
  43. base_agent/contracts/inspector_pipeline_item.py +19 -0
  44. base_agent/contracts/list_entity_vectorization_jobs_request.py +12 -0
  45. base_agent/contracts/llm_accounting_part.py +33 -0
  46. base_agent/contracts/llm_error_notification.py +13 -0
  47. base_agent/contracts/llm_judge_job.py +84 -0
  48. base_agent/contracts/llm_judge_params.py +15 -0
  49. base_agent/contracts/llm_judge_progress.py +20 -0
  50. base_agent/contracts/llm_model_part.py +72 -0
  51. base_agent/contracts/llm_reasoning_summary.py +23 -0
  52. base_agent/contracts/llm_response.py +25 -0
  53. base_agent/contracts/llm_response_part.py +54 -0
  54. base_agent/contracts/match_entities_job.py +43 -0
  55. base_agent/contracts/match_result.py +52 -0
  56. base_agent/contracts/notification_error_type.py +12 -0
  57. base_agent/contracts/notification_severity.py +14 -0
  58. base_agent/contracts/on_trigger_fired.py +17 -0
  59. base_agent/contracts/parallel_execution_plan.py +25 -0
  60. base_agent/contracts/part.py +30 -0
  61. base_agent/contracts/resume_entity_vectorization_request.py +11 -0
  62. base_agent/contracts/room_dataset_catalog.py +44 -0
  63. base_agent/contracts/room_dataset_catalog_entry.py +38 -0
  64. base_agent/contracts/room_dataset_column.py +12 -0
  65. base_agent/contracts/room_dataset_schema.py +24 -0
  66. base_agent/contracts/scratch_pad_content.py +14 -0
  67. base_agent/contracts/search_request.py +27 -0
  68. base_agent/contracts/search_response.py +39 -0
  69. base_agent/contracts/search_result.py +21 -0
  70. base_agent/contracts/search_type_result.py +13 -0
  71. base_agent/contracts/semantic_search_progress.py +18 -0
  72. base_agent/contracts/semantic_search_result.py +25 -0
  73. base_agent/contracts/stream_content_message.py +35 -0
  74. base_agent/contracts/stream_event_type.py +12 -0
  75. base_agent/contracts/stream_message.py +14 -0
  76. base_agent/contracts/stream_metadata.py +28 -0
  77. base_agent/contracts/task_artifact_update.py +20 -0
  78. base_agent/contracts/task_error_response.py +22 -0
  79. base_agent/contracts/task_ref.py +19 -0
  80. base_agent/contracts/task_request.py +21 -0
  81. base_agent/contracts/task_response.py +21 -0
  82. base_agent/contracts/task_status_update.py +31 -0
  83. base_agent/contracts/text_part.py +15 -0
  84. base_agent/contracts/tool_authorization_request.py +21 -0
  85. base_agent/contracts/tool_call_index.py +42 -0
  86. base_agent/contracts/tool_call_index_entry.py +32 -0
  87. base_agent/contracts/tool_call_initiation.py +27 -0
  88. base_agent/contracts/tool_learning_request.py +34 -0
  89. base_agent/contracts/tool_response_completion.py +19 -0
  90. base_agent/contracts/tool_response_part.py +31 -0
  91. base_agent/contracts/usage_metadata.py +11 -0
  92. base_agent/contracts/user_data_notification.py +13 -0
  93. base_agent/contracts/user_notification.py +21 -0
  94. base_agent/contracts/vector_similarity_search_request.py +13 -0
  95. base_agent/contracts/vector_similarity_search_result.py +25 -0
  96. base_agent/contracts/workflow_part.py +17 -0
  97. base_agent/exceptions.py +39 -0
  98. base_agent/health/__init__.py +5 -0
  99. base_agent/health/server.py +191 -0
  100. base_agent/messaging/__init__.py +5 -0
  101. base_agent/messaging/kafka_client.py +572 -0
  102. base_agent/ordering/__init__.py +5 -0
  103. base_agent/ordering/vector_clock.py +176 -0
  104. base_agent/prompts/__init__.py +10 -0
  105. base_agent/prompts/prompt_manager.py +213 -0
  106. base_agent/registration/__init__.py +5 -0
  107. base_agent/registration/registration_client.py +364 -0
  108. base_agent/schemas/__init__.py +14 -0
  109. base_agent/schemas/models.py +30 -0
  110. base_agent/schemas/schema_registry_client.py +493 -0
  111. base_agent/schemas/source_type.py +24 -0
  112. base_agent/schemas/technical_name_validator.py +147 -0
  113. base_agent/state/__init__.py +13 -0
  114. base_agent/state/logical_clock_tracker.py +50 -0
  115. base_agent/state/session_tracker.py +91 -0
  116. base_agent/state/store.py +333 -0
  117. base_agent/storage/__init__.py +27 -0
  118. base_agent/storage/azure_store.py +615 -0
  119. base_agent/storage/exceptions.py +26 -0
  120. base_agent/storage/models.py +73 -0
  121. base_agent/storage/object_store.py +248 -0
  122. base_agent/storage/object_store_factory.py +136 -0
  123. base_agent/storage/s3_store.py +411 -0
  124. base_agent/telemetry/__init__.py +1 -0
  125. base_agent/tools/__init__.py +12 -0
  126. base_agent/tools/models.py +66 -0
  127. base_agent/tools/tool_registry_client.py +607 -0
  128. base_agent/utils/__init__.py +5 -0
  129. base_agent/utils/logger.py +146 -0
  130. base_agent/utils/version_utils.py +92 -0
  131. python_base_agent-2026.2.13.dist-info/METADATA +536 -0
  132. python_base_agent-2026.2.13.dist-info/RECORD +134 -0
  133. python_base_agent-2026.2.13.dist-info/WHEEL +5 -0
  134. python_base_agent-2026.2.13.dist-info/top_level.txt +1 -0
@@ -0,0 +1,20 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: ContextManagementNotification.json
3
+ # timestamp: 2026-02-10T02:09:52+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from pydantic import BaseModel
8
+
9
+
10
+ class ContextManagementNotification(BaseModel):
11
+ bytesReduced: int | None = None
12
+ error: str | None = None
13
+ finalBytes: int | None = None
14
+ finalMessages: int | None = None
15
+ message: str | None = None
16
+ modelTag: str | None = None
17
+ originalBytes: int | None = None
18
+ originalMessages: int | None = None
19
+ step: int | None = None
20
+ strategyName: str | None = None
@@ -0,0 +1,21 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: ContextManagementPipeline.json
3
+ # timestamp: 2026-02-10T02:09:53+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from pydantic import BaseModel
8
+
9
+
10
+ class ContextManagementPipeline(BaseModel):
11
+ bytesReduced: int | None = None
12
+ completed: int | None = None
13
+ currentBytes: int | None = None
14
+ currentMessages: int | None = None
15
+ failed: int | None = None
16
+ initialBytes: int | None = None
17
+ initialMessages: int | None = None
18
+ message: str | None = None
19
+ pipelineId: str | None = None
20
+ progressPercent: float | None = None
21
+ total: int | None = None
@@ -0,0 +1,14 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: CrossVectorSimilaritySearchRequest.json
3
+ # timestamp: 2026-02-10T02:09:54+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from pydantic import BaseModel
8
+
9
+
10
+ class CrossVectorSimilaritySearchRequest(BaseModel):
11
+ leftJobId: str
12
+ rightJobId: str
13
+ threshold: float
14
+ topK: int
@@ -0,0 +1,12 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: DataClassificationTag.json
3
+ # timestamp: 2026-02-10T02:09:55+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from pydantic import BaseModel
8
+
9
+
10
+ class DataClassificationTag(BaseModel):
11
+ displayName: str | None = None
12
+ tagId: int | None = None
@@ -0,0 +1,46 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: DataLineagePart.json
3
+ # timestamp: 2026-02-10T02:09:56+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from collections.abc import Sequence
8
+
9
+ from pydantic import BaseModel, Field
10
+
11
+ from typing import Literal, Any
12
+
13
+
14
+ class DataClassificationTag(BaseModel):
15
+ displayName: str | None = None
16
+ tagId: int | None = None
17
+
18
+
19
+ class MapStringListDataClassificationTag(BaseModel):
20
+ pass
21
+
22
+
23
+ class DataSource(BaseModel):
24
+ catalog: str | None = None
25
+ columnTags: MapStringListDataClassificationTag | None = None
26
+ columns: Sequence[str] | None = None
27
+ objectStoreLocation: str | None = None
28
+ schema_: str | None = Field(None, alias='schema')
29
+ sourceLineageId: str | None = None
30
+ sourceType: str | None = None
31
+ table: str | None = None
32
+ tableTags: Sequence[DataClassificationTag] | None = None
33
+
34
+
35
+ class DataLineagePart(BaseModel):
36
+ lineageId: str | None = None
37
+ metadata: dict[str, Any] | None = None
38
+ operationType: str | None = None
39
+ outputReference: str | None = None
40
+ partType: str
41
+ sources: Sequence[DataSource] | None = None
42
+ timestamp: int | None = None
43
+
44
+
45
+ # Rebuild models to resolve forward references with Any type
46
+ DataLineagePart.model_rebuild()
@@ -0,0 +1,15 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: DataPart.json
3
+ # timestamp: 2026-02-10T02:09:56+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from typing import Literal, Any
8
+
9
+ from pydantic import BaseModel, Field
10
+
11
+
12
+ class DataPart(BaseModel):
13
+ data: Any
14
+ name: str | None = None
15
+ partType: Literal["data"] = "data"
@@ -0,0 +1,20 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: DataPointerPart.json
3
+ # timestamp: 2026-02-10T02:09:57+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from pydantic import BaseModel, Field
8
+
9
+ from typing import Literal
10
+
11
+
12
+ class DataPointerPart(BaseModel):
13
+ columnCount: int
14
+ dataSizeBytes: int
15
+ mimeType: str = Field(..., min_length=1)
16
+ name: str = Field(..., min_length=1)
17
+ objectStoreLocation: str = Field(..., min_length=1)
18
+ partType: Literal["data-pointer"] = "data-pointer"
19
+ rowCount: int
20
+ storageType: str = Field(..., min_length=1)
@@ -0,0 +1,15 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: EmbeddingRequest.json
3
+ # timestamp: 2026-02-10T02:09:58+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from collections.abc import Sequence
8
+
9
+ from pydantic import BaseModel
10
+
11
+
12
+ class EmbeddingRequest(BaseModel):
13
+ dimensions: int | None = None
14
+ model: str | None = None
15
+ texts: Sequence[str] | None = None
@@ -0,0 +1,21 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: EmbeddingResponse.json
3
+ # timestamp: 2026-02-10T02:09:59+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from collections.abc import Sequence
8
+
9
+ from pydantic import BaseModel
10
+
11
+
12
+ class UsageMetadata(BaseModel):
13
+ totalTokens: int | None = None
14
+
15
+
16
+ class EmbeddingResponse(BaseModel):
17
+ dimensions: int | None = None
18
+ embeddings: Sequence[Sequence[float]] | None = None
19
+ model: str | None = None
20
+ usage: UsageMetadata | None = None
21
+ vendor: str | None = None
@@ -0,0 +1,79 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: EntityMatchingFormData.json
3
+ # timestamp: 2026-02-10T02:09:59+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from collections.abc import Sequence
8
+ from enum import Enum
9
+
10
+ from pydantic import BaseModel
11
+
12
+
13
+ class FieldSelectionMode(Enum):
14
+ EXCLUDE = 'EXCLUDE'
15
+ INCLUDE = 'INCLUDE'
16
+
17
+
18
+ class LLMJudgeParams(BaseModel):
19
+ fuzzyCandidatesJobId: str | None = None
20
+ minimumMatchProbability: float
21
+ semanticCandidatesJobId: str | None = None
22
+ systemPromptType: str
23
+ userPromptType: str
24
+
25
+
26
+ class EntityMatchingMode(Enum):
27
+ SYNTHETIC = 'SYNTHETIC'
28
+ PRODUCTION = 'PRODUCTION'
29
+ DE_DUPE = 'DE_DUPE'
30
+
31
+
32
+ class FieldConstraint(BaseModel):
33
+ field: str
34
+ op: str
35
+ value: str
36
+
37
+
38
+ class SemanticMatchingParams(BaseModel):
39
+ leftVectorizationJobId: str | None = None
40
+ rightVectorizationJobId: str | None = None
41
+ threshold: float
42
+ topK: int
43
+ vectorizationJobId: str | None = None
44
+
45
+
46
+ class SimpleLinkRule(BaseModel):
47
+ fields: Sequence[str]
48
+ name: str
49
+
50
+
51
+ class FuzzyMatchingParams(BaseModel):
52
+ fields: Sequence[str]
53
+ mode: FieldSelectionMode
54
+ threshold: float
55
+
56
+
57
+ class DeterministicLinkParams(BaseModel):
58
+ constraints: Sequence[FieldConstraint]
59
+ linkRules: Sequence[SimpleLinkRule]
60
+
61
+
62
+ class EntityMatchingFormData(BaseModel):
63
+ activeTab: str
64
+ constraints: Sequence[FieldConstraint]
65
+ dataLoaded: bool | None = None
66
+ deterministicLinkParams: DeterministicLinkParams
67
+ fuzzyMatchingParams: FuzzyMatchingParams
68
+ goldenTable: str | None = None
69
+ groupByField: str | None = None
70
+ leftTable: str
71
+ leftUidColumn: str
72
+ linkRules: Sequence[SimpleLinkRule]
73
+ llmJudgeParams: LLMJudgeParams
74
+ mode: EntityMatchingMode
75
+ rightTable: str
76
+ rightUidColumn: str
77
+ schemaName: str | None = None
78
+ schemaSaved: bool | None = None
79
+ semanticMatchingParams: SemanticMatchingParams
@@ -0,0 +1,12 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: EntityVectorTextSearchMatch.json
3
+ # timestamp: 2026-02-10T02:10:04+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from pydantic import BaseModel
8
+
9
+
10
+ class EntityVectorTextSearchMatch(BaseModel):
11
+ entityId: str
12
+ similarity: float
@@ -0,0 +1,14 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: EntityVectorTextSearchRequest.json
3
+ # timestamp: 2026-02-10T02:10:05+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from pydantic import BaseModel
8
+
9
+
10
+ class EntityVectorTextSearchRequest(BaseModel):
11
+ jobId: str
12
+ query: str
13
+ threshold: float | None = None
14
+ topK: int | None = None
@@ -0,0 +1,24 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: EntityVectorTextSearchResult.json
3
+ # timestamp: 2026-02-10T02:10:05+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from collections.abc import Sequence
8
+
9
+ from pydantic import BaseModel
10
+
11
+
12
+ class EntityVectorTextSearchMatch(BaseModel):
13
+ entityId: str
14
+ similarity: float
15
+
16
+
17
+ class EntityVectorTextSearchResult(BaseModel):
18
+ entityClass: str | None = None
19
+ entityIdField: str
20
+ errorMessage: str | None = None
21
+ jobId: str | None = None
22
+ matchCount: int
23
+ matches: Sequence[EntityVectorTextSearchMatch] | None = None
24
+ status: str
@@ -0,0 +1,24 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: EntityVectorizationJobInfo.json
3
+ # timestamp: 2026-02-10T02:10:00+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from collections.abc import Sequence
8
+
9
+ from pydantic import BaseModel
10
+
11
+
12
+ class EntityVectorizationJobInfo(BaseModel):
13
+ completedAt: str | None = None
14
+ createdAt: str
15
+ entityClass: str
16
+ entityIdField: str
17
+ failedCount: int
18
+ includedFields: Sequence[str]
19
+ jobId: str
20
+ modelName: str
21
+ processedCount: int
22
+ sessionId: str | None = None
23
+ status: str
24
+ totalCount: int | None = None
@@ -0,0 +1,30 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: EntityVectorizationJobsResult.json
3
+ # timestamp: 2026-02-10T02:10:01+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from collections.abc import Sequence
8
+
9
+ from pydantic import BaseModel
10
+
11
+
12
+ class EntityVectorizationJobInfo(BaseModel):
13
+ completedAt: str | None = None
14
+ createdAt: str
15
+ entityClass: str
16
+ entityIdField: str
17
+ failedCount: int
18
+ includedFields: Sequence[str]
19
+ jobId: str
20
+ modelName: str
21
+ processedCount: int
22
+ sessionId: str | None = None
23
+ status: str
24
+ totalCount: int | None = None
25
+
26
+
27
+ class EntityVectorizationJobsResult(BaseModel):
28
+ jobs: Sequence[EntityVectorizationJobInfo]
29
+ status: str
30
+ total: int
@@ -0,0 +1,14 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: EntityVectorizationProgress.json
3
+ # timestamp: 2026-02-10T02:10:02+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from pydantic import BaseModel
8
+
9
+
10
+ class EntityVectorizationProgress(BaseModel):
11
+ completed: int | None = None
12
+ errorMessage: str | None = None
13
+ status: str | None = None
14
+ total: int | None = None
@@ -0,0 +1,15 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: EntityVectorizationRequest.json
3
+ # timestamp: 2026-02-10T02:10:02+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from collections.abc import Sequence
8
+
9
+ from pydantic import BaseModel, Field
10
+
11
+
12
+ class EntityVectorizationRequest(BaseModel):
13
+ entityClass: str = Field(..., min_length=1)
14
+ entityIdField: str = Field(..., min_length=1)
15
+ selectedFields: Sequence[str]
@@ -0,0 +1,17 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: EntityVectorizationResult.json
3
+ # timestamp: 2026-02-10T02:10:03+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from collections.abc import Sequence
8
+
9
+ from pydantic import BaseModel, Field
10
+
11
+
12
+ class EntityVectorizationResult(BaseModel):
13
+ errorMessages: Sequence[str] | None = None
14
+ failedEntityIds: Sequence[str] | None = None
15
+ status: str = Field(..., min_length=1)
16
+ totalFailed: int
17
+ totalProcessed: int
@@ -0,0 +1,20 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: Envelope.json
3
+ # timestamp: 2026-02-10T02:10:06+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from typing import Any
8
+
9
+ from pydantic import BaseModel, Field
10
+
11
+
12
+ class MapIntegerString(BaseModel):
13
+ pass
14
+
15
+
16
+ from .header import Header
17
+
18
+ class Envelope(BaseModel):
19
+ header: Header
20
+ payload: Any
@@ -0,0 +1,24 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: ErrorPart.json
3
+ # timestamp: 2026-02-10T02:10:07+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from enum import Enum
8
+
9
+ from pydantic import BaseModel, Field
10
+
11
+ from typing import Literal
12
+
13
+
14
+ class ErrorPartType(Enum):
15
+ SYSTEM_ERROR = 'SYSTEM_ERROR'
16
+ LLM_ERROR = 'LLM_ERROR'
17
+ EMBEDDING_ERROR = 'EMBEDDING_ERROR'
18
+ ERROR = 'ERROR'
19
+
20
+
21
+ class ErrorPart(BaseModel):
22
+ errorType: ErrorPartType
23
+ partType: Literal["error"] = "error"
24
+ text: str = Field(..., min_length=1)
@@ -0,0 +1,14 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: ErrorPartType.json
3
+ # timestamp: 2026-02-10T02:10:08+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from enum import Enum
8
+
9
+
10
+ class ErrorPartType(Enum):
11
+ SYSTEM_ERROR = 'SYSTEM_ERROR'
12
+ LLM_ERROR = 'LLM_ERROR'
13
+ EMBEDDING_ERROR = 'EMBEDDING_ERROR'
14
+ ERROR = 'ERROR'
@@ -0,0 +1,17 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: FilePart.json
3
+ # timestamp: 2026-02-10T02:10:09+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from pydantic import BaseModel, Field
8
+
9
+ from typing import Literal
10
+
11
+
12
+ class FilePart(BaseModel):
13
+ bytes: str = Field(..., min_length=1)
14
+ mimeType: str = Field(..., min_length=1)
15
+ name: str = Field(..., min_length=1)
16
+ partType: Literal["file"] = "file"
17
+ uri: str = Field(..., min_length=1)
@@ -0,0 +1,17 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: FilePointerPart.json
3
+ # timestamp: 2026-02-10T02:10:09+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from pydantic import BaseModel, Field
8
+
9
+ from typing import Literal
10
+
11
+
12
+ class FilePointerPart(BaseModel):
13
+ mimeType: str = Field(..., min_length=1)
14
+ name: str = Field(..., min_length=1)
15
+ objectStoreLocation: str = Field(..., min_length=1)
16
+ originalFileName: str | None = None
17
+ partType: Literal["file-pointer"] = "file-pointer"
@@ -0,0 +1,19 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: FileRevectorizationRequestEvent.json
3
+ # timestamp: 2026-02-10T02:10:10+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from pydantic import AwareDatetime, BaseModel
8
+
9
+
10
+ class FileRevectorizationRequestEvent(BaseModel):
11
+ correlationId: str | None = None
12
+ embeddingModel: str | None = None
13
+ fileId: int | None = None
14
+ mimeType: str | None = None
15
+ objectLocation: str | None = None
16
+ originalFilename: str | None = None
17
+ timestamp: AwareDatetime | None = None
18
+ triggeredByUserId: str | None = None
19
+ vectorizationJobId: str | None = None
@@ -0,0 +1,22 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: FileVectorizationRequestEvent.json
3
+ # timestamp: 2026-02-10T02:10:11+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from pydantic import AwareDatetime, BaseModel
8
+
9
+
10
+ class FileVectorizationRequestEvent(BaseModel):
11
+ correlationId: str | None = None
12
+ description: str | None = None
13
+ displayName: str | None = None
14
+ embeddingModel: str | None = None
15
+ fileId: int | None = None
16
+ folderId: int | None = None
17
+ mimeType: str | None = None
18
+ objectLocation: str | None = None
19
+ originalFilename: str | None = None
20
+ tags: str | None = None
21
+ timestamp: AwareDatetime | None = None
22
+ vectorizationJobId: str | None = None
@@ -0,0 +1,30 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: ForEachPart.json
3
+ # timestamp: 2026-02-10T02:10:12+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from collections.abc import Sequence
8
+
9
+ from pydantic import BaseModel, Field
10
+
11
+ from typing import Literal, Any
12
+
13
+
14
+ class TaskRef(BaseModel):
15
+ inputPointer: str | None = None
16
+ overrides: dict[str, Any] | None = None
17
+ taskSha: str = Field(..., min_length=1)
18
+
19
+
20
+ class ForEachPart(BaseModel):
21
+ arrayPointer: str = Field(..., min_length=1)
22
+ elementSchemaHash: str = Field(..., min_length=1)
23
+ name: str = Field(..., min_length=1)
24
+ parallel: bool
25
+ partType: Literal["for-each"] = "for-each"
26
+ tasksToRunPerElement: Sequence[TaskRef] = Field(..., min_length=1)
27
+
28
+
29
+ # Rebuild models to resolve forward references with Any type
30
+ TaskRef.model_rebuild()
@@ -0,0 +1,21 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: FuzzyMatchingParams.json
3
+ # timestamp: 2026-02-10T02:10:12+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from collections.abc import Sequence
8
+ from enum import Enum
9
+
10
+ from pydantic import BaseModel
11
+
12
+
13
+ class FieldSelectionMode(Enum):
14
+ EXCLUDE = 'EXCLUDE'
15
+ INCLUDE = 'INCLUDE'
16
+
17
+
18
+ class FuzzyMatchingParams(BaseModel):
19
+ fields: Sequence[str]
20
+ mode: FieldSelectionMode
21
+ threshold: float
@@ -0,0 +1,16 @@
1
+ # generated by datamodel-codegen:
2
+ # filename: GroupPlan.json
3
+ # timestamp: 2026-02-10T02:10:13+00:00
4
+
5
+ from __future__ import annotations
6
+
7
+ from collections.abc import Sequence
8
+
9
+ from pydantic import BaseModel, Field
10
+
11
+
12
+ class GroupPlan(BaseModel):
13
+ executionMode: str = Field(..., min_length=1)
14
+ toolCallIds: Sequence[str]
15
+ toolCount: int | None = None
16
+ toolName: str = Field(..., min_length=1)