QA round 1 (commit 9a9eb2a) FAIL 시 누락된 두 AC 보강.
AC-6: device_info_plus 만으론 4GB 임계 측정 불가 (isLowRamDevice 는
~1GB 기준). MethodChannel `life_helper/device_caps` 신설 + MainActivity.kt
에서 ActivityManager.MemoryInfo.totalMem 노출. data/ai/device_capabilities.dart
는 DeviceCapabilities abstract + PlatformDeviceCapabilities + 4 GiB
임계. deviceMeetsAiRamProvider (FutureProvider<bool>, fail-closed).
SettingsScreen 토글 disabled + "RAM 부족" 안내 (RAM < 4GB).
AC-10: docs/reference/215-ai-frame-suggest.md 의 OQ-1/placeholder
6곳을 실 구현 표현으로 갱신. §8 알려진 제약 = AC-6 device gate +
AC-7 실 단말 E2E + F1 unload + #221 corpus 평가. §9 다음 단계 =
#219~#222 follow-up 목록. 신규 테스트 합계 41 / 전체 88 통과.
테스트: device_capabilities_test.dart 7 신규 (kAiMinRamBytes 동등,
null/0/3.9GB/4GB-1/4GB/8GB 경계). flutter analyze 무이슈, 전체 88 통과
(71 기존 + 10 gemma + 7 RAM gate).
Architect 설계서 §4 의 "RAM 4GB 차단 = AC-9 재활용" 문구는 사실 #215
미구현 사항이라 본 라운드에서 신규 추가했음을 README 에 명기.
Refs #218
52 lines
984 B
YAML
52 lines
984 B
YAML
name: life_helper
|
|
description: "Huberman + Atomic Habits + Tiny Habits + If-Then. Local-first habit/checklist/todo."
|
|
publish_to: 'none'
|
|
version: 0.2.0+2
|
|
|
|
environment:
|
|
sdk: ^3.12.2
|
|
|
|
dependencies:
|
|
flutter:
|
|
sdk: flutter
|
|
cupertino_icons: ^1.0.8
|
|
|
|
# State management
|
|
flutter_riverpod: ^2.5.1
|
|
|
|
# Local DB (Drift = sqlite ORM)
|
|
drift: ^2.18.0
|
|
sqlite3_flutter_libs: ^0.5.0
|
|
path_provider: ^2.1.0
|
|
path: ^1.9.0
|
|
|
|
# Models / serialization
|
|
json_annotation: ^4.9.0
|
|
|
|
# IDs
|
|
ulid: ^2.0.0
|
|
|
|
# AI / on-device LLM (#215, #218)
|
|
# #218 (v0.3.0): flutter_gemma 0.16.5 + Gemma 4 E2B (HF litert-community).
|
|
flutter_gemma: ^0.16.5
|
|
crypto: ^3.0.0
|
|
http: ^1.2.0
|
|
|
|
# Device info — RAM gate for AI opt-in (#218 AC-6)
|
|
device_info_plus: ^10.1.0
|
|
|
|
dev_dependencies:
|
|
flutter_test:
|
|
sdk: flutter
|
|
flutter_lints: ^6.0.0
|
|
|
|
# Codegen
|
|
drift_dev: ^2.18.0
|
|
build_runner: ^2.4.0
|
|
json_serializable: ^6.8.0
|
|
|
|
flutter:
|
|
uses-material-design: true
|
|
assets:
|
|
- assets/seed/
|