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. |
||
|---|---|---|
| .. | ||
| data | ||
| db | ||
| di | ||
| domain | ||
| i18n | ||
| security | ||
| services | ||
| state | ||
| ui | ||
| app.dart | ||
| main.dart | ||