#Loqiajordan has 25 karma in this channel (26 overall)
#tantekhmm seeing the profile property/value extensions discussion a bit late
#tantekI tend to agree with the first suggestion to use tags for this
#tantek"@type": "PropertyValue" --- is ugly and seemingly useless syntactic vinegar
#tantekBTW prior art here is Flickr's use of "machine tags", that is, "tags" to represent arbitrary property value pairs in a "prefix:property=value" syntax
#aaronpk4) web browser utilities, a "like" button in your web browser
#aaronpkfocused on one kind of activity but operating across the web
#aaronpkthat doesn't cover everything but those are the kinds we had
#aaronpkanother that operates only on its own data, you can log into a pump.io site from another pump.io site and then follow people and comment and share
#aaronpkthat remote pump.io site acts just like any other client
#aaronpklooking at OAuth 2.0 scopes for activitypub and thinking about what scopes we want to support, activitypub doesn't define scopes yet
#aaronpkwhich is kind of a bummer because people implementing clients, knowing a fixed group of scopes is useful
#aaronpkif I direct my android client at something that supports activitypub it would be nice if it understood when I askf or certain types of access
#aaronpkit seems there are two ways people do scopes
#aaronpkone is in super fine grained detail. other companies do this down to giving access to certain parts of your account, who you're following, post this kind of activity, etc
#aaronpkthat gives a lot of control to the user, but also is a lot of overhead to the user
#aaronpkthere is some cognitive load that has the unfortunate side effect that people just click through
#aaronpkthe other path that other implementers take is a very minimal set of scopes.
#aaronpkafter some discussion in #social with aaron, we worked on a first version of scopes, a fairly minimal set of scopes
#aaronpkwe want to put these up and say hey everyone should implement these scopes
#aaronpkwe took a look at our existing clients and came up with four scopes
#aaronpk1) login authorization. no read or write access, just identification
#aaronpk2) "read": gives full read access to your account
#aaronpkanything that the user can read the application can read
#aaronpkuser profile, user social graph, user's inbox feed, and outbox feed
jankusanagi_ joined the channel
#aaronpk3) "writeown": the client can post activities that are related to the client's own server
#aaronpkso if it's a game, the targets of the activities are on the same domain as the game
#aaronpkso a game at openfarm.example, the IDs of the targets would be on openfarm.example otherwise refused
#aaronpkactivitystreams objects are kind of complex, so we're imagining a little flexibility, but the general expectation is things like "reply to" "like" "follow" the activity would be closely related to the originating client
#aaronpk4) "writeall": for full-featured client applications, like an android client
#aaronpkwe'll be rolling out 5.2 version in the next few weeks
#aaronpkso we'll have that implementation available to start testing
#aaronpkthe question is will clients say it's too much hassle to ask for certain types of scope and ask for maximum and expect people to click through
#aaronpkour hope is that the scopes will be useful for our clients
#aaronpkmy goal is to write this up as a wiki page or note for the CG so as other folks are implementing C2S for activitypub they can use similar scopes
#aaronpkaaronpk: that sounds great. i'd love to see this documented on the wiki, and once there is one or more client implementations, publish as whatever report format the community group can publish
#aaronpkpuckipedia: one question I had was how abusable this could be, like writing a reply to a post on that server... (unintelligible)
#aaronpkevanp: are you saying we have a hostile client that attempts to write posts in reply to IDs that it knows it has access to
#aaronpk... yeah that's a risk of the "writeown" is that there's a lot of flexibility for the third party client to fudge around
#aaronpk... I don't think it's an iron-clad security system, that's not the goal here, it's to set a scope for what's okay and not okay
#aaronpkpuckipedia: it might also be possible to be able to pre-set some scope, like all the posts this client makes can be public or private, etc
#aaronpk... for example when you log in to an app on facebook you can choose whether the app can make public posts
#aaronpkaaronpk: that mechanism is different from scopes. scope is an agreement between clients and servers, and for that example you actually don't want the client to know that they've been limited so the posts are only visible to the user
#evanpSo, for pump.io, we're going to go with a coarse-grained set of scopes out of the box, which reflects the actual use we've seen from third-party clients
#evanpAnd if the community goes more down the path of fine-grained scopes, we'll probably still support our high-level ones for developers who've come to depend on them
#Loqi[Arnaud] from what I understand Bert Bos is currently working on it, so anyone who wants to change it should probably reach out to him to coordinate