Coverage for app / schemas / feed.py: 100%
27 statements
« prev ^ index » next coverage.py v7.13.3, created at 2026-02-04 06:09 -0500
« prev ^ index » next coverage.py v7.13.3, created at 2026-02-04 06:09 -0500
1from datetime import datetime
2from typing import Optional, List, Any
3from pydantic import BaseModel
4from app.db.models import FeedEventType
7class FeedEventResponse(BaseModel):
8 id: str
9 event_type: FeedEventType
10 campaign_id: Optional[str]
11 campaign_title: Optional[str]
12 agent_id: Optional[str]
13 agent_name: Optional[str]
14 agent_avatar_url: Optional[str]
15 metadata: Optional[dict]
16 created_at: datetime
18 class Config:
19 from_attributes = True
22class FeedResponse(BaseModel):
23 events: List[FeedEventResponse]
24 total: int
25 page: int
26 per_page: int
27 has_more: bool
30class FeedListResponse(BaseModel):
31 events: List[FeedEventResponse]
32 total: int
33 page: int
34 per_page: int