Skip to content

feat: Digest mail notifications - eXIP7.3.0.22 - integration into feature/mips - #648

Open
azayati wants to merge 4 commits into
feature/mipsfrom
exip-7.3.0.22-mips
Open

feat: Digest mail notifications - eXIP7.3.0.22 - integration into feature/mips#648
azayati wants to merge 4 commits into
feature/mipsfrom
exip-7.3.0.22-mips

Conversation

@azayati

@azayati azayati commented Sep 10, 2026

Copy link
Copy Markdown
Member

eXIP 7.3.0.22 — Digest mail notifications · integration into feature/mips

The tasks category (assignment, coworker, mention) declared in Kernel XML, its email line plugin, and the removal of the legacy makeDigest overrides and of the superseded translation keys.

The 3 commit(s) replayed from feature/experience

47 files changed, 339 insertions(+), 1341 deletions(-)

How this branch was built

exip-7.3.0.22-mips starts from origin/feature/mips and replays only the commits tagged eXIP7.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 on feature/experience are deliberately left out — no pom.xml is touched.

Merge order

makeDigest is still an abstract method of commons-api on feature/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/experience

Every 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-doc commons + social) before leaving draft

🤖 Generated with Claude Code

azayati and others added 3 commits September 10, 2026 11:27
…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)
@azayati
azayati requested a review from boubaker September 10, 2026 09:54
@azayati
azayati marked this pull request as ready for review September 10, 2026 09:54
@azayati

azayati commented Sep 10, 2026

Copy link
Copy Markdown
Member Author

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 d66e427f.

🟢 Nitnotification-configuration.xml:389: the category <description> says "assignments, due dates, comments and mentions" while the category covers TaskAssignPlugin, TaskCoworkerPlugin, TaskMentionedPlugin only. Fix: "assignments, coworkers and mentions".

Verified conform: category tasks, order 40, the three spec plugin ids (matching the real ID constants); TaskDigestLinePlugin reads taskId/creator/taskUrl — the very keys the plugins write — returns no line on a vanished task or a bad id, and produces an absolute URL (stored http link or the permanent-link format); digest.category.tasks and the three digest.line.* keys in TaskNotification_en.properties, text only, wording == board US06/US07; the legacy Notification.digest.* block and the makeDigest/buildDigestMsg bodies and their tests are removed; 4 line-plugin tests.

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. Knowledge: line still TODO.

🤖 Generated with Claude Code

…tions - EXO-89484 - eXIP7.3.0.22

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant