Commit Graph

121 Commits

Author SHA1 Message Date
bsiggel
cc70189513 fix: replace log_operation() with ctx.logger in calendar_sync_all_step – comply with INDEX.md logging standard 2026-03-31 07:03:04 +00:00
bsiggel
1f302e0de8 fix: replace log_operation() with ctx.logger/context.logger in calendar_sync_event_step – comply with INDEX.md logging standard 2026-03-31 07:02:41 +00:00
bsiggel
c5299b2889 fix: replace step_logger with ctx.logger in beteiligte_sync_event_step – use consistent context-aware logging 2026-03-31 07:00:59 +00:00
bsiggel
3ade3fc3cc fix: add try/finally safety net for lock release in beteiligte_sync handler – guarantees Redis key cleanup on any exit path 2026-03-31 07:00:35 +00:00
bsiggel
814e869ca0 fix: add try/finally for lock release in bankverbindungen_sync handler – prevents 15-min lock leaks on exception 2026-03-31 06:59:03 +00:00
bsiggel
7a0ebb949d fix: replace return dicts with raise in calendar_sync_all queue handler – enables Motia retry on failure 2026-03-31 06:57:17 +00:00
bsiggel
4ed6259ed9 fix: remove duplicate akte_sync_event_step (src/steps/akte/) – same queue trigger as crm/akte version causes double processing 2026-03-31 06:55:54 +00:00
bsiggel
141eabae6d feat(sync): Enhance metadata synchronization for unchanged files in Advoware sync process 2026-03-31 06:26:33 +00:00
bsiggel
52c4f84b44 feat(ragflow): Remove unsupported MIME types from the upload filter 2026-03-31 06:01:54 +00:00
bsiggel
a5ca63ea52 feat(ragflow): Add MIME type filter to skip unsupported file uploads 2026-03-31 06:01:10 +00:00
bsiggel
b6a0bd8d80 Refactor code structure for improved readability and maintainability 2026-03-31 05:58:20 +00:00
bsiggel
0516648bc0 feat(config): Increase default timeout for RestApiModule to 300000 ms
feat(dependencies): Add langfuse for enhanced observability and tracing
feat(uv.lock): Include langfuse package details in lock file
2026-03-30 22:07:51 +00:00
bsiggel
b4ff370823 feat(graphiti): Integrate Langfuse Tracer for enhanced monitoring and tracing of Graphiti operations
feat(graphiti): Define entity and edge types in new graphiti_schema for structured data extraction
feat(graphiti): Enhance ingest_episode_event_step with schema integration for improved episode processing
2026-03-30 22:00:53 +00:00
bsiggel
e255ae1263 feat(graphiti): Implement Graphiti client and related steps for episode ingestion and querying
- Added `graphiti_client.py` to manage the Graphiti client as a singleton.
- Created `ingest_episode_event_step.py` to handle episode ingestion from HTTP webhook events.
- Implemented `ingest_episode_step.py` for validating and enqueuing episode payloads via a POST request.
- Developed `query_graph_step.py` for performing semantic searches in the Graphiti Knowledge-Graph.
- Introduced an `__init__.py` file for the graphiti steps module.
2026-03-30 08:25:49 +00:00
bsiggel
1271e38f2d feat(cron): Update graphParsingStatus documentation and refine query conditions for new Graph builds 2026-03-27 11:29:06 +00:00
bsiggel
88c9df5995 feat(cron): Add RAGflow Graph Build Cron for periodic status updates and new builds 2026-03-27 11:27:09 +00:00
bsiggel
a2181a25fc feat(sync): Implement RAGflow Parsing Status Poller for syncing document statuses with EspoCRM 2026-03-27 10:12:52 +00:00
bsiggel
c20baeb21a feat(sync): Add EML to TXT conversion for improved document handling in RAGflow sync 2026-03-27 01:23:52 +00:00
bsiggel
61113d8f3d feat(sync): Update RAGFlow dataset creation to use stable EspoCRM-ID and improve logging 2026-03-27 00:52:48 +00:00
bsiggel
9bd62fc5ab feat(sync): Enhance Akte Sync with RAGflow support and improve error handling 2026-03-26 23:09:42 +00:00
bsiggel
1cd8de8574 Refactor code structure for improved readability and maintainability 2026-03-26 22:24:07 +00:00
bsiggel
9b2fb5ae4a feat: Implement AI Knowledge Sync Utilities and RAGFlow Service
- Added `aiknowledge_sync_utils.py` for provider-agnostic synchronization logic for CAIKnowledge entities, supporting both xAI and RAGFlow.
- Introduced lifecycle management for CAIKnowledge entities including states: new, active, paused, and deactivated.
- Implemented change detection using Blake3 hash for efficient document synchronization.
- Created `ragflow_service.py` to handle dataset and document management with RAGFlow API.
- Added daily cron job in `aiknowledge_daily_cron_step.py` to synchronize active CAIKnowledge entities with unclean or failed statuses.
- Developed `aiknowledge_sync_event_step.py` to process synchronization events from webhooks and cron jobs.
2026-03-26 21:38:42 +00:00
bsiggel
439101f35d feat(sync): Update document preview trigger to use enqueue method and improve content change detection for xAI re-sync 2026-03-26 16:17:52 +00:00
bsiggel
5e9c791a1b feat(sync): Remove unused file renaming method from XAIService 2026-03-26 14:33:34 +00:00
bsiggel
6682b0bd1f feat(sync): Remove redundant file renaming logic after upload when hash matches 2026-03-26 14:32:04 +00:00
bsiggel
1d0bd9d568 feat(upload): Update document metadata handling to exclude empty fields during upload 2026-03-26 14:26:06 +00:00
bsiggel
c9bdd021e4 feat(sync): Implement orphan cleanup for xAI documents without EspoCRM equivalents 2026-03-26 14:20:33 +00:00
bsiggel
1e202a6233 feat(sync): Update xAI collection file addition endpoint and improve documentation 2026-03-26 13:22:14 +00:00
bsiggel
459fa41033 feat(sync): Refactor Akte sync status handling and remove deprecated event step 2026-03-26 13:06:32 +00:00
bsiggel
52cee5bd16 feat(upload): Enhance document metadata handling with additional fields for better context 2026-03-26 12:51:04 +00:00
bsiggel
b320f01255 feat(sync): Enhance xAI sync process with collection verification and creation logic 2026-03-26 12:42:35 +00:00
bsiggel
a6dc708954 feat(espocrm): Implement automatic pagination for related records and enforce API max page size 2026-03-26 12:41:45 +00:00
bsiggel
d9193f7993 feat(sync): Update Akte sync process to remove unused entity ID queue and streamline processing 2026-03-26 11:22:04 +00:00
bsiggel
ef32373dc9 feat(sync): Enhance Akte sync process with batch processing and retry logic for failed events 2026-03-26 11:13:37 +00:00
bsiggel
52114a3c95 feat(webhooks): Update Akte webhook handlers to trigger immediate synchronization 2026-03-26 10:16:33 +00:00
bsiggel
bf02b1a4e1 feat(webhooks): Implement Akte webhooks for create, delete, and update operations 2026-03-26 10:16:27 +00:00
bsiggel
3497deeef7 feat: Add Akte Sync Event Handler for unified synchronization across backends 2026-03-26 10:14:39 +00:00
bsiggel
0c97d97726 feat(webhooks): Add webhook handlers for Beteiligte and Document entities
- Implemented create, update, and delete webhook handlers for Beteiligte.
- Implemented create, update, and delete webhook handlers for Document entities.
- Added logging and error handling for each webhook handler.
- Created a universal step for generating document previews.
- Ensured payload validation and entity ID extraction for batch processing.
2026-03-26 10:07:42 +00:00
bsiggel
3459b9342f feat: Implement Akte webhook for EspoCRM to queue entity IDs for synchronization
fix: Refactor Akte sync logic to handle multiple Redis queues and improve logging
refactor: Enhance parameter flattening for EspoCRM API calls
2026-03-26 09:48:46 +00:00
bsiggel
b4d35b1790 Refactor Akte and Document Sync Logic
- Removed the old VMH Document xAI Sync Handler implementation.
- Introduced new xAI Upload Utilities for shared upload logic across sync flows.
- Created a unified Akte sync structure with cron polling and event handling.
- Implemented Akte Sync Cron Poller to manage pending Aktennummern with a debounce mechanism.
- Developed Akte Sync Event Handler for synchronized processing across Advoware and xAI.
- Enhanced logging and error handling throughout the new sync processes.
- Ensured compatibility with existing Redis and EspoCRM services.
2026-03-26 01:23:16 +00:00
bsiggel
86ec4db9db feat: Implement Advoware Document Sync Handler
- Added advoware_document_sync_step.py to handle 3-way merge sync for documents.
- Introduced locking mechanism for per-Akte synchronization to allow parallel processing.
- Integrated data fetching from EspoCRM, Windows files, and Advoware history.
- Implemented 3-way merge logic for document synchronization and metadata updates.
- Triggered document preview generation for new/changed documents.

feat: Create Shared Steps Module

- Added shared/__init__.py for shared steps across multiple modules.
- Introduced generate_document_preview_step.py for generating document previews.
- Implemented logic to download documents, generate previews, and upload to EspoCRM.

feat: Add VMH Document xAI Sync Handler

- Created document_xai_sync_step.py to manage document synchronization with xAI collections.
- Handled create, update, and delete actions for documents in EspoCRM.
- Integrated logic for triggering preview generation and managing xAI collections.
- Implemented error handling and logging for synchronization processes.
2026-03-26 01:00:49 +00:00
bsiggel
d78a4ee67e fix: Update timestamp format for metadata synchronization to match EspoCRM requirements 2026-03-25 21:37:49 +00:00
bsiggel
50c5070894 fix: Update metadata synchronization logic to always sync changes and correct field mappings 2026-03-25 21:34:18 +00:00
bsiggel
1ffc37b0b7 feat: Add Advoware History and Watcher services for document synchronization
- Implement AdvowareHistoryService for fetching and creating history entries.
- Implement AdvowareWatcherService for file operations including listing, downloading, and uploading with Blake3 hash verification.
- Introduce Blake3 utility functions for hash computation and verification.
- Create document sync cron step to poll Redis for pending Aktennummern and emit sync events.
- Develop document sync event handler to manage 3-way merge synchronization for Akten, including metadata updates and error handling.
2026-03-25 21:24:31 +00:00
bsiggel
3c4c1dc852 feat: Add Advoware Filesystem Change Webhook for exploratory logging 2026-03-20 12:28:52 +00:00
bsiggel
71f583481a fix: Remove deprecated AI Chat Completions and Models List API implementations 2026-03-19 23:10:00 +00:00
bsiggel
48d440a860 fix: Remove deprecated VMH xAI Chat Completions API implementation 2026-03-19 21:42:43 +00:00
bsiggel
c02a5d8823 fix: Update ExecModule exec path to use correct binary location 2026-03-19 21:23:42 +00:00
bsiggel
edae5f6081 fix: Update ExecModule configuration to use correct source directory for step scripts 2026-03-19 21:20:31 +00:00
bsiggel
8ce843415e feat: Enhance developer guide with updated platform evolution and workflow details 2026-03-19 20:56:32 +00:00