diff --git a/help4bis-claude-notes/decisions.md b/help4bis-claude-notes/decisions.md new file mode 100644 index 0000000..ad92c65 --- /dev/null +++ b/help4bis-claude-notes/decisions.md @@ -0,0 +1,23 @@ +### 2026-04-10 18:00 — Enable Olm E2EE in web build +- **Decision:** Re-enabled Olm encryption in index.html with synchronous load + Olm.init() before Flutter boots, graceful fallback if Olm fails +- **Rationale:** 45 of 88 rooms have Megolm encryption. MatrixSdkDatabase persists Olm keys in IndexedDB resolving /keys/upload 400 errors +- **Files affected:** web/index.html, lib/main.dart, app_config.dart, auth_repository.dart, pubspec.yaml +- **Status:** Working — device keys uploaded, messages encrypt/decrypt correctly + +### 2026-04-10 17:25 — Deploy target is app2.m8chat.au NOT app.m8chat.au +- **Decision:** app.m8chat.au = PRODUCTION (old FluffyChat). app2.m8chat.au = dev/test for m8chat-app2 +- **Rationale:** User corrected after accidental production deploy. Production restored from backup. +- **Status:** All future deploys to app2.m8chat.au + +### 2026-04-10 17:15 — Lazy-load Jitsi external_api.js +- **Decision:** Moved from index.html to dynamic load in jitsi_web_service.dart +- **Rationale:** Brave blocks cross-origin scripts at page load +- **Status:** Done + +### 2026-04-10 17:10 — Add MessageType.encrypted with lock icon UX +- **Files:** message_model.dart, chat_repository.dart, message_bubble.dart, room_preview.dart +- **Status:** Done + +### 2026-04-10 17:05 — Fix web metadata to M8Chat branding +- **Files:** web/index.html, web/manifest.json +- **Status:** Done