corvix.db¶
SQLAlchemy ORM models and engine helpers for PostgreSQL persistence.
Classes¶
Shared declarative base for all ORM models. |
|
Registered user with an encrypted GitHub token. |
|
Persisted notification record scoped to a user. |
|
Per-user preferences (theme, browser notifications). |
|
Browser push subscription for a user. |
Functions¶
|
Return DB URL from env, supporting ${URL_ENV}_FILE Docker secret files. |
Module Contents¶
- class corvix.db.Base[source][source]¶
Bases:
sqlalchemy.orm.DeclarativeBaseShared declarative base for all ORM models.
- class corvix.db.User[source][source]¶
Bases:
BaseRegistered user with an encrypted GitHub token.
- created_at: sqlalchemy.orm.Mapped[datetime.datetime][source][source]¶
- updated_at: sqlalchemy.orm.Mapped[datetime.datetime][source][source]¶
- preferences: sqlalchemy.orm.Mapped[UserPreferences | None][source][source]¶
- push_subscriptions: sqlalchemy.orm.Mapped[list[PushSubscription]][source][source]¶
- notification_records: sqlalchemy.orm.Mapped[list[NotificationRecordRow]][source][source]¶
- class corvix.db.NotificationRecordRow[source][source]¶
Bases:
BasePersisted notification record scoped to a user.
- updated_at: sqlalchemy.orm.Mapped[datetime.datetime][source][source]¶
- snapshot_at: sqlalchemy.orm.Mapped[datetime.datetime][source][source]¶
- class corvix.db.UserPreferences[source][source]¶
Bases:
BasePer-user preferences (theme, browser notifications).