docs(13-01): complete fingerprint + TenderSource datenkern plan

This commit is contained in:
2026-07-23 08:40:47 +02:00
parent c2a60212fe
commit a547a1d31d
4 changed files with 196 additions and 23 deletions
+21 -18
View File
@@ -2,18 +2,18 @@
gsd_state_version: 1.0
milestone: v1.1
milestone_name: Ausschreibungs-Radar
current_phase: 12
current_phase_name: tender-notifications
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
current_phase: 13
current_phase_name: scraping-adapters-cross-source-dedup
status: executing
stopped_at: Completed 13-01-PLAN.md
last_updated: "2026-07-23T06:40:39.176Z"
last_activity: 2026-07-23
last_activity_desc: Phase 13 execution started
progress:
total_phases: 12
total_phases: 13
completed_phases: 11
total_plans: 56
completed_plans: 55
total_plans: 62
completed_plans: 56
---
# Project State
@@ -23,16 +23,16 @@ progress:
See: .planning/PROJECT.md (updated 2026-07-17)
**Core value:** Eine zentrale Plattform, in der beliebige Workflow-Tools als Module lizenziert, aktiviert und genutzt werden koennen -- ohne zwischen verschiedenen Anwendungen wechseln zu muessen.
**Current focus:** Phase 12 — tender-notifications
**Current focus:** Phase 13 — scraping-adapters-cross-source-dedup
## Current Position
Phase: 12 (tender-notifications) — EXECUTING
Plan: 4 of 4
Status: Phase complete — ready for verification
Last activity: 2026-07-22 — Phase 12 execution started
Phase: 13 (scraping-adapters-cross-source-dedup) — EXECUTING
Plan: 2 of 6
Status: Ready to execute
Last activity: 2026-07-23 — Phase 13 execution started
Progress: [██████████] 98%
Progress: [█████████░] 90%
## Performance Metrics
@@ -90,6 +90,7 @@ Progress: [██████████] 98%
| Phase 12 P02 | 8min | 3 tasks | 5 files |
| Phase 12 P03 | 15min | 2 tasks | 3 files |
| Phase 12 P04 | 12min | 3 tasks | 10 files |
| Phase 13 P01 | 35min | 3 tasks | 6 files |
## Accumulated Context
@@ -191,6 +192,8 @@ Recent decisions affecting current work:
- [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)
- [Phase ?]: Digest-interval selector inline in settings/page.tsx (already 'use client'); instantAlert toggle uses plain checkbox for chip-based SavedSearchBar UI
- [Phase ?]: SCHEMA-03 fingerprint: title+buyer dominant, CPV division, value-bucket, deadline-day, sha256; dedupKey untouched, fingerprint additive
- [Phase ?]: One-time TS backfill scripts run via compiled dist/ output (not raw .ts execution) to keep tsc --noEmit clean
### Pending Todos
@@ -228,7 +231,7 @@ Items acknowledged and carried forward from previous milestone close:
## Session Continuity
Last session: 2026-07-22T07:32:37.021Z
Stopped at: Completed 12-04-PLAN.md
Last session: 2026-07-23T06:40:39.162Z
Stopped at: Completed 13-01-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