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
90 lines
2.3 KiB
Python
90 lines
2.3 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 ApiErrorType(str, Enum):
|
|
"""Enum for ApiErrorType."""
|
|
|
|
ApiErrorTypeInvalidToken = "ApiErrorTypeInvalidToken"
|
|
ApiErrorTypeAuthOutdated = "ApiErrorTypeAuthOutdated"
|
|
ApiErrorTypeTrialPlansExceeded = "ApiErrorTypeTrialPlansExceeded"
|
|
ApiErrorTypeTrialMessagesExceeded = "ApiErrorTypeTrialMessagesExceeded"
|
|
ApiErrorTypeTrialActionNotAllowed = "ApiErrorTypeTrialActionNotAllowed"
|
|
ApiErrorTypeContinueNoMessages = "ApiErrorTypeContinueNoMessages"
|
|
ApiErrorTypeCloudInsufficientCredits = "ApiErrorTypeCloudInsufficientCredits"
|
|
ApiErrorTypeCloudMonthlyMaxReached = "ApiErrorTypeCloudMonthlyMaxReached"
|
|
ApiErrorTypeCloudSubscriptionPaused = "ApiErrorTypeCloudSubscriptionPaused"
|
|
ApiErrorTypeCloudSubscriptionOverdue = "ApiErrorTypeCloudSubscriptionOverdue"
|
|
ApiErrorTypeOther = "ApiErrorTypeOther"
|
|
|
|
|
|
ApiErrorType = str
|
|
|
|
@dataclass
|
|
class AuthHeader:
|
|
"""Data contract for AuthHeader."""
|
|
|
|
token: str
|
|
orgId: str
|
|
hash: str
|
|
|
|
@dataclass
|
|
class TrialPlansExceededError:
|
|
"""Data contract for TrialPlansExceededError."""
|
|
|
|
maxPlans: int
|
|
|
|
@dataclass
|
|
class TrialMessagesExceededError:
|
|
"""Data contract for TrialMessagesExceededError."""
|
|
|
|
maxMessages: int
|
|
|
|
@dataclass
|
|
class BillingError:
|
|
"""Data contract for BillingError."""
|
|
|
|
hasBillingPermission: bool
|
|
isTrial: bool
|
|
|
|
@dataclass
|
|
class ApiError:
|
|
"""Data contract for ApiError."""
|
|
|
|
type_: ApiErrorType
|
|
status: int
|
|
# only used for trial plans exceeded error
|
|
msg: str
|
|
# only used for trial messages exceeded error
|
|
trialPlansExceededError: Optional[TrialPlansExceededError] = None
|
|
# only used for billing errors
|
|
trialMessagesExceededError: Optional[TrialMessagesExceededError] = None
|
|
billingError: Optional[BillingError] = None
|
|
|
|
@dataclass
|
|
class ClientAccount:
|
|
"""Data contract for ClientAccount."""
|
|
|
|
isCloud: bool
|
|
host: str
|
|
email: str
|
|
userName: str
|
|
userId: str
|
|
token: str
|
|
isLocalMode: bool
|
|
# legacy field
|
|
isTrial: bool
|
|
|
|
@dataclass
|
|
class ClientAuth:
|
|
"""Data contract for ClientAuth."""
|
|
|
|
orgId: str
|
|
orgName: str
|
|
orgIsTrial: bool
|
|
integratedModelsMode: bool
|