55 Commits

Author SHA1 Message Date
TrochtaOndrej ab0acf60b4 docs: document fatal-log and training-log sync endpoints
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-30 03:08:12 +02:00
TrochtaOndrej 17b1171e9b feat: add web platform support and fix smoke test
- Update .metadata to include web platform (replaces android/ios entries)
- Enable core library desugaring for Android (Java 8+ API support)
- Fix widget_test smoke test with proper provider overrides

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 09:39:13 +01:00
TrochtaOndrej 303a62b95e Merge NM-App-405-fix-gitignore-add-claude-web-claire into dev
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 01:00:47 +01:00
TrochtaOndrej 5fa10a13f0 docs: document .gitignore AITM artifact exclusions
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-23 15:17:38 +01:00
TrochtaOndrej eb64c0f60a fix: add .claude/, web/, .claire/ to .gitignore
Replace narrow .claude/worktrees/ pattern with .claude/ and add
web/ (Flutter web build output) and .claire/ (AITM worktree files).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-23 15:14:38 +01:00
TrochtaOndrej 55be1e7e4e Merge NM-App-335-add-app-skin-theme-system-with-7-switchable-skins into dev 2026-03-21 18:27:46 +01:00
TrochtaOndrej fd30dfb07f docs: rewrite skin-theme-system docs to reflect SkinType/SkinColors/SkinTypography architecture
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-21 18:27:35 +01:00
TrochtaOndrej 326a9dbcee feat: implement 7-skin theme system with persistent selection
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-21 18:11:47 +01:00
TrochtaOndrej 6e0a7e9760 Merge NM-App-335-more-skin into dev 2026-03-20 22:19:14 +01:00
TrochtaOndrej 214b697145 docs: document app skin/theme system with 7 switchable skins
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-20 22:18:59 +01:00
TrochtaOndrej 0d0d518678 Merge NM-App-333-add-i18n-with-external-json-resource-files-en-cz into dev 2026-03-20 21:33:42 +01:00
TrochtaOndrej c8d69f7b9b docs: document i18n implementation with external JSON resource files
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-20 21:33:31 +01:00
TrochtaOndrej be75f129c9 feat: add i18n with external JSON resource files (EN + CS)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-20 21:23:59 +01:00
TrochtaOndrej b4513f78d7 Merge NM-App-302-run-as-service into dev 2026-03-20 01:04:35 +01:00
TrochtaOndrej f15d1985aa docs: ServiceLicence systemd integration with AITM dashboard
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-20 01:04:23 +01:00
TrochtaOndrej 7b8af7a101 Merge NM-App-245-fix-pet-state-persistence-and-dart-io-web-crash into dev 2026-03-19 23:43:15 +01:00
TrochtaOndrej 0f4d016ce3 docs: pet state persistence and web crash fix documentation
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 23:43:04 +01:00
TrochtaOndrej 9a0f44288a fix: set energyToday: 2 when inserting initial pet state during onboarding
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 23:05:08 +01:00
TrochtaOndrej ef67280298 fix: pet state persistence and dart:io web crash
- Replace dart:io Platform with flutter/foundation defaultTargetPlatform in onboarding
- Add petRepositoryProvider to task_providers.dart
- Add petStateStreamProvider; rewrite PetStateNotifier.build() to load from DB
- Add _persist() to PetStateNotifier, call from incrementTasksDone()
- Insert PetStateEntity during onboarding after createUser()

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 23:04:01 +01:00
TrochtaOndrej dc66ee23e6 Merge NDM-App-233-user-onboarding-persistence-save-to-db-load-on-sta into dev 2026-03-18 21:15:22 +01:00
TrochtaOndrej 88c5ffe51f feat: User/onboarding persistence — save to DB, load on startup [AITM-233] 2026-03-18 21:15:22 +01:00
TrochtaOndrej 23fcc86fd2 feat: User/onboarding persistence — save to DB, load on startup [AITM-233] 2026-03-18 21:12:33 +01:00
TrochtaOndrej d7eb04b788 Merge NDM-App-232-connect-addtask-to-drift-db-remove-sample-tasks into dev 2026-03-18 21:08:17 +01:00
TrochtaOndrej 394191b573 feat: Connect AddTask to Drift DB — remove sample tasks [AITM-232] 2026-03-18 21:08:17 +01:00
TrochtaOndrej b8f1e9bdb8 feat: Connect AddTask to Drift DB — remove sample tasks [AITM-232] 2026-03-18 21:06:33 +01:00
TrochtaOndrej cceaae916c Merge NDM-App-231-check-all-task-and-verify-if-is-everything-in-app into dev 2026-03-18 20:18:20 +01:00
TrochtaOndrej 95752b704b docs: document app audit fixes and test coverage
Captures the full audit checklist, all direct fixes applied (router
dedup, PetType canonical import, FAB fix, Czech diacritics, entity
alignment), and the 7 new test files (78 tests) added in this task.
Lists remaining AITM tasks for missing features.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-18 20:18:09 +01:00
TrochtaOndrej c425e99ecc fix: use PetMood enum in _petMessage, remove dead Routes.home
- _petMessage now accepts PetMood enum directly (was String) — exhaustive
  switch, no silent fall-through on rename
- Remove unused Routes.home = '/' constant (initialLocation uses Routes.tasks)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-18 20:09:09 +01:00
TrochtaOndrej ed4d9882c9 fix: resolve compile errors and fix Czech diacritics across all screens
- Merge Routes class into routes.dart, remove duplicate from app_router.dart
- Remove stale/orphaned .g.dart files (app_router.g.dart, pet_providers.g.dart,
  task_providers.g.dart) — they were generated by a mismatched Riverpod version
- Remove local PetType enum from onboarding_providers.dart, import from domain
- Add domain PetType import to onboarding_screen.dart
- Fix FAB in tasks_screen.dart to call showAddTaskSheet() instead of context.push
- Fix petMood.name → petMood.emoji in PetBubble mood parameter
- Align TaskEntity and UserEntity with DB schema: String ids, add missing fields
  (photoPath, snoozeUntil, syncedAt, localId on tasks; deviceId, createdAt,
  updatedAt on users) to fix repository compile errors
- Fix TasksNotifier methods to accept String ids
- Fix Czech diacritics in: tasks_screen, energy_badge, task_card, app_shell,
  pet_screen, profile_screen, zen_screen, pet_type, czech_date
- Regenerate all .g.dart files with build_runner

flutter analyze: No issues found

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-18 20:05:16 +01:00
TrochtaOndrej cfed692c89 Merge NDM-App-221-fix-widget-api-mismatches-build-errors-after-merge into dev 2026-03-18 11:32:06 +01:00
TrochtaOndrej d34a036518 docs: document widget API fix and add architectural patterns to CLAUDE.md
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-18 11:31:53 +01:00
TrochtaOndrej adc2f72a6d fix: apply review feedback — type safety, overdue logic, dead code
- _EmptyState: accept PetType enum directly; use .emoji getter
  (drops string conversion round-trip and duplicate emoji mapping)
- TaskCard: compute _isOverdue from task.deadline when task is provided
  (previously isOverdue never fired when using the task: param)
- userNameProvider: derive from userProvider.name instead of hardcoded 'Zuf'
  (name was split across two independent providers)
- _petMessage: add explicit 'neutral' branch, remove unreachable 'sleepy' branch
  (PetMood enum has no .sleepy; neutral was silently falling to _)
- EnergyBar/EnergyBadge: assert both params not null simultaneously
  (EnergyBar() / EnergyBadge() previously compiled silently with default low)
- todayTasksProvider: fix comment — no date filtering in MVP

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-18 11:18:26 +01:00
TrochtaOndrej 371e8260ac fix: resolve widget API mismatches and build errors after merge
- EnergyBar: add energyLevel int? param, make fraction optional
- EnergyBadge: add energyLevel int? param, make level optional
- StreakDots: add streakDays int? param, make days/streakCount optional
- TaskCard: add task TaskEntity? and onComplete VoidCallback? params
- PetBubble: replace local PetType enum with domain PetType import
- TaskEntity: add isCompleted getter (status == TaskStatus.done)
- TasksNotifier: add uncompleteTask() method
- task_providers: add todayTasksProvider alias for tasksProvider
- PetStateNotifier: fix constructor (String ids, updatedAt), add onTaskCompleted()
- TasksScreen: watch userProvider + petMoodProvider, fix PetBubble/EmptyState calls

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-18 11:11:35 +01:00
TrochtaOndrej b75266f67c feat: add Flutter pipeline agents and skills
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-18 05:13:47 +01:00
TrochtaOndrej 5ef66d793a chore: track .claude/ agents, skills and config in git
Add .claude/worktrees/ to .gitignore to prevent worktree directories
from being accidentally committed.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-18 04:58:09 +01:00
TrochtaOndrej 3740898bcb test: Repository tests for Drift database layer 2026-03-18 04:42:49 +01:00
TrochtaOndrej 652250270b Merge NDM-App-196: Onboarding flow + Add Task bottom sheet 2026-03-18 04:42:21 +01:00
TrochtaOndrej 21c431c539 feat: Onboarding flow + Add Task bottom sheet 2026-03-18 04:41:49 +01:00
TrochtaOndrej 14cd7e45a4 Merge NDM-App-191: Riverpod providers + GoRouter + AppShell (with generated code) 2026-03-18 04:41:32 +01:00
TrochtaOndrej d44230b455 feat: Riverpod providers + GoRouter + AppShell (with generated code) 2026-03-18 04:40:55 +01:00
TrochtaOndrej ae0ee8dfd4 Merge NDM-App-197: Pet Stats Screen + Zen Mode + Profile scaffolding 2026-03-18 04:40:01 +01:00
TrochtaOndrej 4147cb1e8b feat: Pet Stats Screen + Zen Mode + Profile scaffolding 2026-03-18 04:37:42 +01:00
TrochtaOndrej 7ecd1c8192 Merge NDM-App-195: Home Screen — router, providers, TasksScreen scaffold 2026-03-18 04:37:18 +01:00
TrochtaOndrej e507c92f73 feat: Home Screen — router, providers, TasksScreen scaffold 2026-03-18 04:36:29 +01:00
TrochtaOndrej 7a97e6ab9c Merge NDM-App-194: Shared Widgets — EnergyBadge, EnergyBar, PetBubble, BottomSheetScaffold 2026-03-18 04:35:56 +01:00
TrochtaOndrej eafe559d3f feat: Shared Widgets — EnergyBadge, EnergyBar, PetBubble, BottomSheetScaffold 2026-03-18 04:35:50 +01:00
TrochtaOndrej 0ed3dce0c7 Merge NDM-App-189: Domain Entities — Task, PetState, User 2026-03-18 04:35:43 +01:00
TrochtaOndrej 4ea96f0803 feat: Domain Entities — Task, PetState, User 2026-03-18 04:35:30 +01:00
TrochtaOndrej 9f76cbee9f Merge NDM-App-190: Drift Database — tables, DAOs, repositories 2026-03-18 04:35:06 +01:00
TrochtaOndrej 667da8e41b docs: add DocumentSW documentation for Drift database layer
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-18 00:20:01 +01:00