编写 Python dataclass
io.github.PostHog/posthog/writing-dataclasses
PostHog 中 Python dataclass 的内部规则:何时选用它而非元组或 `dict[str, Any]`、用哪个装饰器(`posthog.dataclasses` 的 `@frozen`)、如何命名、构造、消费与演进、如何让密钥不进入 `repr`,以及函数何时应接受 dataclass 而非拆开的字段。在新增或修改 dataclass、让函数返回或传递多个值、转换元组/字典负载、决定 `frozen=`/`slots=`/`kw_only=`,或把门面契约 DTO 传入内部层时使用。不适用于作 HogQL/查询 schema 的 pydantic 模型、DRF 序列化器或 Django 模型。