feat: Digest mail notifications - eXIP7.3.0.22 - integration into feature/mips - #648
feat: Digest mail notifications - eXIP7.3.0.22 - integration into feature/mips#648azayati wants to merge 4 commits into
Conversation
…ns - EXO-90072 - eXIP7.3.0.22 (#644) > **Depends on Meeds-io/commons#782** (the legacy `makeDigest` hook becomes a concrete deprecated no-op there). Until it is merged this branch does not compile against the feature branch, hence the draft. Task EXO-90072, spec 50469 §5. ## What - `MailTemplateProvider`: the `makeDigest` override and the `buildDigestMsg` helpers are removed; the mail `CommentTemplateBuilder` only held a `buildDigestMsg` override, so it is gone and `TaskCommentPlugin` uses the plain `TemplateBuilder`. - `PushTemplateProvider`: the two no-op `makeDigest` overrides. - `TaskNotification_en.properties`: the 12 `Notification.digest.{one,more}.*` keys and 5 `Notification.label.*` keys (and, one.other, more.other, task, tasks) read only by the removed code (verified by grep over Java, gtmpl, JS, Vue). The same keys are removed in the 40 locale files of the bundle. - Tests: `testMakeDigest` removed (it only asserted the removed bodies). Untouched: `TaskDigestLinePlugin`, its Kernel declaration and its `digest.*` keys (the new digest of the eXIP), every `makeMessage` path. ## Checked `services` and `webapps` build; the 17 notification tests are green (the DAO container tests fail identically on the base branch locally, stale social snapshot). N2 (addon, no schema, no security). 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com> (cherry picked from commit 5beb448)
467bc66 to
d66e427
Compare
AI review — Round #1 — eXIP 7.3.0.22 Digest mail notifications (task category)Reviewed as one delivery with the 18 sibling PRs, against Tech Spec note 50469 and board 8372, at head 🟢 Nit — Verified conform: category Classification: N1 by aggregation with the eXIP (the diff itself touches no REST/DAO/schema/ACL surface). Compiles only once commons#786 is on Nexus. 🤖 Generated with Claude Code |
…tions - EXO-89484 - eXIP7.3.0.22 Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
eXIP 7.3.0.22 — Digest mail notifications · integration into
feature/mipsThe
taskscategory (assignment, coworker, mention) declared in Kernel XML, its email line plugin, and the removal of the legacymakeDigestoverrides and of the superseded translation keys.The 3 commit(s) replayed from
feature/experience4bb3c0bdfeat: Declare the Tasks digest mail notifications category - EXO-89484 (feat: Declare the Tasks digest mail notifications category - EXO-89484 - eXIP7.3.0.22 #640)5fd77e64feat: Digest email lines for task notifications - EXO-89486_EXO-89487 (feat: Digest email lines for task notifications - EXO-89486_EXO-89487 - eXIP7.3.0.22 #642)d66e427ffix: Remove the legacy digest bodies and keys of the task notifications - EXO-90072 (fix: Remove the legacy digest bodies and keys of the task notifications - EXO-90072 - eXIP7.3.0.22 #644)47 files changed, 339 insertions(+), 1341 deletions(-)
How this branch was built
exip-7.3.0.22-mipsstarts fromorigin/feature/mipsand replays only the commits taggedeXIP7.3.0.22(git cherry-pick -x, the original reference is in every message). The FB version-bump commit (Task-87990) and the commits of the other eXIPs present onfeature/experienceare deliberately left out — nopom.xmlis touched.Merge order
makeDigestis still an abstract method ofcommons-apionfeature/mips; the other 18 PRs remove their overrides, so they only compile once commons is merged: commons#786 first (wait for the Nexus snapshot), then social#6093, then the 17 addons in any order.Classification
N1 for the whole eXIP (Liquibase schema and JPA entities, the commons notification dispatcher, new REST endpoints, mass email sending). Approver ≠ author: this PR must be approved by an Architect / Senior Developer who knows it is N1, not on the AI review alone.
Already validated on
feature/experienceEvery US of the board (project 8372) is "Tested & Validated" by the PO, the legacy engine cleanup (EXO-90072, 19 repositories) included. Full functional test plan: capture, daily and weekly contents, timezones, catch-up at startup, safety cleanup, and non-regression of the instant notifications.
Knowledge: TODO — eng-standards PR to open (
/domain-doccommons + social) before leaving draft🤖 Generated with Claude Code