docs(12-03): complete instant-alert dispatch plan

This commit is contained in:
2026-07-22 09:23:21 +02:00
parent 5395ce6b6d
commit 1a0cd375c2
4 changed files with 167 additions and 12 deletions
+9 -7
View File
@@ -5,15 +5,15 @@ milestone_name: Ausschreibungs-Radar
current_phase: 12
current_phase_name: tender-notifications
status: executing
stopped_at: Completed 12-02-PLAN.md
last_updated: "2026-07-22T07:16:13.211Z"
stopped_at: Completed 12-03-PLAN.md
last_updated: "2026-07-22T07:23:12.233Z"
last_activity: 2026-07-22
last_activity_desc: Phase 12 execution started
progress:
total_phases: 12
completed_phases: 10
total_plans: 56
completed_plans: 53
completed_plans: 54
---
# Project State
@@ -28,11 +28,11 @@ See: .planning/PROJECT.md (updated 2026-07-17)
## Current Position
Phase: 12 (tender-notifications) — EXECUTING
Plan: 3 of 4
Plan: 4 of 4
Status: Ready to execute
Last activity: 2026-07-22 — Phase 12 execution started
Progress: [██████████] 95%
Progress: [██████████] 96%
## Performance Metrics
@@ -88,6 +88,7 @@ Progress: [██████████] 95%
| Phase 11 P06 | 35min | 3 tasks | 12 files |
| Phase 12 P01 | 35min | 3 tasks | 7 files |
| Phase 12 P02 | 8min | 3 tasks | 5 files |
| Phase 12 P03 | 15min | 2 tasks | 3 files |
## Accumulated Context
@@ -187,6 +188,7 @@ Recent decisions affecting current work:
- [Phase ?]: Delta-only matching (no backfill/suppression table) structurally prevents backfill-flood for new saved-search profiles (12-01, D-07)
- [Phase ?]: TenderMailService swallows missing-SmtpConfig and send-failure into a single boolean (never throws) so the digest cron gets one clean success signal for stamping notifiedAt
- [Phase ?]: TenderDigestScheduler.runDigest(now) takes an injectable clock parameter for testable Monday-only weekly-digest gating
- [Phase ?]: Instant-Dispatch filtert die bereits geladenen savedSearches (kein zweiter Query); notifiedAt/channel='instant' nur nach Erfolg gestempelt — identisches Gate wie Digest (D-06)
### Pending Todos
@@ -224,7 +226,7 @@ Items acknowledged and carried forward from previous milestone close:
## Session Continuity
Last session: 2026-07-22T07:16:13.196Z
Stopped at: Completed 12-02-PLAN.md
Last session: 2026-07-22T07:23:12.215Z
Stopped at: Completed 12-03-PLAN.md
Resume file: None
Last activity: 2026-07-14 - Built LDAP per-user exclude/denylist filter (9d1323f), migration applied on live DB, verified via Playwright: sync deactivated 4 excluded service accounts (administrator/krbtgt/guest/dns-ldap), 2 real LDAP users stay active, 0 wrongly created