Commit Graph

2033 Commits

Author SHA1 Message Date
08df678f6c docs: Add recommended migration plan to RELOCATION.md [30388f42]
This commit updates the RELOCATION.md file to include a detailed,
safer migration plan as a recommended alternative to the initial
proposal. This provides a clear and secure strategy for the
discussion with the IT department.
2026-03-05 15:26:58 +00:00
48ded34055 feat: Create RELOCATION.md with Docker migration requirements [30388f42]\n\nThis commit introduces the RELOCATION.md document, detailing the port\nforwarding, network configurations, and external service dependencies\nrequired for migrating the existing Docker stack from Synology to the\nnew Ubuntu VM (docker1).\n\nThe document is based on a comprehensive analysis of all active Docker\ncontainers on the source system, ensuring all necessary infrastructure\nrequirements are communicated to IT prior to the actual migration. 2026-03-05 14:54:21 +00:00
3d5df09c3b docs(trading-twins): Document Exchange Policy pitfall and finalize code [31988f42] 2026-03-05 14:11:17 +00:00
adb316d225 feat(trading-twins): Finalize Booking Engine & Infrastructure [31988f42]
- Implemented 'Direct Calendar Booking' logic replacing MS Bookings API.
- Integrated Dual-App architecture for Graph API (Sender vs. Reader permissions).
- Added FastAPI feedback server for Teams and Email interactions.
- Configured Nginx proxy for public feedback URL access.
- Updated Docker configuration (ports, env vars, dependencies).
- Finalized documentation in lead-engine/README.md.
2026-03-05 13:52:16 +00:00
71538a0ce2 feat(trading-twins): Implement human-in-the-loop via Teams [31988f42]
- Adds a human-in-the-loop verification step for the Trading Twins lead engine.
- Before sending an email, a notification is sent to a specified Teams channel via webhook.
- The notification is an Adaptive Card that allows a user (Elizabeta Melcer) to stop or immediately trigger the email dispatch within a 5-minute window.
- If no action is taken, the email is sent automatically after the timeout.
- Includes a FastAPI-based feedback server on port 8004 to handle the card actions.
- Adds placeholder for the HTML email signature.
- Successfully tested the Teams webhook connectivity and the full notification/feedback loop in a sandbox environment.
2026-03-05 10:35:50 +00:00
6a6380d1f7 [31188f42] Keine neuen Commits in dieser Session.
Keine neuen Commits in dieser Session.
2026-03-05 09:48:51 +00:00
6fc30325d1 feat(connector): [31188f42] Finalize production optimizations, filtering, and dashboard enhancements 2026-03-05 09:48:34 +00:00
e0cea543bb docs(connector): [31188f42] Comprehensive documentation update with multi-tenant filtering, echo protection, and API lessons 2026-03-05 09:47:47 +00:00
1185142ef4 feat(so-api): [31188f42] Hardcode production vertical mapping IDs 2026-03-05 07:15:18 +00:00
11ee71c76f docs(so-api): [31188f42] Update meeting prep with automation strategy 2026-03-05 06:28:31 +00:00
aad293f6fb docs(so-api): [31188f42] Diagnosis of email sending blockade & cleanup 2026-03-05 06:19:45 +00:00
be00ea0daa [31188f42] Keine neuen Commits in dieser Session.
Keine neuen Commits in dieser Session.
2026-03-04 18:41:35 +00:00
53827918e4 Docs: Final update of SuperOffice Connector README with Noise Reduction, Sync-Runs, and bug resolution notes [31188f42] 2026-03-04 18:41:03 +00:00
ab352d4ee7 Dashboard: Implement status prioritization in Sync-Runs (COMPLETED over SKIPPED) [31188f42] 2026-03-04 18:21:20 +00:00
19fba128f3 [31188f42] Keine neuen Commits in dieser Session.
Keine neuen Commits in dieser Session.
2026-03-04 17:52:03 +00:00
0339aaeb57 [31188f42] Feat: Filterlogik für 'person.changed' Webhooks implementiert.
Nur relevante Änderungen (Jobtitel, Position, UDFs) lösen eine KI-Verarbeitung aus. Irrelevante Änderungen (Telefon, etc.) werden ignoriert, um Loops und unnötige Last zu vermeiden.
2026-03-04 17:51:55 +00:00
880125ea55 [31188f42] Keine neuen Commits in dieser Session.
Keine neuen Commits in dieser Session.
2026-03-04 16:53:01 +00:00
fd42355d85 Docs: Update SuperOffice Connector README with Production details, critical API bug (UDF crash), and Circuit Breaker logic [31188f42] 2026-03-04 16:52:49 +00:00
5f4fb6a407 [31188f42] Keine neuen Commits in dieser Session.
Keine neuen Commits in dieser Session.
2026-03-04 16:50:41 +00:00
9134cdbad2 [31188f42] Keine neuen Commits in dieser Session.
Keine neuen Commits in dieser Session.
2026-03-04 16:46:23 +00:00
f486b981e9 [31188f42] Fix: Stabilität und Resilienz auf Produktion (Cust26720) hergestellt.
- worker.py: Circuit Breaker implementiert (Ignoriert Associate ID 528), um Ping-Pong-Loops zu verhindern.
- worker.py: Resiliente UDF-Behandlung hinzugefügt (behebt 'unhashable type: dict' API-Antwort-Problem).
- tools/: Umfangreiche Test- und Diagnose-Suite hinzugefügt.
Die Anreicherung für 'Bremer Abenteuerland' wurde erfolgreich verifiziert.
2026-03-04 16:46:16 +00:00
81921e144d [31188f42] Keine neuen Commits in dieser Session.
Keine neuen Commits in dieser Session.
2026-03-04 16:32:35 +00:00
d0d176b53b [31188f42] Fix: Default-Umgebung auf 'online3' gesetzt & Test-Suite hinzugefügt.
- config.py: Standard-Environment auf 'online3' geändert, um Auth-Fehler ohne .env zu beheben.
- tools/create_company.py: Skript zum Anlegen von Test-Accounts in Prod.
- tools/get_enriched_company_data.py: Diagnose-Tool für API-Antworten.
- tools/verify_enrichment.py: Verifikations-Skript (zeigt aktuelles UDF-Problem).
2026-03-04 16:30:57 +00:00
64bcc5f13c [31188f42] Fix: Webhook-Registrierung für SuperOffice Prod Umgebung erfolgreich abgeschlossen.
Behobene Probleme:
- WEBHOOK_TOKEN/WEBHOOK_SECRET Verwechslung in webhook_app.py korrigiert.
- NameError in receive_webhook Funktion behoben.
- Sichergestellt, dass Umgebungsvariablen im Docker-Container geladen werden.
2026-03-04 16:18:43 +00:00
a3b1116a9b [2ea88f42] Keine neuen Commits in dieser Session.
Keine neuen Commits in dieser Session.
2026-03-04 15:14:14 +00:00
fdca0e5f54 Docs: Aktualisierung der Dokumentation für Task [2ea88f42] 2026-03-04 15:14:11 +00:00
6b89c68edc feat: Implement Trading Twins Autopilot with Teams integration and फैक्टर-3 overbooking logic [31988f42] 2026-03-04 08:22:28 +00:00
16f80fc81b Dateien nach "docs" hochladen 2026-03-03 14:35:59 +00:00
620e634543 [31888f42] Keine neuen Commits in dieser Session.
Keine neuen Commits in dieser Session.
2026-03-03 10:40:32 +00:00
a789918286 feat: Create draft for DJH Waldbröl case study based on provided input and reference style [31888f42] 2026-03-03 10:28:56 +00:00
e1d06c75cf [31588f42] Keine neuen Commits in dieser Session.
Keine neuen Commits in dieser Session.
2026-03-03 08:37:11 +00:00
e01fdb65dc Docs: Aktualisierung der Dokumentation für Task [31588f42] 2026-03-03 08:37:11 +00:00
ad3770fb00 [31388f42] Doc: Minor update to tasks.md
This commit includes a minor update to the tasks.md file, ensuring all task statuses are accurately reflected.
2026-03-02 19:43:09 +00:00
89d867ee70 [31388f42] Doc: Update README with new features and roadmap
- Updates the main features section in `lead-engine/README.md` to reflect multi-source ingestion, UI indicators, and persistent draft storage.
- Adds a new "Roadmap / Nächste Schritte" section to document open To-Dos and future enhancements.
- Adjusts the version to 1.1 to signify the new capabilities.
2026-03-02 19:40:31 +00:00
afd3b96d08 [31388f42] Fix: Centralize Lead Parsers in ingest.py
This commit finalizes the centralization of lead parsing logic.
- Moves  from  to .
- Moves  from  to .
- Ensures  is imported in  for  generation.
- Corrects all necessary imports in  to use functions from .
This addresses the  and improves modularity.
2026-03-02 19:38:56 +00:00
41a4dc6bab [31388f42] Doc: Update task list in tasks.md 2026-03-02 19:37:06 +00:00
b1081e8cc3 [31388f42] Feat: Persist drafts and enhance UI warnings
This commit introduces two key improvements to the Lead Engine:

1.  **Persistent Email Drafts:**
    - Adds a new  function to .
    - Modifies  to save generated email replies directly to the  column in the database, ensuring they persist across sessions.
    - Removes the previous session-based state for drafts.

2.  **Enhanced UI Visibility:**
    - Adds a warning icon (⚠️) directly to the lead expander's title if a lead is flagged as low-quality, making it easier to spot.
2026-03-02 19:32:07 +00:00
7de116c424 [31388f42] Refactor: Centralize Lead Parsers and Fix ImportError
This commit resolves an `ImportError` by centralizing all lead parsing logic into `ingest.py`.

- **Move `parse_tradingtwins_html`:** The function for parsing TradingTwins HTML emails has been moved from `trading_twins_ingest.py` to `ingest.py`.
- **Move `is_free_mail`:** The utility function `is_free_mail` was also moved from `trading_twins_ingest.py` to `ingest.py` to be shared by all parsers.
- **Update Imports:** The import statement in `trading_twins_ingest.py` is now corrected to import all necessary functions from the central `ingest.py` module.

This refactoring improves code structure, removes redundancy, and fixes the critical bug that prevented the ingest process from running.
2026-03-02 19:21:50 +00:00
f51aeb49d7 [31388f42] Feature: Integrate Roboplanet Contact Forms into Lead Engine
This commit integrates the Roboplanet website contact form submissions into the Lead Engine, allowing them to be processed alongside TradingTwins leads.

Key changes:
- **Database Schema Update (db.py):** Added a new source column to the leads table for tracking lead origin (TradingTwins or Website-Formular). Includes a migration check to safely add the column.
- **Improved HTML Parsing (ingest.py):** Refined the `parse_roboplanet_form` function to accurately extract data from the specific HTML structure of Roboplanet contact form emails.
- **Enhanced Ingestion Logic (trading_twins_ingest.py):**
    - Renamed `fetch_tradingtwins_emails` to `fetch_new_leads_emails` and updated it to fetch emails from both lead sources.
    - Modified `process_leads` to dynamically select the correct parser based on email subject.
    - Ensured `source` field is correctly populated and `is_low_quality` checks are applied for both lead types.
- **UI Enhancement (app.py):** Updated the Streamlit UI to visually distinguish lead types with icons and improved the "Low Quality Lead" warning message.

This feature enables a unified processing pipeline for different lead sources and provides better visibility in the Lead Engine dashboard.
2026-03-02 19:19:01 +00:00
89ef799858 [31388f42] Final session polish: Refined UI, improved ingest parsing, and completed documentation 2026-03-02 15:10:12 +00:00
d10da59138 [31388f42] Update documentation: Append external lead ingestion to MIGRATION_PLAN and create Lead Engine README 2026-03-02 15:08:41 +00:00
9bb209dec8 [31388f42] Restructure Lead Engine UI: vertical layout with 2-column top section for source data 2026-03-02 13:35:18 +00:00
5042bf65b3 [31388f42] Fix NameError in reply generator and implement free-mail quality detection 2026-03-02 13:04:10 +00:00
13ea85cc50 [31388f42] Fix contact sync: separate first/last names and enable CE role mapping 2026-03-02 10:42:51 +00:00
b7a46f2ca0 [31388f42] CE Backend: Add missing POST /api/contacts endpoint to support external contact ingestion 2026-03-02 10:28:07 +00:00
035680b0d0 [31388f42] Fix field naming: Use industry_ai and research_dossier from CE API 2026-03-02 10:20:06 +00:00
aa1a8699e0 [31388f42] Deep CE Sync: Support contact creation and automated enrichment workflow 2026-03-02 10:01:11 +00:00
d08899a7a9 [31388f42] Implement hierarchical search strategy for more robust role discovery 2026-03-02 09:52:51 +00:00
3be69a3019 [31388f42] Explicitly pass SERP_API and GEMINI_API_KEY to lead-engine container 2026-03-02 09:45:07 +00:00
169f7f1d69 [31388f42] Add SerpAPI debugging to UI and relax dotenv loading 2026-03-02 09:40:04 +00:00