tane/apps/app_seeds/test
vjrj 9cc1a5e171 feat(block2): show contact names (resolve peers' published profiles)
Closes the profile loop — peers now appear by name, not a raw key.
- ProfileCache: keystore-backed cache of peers' published display names (works
  offline) + shortPubkey() fallback.
- Chat: the app bar shows the peer's name (cached first, then freshened from
  their kind:0 over the session); falls back to a short key.
- Inbox: each conversation shows the cached name, and missing names are resolved
  over one session and cached.
- Wired via DI + TaneApp(profileCache).

Analyzer clean; ProfileCache covered by a plain test.
2026-07-10 12:47:48 +02:00
..
data feat(block2): publish my seeds to the network (completes publish->discover) 2026-07-10 10:18:30 +02:00
db style: dart format reflow (no behavior change) 2026-07-09 22:19:43 +02:00
domain feat(species): auto-classify variety species from its label 2026-07-10 02:23:32 +02:00
i18n feat(block1): inventory walking skeleton + first quick-add slice 2026-07-07 15:16:14 +02:00
security feat(block1): inventory walking skeleton + first quick-add slice 2026-07-07 15:16:14 +02:00
services feat(block2): show contact names (resolve peers' published profiles) 2026-07-10 12:47:48 +02:00
state feat(block2): persist chat history (messages survive leaving the chat) 2026-07-10 12:20:25 +02:00
support i18n: RTL smoke tests, Portuguese locale and a translation guide 2026-07-09 23:06:49 +02:00
tool feat(species): expand catalog to ~1200 edible species from Wikidata 2026-07-10 02:00:47 +02:00
ui test(block2): drop the market discover widget tests that hang the runner 2026-07-10 12:14:53 +02:00
flutter_test_config.dart feat(block1): inventory walking skeleton + first quick-add slice 2026-07-07 15:16:14 +02:00