On Safari LiveKit silently skipped the sender track swap, so the raw microphone stayed on the wire regardless of the suppression level. The fork now verifies and enforces the swap and states the outcome in the console. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
134 lines
5.3 KiB
YAML
134 lines
5.3 KiB
YAML
apiVersion: helm.toolkit.fluxcd.io/v2
|
||
kind: HelmRelease
|
||
metadata:
|
||
name: matrix-stack
|
||
namespace: matrix
|
||
spec:
|
||
# Shortened from 5m to match production-apps Kustomization's 1m interval - narrows the
|
||
# window between coturn (Kustomization-only, no Helm indirection) and synapse-main
|
||
# (behind this HelmRelease) picking up a rotated TURN secret after Issue #38's
|
||
# automated-rotation PR gets merged. Self-heals either way, just faster now.
|
||
interval: 1m
|
||
chart:
|
||
spec:
|
||
chart: matrix-stack
|
||
version: "26.4.0"
|
||
sourceRef:
|
||
kind: HelmRepository
|
||
name: element-ess-oci
|
||
namespace: flux-system
|
||
|
||
# NEU: Hier zieht Flux deine Puzzleteile zusammen
|
||
valuesFrom:
|
||
- kind: ConfigMap
|
||
name: ess-synapse-custom
|
||
valuesKey: values.yaml
|
||
- kind: ConfigMap
|
||
name: ess-element-custom
|
||
valuesKey: values.yaml
|
||
- kind: Secret
|
||
name: ess-mas-values-secret
|
||
valuesKey: values.yaml
|
||
- kind: Secret
|
||
name: synapse-turn-secret
|
||
valuesKey: values.yaml
|
||
|
||
values:
|
||
# Top-Level: serverName – das ist dein Matrix-Homeserver-Name
|
||
serverName: axion1337.chat
|
||
|
||
# Cert-Manager für automatische Zertifikatsgenerierung
|
||
certManager:
|
||
clusterIssuer: letsencrypt-prod
|
||
|
||
# Interner Postgres an (default ist eh true, hier nur zur Klarheit)
|
||
postgres:
|
||
enabled: true
|
||
|
||
# Synapse – API auf matrix.axion1337.chat
|
||
synapse:
|
||
enabled: true
|
||
ingress:
|
||
host: matrix.axion1337.chat
|
||
additional:
|
||
oembed:
|
||
config: |
|
||
oembed_enabled: true
|
||
|
||
# Matrix Authentication Service – braucht eine Subdomain
|
||
matrixAuthenticationService:
|
||
enabled: true
|
||
ingress:
|
||
host: account.axion1337.chat
|
||
|
||
# Matrix RTC (Element Call) – braucht auch eine Subdomain
|
||
matrixRTC:
|
||
enabled: true
|
||
ingress:
|
||
host: mrtc.axion1337.chat
|
||
# Chart default (20Mi request+limit) OOM-killed the authorisation service after
|
||
# ~74 days of uptime (2026-07-28) - too tight for a long-running Go service.
|
||
resources:
|
||
requests:
|
||
memory: 64Mi
|
||
cpu: 50m
|
||
limits:
|
||
memory: 128Mi
|
||
|
||
# Element Web
|
||
elementWeb:
|
||
enabled: true
|
||
image:
|
||
registry: rohana.axion1337.de
|
||
repository: sorb/threadnet-web
|
||
# v0.5.4 = Sender-Verifikation (threadnet-call fee9866): auf Safari
|
||
# uebersprang LiveKit den Track-Tausch stumm (sender?.replaceTrack),
|
||
# das rohe Mikro blieb auf der Leitung. Der Fork prueft und erzwingt
|
||
# den Tausch jetzt; die Konsole weist den Sendepfad aus.
|
||
# v0.5.3 = KI-Geraeuschunterdrueckung freigeschaltet (threadnet-call
|
||
# e3f8a85): Abnahme im Call zu zweit bestanden 2026-08-17. Checkbox +
|
||
# Regler in den Call-Einstellungen (Audio-Reiter). Rueckhebel bei
|
||
# Regression: Feature-Tor im Fork schliessen, kein Deployment-Revert.
|
||
# v0.5.2 = KI-Filter-Anbindung Weg B (threadnet-call df4e5ee): Filter
|
||
# haengt sich NACH der Publikation an den Mikrofon-Track, eigener
|
||
# AudioContext nur dort - kein webAudioMix, kein processor-Schluessel in
|
||
# den Capture-Defaults in irgendeinem Zustand. Tor geschlossen: fuer
|
||
# alle Nutzer verhaltensgleich mit v0.5.1; Test-Client per zwei
|
||
# localStorage-Schluesseln. Tor-Oeffnung erst nach Abnahme im Call.
|
||
# v0.5.1 = Entmuten-Vorfall aus v0.5.0 behoben (threadnet-call dcc8643):
|
||
# Aus-Pfad der KI-Geraeuschunterdrueckung wieder identisch mit Upstream
|
||
# (kein processor-Schluessel), Feature hart stillgelegt bis zur
|
||
# webAudioMix-Entscheidung - neutralisiert auch Clients mit noch
|
||
# aktivierter Einstellung im localStorage. Regressionstests decken beide
|
||
# Faelle ab. Abnahme: Call zu zweit nach dem Rollout.
|
||
# Historie 2026-08-16: v0.5.0 brach das Entmuten beidseitig und wurde v0.5.0 brach das Entmuten - es wurde nie ein
|
||
# Audio-Track veroeffentlicht (SFU-Log: kein einziges "published"). Erstes
|
||
# Produktivimage mit dem KI-Filter im Audio-Pfad; v0.4.3 (embedded .7) ist
|
||
# der letzte Stand, mit dem Calls nachweislich liefen (09.-11.08.).
|
||
# Ursache offen - siehe #0054. NICHT wieder anheben ohne Call-Test zu zweit.
|
||
# v0.5.0 = KI-Geraeuschunterdrueckung im Call-Widget (ADR-0018): erste
|
||
# Funktionserweiterung seit dem Rebrand, daher Minor statt Patch. Das
|
||
# Image traegt jetzt 23 MB Modell-Assets unter
|
||
# /widgets/element-call/assets/dfn3/ - sie werden erst beim Einschalten
|
||
# des Filters geladen, nicht beim Seitenaufruf.
|
||
# v0.4.0 = Rebrand sichtbar: zentrierte Icons, Markenfarbe #ed4f4c,
|
||
# About-Attribution unter der Client-Version (ThreadNet-Web#10).
|
||
# Die Linie beginnt bei v0.3.0, dem ersten kanonischen CI-Build aus
|
||
# apps/web/Dockerfile - er loeste die Derivat-Images ab, deren
|
||
# Entrypoint ohne Exec-Bit /config.json still brach (ThreadNet-Web#8).
|
||
tag: v0.5.4
|
||
ingress:
|
||
host: axion1337.chat
|
||
|
||
# Element Admin
|
||
elementAdmin:
|
||
enabled: true
|
||
ingress:
|
||
host: admin.axion1337.chat
|
||
|
||
# Well-Known auf der Apex-Domain (axion1337.chat/.well-known/matrix/*)
|
||
# Aktiviert – notwendig für MatrixRTC-Discovery
|
||
wellKnownDelegation:
|
||
enabled: true
|
||
ingress:
|
||
className: "none" # Deaktiviert den Chart-Ingress, wir erstellen einen eigenen |