Skip to content

Commit ec5e715

Browse files
committed
updated pipeline schema doc to include changes.
1 parent 95b0cb3 commit ec5e715

File tree

7 files changed

+24
-33
lines changed

7 files changed

+24
-33
lines changed

src/schemas/PIPELINE_SCHEMAS.md

Lines changed: 15 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -248,73 +248,64 @@ All pipeline outputs include a `metadata` object (represented by the `PipelineMe
248248
- `name`: String (required, human-readable area name)
249249
- `area_id`: String (required)
250250
- `description`: String (optional, area description)
251-
- `domain`: String (required, domain name)
252-
- `domain_id`: String (required)
251+
- `domain`: Optional[Domain] (optional, Domain dataclass object)
253252
- `generation_metadata`: Dict (optional, nested dictionary containing process-specific information)
254253
- This field can contain any generation-specific data (e.g., generation method, parameters, intermediate steps)
255254
- Structure is flexible and depends on the generation method
256255

256+
**Note:** When serialized to JSON, the `domain` object is flattened to `domain` (string) and `domain_id` (string) fields.
257+
257258
### Capability
258259

259260
**Fields:**
260261
- `name`: String (required, capability name)
261262
- `capability_id`: String (required)
262263
- `description`: String (optional, capability description)
263-
- `area`: String (required, area name)
264-
- `area_id`: String (required)
265-
- `domain`: String (required, domain name)
266-
- `domain_id`: String (required)
264+
- `area`: Optional[Area] (optional, Area dataclass object)
267265
- `generation_metadata`: Dict (optional, nested dictionary containing process-specific information)
268266
- This field can contain any generation-specific data (e.g., generation method, parameters, intermediate steps)
269267
- Structure is flexible and depends on the generation method
270268

269+
**Note:** When serialized to JSON, the `area` object is flattened to `area` (string), `area_id` (string), `domain` (string), and `domain_id` (string) fields.
270+
271271
### Task
272272

273273
**Fields:**
274274
- `task_id`: String (required, unique within capability)
275275
- `task`: String (required, the task/problem text)
276-
- `capability_id`: String (required)
277-
- `capability`: String (required, capability name)
278-
- `area`: String (required, area name)
279-
- `area_id`: String (required)
280-
- `domain`: String (required, domain name)
281-
- `domain_id`: String (required)
276+
- `capability`: Optional[Capability] (optional, Capability dataclass object)
277+
278+
**Note:** When serialized to JSON, the `capability` object is flattened to `capability` (string), `capability_id` (string), `area` (string), `area_id` (string), `domain` (string), and `domain_id` (string) fields.
282279

283280
### TaskSolution
284281

285282
**Fields:**
286283
- `task_id`: String (required)
287284
- `task`: String (required, the task/problem text from Stage 3)
288-
- `capability`: String (required, capability name)
289-
- `capability_id`: String (required)
290-
- `area`: String (required, area name)
291-
- `area_id`: String (required)
292-
- `domain`: String (required, domain name)
293-
- `domain_id`: String (required)
294285
- `solution`: String (required, the final solution)
295286
- `reasoning`: String (required, explanation of the solution)
296287
- `numerical_answer`: String (optional, JSON string with numerical results)
297288
- `generation_metadata`: Dict (optional, nested dictionary containing process-specific information)
298289
- This field can contain any generation-specific data (e.g., debate rounds, agent interactions, pipeline type)
299290
- Structure is flexible and depends on the generation method (agentic, single-agent, etc.)
291+
- `task_obj`: Optional[Task] (optional, Task dataclass object with full hierarchy)
292+
293+
**Note:** When serialized to JSON, the `task_obj` object is flattened to `capability` (string), `capability_id` (string), `area` (string), `area_id` (string), `domain` (string), and `domain_id` (string) fields.
300294

301295
### ValidationResult
302296

303297
**Fields:**
304298
- `task_id`: String (required)
305299
- `task`: String (required, the task/problem text from Stage 3)
306-
- `capability`: String (required, capability name)
307-
- `capability_id`: String (required)
308-
- `area`: String (required, area name)
309-
- `area_id`: String (required)
310-
- `domain`: String (required, domain name)
311-
- `domain_id`: String (required)
312300
- `verification`: Boolean (required, overall validation status - whether the solution is verified/valid)
313301
- `feedback`: String (required, detailed feedback on the validation)
314302
- `score`: Float (optional, validation score, typically 0.0 to 1.0)
315303
- `generation_metadata`: Dict (optional, nested dictionary containing process-specific information)
316304
- This field can contain any validation-specific data (e.g., validation method, criteria details, error details)
317305
- Structure is flexible and depends on the validation method
306+
- `task_obj`: Optional[Task] (optional, Task dataclass object with full hierarchy)
307+
308+
**Note:** When serialized to JSON, the `task_obj` object is flattened to `capability` (string), `capability_id` (string), `area` (string), `area_id` (string), `domain` (string), and `domain_id` (string) fields.
318309

319310
---
320311

src/schemas/area_schemas.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
"""Schemas for area generation stage (Stage 1).
22
3-
Defines Area dataclass representing a domain area. Areas are high-level categories
3+
Defines Area dataclass for domain area. Areas are high-level categories
44
within a domain (e.g., "Budgeting" within "Personal Finance").
55
"""
66

src/schemas/capability_schemas.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
"""Schemas for capability generation stage (Stage 2).
22
3-
Defines Capability dataclass representing a capability within an area. Capabilities
3+
Defines Capability dataclass for capability within an area. Capabilities
44
are specific skills or abilities (e.g., "Budget Creation" within "Budgeting" area).
55
"""
66

src/schemas/domain_schemas.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
"""Schemas for domain (Stage 0).
22
3-
Defines Domain dataclass representing the domain being evaluated in the experiment.
3+
Defines Domain dataclass for domain.
44
"""
55

66
from dataclasses import dataclass

src/schemas/solution_schemas.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
"""Schemas for solution generation stage (Stage 4).
22
3-
Defines TaskSolution dataclass representing a complete solution for a task, including
4-
the solution text, reasoning, and optional numerical answer.
3+
Defines TaskSolution dataclass for task solution, including solution text,
4+
reasoning, and optional numerical answer.
55
"""
66

77
from dataclasses import dataclass, field

src/schemas/task_schemas.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
"""Schemas for task generation stage (Stage 3).
22
3-
Defines Task dataclass representing a specific task for a capability. Tasks are
4-
concrete evaluation items that test a capability (e.g., "Create a monthly budget").
3+
Defines Task dataclass for task. Tasks are concrete evaluation items
4+
that test a capability (e.g., "Create a monthly budget").
55
"""
66

77
from dataclasses import dataclass

src/schemas/validation_schemas.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
"""Schemas for validation stage (Stage 5).
22
3-
Defines ValidationResult dataclass representing the validation outcome for a task,
4-
including verification status, feedback, and optional score.
3+
Defines ValidationResult dataclass for validation result, including
4+
verification status, feedback, and optional score.
55
"""
66

77
from dataclasses import dataclass, field

0 commit comments

Comments
 (0)