Commit graph

816 commits

Author SHA1 Message Date
ValueOn AG
695c652a56 mandate admin fixes 2026-03-31 13:31:25 +02:00
ValueOn AG
bc370ef475 Alle 7 Stellen im Code, die Stripe-Objekte in Dicts konvertieren, nutzen jetzt stripeToDict(). Das funktioniert unabhängig von der Stripe-Bibliotheksversion auf DEV und INT. 2026-03-31 02:14:33 +02:00
ValueOn AG
b142c0fa6c NT-Problem: Unhandled exception: get
Root Cause: Die Stripe-Python-Bibliothek auf INT hat keine .get() Methode auf Stripe-Objekten. Wenn session.get("payment_status") aufgerufen wird, sucht Python via __getattr__ nach einem Feld namens "get" → AttributeError("get").

Bestätigung: In routeBilling.py gab es bereits einen hasattr(session, "get")-Check (Zeile 998) — jemand kannte das Problem.

Fix: Alle Stripe-Objekte werden sofort nach dem API-Call in dict() konvertiert
2026-03-31 02:05:16 +02:00
ValueOn AG
ef39d01e16 fixed database issue subscriptions 2026-03-31 01:51:08 +02:00
ValueOn AG
350c699473 fexed stripe webhook 2026-03-31 01:12:25 +02:00
ValueOn AG
b53a7f363d fixes stripe 2026-03-31 00:47:28 +02:00
ValueOn AG
7cbcaacda1 managed stripe change in env to trigger db refresh 2026-03-31 00:24:56 +02:00
ValueOn AG
3be0967936 fixed changed customer in stripe 2026-03-31 00:15:47 +02:00
Patrick Motsch
a1df2df3c5
Merge pull request #115 from valueonag/feat/unified-data-bar
Feat/unified data bar
2026-03-30 23:05:09 +02:00
ValueOn AG
a787cdf6bf fixed onboarding flow 2026-03-30 23:03:36 +02:00
ValueOn AG
e0a09ae6b1 streamlined neutralization flow 2026-03-30 00:14:57 +02:00
ValueOn AG
7e88005721 unified failsafe neutralization architecture 2026-03-29 21:55:09 +02:00
ValueOn AG
3ac25a269a streamlined billing incl ai and storage budget 2026-03-29 12:18:58 +02:00
ValueOn AG
c12a75f87f fix user name resolution 2026-03-28 23:56:28 +01:00
ValueOn AG
1fdf238aaf cleaned mandate and unified mandate to be standard type 2026-03-28 23:54:11 +01:00
ValueOn AG
1f42c015d6 fixes commcoach 2026-03-28 22:29:15 +01:00
ValueOn AG
1883f8cd6a fixed sys attributes 2026-03-28 21:46:55 +01:00
ValueOn AG
20d2bf215f fixes 2026-03-28 18:28:35 +01:00
ValueOn AG
75484c0f73 BREAKING CHANGE
API and persisted records use PowerOnModel system fields:
- sysCreatedAt, sysCreatedBy, sysModifiedAt, sysModifiedBy
Removed legacy JSON/DB field names:
- _createdAt, _createdBy, _modifiedAt, _modifiedBy
Frontend (frontend_nyla) and gateway call sites were updated accordingly.
Database:
- Bootstrap runs idempotent backfill (_migrateSystemFieldColumns) from old
  underscore columns and selected business duplicates into sys* where sys* IS NULL.
- Re-run app bootstrap against each PostgreSQL database after deploy.
- Optional: DROP INDEX IF EXISTS "idx_invitation_createdby" if an old index remains;
  new index: idx_invitation_syscreatedby on Invitation(sysCreatedBy).
Tests:
- RBAC integration tests aligned with current GROUP mandate filter and UserMandate-based
  UserConnection GROUP clause; buildRbacWhereClause(..., mandateId=...) must be passed
  explicitly (same as production request context).
2026-03-28 18:12:37 +01:00
ValueOn AG
efe540b4f9 fixing round 1 2026-03-28 16:59:01 +01:00
idittrich-valueon
d0f8444bac next version of visual workflow editor with ClickUp Connections 2026-03-25 09:38:06 +01:00
ValueOn AG
b33444e891 unified data completed implementation 2026-03-24 16:39:25 +01:00
ValueOn AG
96c94fae57 unified data - step 1 2026-03-24 14:17:18 +01:00
ValueOn AG
8b161ed410 unified data - step 1 2026-03-24 14:16:46 +01:00
ValueOn AG
f796ae3807 fix: RBAC bootstrap anthropic for user, FeatureAccess response, workspace UI repair, user access overview, RBAC tests
Made-with: Cursor
2026-03-23 10:29:23 +01:00
Patrick Motsch
2345ff669a
Merge pull request #113 from valueonag/feat/service-subscription
Feat/service subscription
2026-03-23 00:19:49 +01:00
ValueOn AG
da096bb6e2 rag stats 2026-03-23 00:17:59 +01:00
ValueOn AG
3934cdd3ee tool fixes 2026-03-23 00:05:29 +01:00
ValueOn AG
9ef0d43091 fixed tables and forms 2026-03-22 22:19:50 +01:00
ValueOn AG
2e7a0a73c7 streamlined formgeneratortable and sort/filter globally 2026-03-22 21:34:54 +01:00
idittrich-valueon
9a2e2b4f5f included sharepoint nodes 2026-03-22 19:46:50 +01:00
idittrich-valueon
f808d63c25 finished email nodes 2026-03-22 18:20:31 +01:00
ValueOn AG
c813bd63ca subscription base logic 2026-03-22 17:23:54 +01:00
idittrich-valueon
04305c5f95 basic functionality 2026-03-22 16:15:11 +01:00
idittrich-valueon
c168443d4f feat: first version of graphical automation feature 2026-03-22 15:25:29 +01:00
ValueOn AG
9186c60ad2 fixed rendering issues 2026-03-22 11:09:48 +01:00
ValueOn AG
8cf31077a6 fixed global RAG and admin consent msft 2026-03-22 01:20:44 +01:00
ValueOn AG
0a0973d41b hotfix msft/google login tokens end to end separated from connection
feat(billing): Nutzerhinweise bei leerem Budget + Mandats-Mail (402/SSE)
Gateway
- InsufficientBalanceException: billingModel, userAction (TOP_UP_SELF /
  CONTACT_MANDATE_ADMIN), DE/EN-Texte, toClientDict(), fromBalanceCheck()
- HTTP 402 + JSON detail für globale API-Fehlerbehandlung
- AI/Chatbot: vor Raise ggf. E-Mail an BillingSettings.notifyEmails
  (PREPAY_MANDATE, Throttle 1h/Mandat) via billingExhaustedNotify
- Agent-Loop & Workspace-Route: SSE-ERROR mit strukturiertem Billing-Payload
- datamodelBilling: notifyEmails-Doku für Pool-Alerts
frontend_nyla
- useWorkspace: SSE onError für INSUFFICIENT_BALANCE mit messageDe/En
  und Hinweis auf Billing-Pfad bei TOP_UP_SELF
2026-03-21 01:34:40 +01:00
ValueOn AG
f89eacfc47 fixes trustee data 2026-03-18 23:40:25 +01:00
ValueOn AG
c3f8be68b2 truastee sync and charting 2026-03-18 23:04:56 +01:00
ValueOn AG
6296b79ad0 feat folder download as zip 2026-03-18 14:10:50 +01:00
ValueOn AG
d63a41fbc8 llm failover enhanced 2026-03-18 13:57:01 +01:00
ValueOn AG
b876f01da2 tools enhancement and cleanup 2026-03-18 13:06:57 +01:00
ValueOn AG
9b741a0a28 vector fixes 2026-03-18 00:33:38 +01:00
ValueOn AG
587dd7489e fixed trustee rma connector 2026-03-17 23:23:40 +01:00
ValueOn AG
4e843761a9 Cleaned backend and enhanced ai call failover modes 2026-03-17 22:51:05 +01:00
ValueOn AG
1d4148e8b5 codeeditor 2026-03-17 20:26:11 +01:00
ValueOn AG
6c8cc843ce file system and stt and ttss reevisions 2026-03-17 19:19:27 +01:00
ValueOn AG
f3de454b66 fixed chat history context 2026-03-16 21:22:40 +01:00
Patrick Motsch
6154eb2553
Merge pull request #106 from valueonag/refactor/service-migrations
Refactor/service migrations
2026-03-16 15:51:07 +01:00
ValueOn AG
a5539f7602 img generation added 2026-03-16 15:44:54 +01:00
ValueOn AG
afe77233f9 fixed content mapping 2026-03-16 15:24:20 +01:00
ValueOn AG
c161a93796 sharepoint relative path fix 2026-03-16 15:12:05 +01:00
ValueOn AG
c873f96848 fixed source access and workflow resource limits and stop 2026-03-16 15:08:05 +01:00
ValueOn AG
b418207c2c workflow fixes 2026-03-16 14:26:42 +01:00
ValueOn AG
a24b20d302 fixed source access tools 2026-03-16 13:13:46 +01:00
ValueOn AG
2a04acb278 fixed debugs 2026-03-16 11:48:22 +01:00
ValueOn AG
b5dc643dac ai workspace ui fixes 2026-03-16 11:38:18 +01:00
ValueOn AG
f51c313c2c fix settings page 2026-03-16 00:51:09 +01:00
ValueOn AG
3d49bd9d03 enhanced stt/tts functions 2026-03-16 00:47:42 +01:00
ValueOn AG
7fe6f9bc97 new ai agent 2026-03-15 23:38:21 +01:00
ValueOn AG
c8b7517209 refactor: modules/services/ abgeloest durch serviceCenter + serviceHub
serviceCenter = DI-Container (Resolver, Registry, Context) fuer Service-Instanziierung
serviceHub = Consumer-facing Aggregation (DB-Interfaces, Runtime-State, lazy Service-Resolution via serviceCenter)

- modules/serviceHub/ erstellt: ServiceHub, PublicService, getInterface()
- 22 Consumer-Dateien migriert (routes, features, tests): imports von modules.services auf serviceHub bzw. serviceCenter umgestellt
- resolver.py: legacy fallback auf altes services/ entfernt
- modules/services/ komplett geloescht (83 Dateien inkl. dead code mainAiChat.py)
- pre-extraction: progress callback durch chunk-pipeline propagiert, operationType DATA_EXTRACT->DATA_ANALYSE fuer guenstigeres Modell
2026-03-14 11:51:45 +01:00
7c2192fb3e fix:neutralization too strong 2026-03-13 11:28:45 +01:00
ValueOn AG
6919a23d4f fix feature instance passing 2026-03-13 08:29:32 +01:00
patrick-motsch
77d527eb93 Merge branch 'int' of https://github.com/valueonag/gateway into int 2026-03-12 13:24:28 +01:00
patrick-motsch
ac7ac02d4d fixed api key handling trustee 2026-03-12 13:24:25 +01:00
17341bfde1 fix:removed old route fallback 2026-03-09 11:15:29 +01:00
7a287065a4 fix:deleted old documentation 2026-03-09 11:03:02 +01:00
d78f071682 bug: sharepoint target address from automation feature 2026-03-09 11:03:02 +01:00
125c2bbce7 stop automation bug fix 2026-03-09 11:03:02 +01:00
22e70aa878 fix: chat-playground and automation feature routes unification 2026-03-09 11:03:02 +01:00
d7636d72c4 bug:service center 2026-03-09 11:03:01 +01:00
d59c6c8576 fix: duplicate automation definition for pydantic model 2026-03-09 11:03:01 +01:00
13322e7cf8 feat: included service center in playground feature to replace old services 2026-03-09 11:03:01 +01:00
patrick-motsch
1e678a8897 commcoach: remove silent fallbacks in PDF export, fix markdown-to-XML conversion with proper regex
Made-with: Cursor
2026-03-07 02:38:42 +01:00
patrick-motsch
cdb974d658 commcoach: rewrite PDF export - direct markdown-to-pdf via reportlab, remove broken RendererPdf dependency
Made-with: Cursor
2026-03-07 02:29:30 +01:00
patrick-motsch
210c9d44a1 commcoach: fix PDF export crash - provide services stub for RendererPdf
Made-with: Cursor
2026-03-07 02:21:09 +01:00
patrick-motsch
b6c01fd203 commcoach: fix double extensions, improve AI document generation quality and action prompts
Made-with: Cursor
2026-03-07 02:09:30 +01:00
patrick-motsch
4e6974ae11 feat: sendMail und storeDocument Commands im SPEECH_TEAMS Prompt ergaenzt
Made-with: Cursor
2026-03-07 02:04:09 +01:00
patrick-motsch
740d2a0b49 commcoach: email subject uses context title instead of UUID, AI generates HTML directly
Made-with: Cursor
2026-03-07 01:28:51 +01:00
patrick-motsch
364e431749 commcoach: backend abort handling + compression + document pre-AI-call + status events
TASK 5: Backend abort handling (cancel previous processMessage tasks)
TASK 6: Compression thresholds lowered (25->15, 15->10)
TASK 7: Combine pending user messages into single prompt
TASK 8: Document handling with pre-AI-call intent detection
TASK 9: Granular status events during AI processing

Made-with: Cursor
2026-03-07 01:02:18 +01:00
patrick-motsch
e2c1c58442 fix: teamsbot SSE-Events fuer Greeting, Commands, Chat-Fehler und command-only Responses
Made-with: Cursor
2026-03-07 00:56:04 +01:00
patrick-motsch
05f1c98825 feat: teamsbot command refactoring, commcoach session cleanup
Made-with: Cursor
2026-03-06 22:55:28 +01:00
f4fb4637ea Merge branch 'feat/service-center' into int 2026-03-06 15:32:59 +01:00
853cce2cf0 feat: implemented the service center into the automation feature 2026-03-06 15:32:27 +01:00
5db31f10ee fix: sharepoint base path 2026-03-06 15:27:54 +01:00
9d1a8d53fc fix: minor bug fixes to chatbot to work with service center 2026-03-06 14:31:56 +01:00
53d2d9d873 first version of service center
implemented on chatbot
2026-03-06 14:03:18 +01:00
6dc2afafb9 fix:performance improvements
- app.py: Pre-warm AI connectors at module load and in lifespan
- aicoreModelRegistry.py: Connector discovery cache, getAvailableModels cache, bulk RBAC, eager prewarm
- connectorDbPostgre.py: Connector cache, contextvars for userId, eviction (max 32)
- chatbot: Uses _get_cached_connector, Service center integration, BillingService exceptions, BillingService exceptions instead of direct imports
- interfaceDbApp.py: Uses _get_cached_connector
- interfaceDbManagement.py: Uses _get_cached_connector
- security/rbac.py: Adds checkResourceAccessBulk
2026-03-06 13:46:54 +01:00
Patrick Motsch
42e79a724a
Merge pull request #102 from valueonag/feat/commcoach
Feat/commcoach
2026-03-06 12:49:24 +01:00
patrick-motsch
c76f2c44f2 teamsbot: Bot-Chat im Transcript, keine AI-Trigger auf eigene Chat-Nachrichten
Made-with: Cursor
2026-03-06 12:40:06 +01:00
patrick-motsch
d7ba24f61a fixed stt procedure 2026-03-05 23:41:37 +01:00
patrick-motsch
12b0d3d36e Alle 9 Fixes sind implementiert. Hier die Zusammenfassung:
Fix 1 -- Opening-Prompt: processSessionOpening in serviceCommcoach.py prüft jetzt ob es die erste Session ist (isFirstSession) und gibt der AI einen expliziten Prompt, der das Erfinden von Kontext verbietet.
Fix 2 -- Stabiler Transcript: onresult in CommcoachCoachingView.tsx nutzt jetzt processedResultIndexRef um nur neue Results zu verarbeiten. Finalisierte Teile werden stabil akkumuliert, kein Flackern mehr.
Fix 3 -- Hintergrundgeräusche-Timeout: Neuer silenceTimerRef mit 5s Timeout. Wenn nach onspeechstart kein Text kommt, wird isUserSpeaking automatisch zurückgesetzt.
Fix 4 -- Stop-Button: "Stop" Button erscheint im Session-Header wenn TTS läuft (via isTtsPlaying State, synchronisiert per 200ms Interval mit isTtsPlayingRef).
Fix 5 -- Weitersprechen-Button: lastTtsAudioRef speichert das zuletzt gespielte Audio. stopTts setzt wasInterrupted = true. "Weitersprechen" Button erscheint nach Unterbrechung und spielt das Audio erneut ab.
Fix 6 -- Paralleles TTS: Neue _generateAndEmitTts() Hilfsfunktion. In processMessage und processSessionOpening wird TTS als asyncio.create_task parallel zu _emitChunkedResponse gestartet.
Fix 7 -- JSON-Response: Die AI antwortet jetzt als JSON mit text, speech, documents. Neuer Prompt-Block wird in buildCoachingSystemPrompt angehängt. _parseAiJsonResponse() und _saveGeneratedDocument() im Backend. processMessage und processSessionOpening nutzen die neue Struktur.
Fix 8 -- Loading-States: Neuer actionLoading State in useCommcoach. Alle async Funktionen setzen setActionLoading('key') vor dem Await und null im finally. Buttons zeigen Loading-Text und werden disabled.
Fix 9 -- Umlaute: Alle deutschen Strings in allen CommCoach-Dateien (Backend + Frontend) korrigiert: ae->ä, oe->ö, ue->ü.
2026-03-04 22:53:41 +01:00
ad570c405a Merge branch 'feature/message-streaming-fix' into int 2026-03-04 08:17:44 +01:00
f1231c4b86 feat: refactor message streaming + add streaming service 2026-03-04 08:10:50 +01:00
patrick-motsch
92d9a2a0d5 2 critical fixes: pwd reset and invitation caching ui 2026-03-03 23:07:41 +01:00
patrick-motsch
f4940cf9e1 iteration 2 done 2026-03-03 23:02:53 +01:00
patrick-motsch
5486a87b9a commcoach iteration 1 completed 2026-03-03 22:04:52 +01:00
patrick-motsch
16db2d91c6 fixed critical code issues 2026-03-03 18:57:20 +01:00
patrick-motsch
d3f891453a fixed log 2026-03-02 21:10:16 +01:00