aleksey
|
12274f9ed0
|
feat(notify): Web Push subscriptions and email/push prefs.
CI / test (push) Successful in 7m43s
CI / deploy-ift (push) Successful in 3m33s
CI / e2e-ift (push) Successful in 1m28s
CI / deploy-stage (push) Failing after 3m40s
CI / e2e-stage (push) Has been skipped
Prefs in user.preferences; push_subscription table; VAPID send on
reminder/waitlist. Refs EventHub/EventHubBack#75
|
2026-08-15 20:19:44 +03:00 |
|
aleksey
|
0a1e55e036
|
feat(email): HTTP API transport via Resend (fallback SMTP).
CI / test (push) Successful in 7m40s
CI / deploy-ift (push) Successful in 3m29s
CI / e2e-ift (push) Successful in 1m27s
CI / deploy-stage (push) Failing after 3m45s
CI / e2e-stage (push) Has been skipped
Outbound SMTP ports are often blocked on VPS; EMAIL_TRANSPORT=http_api
sends via Resend HTTPS (Brevo optional). OpenSMTPd/SMTP remain available.
|
2026-08-14 23:54:10 +03:00 |
|
aleksey
|
29111cd514
|
feat(upload): avatar and calendar cover via local disk storage.
POST /v1/user/me/avatar and /v1/calendars/:id/cover; GET /v1/media;
UPLOAD_DIR on eventhub-data volume; MIME/size limits.
Refs EventHub/EventHubBack#71
Refs EventHub/EventHubSpec#8
|
2026-08-14 21:27:34 +03:00 |
|
aleksey
|
15ae8d4426
|
feat(email): send booking reminders before event start.
Job process_reminders in subscription_worker; REMINDER_LEAD_HOURS window;
CalenTIQ email + in-app event_reminder; idempotent reminder_sent.
Refs EventHub/EventHubBack#70
|
2026-08-14 20:59:38 +03:00 |
|
aleksey
|
69ee037d45
|
feat(email): SMTP via gen_smtp and CalenTIQ HTML templates. Refs EventHub/EventHubBack#68
|
2026-08-14 18:51:09 +03:00 |
|
aleksey
|
21a2a39746
|
Co-authored-by:
CI / test (push) Successful in 8m23s
|
2026-07-11 14:56:18 +03:00 |
|
aleksey
|
f79264ece9
|
Co-authored-by:
CI / test (push) Successful in 10m55s
|
2026-07-11 14:33:53 +03:00 |
|
aleksey
|
cf8e6bcc07
|
Fail-fast secrets in stage/prod via EVENTHUB_ENV. Refs EventHub/EventHubBack#25
|
2026-07-07 19:52:04 +03:00 |
|
aleksey
|
38a299e5b9
|
CI/CD пайплайн
|
2026-06-05 22:11:08 +03:00 |
|