Commit graph

11 commits

Author SHA1 Message Date
Bruno Deanoz
15f5781824 fix: close biometric bypass on locked conversations
Three paths in openConversation() called unlockAndOpen() without any
authentication when biometrics were unavailable. Sidebar ToggleLock
also sent PATCH { locked: false } without auth.

- Unified requestBiometricOrPassword() gates all unlock paths
- PasswordUnlockDialog as fallback when biometrics unavailable
- KaizenApi.requestUnlock() sends password to server for verification
- All unlock flows (open chat + sidebar toggle) now require auth
2026-06-22 13:27:55 +02:00
Bruno Deanoz
f8e1747df4 docs: comprehensive CLAUDE.md update for 2026-06-21/22 session
Added 16 new feature commits to the shipped features table.
Updated TODO lists (conversation management, biometric unlock,
sources all marked done). Documented 10 bugs fixed. Added 3 new
constraints/gotchas (keyboard handling, Room schema, BiometricPrompt
context). Updated dependencies (biometric), test descriptions
(reasoning/sources round-trips, SearchSource converter).
2026-06-22 01:35:26 +02:00
Bruno Deanoz
0db20bfda8 docs: document keyboard handling approach (offset, not imePadding) 2026-06-22 01:23:30 +02:00
Bruno Deanoz
edbdbd8697 docs: update CLAUDE.md with biometric unlock + reasoning persistence 2026-06-21 23:58:05 +02:00
Bruno Deanoz
3986443a56 docs: update CLAUDE.md with final attachment menu design 2026-06-21 20:06:43 +02:00
Bruno Deanoz
2e323f3609 docs: update CLAUDE.md with all session changes
Added: gradient scrims, mode pills multi-select, EmptyHero centering,
settings layout fix, theme switching wiring, i18n cleanup, ToolEventsBlock
state machine, attachment picker menu, background prefetch, migration
watermark fix documentation.
2026-06-21 18:48:52 +02:00
Bruno Deanoz
9f2a7f2984 docs: CLAUDE.md — complete update for design system v2 session
Added: sentinel parsing section (reasoning/sources/tools/query),
app icon section, updated TODO checklist (3 items checked off),
removed pre-existing OklabTest failures section (all fixed),
updated test descriptions, removed stale branch reference.
2026-06-21 15:38:12 +02:00
Bruno Deanoz
736bb4c206 feat: persistent settings + server sync + language selector
Settings now persist across app restarts via SecureStore:
- Theme (KaizenThemeId), appearance (Light/Dark/System), username, locale
- All loaded on SettingsViewModel init, saved on every change

Server sync: fetchMe() returns name + email from /api/v1/me,
populates SettingsViewModel on login and each foreground resume.

Language selector: System / Deutsch / English pill toggle in Settings.
Locale preference stored; runtime switching deferred to next iteration.

MeResponse expanded to parse name + email (was defaultModel only).
SettingsViewModel tests updated for store-less default state.
2026-06-21 15:26:14 +02:00
Bruno Deanoz
515a71efb5 feat: Inter Variable font, theme picker wired end-to-end, settings i18n
Inter Variable (v4.1, 859 KB): full type scale with 9 weight axes
(W100–W900), negative tracking at display sizes, positive at labels.

Theme picker: SettingsViewModel now uses KaizenThemeId from the design
system (AMBER/BLAU/MONO/AURORA). MainActivity wires selectedTheme +
appearanceMode to KaizenTheme composable — switching themes in Settings
instantly propagates to the entire app.

No server sync needed — web stores theme in localStorage, app stores
locally. Backend /api/v1/me has no uiTheme field in the DB.

Settings strings migrated to string resources (de + en).
SettingsViewModelTest updated for new enum values + System default.
2026-06-21 15:17:17 +02:00
Bruno Deanoz
e3d624c961 feat: orb uses rememberTiltState(), update CLAUDE.md with i18n + migration status
KaizenOrb now uses centralized rememberTiltState() (GAME_ROTATION_VECTOR,
lifecycle-aware, battery-saver-aware) instead of inline sensor code.
Breath animation uses Durations tokens from motion system.

CLAUDE.md: updated design system section with GlassSurface correction
(no backdrop-filter on Android), migration status (all components done),
i18n section documenting the de/en string resource architecture.
2026-06-21 15:04:31 +02:00
Bruno Deanoz
f1c6a88c4c docs: add CLAUDE.md as architecture map (renamed from NEXT.md)
Adds design system v2 section covering P3 colors, squircle shapes,
GlassSurface, multi-layer shadows, 4-theme system, sensor tilt state,
motion tokens, and new test inventory.
2026-06-21 14:35:45 +02:00