feat(instellingen): AI-assistentie verhuist naar Uitbreidingen (#731) #752

Merged
brenno merged 5 commits from feat/ai-als-module-731 into main 2026-07-23 15:15:06 +00:00
Owner

Closes #731.

Het vaste AI-tabblad suggereerde een vaste functie; AI is een optionele module met een netwerkuitgang die je bewust aanzet. De aan/uit-schakelaar staat nu als modulekaart op Uitbreidingen naast Informatieveiligheid; het eigen tabblad verschijnt zodra de module aan staat en blijft met de module uit bestaan zolang er een backend geconfigureerd is (#648: uitzetten mag bestaand werk niet onbereikbaar maken). Wie AI al aan had merkt niets: zelfde voorkeursleutel, zelfde plek op schijf.

  • De kaart bedient het formulierveld (AiForm.enabled), niet rechtstreeks de voorkeuren: Opslaan schrijft het hele formulier weg en zou een directe schrijf terugdraaien. Eén schakelaar, één opslagpad.
  • AiModuleCard/AiModuleOffNotice als losse widgets in widgets/dialogs/settings/ — de dialoogklasse bleef daarmee onder haar plafond, dat mee omlaag is gezet (5992 → 5989).
  • Zoekindex: de inschakel-ingang wijst naar Uitbreidingen (mét sectie-anker), de drie configuratie-ingangen dragen aiOnly en volgen de zichtbaarheid van het tabblad.
  • De hang waarop dit werk eerder strandde was oneindige recursie in de testhelper (moduleAanEnNaarTab riep zichzelf aan), geen Flutter-probleem.
  • Drie nieuwe interfaceteksten × 31 talen; docs (USER_GUIDE, AI_ASSIST §3.1, SOURCE_MAP, CHANGELOG) bijgewerkt.

Poort: make check groen (6.041 tests), plus check-secrets en sast schoon. Bewaker overgeslagen — geen bestandsformaat, opslag, afhankelijkheid, uitgaand verkeer of publieke belofte geraakt.

🤖 Generated with Claude Code

Closes #731. Het vaste AI-tabblad suggereerde een vaste functie; AI is een optionele module met een netwerkuitgang die je bewust aanzet. De aan/uit-schakelaar staat nu als modulekaart op Uitbreidingen naast Informatieveiligheid; het eigen tabblad verschijnt zodra de module aan staat en blijft met de module uit bestaan zolang er een backend geconfigureerd is (#648: uitzetten mag bestaand werk niet onbereikbaar maken). Wie AI al aan had merkt niets: zelfde voorkeursleutel, zelfde plek op schijf. - De kaart bedient het formulierveld (AiForm.enabled), niet rechtstreeks de voorkeuren: Opslaan schrijft het hele formulier weg en zou een directe schrijf terugdraaien. Eén schakelaar, één opslagpad. - AiModuleCard/AiModuleOffNotice als losse widgets in widgets/dialogs/settings/ — de dialoogklasse bleef daarmee onder haar plafond, dat mee omlaag is gezet (5992 → 5989). - Zoekindex: de inschakel-ingang wijst naar Uitbreidingen (mét sectie-anker), de drie configuratie-ingangen dragen aiOnly en volgen de zichtbaarheid van het tabblad. - De hang waarop dit werk eerder strandde was oneindige recursie in de testhelper (moduleAanEnNaarTab riep zichzelf aan), geen Flutter-probleem. - Drie nieuwe interfaceteksten × 31 talen; docs (USER_GUIDE, AI_ASSIST §3.1, SOURCE_MAP, CHANGELOG) bijgewerkt. Poort: make check groen (6.041 tests), plus check-secrets en sast schoon. Bewaker overgeslagen — geen bestandsformaat, opslag, afhankelijkheid, uitgaand verkeer of publieke belofte geraakt. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Code af, tests niet. Zie de reactie op #731 voor de stand.
Het vaste AI-tabblad suggereerde een vaste functie; AI is een optionele
module met een netwerkuitgang die je bewust aanzet, en die hoort waar de
andere optionele functionaliteit woont: als modulekaart op Uitbreidingen.
Het eigen tabblad verschijnt zodra de module aan staat, en blijft met de
module uit bestaan zolang er een backend geconfigureerd is — uitzetten
mag bestaand werk niet onbereikbaar maken (#648).

De kaart bedient het formulierveld en niet rechtstreeks de voorkeuren:
AiForm.save schrijft bij Opslaan het hele formulier weg, inclusief
enabled, en zou een direct geschreven voorkeur terugdraaien. Eén
schakelaar, één opslagpad.

De hang waarop dit werk eerder strandde was geen Flutter-mysterie maar
oneindige recursie in de testhelper: moduleAanEnNaarTab riep zichzelf
aan in plaats van de schakelaar om te zetten.

Drie nieuwe interfaceteksten, meteen in alle 31 talen.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
De rebase bracht deze #648-test van main mee; navItems draagt sinds dit
werk een derde verplichte parameter, en het AI-tabblad bewijst hier nu
dezelfde regel als de checklists-tab.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
De kaart en de module-uit-melding raken alleen een formulierwaarde en
een callback; ze horen niet in de part-scope van _SettingsDialogState.
Zelfde recept als SetAsidePrivacyFindings. Plafond mee omlaag naar 5989.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
brenno merged commit 1e089969e8 into main 2026-07-23 15:15:06 +00:00
Sign in to join this conversation.
No description provided.