Status · Live build identity

Current status.

Live build identity for every SecureChat component, known issues, and the date of the last end-to-end test. The /healthz endpoint below is the source of truth; this page is the human-readable mirror.

Relay server

URL
https://securechat.team/healthz
WebSocket
wss://securechat.team/ws
Build version
v0.1.0+<build-sha>
Uptime
live
Last checked
just now

Status: live

Live session, peer, and waitlist counters are intentionally not shown here. They live on the operator-only /healthz/internal endpoint, authenticated with the same admin token that gates the admin UI.

iOS / iPadOS app

Latest build
v0.1.0-build11
Distribution
TestFlight (public beta) · iOS 16 or newer
Supported iOS
iOS 16 or newer
Required permissions
Push notifications, Face ID (optional)
Encryption
X3DH + Double Ratchet (Signal-style)

Status: Public Beta (TestFlight)

Web client (planned)

Status
Not started
Distribution
Static SPA at app.securechat.team
Cryptography
Same X3DH + Double Ratchet core as the iOS / macOS apps

Status: not started

Known issues

Security posture, live.

Every defence listed in the Security model section of the README is checked here. Maturity levels follow the same definitions as the README (implemented means the code ships in the current build and runs on real connections; enforced means it rejects attack input by default, not just logs it; tested means an automated test covers the exact behaviour).

Defence Maturity Tested Notes
End-to-end encryption (X3DH + Double Ratchet) enforced yes libsignal-protocol-c; ratchet state on-device only.
WSS over Let's Encrypt enforced yes wss://securechat.team/ws; Caddy + LE.
No message persistence on the relay enforced yes Relay forwards ciphertext only; it never stores plaintext or even ciphertext after the connection closes.
Pairing-token TOFU + key pinning enforced yes Pinned on first scan; user can revoke any time.
Peer-bound canonicalisation (Sprint 22+) enforced yes Messages are bound to the ratchet session id; the relay cannot swap peers mid-stream.
DSGVO / GDPR compliance enforced manual Datenschutzerklärung, Auftragsverarbeitungsvertrag, Sub-Processors. User data export & deletion on request.
Crash/Diagnostics opt-in (Sprint 23) enforced yes Off by default. Sentry SDK initialised only after explicit opt-in; sendDefaultPii = false.
No third-party analytics enforced manual No Google Analytics, no Plausible, no Matomo. App Store privacy labels: 0 data collected.
Vulnerability disclosure channel enforced manual security@securechat.team; PGP key in SECURITY.md.

Roadmap

Maturity axis: shipped means available to every Public-Beta user today, planned means scoped and scheduled but the code does not exist yet, and not started means acknowledged but not yet scoped.

Milestone Status Target
Public Beta (TestFlight + notarised host) shipped Q3 2026
DSGVO Datenschutzerklärung (Sprint 24) shipped Q3 2026
Auftragsverarbeitungsvertrag (Sprint 25) shipped Q3 2026
Sub-processors list (Sprint 25.1) shipped Q3 2026
Incident-response playbook (Sprint 25.2) shipped Q3 2026
Status page (Sprint 22) shipped Q3 2026
Crash opt-in Sentry (Sprint 23) shipped Q3 2026
Group chats (X3DH sender keys) planned Q4 2026
Voice messages (Opus 32 kbps) planned Q4 2026
Multi-region relay (EU + US) planned Q4 2026
Web client (SPA) not started Q1 2027
SBOM + dependency audit in CI (Sprint 21) planned Q4 2026

End-to-end tests

Every release candidate runs the securechat-test-acceptance suite (iPhone end-to-end + relay smoke). CI runs the relay smoke tests on every push to main:

View CI runs on GitHub →

Security disclosures

Found a vulnerability? Please email security@securechat.team rather than opening a public issue. See the full policy in our SECURITY.md, including the PGP key and our response timeline.

DSGVO incident response

The incident-response playbook is at docs/INCIDENT-RESPONSE.md. Summary: any confirmed personal-data breach is reported to the BfDI within 72 hours of detection, and affected users are notified by email within 24 hours of the report being filed.