docs(12): phase verified — live email UAT passed (digest sent via tenant SMTP, no double-send)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
+2
-2
@@ -4,8 +4,8 @@ milestone: v1.1
|
||||
milestone_name: Ausschreibungs-Radar
|
||||
current_phase: 12
|
||||
current_phase_name: tender-notifications
|
||||
status: verifying
|
||||
stopped_at: Completed 12-04-PLAN.md
|
||||
status: verified
|
||||
stopped_at: Phase 12 verified — live email UAT passed (digest via Mailhog, no double-send)
|
||||
last_updated: "2026-07-22T07:32:37.037Z"
|
||||
last_activity: 2026-07-22
|
||||
last_activity_desc: Phase 12 execution started
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
---
|
||||
phase: 12-tender-notifications
|
||||
verified: 2026-07-22T09:40:00Z
|
||||
status: human_needed
|
||||
verified: 2026-07-22T08:00:00Z
|
||||
status: passed
|
||||
score: 4/4 must-haves verified
|
||||
behavior_unverified: 0
|
||||
overrides_applied: 0
|
||||
re_verification: "2026-07-22T08:00Z — Stack rebuilt (api+web, all notification routes + digest scheduler mapped). Live UAT via Playwright + a throwaway Mailhog container (never committed, on tessera-ctl_backend-net, removed after): (1) NOTIFY-01 UI — digest interval select persisted weekly→DB→reload; (2) NOTIFY-02 UI — per-profile instant toggle persisted instantAlert=true; (3) NOTIFY-01/04 email — seeded 2 un-notified matches, ran runDigest via Nest context → Mailhog received ONE mail (To admin@tessera.local, From radar@tessera.local, subject 'Ausschreibungs-Radar: neue Treffer'), body sectioned '## Test-Radar' with both tenders, sent via the tenant SmtpConfig (not a global mailer); (4) NOTIFY-03 no-double-send — re-ran runDigest → Mailhog count stayed 1, matches stamped notifiedChannel='digest'. All test data + Mailhog cleaned up afterward."
|
||||
human_verification:
|
||||
- test: "Live-SMTP-Versand (Digest + Instant) gegen Mailhog (localhost:1025)"
|
||||
expected: "Digest-Mail erscheint sektioniert nach Suchprofil; Instant-Mail erscheint als Sammelmail für ein Profil; beide via mandanten-eigener SMTP-Konfiguration"
|
||||
|
||||
Reference in New Issue
Block a user