dorfteich/apps/web/src
Claude Fable 5 9674c0bae2
Some checks failed
CI / Lint, typecheck, test (push) Successful in 3m41s
CD / Build and push images (push) Successful in 3m44s
CI / Build container images (push) Has been skipped
CD / Deploy to Test (push) Successful in 9s
CD / Smoke tests against Test (push) Successful in 1m18s
CD / Promote to Int (push) Successful in 11s
CI / Auth e2e pack (push) Failing after 2m53s
CI / Import/export fidelity gate (push) Has been skipped
Batch notifications into localized e-mail digests with unsubscribe (#95)
New per-user digestFrequency (hourly default | daily | off) on the
profile and in the settings UI. A scheduler job (15 min cadence) mails a
user once their oldest unread, unmailed notification exceeds the cadence
window: one localized mail per batch, grouped per pond then per page
with actor names and change/comment counts, enqueued through the mail
outbox. Sending marks the batch mailed — never read — and re-checks page
read permission per entry at send time; entries the user can no longer
read are dropped from the mail but still marked handled, so revoked
content cannot queue forever. Every mail carries a signed, single-purpose
unsubscribe link: it only flips the setting to off, renders a session-free
confirmation page, and sets no cookie.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EwZ4jR4KFAPvpjWevfUGX1
2026-07-11 23:37:26 +02:00
..
access Add effective-permissions inspector (#57) 2026-07-10 00:00:27 +02:00
auth Add offline editing: local persistence, PWA shell, offline resolution (#38) 2026-07-08 22:08:55 +02:00
comments Add the comments panel, unread badge, and comment-policy setting (#92) 2026-07-11 22:07:16 +02:00
components Add auth, settings, and admin UI to the SPA 2026-07-05 05:35:56 +02:00
editor Add pageTool plugins with toc and page-index references (#77) 2026-07-11 13:27:30 +02:00
export Add self-service GDPR data export (#68) 2026-07-10 13:01:51 +02:00
files Add non-image attachments with allowlist, SVG policy, and file managers (#61) 2026-07-10 02:52:40 +02:00
fonts Add per-pond fonts: catalog, build, application, and admin UI (#66) 2026-07-10 11:16:29 +02:00
i18n Notify watchers about page changes and comments, with an in-app center (#94) 2026-07-11 23:20:25 +02:00
import Add document import UI in the sidebar (#64) 2026-07-10 09:38:31 +02:00
labels Add label UI: tree management, page assignment, and sidebar filter (#44) 2026-07-09 11:41:42 +02:00
layout Notify watchers about page changes and comments, with an in-app center (#94) 2026-07-11 23:20:25 +02:00
lib Add Markdown copy, paste, and per-page export endpoint (#30) 2026-07-08 12:05:11 +02:00
links Add backlinks panel and phantom-pages view (#48) 2026-07-09 13:05:32 +02:00
members Add pond member management UI (#54) 2026-07-09 20:22:52 +02:00
notifications Notify watchers about page changes and comments, with an in-app center (#94) 2026-07-11 23:20:25 +02:00
offline Add offline editing: local persistence, PWA shell, offline resolution (#38) 2026-07-08 22:08:55 +02:00
pages Batch notifications into localized e-mail digests with unsubscribe (#95) 2026-07-11 23:37:26 +02:00
plugins Add pageTool plugins with toc and page-index references (#77) 2026-07-11 13:27:30 +02:00
search Add search UI with scoping and snippets (#50) 2026-07-09 13:36:06 +02:00
setup Add the first-run setup wizard UI (#81) 2026-07-11 16:05:01 +02:00
styles Notify watchers about page changes and comments, with an in-app center (#94) 2026-07-11 23:20:25 +02:00
watches Add watches: follow pages and ponds with auto-watch preferences (#93) 2026-07-11 22:59:11 +02:00
App.tsx Add Site-Admin system panel with persistent audit trail (#86) 2026-07-11 20:03:05 +02:00
main.tsx Add page trash: soft delete, restore, and purge job (#31) 2026-07-08 12:48:17 +02:00