devZenaight commited on
Commit
443a067
·
1 Parent(s): 6b53ec8

models.py updated

Browse files
Files changed (1) hide show
  1. app/models.py +35 -14
app/models.py CHANGED
@@ -32,30 +32,51 @@ class ExportResponse(BaseModel):
32
 
33
  class SectionJob(BaseModel):
34
  """Job model for section generation"""
35
- businessPlanId: str
36
  sectionKey: str
37
- businessIdea: str
38
- countryCode: Optional[str] = None
39
- defaultCountry: Optional[str] = None
 
 
 
 
 
40
 
41
  class BatchGenerateRequest(BaseModel):
42
  """Request model for batch generation"""
43
- businessPlanId: str
44
- businessIdea: str
45
- sections: List[str]
46
  countryCode: Optional[str] = None
47
- defaultCountry: Optional[str] = None
 
 
 
 
 
48
 
49
  class GenerateRequest(BaseModel):
50
  """Request model for single section generation"""
51
- businessPlanId: str
52
- sectionKey: str
53
- businessIdea: str
 
 
 
 
 
 
 
 
 
54
  countryCode: Optional[str] = None
55
- defaultCountry: Optional[str] = None
 
56
 
57
  class CreatePlanRequest(BaseModel):
58
  """Request model for creating a new business plan"""
59
- businessIdea: str
 
60
  countryCode: Optional[str] = None
61
- defaultCountry: Optional[str] = None
 
 
32
 
33
  class SectionJob(BaseModel):
34
  """Job model for section generation"""
 
35
  sectionKey: str
36
+ # The server will load prompt/model defaults from GeneratePrompt.
37
+ # Client MAY override but is not required to send these.
38
+ prompt: Optional[str] = None
39
+ promptVariables: Dict[str, str] = {}
40
+ model: Optional[str] = None
41
+ provider: Optional[str] = None
42
+ temperature: Optional[float] = None
43
+ maxTokens: Optional[int] = None
44
 
45
  class BatchGenerateRequest(BaseModel):
46
  """Request model for batch generation"""
47
+ answers: List[str]
48
+ planType: Optional[str] = "free"
49
+ businessPlanId: Optional[str] = None
50
  countryCode: Optional[str] = None
51
+ businessIdea: Optional[str] = None
52
+ anonymousId: Optional[str] = None
53
+ feedback: Optional[str] = None
54
+ sections: List[SectionJob]
55
+ format: Optional[str] = None
56
+ chartImages: Optional[List[str]] = None
57
 
58
  class GenerateRequest(BaseModel):
59
  """Request model for single section generation"""
60
+ answers: List[str]
61
+ model: str
62
+ prompt: str
63
+ promptVariables: Dict[str, str]
64
+ provider: str
65
+ temperature: float
66
+ maxTokens: int
67
+ # NEW — optional, for persistence & ownership
68
+ businessPlanId: Optional[str] = None
69
+ planType: Optional[str] = "free"
70
+ userId: Optional[str] = None # will be overridden by verified JWT
71
+ anonymousId: Optional[str] = None
72
  countryCode: Optional[str] = None
73
+ sectionKey: Optional[str] = None # e.g. "prompt_ExecutiveSummary"
74
+ returnContent: Optional[bool] = False # NEW — default to id-only responses
75
 
76
  class CreatePlanRequest(BaseModel):
77
  """Request model for creating a new business plan"""
78
+ answers: List[str] = []
79
+ planType: Optional[str] = "free"
80
  countryCode: Optional[str] = None
81
+ anonymousId: Optional[str] = None
82
+ businessIdea: Optional[str] = None