# DEB-327: Adhoc Question and Answer Lifecycle - I

> **Jira:** [DEB-327](https://divami.atlassian.net/browse/DEB-327)  
> **Source Report:** [20260315.md](../../reports/jira/20260315.md)

- **Status:** Start
- **Assignee:** Yeshwanth Reddy Yerraguntla
- **Priority:** Medium
- **Created:** 2026-03-13T15:28:00.505+0530
- **Updated:** 2026-03-13T16:36:02.829+0530

**Description:**

Pydantic Agent setup with A2A protocol

**Architecture Diagram:**

```mermaid
sequenceDiagram
    participant User
    participant ChatUI as Chat Interface
    participant RT as RT Decision Agent<br/>(Chanakya / Hub)
    participant A2A as A2A Protocol<br/>(JSON-RPC)
    participant DSA as Data Source Agent
    participant DS as Data Source

    User->>ChatUI: Ask adhoc question
    ChatUI->>RT: POST (user_email, tenant, question)
    RT->>RT: Intent classification<br/>(pydantic-ai reasoning)
    RT->>A2A: Send message to DSA<br/>(POST / JSON-RPC + metadata)
    A2A->>DSA: Deliver message
    DSA-->>A2A: Return task_id
    A2A-->>RT: task_id
    loop Poll until terminal state
        RT->>A2A: get_task(task_id)
        A2A->>DSA: get_task status
        DSA-->>A2A: status + partial result
        A2A-->>RT: status
    end
    DSA->>DS: Query data source
    DS-->>DSA: Data
    DSA-->>RT: Completed result + Evidence
    RT->>RT: Synthesize response
    RT-->>ChatUI: Final answer + sources
    ChatUI-->>User: Display response
```
