forked from cleveragents/cleveragents-core
a6f3bd3841
This commit adds JSON/YAML schemas, Python stubs, fixture examples, and comprehensive test coverage for data contracts across all modules (auth, AI models, contexts, plans, orgs, etc.). Implements automated validation through Behave and
468 lines
11 KiB
Python
468 lines
11 KiB
Python
"""Auto-generated Python stubs from Go contracts."""
|
|
|
|
from dataclasses import dataclass, field
|
|
from typing import Any, Dict, List, Optional
|
|
from datetime import datetime
|
|
from enum import Enum
|
|
|
|
|
|
class BuildMode(str, Enum):
|
|
"""Enum for BuildMode."""
|
|
|
|
BuildModeAuto = "BuildModeAuto"
|
|
BuildModeNone = "BuildModeNone"
|
|
|
|
|
|
class RespondMissingFileChoice(str, Enum):
|
|
"""Enum for RespondMissingFileChoice."""
|
|
|
|
RespondMissingFileChoiceLoad = "RespondMissingFileChoiceLoad"
|
|
RespondMissingFileChoiceSkip = "RespondMissingFileChoiceSkip"
|
|
RespondMissingFileChoiceOverwrite = "RespondMissingFileChoiceOverwrite"
|
|
|
|
|
|
BuildMode = str
|
|
|
|
RespondMissingFileChoice = str
|
|
|
|
FileMapInputs = map[string]string
|
|
|
|
LoadContextRequest = []*LoadContextParams
|
|
|
|
UpdateContextRequest = map[string]*UpdateContextParams
|
|
|
|
UpdateContextResponse = =
|
|
|
|
@dataclass
|
|
class CreateEmailVerificationRequest:
|
|
"""Data contract for CreateEmailVerificationRequest."""
|
|
|
|
email: str
|
|
userId: str
|
|
requireUser: bool
|
|
requireNoUser: bool
|
|
|
|
@dataclass
|
|
class CreateEmailVerificationResponse:
|
|
"""Data contract for CreateEmailVerificationResponse."""
|
|
|
|
hasAccount: bool
|
|
isLocalMode: bool
|
|
|
|
@dataclass
|
|
class VerifyEmailPinRequest:
|
|
"""Data contract for VerifyEmailPinRequest."""
|
|
|
|
email: str
|
|
pin: str
|
|
|
|
@dataclass
|
|
class SignInRequest:
|
|
"""Data contract for SignInRequest."""
|
|
|
|
email: str
|
|
pin: str
|
|
isSignInCode: bool
|
|
|
|
@dataclass
|
|
class UiSignInToken:
|
|
"""Data contract for UiSignInToken."""
|
|
|
|
pin: str
|
|
redirectTo: str
|
|
|
|
@dataclass
|
|
class CreateAccountRequest:
|
|
"""Data contract for CreateAccountRequest."""
|
|
|
|
email: str
|
|
pin: str
|
|
userName: str
|
|
|
|
@dataclass
|
|
class SessionResponse:
|
|
"""Data contract for SessionResponse."""
|
|
|
|
userId: str
|
|
token: str
|
|
email: str
|
|
userName: str
|
|
orgs: List[*Org] = field(default_factory=list)
|
|
isLocalMode: bool
|
|
|
|
@dataclass
|
|
class CreateOrgRequest:
|
|
"""Data contract for CreateOrgRequest."""
|
|
|
|
name: str
|
|
autoAddDomainUsers: bool
|
|
|
|
@dataclass
|
|
class ConvertTrialRequest:
|
|
"""Data contract for ConvertTrialRequest."""
|
|
|
|
email: str
|
|
pin: str
|
|
userName: str
|
|
orgName: str
|
|
orgAutoAddDomainUsers: bool
|
|
|
|
@dataclass
|
|
class CreateOrgResponse:
|
|
"""Data contract for CreateOrgResponse."""
|
|
|
|
id: str
|
|
|
|
@dataclass
|
|
class InviteRequest:
|
|
"""Data contract for InviteRequest."""
|
|
|
|
email: str
|
|
name: str
|
|
orgRoleId: str
|
|
|
|
@dataclass
|
|
class CreateProjectRequest:
|
|
"""Data contract for CreateProjectRequest."""
|
|
|
|
name: str
|
|
|
|
@dataclass
|
|
class CreateProjectResponse:
|
|
"""Data contract for CreateProjectResponse."""
|
|
|
|
id: str
|
|
|
|
@dataclass
|
|
class SetProjectPlanRequest:
|
|
"""Data contract for SetProjectPlanRequest."""
|
|
|
|
planId: str
|
|
|
|
@dataclass
|
|
class RenameProjectRequest:
|
|
"""Data contract for RenameProjectRequest."""
|
|
|
|
name: str
|
|
|
|
@dataclass
|
|
class CreatePlanRequest:
|
|
"""Data contract for CreatePlanRequest."""
|
|
|
|
name: str
|
|
|
|
@dataclass
|
|
class CreatePlanResponse:
|
|
"""Data contract for CreatePlanResponse."""
|
|
|
|
id: str
|
|
name: str
|
|
|
|
@dataclass
|
|
class GetCurrentBranchByPlanIdRequest:
|
|
"""Data contract for GetCurrentBranchByPlanIdRequest."""
|
|
|
|
currentBranchByPlanId: Dict[str, map[string]string] = field(default_factory=dict)
|
|
|
|
@dataclass
|
|
class ListPlansRunningResponse:
|
|
"""Data contract for ListPlansRunningResponse."""
|
|
|
|
branches: List[*Branch] = field(default_factory=list)
|
|
streamStartedAtByBranchId: Dict[str, Time] = field(default_factory=dict)
|
|
streamFinishedAtByBranchId: Dict[str, Time] = field(default_factory=dict)
|
|
streamIdByBranchId: Dict[str, map[string]string] = field(default_factory=dict)
|
|
plansById: Dict[str, map[string]*Plan] = field(default_factory=dict)
|
|
|
|
@dataclass
|
|
class TellPlanRequest:
|
|
"""Data contract for TellPlanRequest."""
|
|
|
|
prompt: str
|
|
buildMode: BuildMode
|
|
connectStream: bool
|
|
autoContinue: bool
|
|
isUserContinue: bool
|
|
isUserDebug: bool
|
|
isApplyDebug: bool
|
|
isChatOnly: bool
|
|
autoContext: bool
|
|
smartContext: bool
|
|
execEnabled: bool
|
|
osDetails: str
|
|
# deprecated
|
|
apiKeys: Dict[str, map[string]string] = field(default_factory=dict)
|
|
# deprecated
|
|
openAIOrgId: str
|
|
authVars: Dict[str, map[string]string] = field(default_factory=dict)
|
|
projectPaths: Dict[str, map[string]bool] = field(default_factory=dict)
|
|
isImplementationOfChat: bool
|
|
isGitRepo: bool
|
|
sessionId: str
|
|
|
|
@dataclass
|
|
class BuildPlanRequest:
|
|
"""Data contract for BuildPlanRequest."""
|
|
|
|
connectStream: bool
|
|
# deprecated
|
|
apiKeys: Dict[str, map[string]string] = field(default_factory=dict)
|
|
# deprecated
|
|
openAIOrgId: str
|
|
authVars: Dict[str, map[string]string] = field(default_factory=dict)
|
|
projectPaths: Dict[str, map[string]bool] = field(default_factory=dict)
|
|
sessionId: str
|
|
|
|
@dataclass
|
|
class RespondMissingFileRequest:
|
|
"""Data contract for RespondMissingFileRequest."""
|
|
|
|
choice: RespondMissingFileChoice
|
|
filePath: str
|
|
body: str
|
|
|
|
@dataclass
|
|
class LoadContextParams:
|
|
"""Data contract for LoadContextParams."""
|
|
|
|
contextType: ContextType
|
|
name: str
|
|
url: str
|
|
file_path: str
|
|
body: str
|
|
forceSkipIgnore: bool
|
|
imageDetail: ImageURLDetail
|
|
autoLoaded: bool
|
|
inputShas: Dict[str, map[string]string] = field(default_factory=dict)
|
|
inputTokens: Dict[str, map[string]int] = field(default_factory=dict)
|
|
inputSizes: Dict[str, map[string]int64] = field(default_factory=dict)
|
|
# For naming piped data
|
|
mapBodies: FileMapBodies
|
|
# deprecated
|
|
apiKeys: Dict[str, map[string]string] = field(default_factory=dict)
|
|
# deprecated
|
|
openAIBase: str
|
|
# deprecated
|
|
openAIOrgId: str
|
|
authVars: Dict[str, map[string]string] = field(default_factory=dict)
|
|
sessionId: str
|
|
|
|
@dataclass
|
|
class LoadContextResponse:
|
|
"""Data contract for LoadContextResponse."""
|
|
|
|
tokensAdded: int
|
|
totalTokens: int
|
|
maxTokensExceeded: bool
|
|
maxTokens: int
|
|
msg: str
|
|
|
|
@dataclass
|
|
class UpdateContextParams:
|
|
"""Data contract for UpdateContextParams."""
|
|
|
|
body: str
|
|
inputShas: Dict[str, map[string]string] = field(default_factory=dict)
|
|
inputTokens: Dict[str, map[string]int] = field(default_factory=dict)
|
|
inputSizes: Dict[str, map[string]int64] = field(default_factory=dict)
|
|
mapBodies: FileMapBodies
|
|
removedMapPaths: List[str] = field(default_factory=list)
|
|
|
|
@dataclass
|
|
class GetFileMapRequest:
|
|
"""Data contract for GetFileMapRequest."""
|
|
|
|
mapInputs: FileMapInputs
|
|
|
|
@dataclass
|
|
class GetFileMapResponse:
|
|
"""Data contract for GetFileMapResponse."""
|
|
|
|
mapBodies: FileMapBodies
|
|
|
|
@dataclass
|
|
class LoadCachedFileMapRequest:
|
|
"""Data contract for LoadCachedFileMapRequest."""
|
|
|
|
filePaths: List[str] = field(default_factory=list)
|
|
|
|
@dataclass
|
|
class LoadCachedFileMapResponse:
|
|
"""Data contract for LoadCachedFileMapResponse."""
|
|
|
|
loadRes: Optional[LoadContextResponse] = None
|
|
cachedByPath: Dict[str, map[string]bool] = field(default_factory=dict)
|
|
|
|
@dataclass
|
|
class GetContextBodyRequest:
|
|
"""Data contract for GetContextBodyRequest."""
|
|
|
|
contextId: str
|
|
|
|
@dataclass
|
|
class GetContextBodyResponse:
|
|
"""Data contract for GetContextBodyResponse."""
|
|
|
|
body: str
|
|
|
|
@dataclass
|
|
class DeleteContextRequest:
|
|
"""Data contract for DeleteContextRequest."""
|
|
|
|
ids: Dict[str, map[string]bool] = field(default_factory=dict)
|
|
|
|
@dataclass
|
|
class DeleteContextResponse:
|
|
"""Data contract for DeleteContextResponse."""
|
|
|
|
tokensRemoved: int
|
|
totalTokens: int
|
|
msg: str
|
|
|
|
@dataclass
|
|
class RejectFileRequest:
|
|
"""Data contract for RejectFileRequest."""
|
|
|
|
filePath: str
|
|
|
|
@dataclass
|
|
class RejectFilesRequest:
|
|
"""Data contract for RejectFilesRequest."""
|
|
|
|
paths: List[str] = field(default_factory=list)
|
|
|
|
@dataclass
|
|
class RewindPlanRequest:
|
|
"""Data contract for RewindPlanRequest."""
|
|
|
|
sha: str
|
|
|
|
@dataclass
|
|
class RewindPlanResponse:
|
|
"""Data contract for RewindPlanResponse."""
|
|
|
|
latestSha: str
|
|
latestCommit: str
|
|
|
|
@dataclass
|
|
class LogResponse:
|
|
"""Data contract for LogResponse."""
|
|
|
|
shas: List[str] = field(default_factory=list)
|
|
body: str
|
|
|
|
@dataclass
|
|
class CreateBranchRequest:
|
|
"""Data contract for CreateBranchRequest."""
|
|
|
|
name: str
|
|
|
|
@dataclass
|
|
class UpdateSettingsRequest:
|
|
"""Data contract for UpdateSettingsRequest."""
|
|
|
|
modelPackName: str
|
|
modelPack: Optional[ModelPack] = None
|
|
|
|
@dataclass
|
|
class UpdateSettingsResponse:
|
|
"""Data contract for UpdateSettingsResponse."""
|
|
|
|
msg: str
|
|
|
|
@dataclass
|
|
class UpdatePlanConfigRequest:
|
|
"""Data contract for UpdatePlanConfigRequest."""
|
|
|
|
config: Optional[PlanConfig] = None
|
|
|
|
@dataclass
|
|
class UpdateDefaultPlanConfigRequest:
|
|
"""Data contract for UpdateDefaultPlanConfigRequest."""
|
|
|
|
config: Optional[PlanConfig] = None
|
|
|
|
@dataclass
|
|
class GetPlanConfigResponse:
|
|
"""Data contract for GetPlanConfigResponse."""
|
|
|
|
config: Optional[PlanConfig] = None
|
|
|
|
@dataclass
|
|
class GetDefaultPlanConfigResponse:
|
|
"""Data contract for GetDefaultPlanConfigResponse."""
|
|
|
|
config: Optional[PlanConfig] = None
|
|
|
|
@dataclass
|
|
class ListUsersResponse:
|
|
"""Data contract for ListUsersResponse."""
|
|
|
|
users: List[*User] = field(default_factory=list)
|
|
orgUsersByUserId: Dict[str, map[string]*OrgUser] = field(default_factory=dict)
|
|
|
|
@dataclass
|
|
class ApplyPlanRequest:
|
|
"""Data contract for ApplyPlanRequest."""
|
|
|
|
# deprecated
|
|
apiKeys: Dict[str, map[string]string] = field(default_factory=dict)
|
|
# deprecated
|
|
openAIBase: str
|
|
# deprecated
|
|
openAIOrgId: str
|
|
authVars: Dict[str, map[string]string] = field(default_factory=dict)
|
|
sessionId: str
|
|
|
|
@dataclass
|
|
class RenamePlanRequest:
|
|
"""Data contract for RenamePlanRequest."""
|
|
|
|
name: str
|
|
|
|
@dataclass
|
|
class GetBuildStatusResponse:
|
|
"""Data contract for GetBuildStatusResponse."""
|
|
|
|
builtFiles: Dict[str, map[string]bool] = field(default_factory=dict)
|
|
isBuildingByPath: Dict[str, map[string]bool] = field(default_factory=dict)
|
|
|
|
@dataclass
|
|
class CreditsLogRequest:
|
|
"""Data contract for CreditsLogRequest."""
|
|
|
|
transactionType: CreditsTransactionType
|
|
planId: str
|
|
sessionId: str
|
|
dayStart: Optional[Time] = None
|
|
month: bool
|
|
|
|
@dataclass
|
|
class CreditsLogResponse:
|
|
"""Data contract for CreditsLogResponse."""
|
|
|
|
transactions: List[*CreditsTransaction] = field(default_factory=list)
|
|
numPages: int
|
|
numPagesMax: bool
|
|
monthStart: Time
|
|
planNamesById: Dict[str, map[string]string] = field(default_factory=dict)
|
|
|
|
@dataclass
|
|
class CreditsSummaryResponse:
|
|
"""Data contract for CreditsSummaryResponse."""
|
|
|
|
balance: Decimal
|
|
totalSpend: Decimal
|
|
monthStart: Time
|
|
byPlanId: Dict[str, Decimal] = field(default_factory=dict)
|
|
planNamesById: Dict[str, map[string]string] = field(default_factory=dict)
|
|
byModelName: Dict[str, Decimal] = field(default_factory=dict)
|
|
byPurpose: Dict[str, Decimal] = field(default_factory=dict)
|
|
cacheSavings: Decimal
|
|
|
|
@dataclass
|
|
class GetBalanceResponse:
|
|
"""Data contract for GetBalanceResponse."""
|
|
|
|
balance: Decimal
|