Bluestrikeai commited on
Commit
713e45c
·
verified ·
1 Parent(s): 80cc65e

Create schemas.py

Browse files
Files changed (1) hide show
  1. schemas.py +42 -0
schemas.py ADDED
@@ -0,0 +1,42 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from __future__ import annotations
2
+ from pydantic import BaseModel, Field
3
+ from typing import Optional
4
+ from datetime import datetime
5
+
6
+
7
+ class GenerateRequest(BaseModel):
8
+ prompt: str
9
+ app_type: Optional[str] = "saas"
10
+ systems: Optional[list[str]] = None
11
+
12
+
13
+ class FixRequest(BaseModel):
14
+ error_message: str
15
+ file_path: Optional[str] = None
16
+
17
+
18
+ class AgentMessage(BaseModel):
19
+ event_type: str
20
+ agent: str
21
+ content: str = ""
22
+ file_path: Optional[str] = None
23
+ timestamp: datetime = Field(default_factory=datetime.utcnow)
24
+ metadata: dict = Field(default_factory=dict)
25
+
26
+
27
+ class ProjectState(BaseModel):
28
+ session_id: str
29
+ user_prompt: str
30
+ app_type: str = "saas"
31
+ status: str = "queued"
32
+ current_agent: str = ""
33
+ systems: list[str] = Field(default_factory=list)
34
+ messages: list[AgentMessage] = Field(default_factory=list)
35
+ generated_files: dict[str, str] = Field(default_factory=dict)
36
+ file_tree: list[str] = Field(default_factory=list)
37
+ errors: list[str] = Field(default_factory=list)
38
+ research_output: dict = Field(default_factory=dict)
39
+ blueprint: dict = Field(default_factory=dict)
40
+
41
+ class Config:
42
+ arbitrary_types_allowed = True