field() из dataclasses позволяет настраивать каждое поле: default/default_factory — значение по умолчанию (для list: field(default_factory=list), не []). repr=False — скрыть из __repr__. compare=False — не учитывать в __eq__. hash=None — следовать compare, или задать явно. init=False — не включать в __init__ (задавай в __post_init__). metadata — произвольные данные, доступные через fields(). kw_only=True (3.10+) — поле только keyword. field() решает проблему mutable defaults и даёт гранулярный контроль.