This was discovered by Jim East:

https://slrpnk.net/post/27305276/18006810

I must say it fails the principle of least astonishment. If a user blocks Lemmy.World but subscribes to !linux@lemmy.world, for example, they obviously want to exceptionally see content in the subscribed community but nothing else from that node. But what happens is the instance block overrides the specific community subscription. So the general rule is prioritised above the specific rule.

And worse, when visiting the subscribed community it just shows no posts without reminding the user that they have a relevant block in place.

  • activistPnk@slrpnk.netOP
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    9 days ago

    This current behaviour does make the most sense to me.

    Can you elaborate? If you block a whole instance but then specifically subscribe to community X on that instance, what would the point be to subscribing to a community on an instance you block other than to have exceptional visibility on that community?

    What do you get by subscribing to a community on a blocked instance under the current implementation?

    You would be able to set a full instance block on the instance that works exactly as it does today,

    To be clear, there is no such thing as a full instance block w/the stock client. E.g. when you block an instance public comments from that instance are still displayed. Just not DMs and community timelines (even when subscribed). So the devs have selected /some/ content to still be visible from blocked instances, and it defies intuition.

    • SatyrSack
      link
      fedilink
      arrow-up
      1
      ·
      9 days ago

      Nothing. It makes sense to me that blocking an instance would block EVERYTHING from that instance. The “Subscribe” button on should probably currently be disabled on all communities on a blocked instance. To me, a block is a block. If someone wants to block something but allow a certain subset of that blocked thing, there needs to be some whitelist/blacklist system instead of the simpler “it’s either blocked or it isn’t” settings available right now.

      • activistPnk@slrpnk.netOP
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        9 days ago

        The problem with this way of thinking is it nannies the user by disregarding their express instructions. Telling users what they really want instead of acting on their commands. It’s a subtle attack on users’s dignity and self-determination because it denies them control (without even telling them). It’s like Google deciding to change your search queries for you.

        If you look at other systems (well designed systems) involving complex rules like a variety of firewalls and email processing rules, or tools like rsync, they are sophisticated and wise enough to not assume the user’s input is a mistake when a sensible interpretation is possible. They act on the user’s instructions. If a user does a general block but specifies a specific criteria to the contrary, there is only one smart way to interpret that while respecting the user’s wishes: to prioritise the specific rules above the general rules.

        Otherwise you have blunt tools, disserviced nannied users, and chaos.

        It makes sense to me that blocking an instance would block EVERYTHING from that instance.

        But that’s not happening. The current implemation does not block everything. E.g. you still see public comments from the blocked instance. Lemmy is still deciding what the block and what not to block. And what it decides to block fails “the rule of least astonishment¹” particularly compared to what it decides /not/ to block.

        ¹ the principle/rule of least astonishment is an engineering concept that requires the system to behave in the least astonishing way. In the case at hand, if the user sees the contents of a community they subscribed to but nothing else on an instance they generally blocked, there would be no astonishment because the system would be acting on the user’s instructions. But the status quo is astonishing because the system decides to ignore some of the user’s instructions.

        I believe what has happened is that Lemmy is so rich with bugs that users are simply conditioned to expect it to work poorly.

        • SatyrSack
          link
          fedilink
          arrow-up
          2
          ·
          9 days ago

          Right, which is why Lemmy should optimally implement some firewall-esque whitelist/blacklist system instead of the blunt tool that is in place now. Users would get the full/fine control over their feed that you want, but implemented in a way that should confuse no one.

          With that said, the fact that you currently still see comments from users on blocked instances is definitely a bug. Regardless of the outcome of this (whether a blacklist/whitelist system is added, your suggestion is implemented, or Lemmy filters just continue working like this forever), that needs to be solved.