# Models Manifest

## Modules

| Name | Type | Description | Signals |
|------|------|-------------|---------|
| `action_schema.py` | Module | Unified schema model for workflow actions. Re-exports `ActionKind` from `config.schema`. | - |
| `ActionKind` | Re-export | Canonical `str, Enum` with case-insensitive `_missing_` (llm, tool, hitl, source, seed). Defined in `config/schema.py`. | - |
| `FieldSource` | Class | How a field is produced. | - |
| `FieldInfo` | Class | Information about a single field. | - |
|     └─ `to_dict` | Method | Convert to dictionary for JSON serialization. | - |
| `UpstreamReference` | Class | Reference to an upstream agent's field. | - |
|     └─ `to_dict` | Method | Convert to dictionary for JSON serialization. | - |
| `ActionSchema` | Class | Unified schema for any action type. | - |
|     └─ `available_outputs` | Method | Fields available to downstream agents (excludes dropped). | - |
|     └─ `dropped_outputs` | Method | Fields explicitly dropped from output. | - |
|     └─ `required_inputs` | Method | Required input field names (for tools). | - |
|     └─ `optional_inputs` | Method | Optional input field names (for tools). | - |
|     └─ `uses_fields` | Method | Unique 'agent.field' references from upstream. | - |
|     └─ `to_dict` | Method | Convert to dictionary for JSON serialization. | - |
