Commit Graph

70 Commits

Author SHA1 Message Date
f36e9902e8 feat(connector): [31188f42] Finalize production optimizations, filtering, and dashboard enhancements 2026-03-05 09:48:34 +00:00
63a5d84791 docs(connector): [31188f42] Comprehensive documentation update with multi-tenant filtering, echo protection, and API lessons 2026-03-05 09:47:47 +00:00
9670bf058d feat(so-api): [31188f42] Hardcode production vertical mapping IDs 2026-03-05 07:15:18 +00:00
ab3433c3e3 docs(so-api): [31188f42] Diagnosis of email sending blockade & cleanup 2026-03-05 06:19:45 +00:00
720ca0fc72 [31188f42] Keine neuen Commits in dieser Session.
Keine neuen Commits in dieser Session.
2026-03-04 18:41:35 +00:00
654758d2f8 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
fb37d4f51f Dashboard: Implement status prioritization in Sync-Runs (COMPLETED over SKIPPED) [31188f42] 2026-03-04 18:21:20 +00:00
36be6ee156 [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
bef69b8a19 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
cd62f359c5 [31188f42] Keine neuen Commits in dieser Session.
Keine neuen Commits in dieser Session.
2026-03-04 16:46:23 +00:00
5362fd511c [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
d710abd35b [31188f42] Keine neuen Commits in dieser Session.
Keine neuen Commits in dieser Session.
2026-03-04 16:32:35 +00:00
64f730fc1a [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
65d4e78257 [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
088f440d52 [2ea88f42] Keine neuen Commits in dieser Session.
Keine neuen Commits in dieser Session.
2026-03-04 15:14:14 +00:00
e3adee7776 Docs: Aktualisierung der Dokumentation für Task [31588f42] 2026-03-03 08:37:11 +00:00
fc481c2d0e [31588f42] docs: add Selections strategy to README 2026-02-28 18:42:22 +00:00
e65026d32e [31588f42] docs: document SuperOffice Product Families (Robot Models) 2026-02-28 18:39:34 +00:00
23f2618115 [31588f42] docs: document SuperOffice Service/Ticket module and categories 2026-02-28 18:34:33 +00:00
27b8bae905 [31588f42] fix: update Sale creation with Roboplanet-specific ID 14 and mandatory Saledate 2026-02-28 18:15:45 +00:00
30c5172ed0 [31588f42] feat: implement SuperOffice Sales API prototype and fix auth docs 2026-02-28 18:06:12 +00:00
4eccb55eab [2ff88f42] Implementierung E-Mail-Dokument-Automatisierung und technischer Check der Versand-Blocker. Workaround via SuperOffice-Aktivitäten etabliert.
Implementierung E-Mail-Dokument-Automatisierung und technischer Check der Versand-Blocker. Workaround via SuperOffice-Aktivitäten etabliert.
2026-02-28 14:25:25 +00:00
176e1f89f4 docs(email-strategy): Add detailed technical analysis of sending blockers 2026-02-28 14:20:47 +00:00
76452df6ab fix(email-api): Implement robust content upload and activity-based workaround 2026-02-28 13:51:58 +00:00
22c1daa7d7 docs(email-api): Update email test script with manual sending instructions and link 2026-02-28 13:46:24 +00:00
bbab1d70ff feat(email-api): Implement email document creation via SuperOffice API (no SMTP) 2026-02-28 13:42:34 +00:00
7971a02d1a Finalize SuperOffice production migration and multi-campaign architecture (v1.8) 2026-02-27 15:09:52 +00:00
90b7cbcf75 docs: Add post-migration to-do checklist to README [31188f42] 2026-02-26 07:23:53 +00:00
e27cf4b29b docs: Add Lessons Learned for Production Migration in README [31188f42] 2026-02-26 07:16:41 +00:00
3baf63eafb fix: Refactor SuperOfficeClient to support production environments and global token endpoints [31188f42] 2026-02-26 07:15:16 +00:00
878e555b5c docs: Update SuperOffice endpoint to production (online3) [31188f42] 2026-02-26 07:07:15 +00:00
4e40d5e0ad Refactor API calls to use PATCH instead of PUT for cleaner updates (SuperOffice Certification) 2026-02-25 17:21:36 +00:00
391b74a6af docs: update readme with api optimization and getAllRows lessons learned [31188f42] 2026-02-24 13:07:56 +00:00
7c686ad093 fix(so-worker): robust id extraction from webhook fieldvalues & safe api access [31188f42] 2026-02-24 12:56:18 +00:00
7e81c8778f refactor(so-connector): optimize api calls with $select and filtering [31188f42] 2026-02-24 12:38:14 +00:00
41920b6a84 feat: Implement unsubscribe link for marketing automation [31188f42]
This commit introduces a new unsubscribe feature to allow contacts to opt-out
from marketing automation.

Key changes include:
- Database schema migration: Added  (UUID) to the  model.
- Data population: Implemented a script to assign unique tokens to existing contacts.
- API endpoint: Created a public GET  endpoint to handle opt-out requests.
- Automation: New contacts automatically receive an unsubscribe token upon creation.
- Integration: The full unsubscribe link is now returned via the provisioning API
  for storage in SuperOffice UDFs (ProgID: SuperOffice:9).
- Documentation: Updated  and
  to reflect the new feature and its integration requirements.
- Added  for quick overview and next steps.
2026-02-24 12:18:13 +00:00
0fd67ecc91 [31188f42] einfügen
einfügen
2026-02-24 08:40:38 +00:00
e2c0323db2 [2ff88f42] Finalize Pains & Gains Phase 2 + Matrix Engine v3.2 (Ops Secondary Logic) 2026-02-23 10:53:13 +00:00
acd2062d0b [30f88f42] einfügen
einfügen
2026-02-22 19:22:39 +00:00
0d294cd0cc [30e88f42] Einfügen
Einfügen
2026-02-22 14:31:00 +00:00
11d2bc03bf [30e88f42] ✦ In dieser Sitzung haben wir den End-to-End-Test der SuperOffice-Schnittstelle erfolgreich von der automatisierten Simulation bis zum produktiven Live-Lauf
✦ In dieser Sitzung haben wir den End-to-End-Test der SuperOffice-Schnittstelle erfolgreich von der automatisierten Simulation bis zum produktiven Live-Lauf
  mit Echtdaten abgeschlossen.
2026-02-22 08:20:28 +00:00
e47aa383c7 Enhance: Address/VAT Sync & Infrastructure Hardening [30e88f42]
- Implemented Address (City) and VAT (OrgNumber) sync back to SuperOffice.
- Hardened Infrastructure: Removed Pydantic dependency in config for better Docker compatibility.
- Improved SuperOffice Client error logging and handled empty SO_ENVIRONMENT variables.
- Updated Matrix Generator: Switched to gemini-2.0-flash, added industry filtering, and robust JSON parsing.
- Updated Documentation with session findings and troubleshooting steps.
2026-02-21 21:26:57 +00:00
4d48b2689b Feat: End-to-End Test & Bidirectional Vertical Sync [30e88f42]
- Implemented comprehensive E2E test  covering full roundtrip and manual overrides.
- Enhanced  to detect manual Vertical changes in SuperOffice and sync them to Company Explorer.
- Updated  to handle industry overrides from CRM and auto-persist Person/Contact data for robust cascade updates.
2026-02-21 20:05:25 +00:00
794a113ee5 [2ff88f42] feat(GTM-Engine): Finalize Dual Opener Strategy and E2E Tests
Completed the full GTM Engine implementation:\n\n- Implemented 'Dual Opener' (Primary/Secondary) generation in ClassificationService and DB.\n- Updated Frontend Inspector to display both openers.\n- Hardened analysis process (fixed duplicate scrapes, improved metric prompt).\n- Created robust, API-level E2E test script (test_opener_api.py).\n- Created a standalone health_check.py for diagnostics.\n- Updated all relevant documentation (README, GEMINI.md).
2026-02-20 15:50:53 +00:00
23d0c695d6 [2ff88f42] feat(GTM-Engine): Implement Dual Opener Strategy & Harden Analysis
Completed the GTM engine setup:\n\n- Implemented 'Dual Opener' generation (Primary/Secondary) in ClassificationService.\n- Migrated DB to support two opener fields.\n- Updated API and Frontend to handle and display both openers.\n- Fixed bug creating duplicate website_scrape entries.\n- Hardened metric extraction by improving the LLM prompt and adding content length checks.
2026-02-20 15:38:06 +00:00
653bd79e1f [2ff88f42] Finalize Verticals Pains/Gains in Notion & Update Docs
Updated all Notion Verticals with sharpened Pains/Gains based on internal strategy (Ops vs Infra focus). Updated SuperOffice Connector README to reflect the 'Static Magic' architecture.
2026-02-20 13:24:13 +00:00
027d114d08 [2ff88f42] Finalize SuperOffice Integration: Enhanced Persona model with Influencer role, switched Matrix Generator to Gemini, implemented Noise Reduction for Webhooks, and added E2E test scenarios. 2026-02-20 10:55:57 +00:00
405a7656f6 [2ff88f42] Refine Webhook Filter: Restrict to Strategic Fields (Name, URL, JobTitle, Position) only 2026-02-20 09:36:34 +00:00
f400bed368 [2ff88f42] Implement Webhook Noise Reduction: Filter irrelevant events (Sale, Project) and minor field changes 2026-02-20 08:15:19 +00:00
510112b238 [2ff88f42] Finalize SuperOffice Connector: Centralized Config, Added Position/Role Mapping Logic, and Discovery Tools 2026-02-20 07:20:26 +00:00