feat(collab): 'Realtime samenwerken' als uitbreiding + losse Matrix-schakelaar #1073

Merged
brenno merged 1 commit from feat/collab-module into main 2026-08-01 12:44:27 +00:00
Owner

Zet de hele Matrix-samenwerkroute achter een module onder Instellingen → Uitbreidingen, standaard uit — zoals AI en Procesverbetering. Zonder de module aan verschijnt er niets: geen Samenwerken-tab, geen host/deel/join-commando's.

Naar aanleiding van de vraag of de route standaard uit staat en als uitbreiding verborgen is: de functionaliteit was al opt-in (geen commando's tot een account), maar de Samenwerken-tab stond altijd zichtbaar. Dit trekt dat recht.

Wat

  • collaboration_provider.dart — twee niveaus. De module-hoofdschakelaar (collaborationEnabled, pref collaborationModuleEnabled, standaard uit) en per transport een eigen schakelaar — vandaag Matrix (matrixCollabEnabled, standaard aan), met Jitsi/XMPP later. matrixCollabActiveProvider (module én Matrix aan) poort de host/join-acties; collaborationRevealProvider (actief óf een account al ingesteld) poort de Samenwerken-tab, zodat een bestaand account na een upgrade niet verdwijnt.
  • CollaborationModuleCard onder Uitbreidingen: hoofdschakelaar + (indien aan) de losse Matrix-schakelaar met de notitie dat Jitsi en XMPP volgen.
  • Gating: navItems toont de Samenwerken-tab alleen bij reveal; het commandopalet toont de Matrix-acties alleen als de module + Matrix aan staan én er een account is. In het register als ModuleId.collaboration.

Toetsing

  • Module-stand/persistentie, de reveal-poort (uit / aan / reveal-bij-bestaand-account), de registervolgorde, en het palet dat de acties verbergt met de module uit.
  • make check groen: dekking 87,5%, per-bestandsvloer 0 onder. l10n: 4 nieuwe bronstrings × 31 talen. SOURCE_MAP bijgewerkt.
  • Ruimt en passant een gelekt transiënt cockpit-capture-testbestand op dat main zelf al had verwijderd (bd134284) maar dat nog in de aftakbasis zat.

Volgt op #977 (self-encrypted relay): de route bestond al opt-in; dit maakt hem een echte, uitschakelbare uitbreiding, met ruimte voor Jitsi/XMPP.

Zet de hele Matrix-samenwerkroute achter een **module** onder Instellingen → Uitbreidingen, **standaard uit** — zoals AI en Procesverbetering. Zonder de module aan verschijnt er niets: geen Samenwerken-tab, geen host/deel/join-commando's. Naar aanleiding van de vraag of de route standaard uit staat en als uitbreiding verborgen is: de functionaliteit was al opt-in (geen commando's tot een account), maar de Samenwerken-tab stond altijd zichtbaar. Dit trekt dat recht. ## Wat - **`collaboration_provider.dart`** — twee niveaus. De module-hoofdschakelaar (`collaborationEnabled`, pref `collaborationModuleEnabled`, standaard uit) en per transport een eigen schakelaar — vandaag **Matrix** (`matrixCollabEnabled`, standaard aan), met **Jitsi/XMPP later**. `matrixCollabActiveProvider` (module én Matrix aan) poort de host/join-acties; `collaborationRevealProvider` (actief óf een account al ingesteld) poort de Samenwerken-tab, zodat een bestaand account na een upgrade niet verdwijnt. - **`CollaborationModuleCard`** onder Uitbreidingen: hoofdschakelaar + (indien aan) de losse Matrix-schakelaar met de notitie dat Jitsi en XMPP volgen. - **Gating:** `navItems` toont de Samenwerken-tab alleen bij reveal; het commandopalet toont de Matrix-acties alleen als de module + Matrix aan staan én er een account is. In het register als `ModuleId.collaboration`. ## Toetsing - Module-stand/persistentie, de reveal-poort (uit / aan / reveal-bij-bestaand-account), de registervolgorde, en het palet dat de acties verbergt met de module uit. - `make check` groen: dekking 87,5%, per-bestandsvloer 0 onder. l10n: 4 nieuwe bronstrings × 31 talen. SOURCE_MAP bijgewerkt. - Ruimt en passant een gelekt transiënt cockpit-capture-testbestand op dat main zelf al had verwijderd (bd134284) maar dat nog in de aftakbasis zat. Volgt op #977 (self-encrypted relay): de route bestond al opt-in; dit maakt hem een echte, uitschakelbare uitbreiding, met ruimte voor Jitsi/XMPP.
feat(collab): "Realtime samenwerken" als uitbreiding, met losse Matrix-schakelaar
All checks were successful
scans / scans (pull_request) Successful in 3m33s
b44203a0d1
Zet de hele Matrix-samenwerkroute achter een module onder Instellingen →
Uitbreidingen, standaard uit — zoals AI en Procesverbetering. Zonder de module
aan verschijnt er niets: geen Samenwerken-tab, geen host/deel/join-commando's.

- `collaboration_provider.dart`: twee niveaus. De module-hoofdschakelaar
  (`collaborationEnabled`, pref `collaborationModuleEnabled`, standaard uit) en
  per transport een eigen schakelaar — vandaag Matrix (`matrixCollabEnabled`,
  standaard aan), met Jitsi/XMPP later. `matrixCollabActiveProvider` (module én
  Matrix aan) poort de host/join-acties; `collaborationRevealProvider` (actief óf
  een account al ingesteld) poort de Samenwerken-tab, zodat een bestaand account
  na een upgrade niet verdwijnt.
- `CollaborationModuleCard` onder Uitbreidingen: hoofdschakelaar + (indien aan)
  de Matrix-schakelaar met "Jitsi en XMPP volgen".
- Gating: `navItems` toont de Samenwerken-tab alleen bij reveal; het palet toont
  de Matrix-acties alleen als module+Matrix aan zijn én er een account is.
- In het register (`ModuleId.collaboration`).

- Tests: module-stand/persistentie, de reveal-poort (uit/aan/reveal-bij-account),
  registervolgorde, en het palet dat de acties verbergt met de module uit.
  `make check` groen (87,5% dekking). l10n: 4 nieuwe bronstrings × 31 talen.
- Ruimt een gelekt transiënt cockpit-capture-testbestand op dat main zelf al had
  verwijderd (bd134284) maar dat nog in de aftakbasis zat.

Volgt op #977 (self-encrypted relay): de route bestond al opt-in; dit maakt hem
een echte, uitschakelbare uitbreiding.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
brenno merged commit cea53a1f3b into main 2026-08-01 12:44:27 +00:00
brenno deleted branch feat/collab-module 2026-08-01 12:44:28 +00:00
Sign in to join this conversation.
No description provided.