Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.
Sign upBot nameplates #7391
Conversation
Gargron
added some commits
May 6, 2018
Gargron
added
api
ui
activitypub
labels
May 6, 2018
Gargron
merged commit 42cd363
into
master
May 7, 2018
9 checks passed
Gargron
deleted the
feature-bot-nameplates
branch
May 7, 2018
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
Lana-chan
May 7, 2018
is it possible to change "Warns people that the account does not represent a person" to something else, such as "Warns people that the account may be automated"?
some bots are people
Lana-chan
commented
May 7, 2018
|
is it possible to change "Warns people that the account does not represent a person" to something else, such as "Warns people that the account may be automated"? some bots are people |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
joyeusenoelle
May 7, 2018
Contributor
This suggestion also allows ambiguity on the part of Markov ("ebooks") bots, where the bot /does/ represent a person in an abstract sense, but each post isn't necessarily vetted before posting.
|
This suggestion also allows ambiguity on the part of Markov ("ebooks") bots, where the bot /does/ represent a person in an abstract sense, but each post isn't necessarily vetted before posting. |
| @@ -149,6 +150,16 @@ def moved? | ||
| moved_to_account_id.present? | ||
| end | ||
| def bot? | ||
| %w(Application Service).include? actor_type |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
SerenadeX
May 15, 2018
@Gargron I am getting an error on this line when I try to load my screen after updating to 2.3.3 and later. Did something need to be changed with it? Is there an environment var that I needed to add?
2018-05-15T16:22:53.185327+00:00 app[web.1]: [767c8eee-10e8-430d-83b3-06a232662066] method=GET path=/ format=*/* controller=HomeController action=index status=500 error='NameError: undefined local variable or method `actor_type' for #<Account:0x0000000004fa7720>' duration=1736.67 view=0.00 db=34.29
SerenadeX
May 15, 2018
@Gargron I am getting an error on this line when I try to load my screen after updating to 2.3.3 and later. Did something need to be changed with it? Is there an environment var that I needed to add?
2018-05-15T16:22:53.185327+00:00 app[web.1]: [767c8eee-10e8-430d-83b3-06a232662066] method=GET path=/ format=*/* controller=HomeController action=index status=500 error='NameError: undefined local variable or method `actor_type' for #<Account:0x0000000004fa7720>' duration=1736.67 view=0.00 db=34.29
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
Gargron
May 15, 2018
Member
Yes, it's in the documentation. Every release also includes upgrade notes explaining how to do this. You should read release notes when upgrading.
Gargron
May 15, 2018
Member
Yes, it's in the documentation. Every release also includes upgrade notes explaining how to do this. You should read release notes when upgrading.
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
Lana-chan
commented
May 15, 2018
|
hi any follow-ups on my comment or are we being ignored |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
Gargron
May 15, 2018
Member
A horse_ebooks account may "represent" horse like a senator represents a state, but I think that's a semantic difference. horse_ebooks is not horse. I don't understand your "some bots are people" comment. If you post from the account manually, it's not a bot. If a bot posts, it's a bot. Markov-chain generated accounts are bots. At least that's the distinction I had in mind when I designed this feature. I am not monumentally opposed to the wording "Warns people that the account may be automated" but neither do I see good reasons to go in and change that over again.
|
A horse_ebooks account may "represent" horse like a senator represents a state, but I think that's a semantic difference. horse_ebooks is not horse. I don't understand your "some bots are people" comment. If you post from the account manually, it's not a bot. If a bot posts, it's a bot. Markov-chain generated accounts are bots. At least that's the distinction I had in mind when I designed this feature. I am not monumentally opposed to the wording "Warns people that the account may be automated" but neither do I see good reasons to go in and change that over again. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
joyeusenoelle
May 15, 2018
Contributor
@Gargron If someone else makes the change, are you willing to merge it?
|
@Gargron If someone else makes the change, are you willing to merge it? |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
Lana-chan
commented
May 15, 2018
|
wow, okay. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
picsi
May 15, 2018
In what sense can a bot be a human? I'm not trying to start anything, but I think I didn't understand the proposal
picsi
commented
May 15, 2018
|
In what sense can a bot be a human? I'm not trying to start anything, but I think I didn't understand the proposal |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
joyeusenoelle
May 15, 2018
Contributor
Okay, I'm gonna show my hand a little: as a transhumanist, I object to the implied conflation of "person" and "human". This is a situation where we can afford to be forward-thinking and open-minded without a cost to current functionality and, honestly, without a significant cost in terms of work.
|
Okay, I'm gonna show my hand a little: as a transhumanist, I object to the implied conflation of "person" and "human". This is a situation where we can afford to be forward-thinking and open-minded without a cost to current functionality and, honestly, without a significant cost in terms of work. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
picsi
commented
May 15, 2018
|
Ok that's fair |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
nightpool
May 15, 2018
Collaborator
we're not conflating "person" and "human" we're setting up "bot" as a category of non-persons. persons of any type (including simulated or computer-based) are not "automated", because they're sentient. the two categories are non-intersecting.
anyway, if that's your real motivation, you shouldn't argue against it on false "markov" pretenses like you did above :( just come out and say that. sorry for assuming bad faith, my comment was out of line.
|
we're not conflating "person" and "human" we're setting up "bot" as a category of non-persons. persons of any type (including simulated or computer-based) are not "automated", because they're sentient. the two categories are non-intersecting.
|
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
Lana-chan
commented
May 15, 2018
|
i'm a person and i'm a robot sorry |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
Lana-chan
commented
May 15, 2018
|
i want to use the bot badge and i dont want to be called not a person |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
joyeusenoelle
May 15, 2018
Contributor
@nightpool I can have more than one reason for supporting a change. In this case I was specifically referring to picsi's question. My argument last week was not "false pretenses", it was a different reason for supporting the change.
|
@nightpool I can have more than one reason for supporting a change. In this case I was specifically referring to picsi's question. My argument last week was not "false pretenses", it was a different reason for supporting the change. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
Gargron
May 15, 2018
Member
i want to use the bot badge and i dont want to be called not a person
The bot badge is not for your use case. Sorry. You can pretend like this feature doesn't exist or misuse it at your own risk. This isn't even about the wording anymore, it's clear that the other wording would have led to a wrong, unexpected use of the feature.
The bot badge is not for your use case. Sorry. You can pretend like this feature doesn't exist or misuse it at your own risk. This isn't even about the wording anymore, it's clear that the other wording would have led to a wrong, unexpected use of the feature. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
Lana-chan
commented
May 15, 2018
|
cool good to know i'm wrong to exist. thanks have fun |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
elomatreb
May 15, 2018
Hi, just chiming in to say that I also feel that "may exhibit automated behavior" is a much better wording, especially in the face of dual-used accounts.
elomatreb
commented
May 15, 2018
|
Hi, just chiming in to say that I also feel that "may exhibit automated behavior" is a much better wording, especially in the face of dual-used accounts. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
mal0ki
May 15, 2018
While I see Gargrons point, even if it was poorly worded, I agree that we could make adjustments to the wording on this, it would make it more inclusive, and the change wouldn't hurt anyone.
I also feel that "may exhibit automated behavior" is a much better wording, especially in the face of dual-used accounts.
I feel like this is an extra good point.
mal0ki
commented
May 15, 2018
•
|
While I see Gargrons point, even if it was poorly worded, I agree that we could make adjustments to the wording on this, it would make it more inclusive, and the change wouldn't hurt anyone.
I feel like this is an extra good point. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
barzamin
May 15, 2018
Contributor
I strongly agree with @elomatreb. Especially in the case of bots that act on my behalf (cf. np), I would prefer that they are marked as 'may exhibit automated behavior', since that is much closer than 'does not represent a person', semantically, to what's actually going on.
|
I strongly agree with @elomatreb. Especially in the case of bots that act on my behalf (cf. np), I would prefer that they are marked as 'may exhibit automated behavior', since that is much closer than 'does not represent a person', semantically, to what's actually going on. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
eq
May 15, 2018
i agree with @elomatreb as well
What other changes would be required here? Renaming the badge to say "Auto" or "App"?
eq
commented
May 15, 2018
|
i agree with @elomatreb as well What other changes would be required here? Renaming the badge to say "Auto" or "App"? |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
agirisan
commented
May 15, 2018
•
|
i see no need to change the "bot" badge itself, only the text in preferences |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
eq
commented
May 15, 2018
|
alright, makes sense to me then. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
|
cf #7507 |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
ghost
May 15, 2018
One other tack, thinking on this one a fair bit - what about localization? Does 'Bot' and its potential translations accurately convey the intent behind the tag? I'm personally more with @eq here on using something more accurate like 'Auto' or 'App' (or other suggestions), since 'Bot' is overloaded, and even if we fix the preference text, the connotations are still there ("Was this account flagged 'Bot' because of some kind of administrative review against them?", in the vein of Twitter/Facebook 'bots' that may actually be real people hiding behind a facade for political/other purposes.) In that case, 'Bot' can be unclear.
WRT @Lana-chan , I think their use case really falls more under the custom profile fields in 2.4.0rc1? I will profess, I don't fully follow on that one, purely from a lack of understanding, but I'm getting the feeling that's the overloaded part; another meaning that wasn't intended with this PR, tied to the name?
ghost
commented
May 15, 2018
|
One other tack, thinking on this one a fair bit - what about localization? Does 'Bot' and its potential translations accurately convey the intent behind the tag? I'm personally more with @eq here on using something more accurate like 'Auto' or 'App' (or other suggestions), since 'Bot' is overloaded, and even if we fix the preference text, the connotations are still there ("Was this account flagged 'Bot' because of some kind of administrative review against them?", in the vein of Twitter/Facebook 'bots' that may actually be real people hiding behind a facade for political/other purposes.) In that case, 'Bot' can be unclear. WRT @Lana-chan , I think their use case really falls more under the custom profile fields in 2.4.0rc1? I will profess, I don't fully follow on that one, purely from a lack of understanding, but I'm getting the feeling that's the overloaded part; another meaning that wasn't intended with this PR, tied to the name? |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
trwnh
May 15, 2018
Contributor
This conversation is pretty confusing because there seem to be multiple definitions of "robot" and "person" used throughout as if they were consistent, when in fact they are not.
From my understanding, the original definition of "bot" provided (per the nameplate) was in reference to automated behavior (news aggregators, rss crossposters, markov chains, etc). In AP parlance, this is like referring to an Application or a Service, rather than a Person. Similarly, it is possible to refer to an Organization or other types, and this is up to the implementation, according to the W3C: https://www.w3.org/TR/activitypub/#actors
NOTE: ActivityPub does not dictate a specific relationship between "users" and Actors; many configurations are possible. There may be multiple human users or organizations controlling an Actor, or likewise one human or organization may control multiple Actors. Similarly, an Actor may represent a piece of software, like a bot, or an automated process. More detailed "user" modelling, for example linking together of Actors which are controlled by the same entity, or allowing one Actor to be presented through multiple alternate profiles or aspects, are at the discretion of the implementation.
Actor types also include Organization and Group. https://www.w3.org/TR/activitystreams-vocabulary/#actor-types
Since the implementation of this PR looks like it's primarily targeted at automated behavior (befitting an Application imo, but this PR uses Service internally), then it makes sense to reword the warning to more clearly reflect the nature of automated content.
However, there also seems to be a subthread of this conversation around the fact that automated behavior may represent a Person in the abstract.
To remove any ambiguity, we could allow people to specify a Profile as one of the 5 types provided by ActivityPub, which would probably add complexity but cover 100% of the cases for which someone might set up a profile. But at the very minimum, we should try to define what exactly each of the 5 types is supposed to represent for Mastodon.
|
This conversation is pretty confusing because there seem to be multiple definitions of "robot" and "person" used throughout as if they were consistent, when in fact they are not. From my understanding, the original definition of "bot" provided (per the nameplate) was in reference to automated behavior (news aggregators, rss crossposters, markov chains, etc). In AP parlance, this is like referring to an Application or a Service, rather than a Person. Similarly, it is possible to refer to an Organization or other types, and this is up to the implementation, according to the W3C: https://www.w3.org/TR/activitypub/#actors
Actor types also include Organization and Group. https://www.w3.org/TR/activitystreams-vocabulary/#actor-types Since the implementation of this PR looks like it's primarily targeted at automated behavior (befitting an Application imo, but this PR uses Service internally), then it makes sense to reword the warning to more clearly reflect the nature of automated content. However, there also seems to be a subthread of this conversation around the fact that automated behavior may represent a Person in the abstract. To remove any ambiguity, we could allow people to specify a Profile as one of the 5 types provided by ActivityPub, which would probably add complexity but cover 100% of the cases for which someone might set up a profile. But at the very minimum, we should try to define what exactly each of the 5 types is supposed to represent for Mastodon. |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
enkiv2
May 16, 2018
If a mastodon account consists entirely of automated crossposts of a twitter account, and that mastodon account is not owned by the owner of the twitter account, does it get a 'bot' nameplate? What if the mastodon account is owned by the owner of the twitter account?
What about something like RMS's GS account, where it's literally a list of links selected by RMS but posted presumably automatically, without commentary by RMS himself?
There's a lot of meaningful semantic variation on the automation axis, even if we focus entirely on accounts that are never directly posted to by a human manipulating a client. Thus far, we have used a richer set of signifiers to indicate an account's place on this axis -- 'bot' vs 'ebooks' in the name, use of CWs. A boolean is inspecific and unclear, and likely to be used and taken in unintended ways without negotiation -- in other words, it's strictly less useful than the language we already use.
(I do a lot of posting directly from clients, but probably about 60% of my posts are semi-automated -- either posted to several places simultaneously with automatic mutations, or actually generated, as in the case of automatic title fetching for links. If the bot nameplate indicates that no human being is interacting directly with a client, then I don't get one, while if the bot nameplate indicates that many posts are broadcasts rather than parts of public conversation, then it absolutely should. Most people will probably treat the plate as indicating that most posts are the output of markov chains, which is again inaccurate, or that post rate is high, which is true, or consistent, which is false. The most accurate way to describe my account is human + external tools, but that cannot be expressed here.)
I'm not suggesting we should have activitypub-level indications of these more-granular categories. I think that, in the absence of a serious, widespread unwanted-automated-spam problem, we probably should rely upon users developing expressive idiomatic ways of describing levels and types of account automation, and avoid trying to standardize stale categorizations.
(Side note: horse_ebooks is a whole different jar of jam from automation per-se, since it's a person pretending to be a markov chain bot pretending to be a person, shilling intentionally poorly for nonexistent products. It isn't clear, on many levels, whether or not the original horse_ebooks would have been eligiable for or benefitted from an explicit bot indicator. Its function was derived so strongly from the ambiguity that comes from the total nonexistence of any standardized bot-ness indicator that having a standard way to indicate that something is a bot essentially prevents such projects from being meaningful.)
enkiv2
commented
May 16, 2018
|
If a mastodon account consists entirely of automated crossposts of a twitter account, and that mastodon account is not owned by the owner of the twitter account, does it get a 'bot' nameplate? What if the mastodon account is owned by the owner of the twitter account? What about something like RMS's GS account, where it's literally a list of links selected by RMS but posted presumably automatically, without commentary by RMS himself? There's a lot of meaningful semantic variation on the automation axis, even if we focus entirely on accounts that are never directly posted to by a human manipulating a client. Thus far, we have used a richer set of signifiers to indicate an account's place on this axis -- 'bot' vs 'ebooks' in the name, use of CWs. A boolean is inspecific and unclear, and likely to be used and taken in unintended ways without negotiation -- in other words, it's strictly less useful than the language we already use. (I do a lot of posting directly from clients, but probably about 60% of my posts are semi-automated -- either posted to several places simultaneously with automatic mutations, or actually generated, as in the case of automatic title fetching for links. If the bot nameplate indicates that no human being is interacting directly with a client, then I don't get one, while if the bot nameplate indicates that many posts are broadcasts rather than parts of public conversation, then it absolutely should. Most people will probably treat the plate as indicating that most posts are the output of markov chains, which is again inaccurate, or that post rate is high, which is true, or consistent, which is false. The most accurate way to describe my account is human + external tools, but that cannot be expressed here.) I'm not suggesting we should have activitypub-level indications of these more-granular categories. I think that, in the absence of a serious, widespread unwanted-automated-spam problem, we probably should rely upon users developing expressive idiomatic ways of describing levels and types of account automation, and avoid trying to standardize stale categorizations. (Side note: horse_ebooks is a whole different jar of jam from automation per-se, since it's a person pretending to be a markov chain bot pretending to be a person, shilling intentionally poorly for nonexistent products. It isn't clear, on many levels, whether or not the original horse_ebooks would have been eligiable for or benefitted from an explicit bot indicator. Its function was derived so strongly from the ambiguity that comes from the total nonexistence of any standardized bot-ness indicator that having a standard way to indicate that something is a bot essentially prevents such projects from being meaningful.) |
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
nightpool
May 16, 2018
Collaborator
@enkiv2 please see the wording in the followup pull request, and the justifications given there.
re
Its function was derived so strongly from the ambiguity that comes from the total nonexistence of any standardized bot-ness indicator that having a standard way to indicate that something is a bot essentially prevents such projects from being meaningful.
disagree. while all things that have the bot nameplate are presumably bots, i think it's reasonable enough to expect that not everything that doesn't have the bot nameplate isn't a bot. the ambiguity still exists
|
@enkiv2 please see the wording in the followup pull request, and the justifications given there. re
disagree. while all things that have the bot nameplate are presumably bots, i think it's reasonable enough to expect that not everything that doesn't have the bot nameplate isn't a bot. the ambiguity still exists |
added a commit
to SerCom-KC/mastodon
that referenced
this pull request
May 21, 2018
added a commit
to SerCom-KC/mastodon
that referenced
this pull request
May 21, 2018
added a commit
that referenced
this pull request
May 21, 2018
tootsuite
deleted a comment from
blahed
May 29, 2018
tootsuite
locked and limited conversation to collaborators
May 29, 2018
tootsuite
deleted a comment from
onomojo
May 29, 2018
tootsuite
deleted a comment from
blahed
May 29, 2018
tootsuite
deleted a comment from
Lana-chan
May 29, 2018
This comment has been minimized.
Show comment
Hide comment
This comment has been minimized.
nightpool
May 29, 2018
Collaborator
Guessing this got linked somewhere. I've deleted some comments that were starting shit and misgendering a community member. The PR is now locked temporarily to prevent anything else from flaring up—this repo isn't your battleground. Go somewhere else.
|
Guessing this got linked somewhere. I've deleted some comments that were starting shit and misgendering a community member. The PR is now locked temporarily to prevent anything else from flaring up—this repo isn't your battleground. Go somewhere else. |
Gargron commentedMay 6, 2018