Parent
Spec: #329.
What to build
The edges that make label addition production-shaped rather than demo-shaped:
- One
StrEnum shared by several models reconciles its type exactly once per run — clean boot output, clean catalog history.
- The single-deploy shape "add a member, add a new column defaulting to it" works in one
migrate_updates=True boot: the label lands (committed, autocommit pre-pass) before the table plan that references it.
- Appended labels take end-of-order positions in the Postgres enum ordering regardless of Python declaration order — pinned as documented behavior, since
ORDER BY on an enum column follows database order.
- A second boot against a reconciled schema plans zero enum DDL: label addition is idempotent and warm reconnects stay fast.
Acceptance criteria
Blocked by
Parent
Spec: #329.
What to build
The edges that make label addition production-shaped rather than demo-shaped:
StrEnumshared by several models reconciles its type exactly once per run — clean boot output, clean catalog history.migrate_updates=Trueboot: the label lands (committed, autocommit pre-pass) before the table plan that references it.ORDER BYon an enum column follows database order.Acceptance criteria
ORDER BYon the enum columnmigrate_updates=Trueboot emits no enum statementsBlocked by