docs(cordn): mark i18n drift + shareable invite done; note unread needs a signed fetch

This commit is contained in:
SkateSpots 2026-10-13 19:19:08 +07:00
parent a9669c17b8
commit a18997d348

View file

@ -35,13 +35,17 @@ never badge the MLS chat "On" when it hasn't been created.
| 12 | Info | By design | The coordinator sees **ciphertext + metadata only**; the card and the Settings privacy note say so plainly. | | 12 | Info | By design | The coordinator sees **ciphertext + metadata only**; the card and the Settings privacy note say so plainly. |
## Still open / next ## Still open / next
- **Onboarding the first member**: the flow works (create → ask → approve) but is - **Unread for the Private chat**: ⚠️ needs a **signed fetch** — the MLS messages
three taps across two people. A shareable "join this crew's chat" link that are behind the coordinator's ContextVM RPC, with no cheap metadata peek (that
pre-fills the join request would remove the guesswork. was the retired sealed-relay path). Options: a **silent-signers-only** background
- **Unread for the Private chat** : deferred (needs a background signed request). fetch (no dot for Amber), or leave it. A local-only dot would be misleading.
- **Persisted DM decrypt cache** (from the Amber audit) so the *first* load per - ~~Shareable "join this crew's chat" link~~ ✅ **done** — the panel's admin
app start stops being a decrypt storm. **Invite** action shares `…/crew/<pk>/<id>?tab=mls` via the OS share sheet /
- Translate the new keys beyond en/es. clipboard.
- ~~i18n drift~~ ✅ **done** — all 20 locales back to 100% (see AGENTS.md).
- **Persisted DM decrypt cache**: ✅ done (`src/lib/dmDecryptCache.ts`).
- **Broad polish**: still open — candidates: a "Clear cached messages" action,
entry-bundle trim, a11y, empty/error-state consistency.
## Verified ## Verified
`npm test` + `check-i18n` green; `?tab=mls` deep-link wired through the crew page. `npm test` + `check-i18n` green; `?tab=mls` deep-link wired through the crew page.