From 65aa6c93153b28554127627dde2883a0685eeaff Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Fri, 2 Oct 2026 09:17:48 -0700 Subject: Never write a follow list over one we failed to find A kind 3 is replaceable: publishing one built on a list we didn't find wipes the real one wherever it lands. 2026-10-02, an Amethyst user with 398 follows (kept on her own relays and an archive) signed in to coinos for the first time; the starter-follows seed asked only our relays, saw nothing, and published Adam + coinos over her list. - deepContactList: our relays, the profile indexes, the archives, the person's own NIP-65 write relays, and Primal's signed copy (verified). - Starter follows only for a key with no follow list AND no profile anywhere ('new' meant new to coinos, not new to nostr). - A follow, follow-many or mute made while we have never seen the list does the deep lookup first and builds on what it finds. - Settings > Nostr > Follow list: find older copies on history-keeping relays and restore one as a union with the current list (nobody is removed), for anyone already hit. - tools/follows-overwrite-test.js: fake relay network, only an archive holds the list; fails on the old code with the exact two-person event. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01Dmcrt9KyNDKVWFKnb8BREo --- src/locales/bn.json | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/locales/bn.json') diff --git a/src/locales/bn.json b/src/locales/bn.json index b2f8b5f..c5fc411 100644 --- a/src/locales/bn.json +++ b/src/locales/bn.json @@ -870,5 +870,13 @@ "profFollowersNone": "কোনো অনুসারী পাওয়া যায়নি।", "profFollowersPartial": "{total} জন অনুসারীর মধ্যে {n} জন দেখানো হচ্ছে।", "showMore": "আরও দেখুন", - "arkZapNoPostZap": "এই পোস্টে zap করা যাবে না: লেখকের কোনো Lightning ঠিকানা বা Ark ঠিকানা নেই।" + "arkZapNoPostZap": "এই পোস্টে zap করা যাবে না: লেখকের কোনো Lightning ঠিকানা বা Ark ঠিকানা নেই।", + "followHistTitle": "ফলো তালিকা", + "followHistDesc": "আপনি {n} জনকে ফলো করেন। অন্য কোনো অ্যাপ আপনার ফলো তালিকা বদলে দিলে, পুরোনো একটি কপি ইতিহাস রাখা কোনো রিলেতে থাকতে পারে। পুনরুদ্ধার করলে সবাই ফিরে আসে; কাউকে সরানো হয় না।", + "followHistLook": "পুরোনো কপি খুঁজুন", + "followHistPeople": "{n} জন", + "followHistRestore": "{n} জন ফিরিয়ে আনুন", + "followHistNone": "কোনো পুরোনো কপিতে এমন কেউ নেই যিনি আপনার তালিকায় নেই।", + "followHistNothing": "ওই কপির সবাই ইতিমধ্যে আপনার তালিকায় আছেন।", + "followHistRestored": "{n} জনকে আবার ফলো করা হয়েছে।" } -- cgit v1.2.3