Hi, I've just doing a bit of a ketchup after being away for a while. I
might have missed something. Actually, that's always true :)

On Fri, 11 Sep 2009 10:36:17 -0400
Christopher Vollick <[email protected]> wrote:

> > Also, I'm curious why the account has to have the username
> > changed, then
> > all of this deletion/changing happen. It seems like we can delete  
> > all the
> > notices (Notices::delete(), all the rows in all the other tables
> > (File_to_post::delete() Subscription::delete(), etc), then delete  
> > the row
> > from the user table (just like how a SQL cascade would work).
> Actually, we do neither of those, I don't think.
> At no point do we delete the User row.
> 
> We just leave in a stub account called "deleteduser###".
> This account may or may not have notices in it.
> Among other things it is linked to whenever anyone follows a link to  
> that old account.
> (Like, if they clicked the "@thatUserWhoDeletesTheirAccount" in some  
> old notice.)
> 

Just taking this to a higher level, each notice ("stat"?) is a resource
on the Web with an address. We should all know that Cool URIs Don't
Change (tm). There are any number of links to that dent, its context,
and its user, not just from the statusnet node, but from anywhere. It's
on The Web, and The Web loves persistence. So what exactly do we mean by
"delete"?

Whatever we do end up deleting, I'd hope we obey some basic laws:

* the username shouldn't be available for reuse
* notices and user pages, and especially API responses need to use HTTP
  410 Gone, with some information useful to a human browser in the HTML
  body

So I'll switch to the preferred nomenclature of "remove".

So, as stated by others, either the user chooses to close her account,
or she is kicked off.

If she's a closer, she should have realised (and perhaps TOS need to be
reviewed for it), that what's said is said. I don't think there's
anything more to plan about it, because nothing is removed. In the
database she's flagged, and her user page should have clear text for
humans to see she's not playing any more. She's no longer a follower or
a followee, is removed from groups, and can't be followed any
more.

If kicked, her user page should be removed (410). There might be
libellious, contentious, or just spammy stuff she contributed that we
don't want returned by search engines (in the node or outside), and we
don't even want humans reading. Some of it might be part of a thread.
Her notices should probably be replaced with "removal" text and their
permalinks set to return 410 (so removed).

I guess it might be tricky if someone got kicked who said some valuable
stuff and then some that caused him to be kicked. It would be nice to
remove only the offending notices, but not especially practical.
There's the rub, but hopefully this rarely happens.

Hope that's a useful contribution.

Cheers
_______________________________________________
Laconica-dev mailing list
[email protected]
http://mail.laconi.ca/mailman/listinfo/laconica-dev

Reply via email to