first commit

This commit is contained in:
Chris
2026-03-23 20:23:58 +08:00
commit 74d612aca1
3193 changed files with 692056 additions and 0 deletions

View File

@@ -0,0 +1,69 @@
from __future__ import annotations
from dataclasses import dataclass
from datetime import datetime
from typing import Any
@dataclass(slots=True)
class Site:
id: str
site_key: str
name: str
primary_domain: str
status: str
settings: dict[str, Any] | list[Any] | None = None
@dataclass(slots=True)
class Experiment:
id: str
site_id: str
experiment_key: str
name: str
module_type: str
status: str
start_at: datetime | None = None
end_at: datetime | None = None
targeting_config: dict[str, Any] | list[Any] | None = None
@dataclass(slots=True)
class Variant:
id: str
experiment_id: str
variant_key: str
name: str
traffic_weight: int
content_config: dict[str, Any] | list[Any] | None = None
@dataclass(slots=True)
class ExperimentRelease:
id: str
experiment_id: str
version_no: int
status: str
runtime_payload: dict[str, Any] | list[Any] | None = None
@dataclass(slots=True)
class Goal:
id: str
site_id: str
goal_key: str
name: str
goal_type: str
match_rule: dict[str, Any] | list[Any] | None = None
@dataclass(slots=True)
class SdkConfig:
id: str
site_id: str
sdk_key: str
status: str
origin_url: str | None = None
cdn_url: str | None = None
sdk_config: dict[str, Any] | list[Any] | None = None