ValueOn AG
5a40b54524
fixed data source
2026-03-31 23:40:59 +02:00
ValueOn AG
c6e7438dfa
teams bot adapt vars
2026-03-31 20:56:35 +02:00
ValueOn AG
a787cdf6bf
fixed onboarding flow
2026-03-30 23:03:36 +02: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
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
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
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
86ede6d3df
teamsbot: Stop-Phrasen sofort triggern ohne Debounce (root cause fix)
...
Made-with: Cursor
2026-03-02 10:24:03 +01:00
patrick-motsch
565ad62c39
feat(teamsbot): RBAC session isolation -- users see only their own sessions
...
Made-with: Cursor
2026-03-01 13:01:35 +01:00
patrick-motsch
d1e081cf98
fix(teamsbot): unblock WS loop for MFA so mfaResolved can close the modal
...
Made-with: Cursor
2026-03-01 11:15:39 +01:00
patrick-motsch
13e39ccc74
fix(teamsbot): add debugMode field to TeamsbotUserSettings model
...
Made-with: Cursor
2026-03-01 10:34:24 +01:00
patrick-motsch
1176cdc368
fix(teamsbot): save credentials when form visible without showCredentialForm state, add debugMode to effective config merge
...
Made-with: Cursor
2026-03-01 10:20:09 +01:00
patrick-motsch
603e319f15
feat(teamsbot): implement Mein Account login with MFA relay
...
Made-with: Cursor
2026-03-01 08:51:16 +01:00
patrick-motsch
1f529568f5
feat(teamsbot): per-request chat/voice channels, responseTextForVoice/Chat
...
Made-with: Cursor
2026-02-28 16:12:57 +01:00
patrick-motsch
65a8026496
fix: load system bot credentials only when joinMode is SYSTEM_BOT (anonymous join fix)
...
Made-with: Cursor
2026-02-28 15:53:31 +01:00
patrick-motsch
1dd354794b
Teamsbot: STT phrase hints, multi-lang, follow-up window, known speakers collection
...
Made-with: Cursor
2026-02-28 00:49:10 +01:00
patrick-motsch
b9c3ad38fb
Teamsbot: start new transcript block after 5s pause even for same speaker
...
Made-with: Cursor
2026-02-27 23:48:47 +01:00
patrick-motsch
80e8197d96
Teamsbot: redesign speaker attribution, add bot responses to transcript, debounce name triggers
...
Made-with: Cursor
2026-02-27 23:18:43 +01:00
patrick-motsch
269b704812
Teamsbot: lower audio RMS threshold, add 10s min cooldown for name-based AI triggers
...
Made-with: Cursor
2026-02-27 22:38:29 +01:00
patrick-motsch
0ee86070bd
Teamsbot: fix chatHistory polluting AI context, block bot self-trigger via captions
...
Made-with: Cursor
2026-02-27 22:14:57 +01:00
patrick-motsch
681c96be8e
Teamsbot: prevent double AI triggers, remove caption text from AI context
...
Made-with: Cursor
2026-02-27 16:40:08 +01:00
patrick-motsch
275f7bbc66
Teamsbot: handle chatHistory source - store context but skip AI trigger
...
Made-with: Cursor
2026-02-27 13:56:46 +01:00
patrick-motsch
21f77d1924
Teamsbot: emit caption/speakerHint to UI for speaker display
...
Made-with: Cursor
2026-02-27 12:27:02 +01:00
patrick-motsch
1c00ab6024
Forward bot playback acknowledgements to SSE status stream.
...
Handle ttsPlaybackAck websocket messages and emit ttsDeliveryStatus updates with playback_* states for UI diagnostics.
Made-with: Cursor
2026-02-26 21:45:47 +01:00
patrick-motsch
25854edb4d
Allow speaker-hint captions to trigger AI without transcript persistence.
...
Keep aggressive hybrid persistence rules, but use final speaker hints as transient context to react to direct bot addressing even when audio capture is silent.
Made-with: Cursor
2026-02-26 21:41:56 +01:00
patrick-motsch
fe1a97564b
Improve Teams bot response reliability and transcript quality.
...
Fix invalid bot-response timestamps in SSE payloads, reduce duplicate response loops, and improve audio STT stability with larger capture chunks and safer silence filtering.
Made-with: Cursor
2026-02-26 21:18:21 +01:00
patrick-motsch
cd2fffc651
feat: emit ttsDeliveryStatus SSE diagnostics
...
Made-with: Cursor
2026-02-26 09:46:05 +01:00
patrick-motsch
02002f3576
feat: add speaker-hint debug flag and improve TTS diagnostics
...
Made-with: Cursor
2026-02-26 09:26:59 +01:00
patrick-motsch
0cd8e9ebfa
feat: treat caption events as speaker hints only
...
Made-with: Cursor
2026-02-26 09:22:07 +01:00
patrick-motsch
43e310a41d
feat: map audio STT to recent caption speaker hints
...
Made-with: Cursor
2026-02-26 09:05:21 +01:00
patrick-motsch
ea8cffee3c
fix: log teamsbot audio capture diagnostics in gateway
...
Read and log per-chunk capture diagnostics (trackId, readyState, rms, nativeSampleRate) from bot audioChunk messages to support root-cause analysis of silent audio streams.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-24 14:55:43 +01:00
patrick-motsch
d020293f4b
fix: teamsbot audio STT - pass channels and skipFallbacks for known PCM16 format
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-23 22:59:53 +01:00
patrick-motsch
f6f42d8db7
phase 2 codeeditor and hotfixes voice
2026-02-23 22:09:27 +01:00
patrick-motsch
9d129f111f
fixes for roles
2026-02-23 17:13:50 +01:00
patrick-motsch
9c23fc6c52
fix: CSRF exemption for bot endpoints, WS ping timeout, clean up debug logs
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-19 00:46:42 +01:00
patrick-motsch
2d7da8a66d
fix: resolve STT AttributeError and int/str TypeError in teamsbot service
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-19 00:09:00 +01:00
patrick-motsch
7778325e5e
feat: add debugMode to config, filter bot own captions to prevent repeats
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-18 23:52:51 +01:00
patrick-motsch
b616688411
feat: add screenshot proxy endpoints for debug viewer (SysAdmin only)
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-18 22:00:34 +01:00
patrick-motsch
3fa5b98f47
security: restrict system bot access to SysAdmin only
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-18 21:03:08 +01:00
patrick-motsch
1227324703
feat: differential transcript, fix bot name in WS handler, AI commands support
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-18 17:50:31 +01:00
patrick-motsch
6963719499
fix: use enum .value for responseChannel comparison - was silently dropping all responses
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-18 00:48:41 +01:00
patrick-motsch
a3b771b12a
fix: derive botName from system bot email, robust responseChannel comparison
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-18 00:32:16 +01:00
patrick-motsch
33daa8dc74
feat: handle voiceGreeting message type - TTS for bot join greeting
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-18 00:17:42 +01:00
patrick-motsch
5d40657aef
fix: dynamic bot name in SPEECH_TEAMS prompt + phonetic name trigger
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-18 00:12:48 +01:00
patrick-motsch
070e3cbd96
fix: safe access to botAccountEmail in _isBotSpeaker - was crashing WebSocket handler on first transcript
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-17 23:54:18 +01:00
patrick-motsch
a27307263f
fix: create SSE event queue on-demand so transcript/chat events are never silently dropped
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-17 23:44:12 +01:00
patrick-motsch
a3c92ae8d5
fix: load system bot credentials from DB and pass to browser bot for authenticated join
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-17 19:58:01 +01:00
patrick-motsch
ad254aafb1
feat: handle audioChunk messages from bot, STT via Google Cloud Speech
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-17 18:43:42 +01:00
patrick-motsch
de573fd834
refactor: add TransferMode, remove backgroundImageUrl and botAccount fields from config
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-17 18:34:24 +01:00