Skip to content

Piero Bosio Social Web Site Personale Logo Fediverso

Social Forum federato con il resto del mondo. Non contano le istanze, contano le persone

Alright it's late and i need to go to bed, but here's a draft FEP to do full account migration with posts and whatever other kinda objects you want to bring with you.

  • @gaditb
    Really good point, I have some ideas for language here, and there does need to be a bit more specificity about how to handle visibility for e.g. instance software that may not have blocks importing from software that does - basically that visibility must be at least as constrained as the source object

    @jonny Or at minimum alerted to the user, possible?

    But does that even. make sense? Most of the stuff here is, because of FEPs' linage from RFCs, spoken in the language of protocols and behavior/format specifications -- is it coherent to define a part of the specifications as the... I guess, social protocol, interface, etc., of a compliant piece of software towards its users?

    (On the one hand those are literally the original pre-computer definitions of "protocol" and "compliant", but on the other hand that is CLEARLY misusing the terms there.)

    And even if it is coherent, is it possible to actually do it without becoming a "the Passkey people yelling at and threatening the Keepass devs"?

  • @jonny Or at minimum alerted to the user, possible?

    But does that even. make sense? Most of the stuff here is, because of FEPs' linage from RFCs, spoken in the language of protocols and behavior/format specifications -- is it coherent to define a part of the specifications as the... I guess, social protocol, interface, etc., of a compliant piece of software towards its users?

    (On the one hand those are literally the original pre-computer definitions of "protocol" and "compliant", but on the other hand that is CLEARLY misusing the terms there.)

    And even if it is coherent, is it possible to actually do it without becoming a "the Passkey people yelling at and threatening the Keepass devs"?

    @gaditb
    I think both are needed and have their place. And in this case I am actually not sure if there is an opposing party to accidentally be perceived as yelling at - as far as I can tell people pretty universally agree that you should retain control of the things you said and did while moving around and not always lose everything (maybe there is some disagreement about what to move, but the FEP is purposely designed to leave that up to the implementation and ideally the actor)

  • @gatesvp
    All these questions are addressed in the FEP except moderation, and I'm talking with masto devs about what would be good there

    @jonny

    All these questions are addressed in the FEP except moderation

    You and I seem to be reading different docs here.

    I'm looking at FEP-73cd which looks like the best summary of the various complex cases and it still has several Required use cases that don't have an FEP specification. (table at the bottom)

    I'm looking at FEP-1580 and it seems to be operating under the base assumption that "everyone is OK with this". It doesn't use the word "admin" or "administrator" even once. It never addresses "mod" or "moderator" as one of the players in this process.

    The words "agreement" or "contract" appear zero times in the specification.

    I'm talking with masto devs about what would be good there

    That's a reasonable step, but again, I don't think that's the key problem. None of this matters without Masto Admins and Masto Mods also on board.

    Every failure case in these specs falls on Admins and Mods to resolve, shouldn't they be first consulted?

  • @jonny

    All these questions are addressed in the FEP except moderation

    You and I seem to be reading different docs here.

    I'm looking at FEP-73cd which looks like the best summary of the various complex cases and it still has several Required use cases that don't have an FEP specification. (table at the bottom)

    I'm looking at FEP-1580 and it seems to be operating under the base assumption that "everyone is OK with this". It doesn't use the word "admin" or "administrator" even once. It never addresses "mod" or "moderator" as one of the players in this process.

    The words "agreement" or "contract" appear zero times in the specification.

    I'm talking with masto devs about what would be good there

    That's a reasonable step, but again, I don't think that's the key problem. None of this matters without Masto Admins and Masto Mods also on board.

    Every failure case in these specs falls on Admins and Mods to resolve, shouldn't they be first consulted?

    @jonny

    This FEP is written to minimize the responsibility of the source instance,

    You have this line right there in the spec, and I just don't understand this assumption.

    By minimizing the responsibility of the Source instance, you're dumping all of the work on the Target and 3rd Party instances. But they're not the primary actors here.

    The key parts of this chain are the Actor and the Source. They trust each other.

    • They have an established User Agreement in place
    • The Source has an established history of Actor behaviour
    • The Actor has a high enough trust in the Source that they have published enough that it justifies migration

    When Actor signs up for an account with Target, that new Target User Agreement doesn't assume that Actor is going to bring 200k old posts with them.

    If I'm Target, I don't even want this. My default answer here is "no, you cannot do this without talking to me first". We don't have that relationship yet.

    This frankly sounds like a giant spam vector.

  • @jonny

    This FEP is written to minimize the responsibility of the source instance,

    You have this line right there in the spec, and I just don't understand this assumption.

    By minimizing the responsibility of the Source instance, you're dumping all of the work on the Target and 3rd Party instances. But they're not the primary actors here.

    The key parts of this chain are the Actor and the Source. They trust each other.

    • They have an established User Agreement in place
    • The Source has an established history of Actor behaviour
    • The Actor has a high enough trust in the Source that they have published enough that it justifies migration

    When Actor signs up for an account with Target, that new Target User Agreement doesn't assume that Actor is going to bring 200k old posts with them.

    If I'm Target, I don't even want this. My default answer here is "no, you cannot do this without talking to me first". We don't have that relationship yet.

    This frankly sounds like a giant spam vector.

    @jonny

    Inherent in your specification is the assumption that Target's default stance is simply to accept all incoming transfer requests as legitimate.

    This is a very Actor-centric view: "It's my content, I can bring it wherever I want, this should be as seamless as possible". But that's an oversimplification of the Publisher (Source) / Actor relationship that's actually in place.

    And I don't think that's a fair assumption on behalf of Target. In fact, I don't even think it's a safe assumption for the network as a whole, because it's a giant spam vector. None of this is should be automatic, Target needs an active sign-off on content transfers.

    I think this is relevant, because an active sign-off from both Source and Target actually changes parts of these specifications. They don't have to drip transfer, they can coordinate bulk operations, they can negotiate size limits, etc.

  • @jonny

    All these questions are addressed in the FEP except moderation

    You and I seem to be reading different docs here.

    I'm looking at FEP-73cd which looks like the best summary of the various complex cases and it still has several Required use cases that don't have an FEP specification. (table at the bottom)

    I'm looking at FEP-1580 and it seems to be operating under the base assumption that "everyone is OK with this". It doesn't use the word "admin" or "administrator" even once. It never addresses "mod" or "moderator" as one of the players in this process.

    The words "agreement" or "contract" appear zero times in the specification.

    I'm talking with masto devs about what would be good there

    That's a reasonable step, but again, I don't think that's the key problem. None of this matters without Masto Admins and Masto Mods also on board.

    Every failure case in these specs falls on Admins and Mods to resolve, shouldn't they be first consulted?

    @gatesvp

    It doesn't use the word "admin" or "administrator" even once. It never addresses "mod" or "moderator" as one of the players in this process.

    This is why I said "except moderation" and then said "I'm working on it"

    this is the least helpful feedback I've gotten, because you are indeed failing to read the document while also assuming that I haven't thought about the most basic parts of the problem.

  • @jonny

    This FEP is written to minimize the responsibility of the source instance,

    You have this line right there in the spec, and I just don't understand this assumption.

    By minimizing the responsibility of the Source instance, you're dumping all of the work on the Target and 3rd Party instances. But they're not the primary actors here.

    The key parts of this chain are the Actor and the Source. They trust each other.

    • They have an established User Agreement in place
    • The Source has an established history of Actor behaviour
    • The Actor has a high enough trust in the Source that they have published enough that it justifies migration

    When Actor signs up for an account with Target, that new Target User Agreement doesn't assume that Actor is going to bring 200k old posts with them.

    If I'm Target, I don't even want this. My default answer here is "no, you cannot do this without talking to me first". We don't have that relationship yet.

    This frankly sounds like a giant spam vector.

    @gatesvp
    I dont even know where to start with this because its just based on fully mis-understanding the document

  • @jonny

    Inherent in your specification is the assumption that Target's default stance is simply to accept all incoming transfer requests as legitimate.

    This is a very Actor-centric view: "It's my content, I can bring it wherever I want, this should be as seamless as possible". But that's an oversimplification of the Publisher (Source) / Actor relationship that's actually in place.

    And I don't think that's a fair assumption on behalf of Target. In fact, I don't even think it's a safe assumption for the network as a whole, because it's a giant spam vector. None of this is should be automatic, Target needs an active sign-off on content transfers.

    I think this is relevant, because an active sign-off from both Source and Target actually changes parts of these specifications. They don't have to drip transfer, they can coordinate bulk operations, they can negotiate size limits, etc.

    @gatesvp
    Again, see how in my initial response I said "except moderation" and "I'm working on it"

    The entire move process already requires an active sign-off from the source and target actors, and this FEP provides a means of proving that. It also directly addresses the possibility of bulk transfers and does as much as is feasible, and there is already a discussion on how it could be made more efficient.

  • @gatesvp
    Again, see how in my initial response I said "except moderation" and "I'm working on it"

    The entire move process already requires an active sign-off from the source and target actors, and this FEP provides a means of proving that. It also directly addresses the possibility of bulk transfers and does as much as is feasible, and there is already a discussion on how it could be made more efficient.

    @jonny

    The entire move process already requires an active sign-off from the source and target actors,

    But I'm not talking about the Source and Target Actors, I'm talking about the Source and Target Administrators. That's a different human.

    Again, I just read all of these specs for the first time this morning, it's very possible I missed something here. You seem pretty confident that you have addressed Administrator concerns. And I'm happy to retract all of my comments and provide different and more useful feedback if you can even just clip a portion of the text that I missed with respect to the Administrators and help me get up to speed.

  • @jonny

    The entire move process already requires an active sign-off from the source and target actors,

    But I'm not talking about the Source and Target Actors, I'm talking about the Source and Target Administrators. That's a different human.

    Again, I just read all of these specs for the first time this morning, it's very possible I missed something here. You seem pretty confident that you have addressed Administrator concerns. And I'm happy to retract all of my comments and provide different and more useful feedback if you can even just clip a portion of the text that I missed with respect to the Administrators and help me get up to speed.

    @gatesvp
    I haven't yet addressed moderation and I am working on it.

  • @gatesvp
    I haven't yet addressed moderation and I am working on it.

    @jonny @gatesvp I have also only skimmed briefly through your proposed FEP, and I am also mortally offended that you have not proposed detailed technical solutions to every single problem that could possibly occur in a complex system comprised of many interacting components.

    I must demand that you do so immediately, in a single toot, or I will feel morally obliged to berate you in my subsequent replies.

  • @jonny @gatesvp I have also only skimmed briefly through your proposed FEP, and I am also mortally offended that you have not proposed detailed technical solutions to every single problem that could possibly occur in a complex system comprised of many interacting components.

    I must demand that you do so immediately, in a single toot, or I will feel morally obliged to berate you in my subsequent replies.

    Look Mike, @FenTiger, I understand your sarcasm here. We are talking about public feedback on a public specification that affects multiple stakeholders.

    This back and forth thread is making it clear that at least two of the stakeholders, Admins and Moderators, have not been consulted into this specification. While this doesn't seem like a "mortal offense", it does seem like a pretty significant roadblock.

    If Admins don't agree to the spec, they're not going to roll it out on their servers. If they don't want this feature, nothing else matters.

    So @jonny, I really appreciate you writing all this down. It is a lot of work and it is very useful for future devs to make something like this happen.

    All of my feedback boils down to a simple thing.

    Some portion of this spec needs to be drafted and signed by a few Admins from a couple of the larger fediverse instances. If they're not on board, this will never happen. If they are on board, their requirements are going to dictate many aspects of this spec.//

  • Look Mike, @FenTiger, I understand your sarcasm here. We are talking about public feedback on a public specification that affects multiple stakeholders.

    This back and forth thread is making it clear that at least two of the stakeholders, Admins and Moderators, have not been consulted into this specification. While this doesn't seem like a "mortal offense", it does seem like a pretty significant roadblock.

    If Admins don't agree to the spec, they're not going to roll it out on their servers. If they don't want this feature, nothing else matters.

    So @jonny, I really appreciate you writing all this down. It is a lot of work and it is very useful for future devs to make something like this happen.

    All of my feedback boils down to a simple thing.

    Some portion of this spec needs to be drafted and signed by a few Admins from a couple of the larger fediverse instances. If they're not on board, this will never happen. If they are on board, their requirements are going to dictate many aspects of this spec.//

    @gatesvp
    @FenTiger
    I am both of those stakeholders, and as I said repeatedly, I am working on some language regarding moderation controls/the tools admins will have.

    As with all FEPs, it is a proposal. There are likely to be many apps and instances that do not implement it. That is fine, and specific affordances are made for that. Indeed it is the case that there can be multiple proposals for how to accomplish this that work differently, everyone is welcome to write one, this is the nature of a proposal process.

    Other admins and moderators have and will continue to make concrete criticisms and suggestions that have and will be integrated into this document which is explicitly marked as a work-in-progress.

  • @gaditb
    I think both are needed and have their place. And in this case I am actually not sure if there is an opposing party to accidentally be perceived as yelling at - as far as I can tell people pretty universally agree that you should retain control of the things you said and did while moving around and not always lose everything (maybe there is some disagreement about what to move, but the FEP is purposely designed to leave that up to the implementation and ideally the actor)

    @gaditb can i add you to acknowledgements in the FEP?

  • Alright it's late and i need to go to bed, but here's a draft FEP to do full account migration with posts and whatever other kinda objects you want to bring with you. It's a trivial expansion of existing ActivityPub/streams systems and supports gradual migration as it's implemented and after an account migration. It should be possible to migrate pretty much everything this way, both private and public objects.

    criticism, feedback, revisions, etc. welcome - i don't think this is a "final version" and there are certainly things i overlooked.

    https://codeberg.org/fediverse/fep/src/commit/e6f7b7ce32aa6f84dcfa7bfdc10fd65119d75984/fep/1580/fep-1580.md

    https://codeberg.org/fediverse/fep/pulls/692

    @jonny You boosted someone I think was saying good things about your post about your FEP but there's a warning and inability to see which of your posts it is:

  • @jonny You boosted someone I think was saying good things about your post about your FEP but there's a warning and inability to see which of your posts it is:

    @Configures huh, weird, will check that out in the morning, thanks for letting me know. i assume still some bugs in the quote implementation


Gli ultimi otto messaggi ricevuti dalla Federazione
Post suggeriti
  • 0 Votes
    1 Posts
    9 Views
    "Fedify 2.0.0 está aqui!Esta é a maior atualização da história do Fedify. Destaques:**Arquitetura modular** – O pacote monolítico `@fedify/fedify` foi dividido em pacotes independentes e focados: `@fedify/vocab`, `@fedify/vocab-runtime`, `@fedify/vocab-tools`, `@fedify/webfinger` e outros. Pacotes menores, imports mais limpos e a possibilidade de estender o ActivityPub com tipos de vocabulário personalizados.**Painel de depuração em tempo real** – O novo pacote `@fedify/debugger` oferece um dashboard ao vivo em `/__debug__/` que mostra todo o tráfego de federação: traces, detalhes das atividades, verificação de assinaturas e logs correlacionados. Basta envolver seu objeto `Federation` e pronto.**Suporte a relay do ActivityPub** – Suporte nativo a relays via `@fedify/relay` e o comando CLI `fedify relay`. Compatível com os protocolos Mastodon-style e LitePub-style (FEP-ae0c).**Entrega ordenada de mensagens** – A nova opção `orderingKey` resolve o problema do "post zumbi", quando um `Delete` chega antes do seu `Create`. Atividades com a mesma chave são entregues garantidamente na ordem FIFO.**Tratamento de falhas permanentes** – `setOutboxPermanentFailureHandler()` permite reagir quando uma inbox remota retorna 404 ou 410, possibilitando limpar seguidores inacessíveis em vez de tentar reenviar indefinidamente.Outras novidades incluem negociação de conteúdo no nível do middleware, `@fedify/lint` para regras compartilhadas de linting, `@fedify/create` para scaffolding rápido de projetos, arquivos de configuração para a CLI, suporte nativo à CLI em Node.js/Bun e diversos fixes de bugs.Esta versão conta com contribuições significativas de participantes do OSSCA da Coreia. Agradecemos imensamente a todos envolvidos!Trata-se de uma release major com breaking changes. Consulte o guia de migração antes de atualizar.Notas completas da release: https://github.com/fedify-dev/fedify/discussions/580#Fedify #ActivityPub #fediverso #fedidev #TypeScript"@fediverse @tecnologia @academicos @internet (pode seguir para acompanhar os assuntos ou marcar para amplificar a postagem até no #lemmy tb)@fedify https://hollo.social/@fedify/019c8521-92ef-7d5f-be4d-c50eae575742
  • 0 Votes
    1 Posts
    10 Views
    One person's request for Fediverse applications —Alex wants to be able to choose what the preview image is for a video, chosen from the frames in the video....I can imagine editing tools (in Fediverse applications) would also be useful.It is also common elsewhere for people to be able to use custom images for preview images.#FediDev #FediDevs #FediUX #Fediverse #FediverseUX #PreviewImage #Video
  • 0 Votes
    1 Posts
    9 Views
    i'm moving my stuff off GitHub because i'm sick of Microsoft's shit. today's task is slurp.the official project home page has been https://catgirl.codes/slurp for a bit, but now that's also the package URL as far as Go is concerned. this will be a breaking change for anyone who depended on slurp internals, which i hope is nobody. there's some sort of package renaming directive you can use in go.mod if you did.the public Git repo and issue tracker are now on Codeberg: https://codeberg.org/vyr/slurpif you can, please donate to Codeberg. i just did (again). they're a great option for open source devs like me who aren't SREs and don't want the overhead of self-hosting all that stuff, and running a service like that isn't free.#slurp #FediDev
  • FEP 11dd: Context Ownership and Inheritance

    Moved Fediverso fep activitypub
    10
    0 Votes
    10 Posts
    91 Views
    I have amended the text of the FEP to clarify a couple of things, but also changed the inheritance logic following this month's WG meeting and subsequent discussion on ActivityPub.space. Instead of recommending that replies inherit context from the object it is in reply to, implementors must find the root node (how, is out of scope; tree traversal or context resolution are two ways that come to mind) and inherit its context. This will simplify context resolution and pave the way for other actions like moving, crossposting, forking, locking, etc. I also added in a blurb about situations in which a context would explicitly not be inherited.