chahinebrini 685782b538 fix(coach): dynamische Sprache (Text-Detection + App-Locale-Fallback)
LLM-Prompt (message.post + sos-stream):
- LANG_INSTRUCTIONS Map raus, ersetzt durch dynamische Instruktion
  'Reply in {detectedFromUser} ... fallback: {appLang}'
- Lyra matcht jetzt die Sprache der letzten User-Message (per
  detectLang Unicode-Detection); App-Locale ist nur noch Fallback
- Instruktion doppelt eingehängt (Anfang + Ende des System-Prompts)
  gegen recency bias bei langen deutschen Prompts

TTS (speak dispatcher + speak-cartesia + speak-elevenlabs):
- Kein 'de'-Default mehr für language. detectLang(text, locale) leitet
  Sprache primär aus dem Antwort-Text ab (Arabic/Cyrillic/CJK/Turkish-
  Letters), Locale als Fallback
- Cartesia + ElevenLabs: language/language_code nur senden wenn
  ableitbar, sonst Provider auto-detect statt erzwungenem 'de'
- speak-cartesia: sonic-2 → sonic-3 (Multi-Lang, war beim Dispatcher-
  Fix gestern vergessen worden)
- Google: en-US neutraler Fallback statt de-DE-Bias

Neu: server/utils/detect-lang.ts
2026-05-31 00:12:40 +02:00

48 lines
1.3 KiB
YAML

name: RebreakBinder
options:
bundleIdPrefix: org.rebreak.binder
deploymentTarget:
macOS: "14.0"
createIntermediateGroups: true
generateEmptyDirectories: true
settings:
base:
SWIFT_VERSION: "5.10"
MACOSX_DEPLOYMENT_TARGET: "14.0"
PRODUCT_BUNDLE_IDENTIFIER: org.rebreak.binder.mac
MARKETING_VERSION: "0.1.0"
CURRENT_PROJECT_VERSION: "1"
DEVELOPMENT_TEAM: ""
CODE_SIGN_STYLE: Automatic
CODE_SIGN_IDENTITY: "-"
ENABLE_HARDENED_RUNTIME: NO
ENABLE_APP_SANDBOX: NO
targets:
RebreakBinder:
type: application
platform: macOS
sources:
- path: Sources
excludes:
- "Resources/Info.plist"
resources:
- path: Sources/Resources/Assets.xcassets
optional: true
info:
path: Sources/Resources/Info.plist
properties:
CFBundleDisplayName: ReBreak Binder
CFBundleShortVersionString: $(MARKETING_VERSION)
CFBundleVersion: $(CURRENT_PROJECT_VERSION)
LSMinimumSystemVersion: $(MACOSX_DEPLOYMENT_TARGET)
LSUIElement: false
NSHumanReadableCopyright: "© 2026 Raynis GmbH"
NSPrincipalClass: NSApplication
NSHighResolutionCapable: true
settings:
base:
ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
COMBINE_HIDPI_IMAGES: YES