|
24 | 24 | | --- | --- | --- | |
25 | 25 | | Repository shape | Separate mobile and video packages | Avoid Expo monorepo complexity | |
26 | 26 | | Recipe content | Exactly 12 original recipes and at least 30 normalized ingredients | Sufficient demo variety within the deadline | |
27 | | -| Language | English UI with Traditional Chinese ingredient aliases | Local relevance without full i18n scope | |
| 27 | +| Language | Complete English, Simplified Chinese and Traditional Chinese UI/content | Approved T23 scope expansion; saved choice overrides device locale | |
28 | 28 | | Video | 90 seconds, 1920x1080, 60 fps | Inside the required one-to-two-minute range; smoother app footage | |
29 | 29 | | Android top-level navigation | Five Expo Router Native Tabs | Native safe-area handling; Settings is discoverable from every tab | |
30 | 30 | | Expiry card copy | `USE BY / THURSDAY` | `THU` meant Thursday, not a university; spelling it out removes ambiguity | |
|
47 | 47 | - Food dates use the Asia/Hong_Kong local calendar. Past Use By items are excluded from Rescue; Best Before never becomes a safety verdict. |
48 | 48 | - Domain rules, migrations and notification policy use TDD. UI behavior is covered by component tests and real Android QA. |
49 | 49 | - Android is fully verified. iOS receives static/export coverage only and must not be called device-tested. |
50 | | -- The visual direction is warm editorial pantry; English UI includes Chinese ingredient aliases without full bilingual i18n. |
| 50 | +- The visual direction is warm editorial pantry; T23 localizes the complete product and bundled content in English, Simplified Chinese and Traditional Chinese without translating user/OFF free text. |
51 | 51 | - Report and video claims are source-backed, and video app visuals come only from the real Android build. |
52 | 52 | - Android edge-to-edge navigation uses native tabs and explicitly validates gesture/three-button modes at 320dp and 200% text. |
53 | 53 | - Video captions use 40px Manrope in one/two compact lower-left boxes; sequence timing is expressed in seconds and converted through the 60fps contract. |
54 | 54 |
|
55 | 55 | ## Scope boundaries |
56 | 56 |
|
57 | 57 | - Included: seven core surfaces, lightweight onboarding and Settings/About, food CRUD, five date bases, local notifications, twelve recipes, outcomes, Insights, optional product lookup, deterministic demo data, Android APK/evidence, report, demo kit, video and clean submission package. |
58 | | -- Excluded: authentication, cloud sync, sharing, social/chat/payment, shopping collaboration, AI, OCR, expiry prediction, medical or safety diagnosis, quantified environmental savings, partial quantities, item photos, dark mode, tablet specialization, full Chinese UI, app-store release and iOS device verification claims. |
| 58 | +- Excluded: authentication, cloud sync, sharing, social/chat/payment, shopping collaboration, AI, OCR, expiry prediction, medical or safety diagnosis, quantified environmental savings, partial quantities, item photos, dark mode, tablet specialization, network translation, app-store release and iOS device verification claims. |
59 | 59 |
|
60 | 60 | ## Review and approval history |
61 | 61 |
|
|
64 | 64 | - 2026-07-15: the user approved the recommended defaults and authorized implementation. |
65 | 65 | - 2026-07-16: T01-T15 are recorded complete in the work plan. T16 is the next permitted implementation stage. |
66 | 66 | - 2026-07-21: T21/T22 adopt native five-tab navigation, `THURSDAY`, compact lower-left captions, shared cross-platform recording actions, and a 60fps/5400-frame final render while preserving T18 as historical evidence. |
| 67 | +- 2026-07-24: the user explicitly approved T23 complete trilingual localization and T24 contract-tested macOS Android tooling as the only post-freeze scope expansions. Android remains the only fully device-verified platform; hosted Mac CI is not device/emulator proof. |
67 | 68 | - 2026-07-21: after reviewing publication risk, the user required the original course brief and MP4 delivery assets to remain Git-ignored. The course brief is listed in `.worktreeinclude` so Codex-managed worktrees can use the local file without publishing it. |
68 | 69 |
|
69 | 70 | ## Open questions |
|
0 commit comments