#social 2016-03-17

2016-03-17 UTC
jtilles, tantek, dmitriz, nicolagreco, Arnaud and jasnell joined the channel
#
Zakim
excuses himself; his presence no longer seems to be needed
nicolagreco, jaywink, Arnaud1, KevinMarks, jasnell, Arnaud, KevinMarks_, tantek, dmitriz, Karli, Karli_ and eprodrom_ joined the channel
#
eprodrom_
I'm running late; there by 10:15.
Karli, eprodro64 and Karli_ joined the channel
#
tantek
good morning #social - my ETA this morning is 10:05ish. If y'all are ready to go, have eprodrom get us started!
Karli, nicolagreco and annbass joined the channel
#
annbass
on my way ... Walking took longer than I thought
Karli, dmitriz and tantek joined the channel
Karli joined the channel
#
tantek
trackbot, start meeting
#
trackbot
is preparing a teleconference.
#
trackbot
RRSAgent, make logs public
#
RRSAgent
I have made the request, trackbot
Zakim joined the channel
#
trackbot
Zakim, this will be SOCL
#
Zakim
I do not see a conference matching that name scheduled within the next hour, trackbot
#
trackbot
Meeting: Social Web Working Group Teleconference
#
trackbot
Date: 17 March 2016
#
tantek
scribe: wilkie
#
tantek
present+
#
wilkie
present+
#
dmitriz
present+
#
rhiaro
present+
#
tantek
chair: tantek
shevski joined the channel
#
aaronpk
present+
#
shevski
present+
#
cwebber2
present+
#
tsyesika
present+
#
sandro
present+
#
wilkie
tantek: if nobody thinks of any other agenda items, this is all for today. which seems reasonable
#
wilkie
tantek: how many issues do things have?
#
wilkie
aaronpk: 4
Karli joined the channel
#
wilkie
sandro: and micropub?
#
wilkie
aaronpk: no issues that need discussion. just a couple of pull requests.
Karli_ joined the channel
#
wilkie
annbass: I have a comment. The socialwg interest group has always been considering what it is they are do. it is still an open question if we need such a group.
#
wilkie
annbass: I think this should still be a community effort. I've met and talked to Syrian people who were caught and tortured and I've asked them what they use for social tools and communication and they say "whatever we can find"
#
wilkie
... so I do think there are use cases we aren't aware of.
#
wilkie
tantek: do you want some time to talk about that?
#
dmitriz
@rhiaro - there is an issue open for what you mentioned, in fact, https://github.com/w3c-social/activitystreams-validator/issues/16
#
wilkie
annbass: yes.
#
ben_thatmustbeme
present+ Karli
#
ben_thatmustbeme
present+ AnnBass
#
wilkie
annbass: our interest in the consortium is to make a good place to work and so I would like some feedback, public or private, about the w3c and what could improve.
#
wilkie
annbass: the challenges haven't been where I thought they would be
#
wilkie
tantek: such as?
#
wilkie
annbass: you would think about diversity and such but the problems have been mainly technical
#
wilkie
tantek: and some social interactions
#
wilkie
annbass: yeah
#
wilkie
tantek: that's a problem that has made it up fairly far in the organization
#
wilkie
annbass: yeah, and how we can address that is something worth discussing
#
wilkie
tantek: yeah, there is what you could say is w3c's broad tolerance for different social behaviors.
#
wilkie
tantek: which are obstacles to technical discussion and finding solutions. so if we could find solutions to that.
#
wilkie
annbass: yeah, and certainly there are people who have a problem with this. such as women or quieter people who have a problem with people who are strongly argumentative and vocal.
#
wilkie
shevski: which is what tantek was saying. those people can be disruptive and at times bullies.
#
wilkie
shevski: the problem is when nothing happens to those people visibly, then people see that and say 'I don't want to be involved. this is not a safe space.'
#
wilkie
annbass: me too. I see that and I try and then I say "nah, I'm done"
#
wilkie
tantek: and you've seen that at the highest
#
wilkie
annbass: yeah. but we've all seen that. and what can we do.
#
wilkie
shevski: a code of conduct is what you do
#
wilkie
annbass: we have one
#
wilkie
tantek: it's a rather new thing
#
wilkie
annbass: no, it has been there for 10 years I think
#
wilkie
annbass: but also, what we have to do is maybe training
#
wilkie
Karli_: the problem with a code of conduct is that people may not see it or it isn't enforced and people don't respect it
#
wilkie
annbass: another thing is that people don't realize even if you call it out that they have done something wrong and correct for that
annbass joined the channel
#
wilkie
shevski: on the community group stuff. I like having /something/ is good.
#
wilkie
shevski: having something from the community about what they want is good. such as "I want quick communication among many devices" and there isn't that.
#
wilkie
tantek: *whispers* that's not social, those are machines
eprodrom_ joined the channel
#
wilkie
shevski: but it is! I'm talking to people. through machines.
#
wilkie
tantek: [evan enters] photo time!
shevski joined the channel
#
ben_thatmustbeme
we should do that again
eprodro99 and eprodrom_ joined the channel
#
wilkie
eprodrom: has everybody taken a look at the issues?
#
wilkie
eprodrom_: what I would like to do is work from oldest to newest and see what we can do to clarify those.
#
wilkie
tantek: to be clear these are ones you think need discussion
#
wilkie
eprodrom_: these are ones that are open... let's say that of the ones we have there are 3 that are significant changes...
#
wilkie
tantek: want to go through the hardest ones first?
#
wilkie
eprodrom_: maybe the easiest ones first?
#
annbass
s/I think this should still be a community effort./My suggestion is to move the IG to be a Community Group (CG), so that anyone in the world can participate, without being a W3C member or Invited Expert./
#
wilkie
tantek: ok
eprodro58 joined the channel
#
wilkie
eprodrom_: 249. so, some of the examples don't have the properties described in the text. james is +1, I'm +1. so there isn't a problem with this.
#
wilkie
tantek: if you and the other editors think something is editorial then we don't need to look at it. we trust your judgment.
#
wilkie
eprodrom_: for the CR exit issues. we need explicit exit criteria (279), a list of separate features (280)
#
annbass
s/I've met and talked to Syrian people who were caught and tortured and I've asked them what they use for social tools and communication and they say "whatever we can find"/I suggest the main goal of the CG might be to collect additional social use cases that we haven't thought of, especially from people who haven't participated before, or who are from cultural environments we personally haven't experienced./
#
wilkie
eprodrom_: let's just say that when these are resolved and assuming the editorial issues are solved, we're good
#
wilkie
tantek: these are not editorial. the conformance clause is certainly normative. the separate features may be editorial but might not so you may still want group review.
#
wilkie
tantek: but the group has reviewed the conformance clause and said it looks good. so anything that has been reviewed can just be dropped in.
#
wilkie
tantek: so there is really only one thing left to review
#
annbass
s/our interest in the consortium/Also, I am now co-chairing the W3C Positive Work Environment Task Force (PWET) with Amy van der Hiel. Our interest in the consortium/
#
wilkie
eprodrom_: the issue is we don't have a good vocabularity around relationships
#
annbass
s/yeah, and how/how/
#
wilkie
eprodrom_: in the specification, we said there should be an external vocabulary for this
#
wilkie
eprodrom_: we don't refer to one but we talk about one
#
wilkie
dmitriz: you show it in the examples
#
Zakim
sees cwebber on the speaker queue
#
wilkie
eprodrom_: right. if we defer this part of the specification to a TBD section about extensions, why don't we push the relationship stuff to a future extension
#
wilkie
eprodrom_: it makes sense to me
#
wilkie
thanks ann, I'll fix all of that in post :)
#
annbass
s/yeah. but we've all seen that. and what can we do./I'm not sure about that. But we've all seen it in various situations. What can we do to improve?/
#
Zakim
sees cwebber on the speaker queue
#
tantek
ack cwebber2
#
Zakim
sees cwebber on the speaker queue
#
tantek
ack cwebber
#
Zakim
sees no one on the speaker queue
#
wilkie
eprodrom_: james has not had a chance to comment but I feel that there isn't a reason to wait for him. my opinion as an editor is that we should just push it to extension.
#
eprodrom_
s/has not/has/
jasnell joined the channel
#
wilkie
cwebber2: it seems like maybe some verbs or vocab would be lost. do you know of any use-cases that may be lost by dropping this to an extension?
#
wilkie
eprodrom_: AS1 didn't even have relationships like this
#
wilkie
cwebber2: I'm +1 on this then. If people feel strongly about this as an extension then we can do that. it doesn't seem like a blocker for activity streams itself.
#
annbass
s/people don't realize even if you call it out /people don't realize THEY have behaved that way, even when you call it out; /
#
wilkie
cwebber2: just wanted to make sure we didn't drop something else as a consequence
#
wilkie
tantek: I would just propose the issue and see if anyone objects to the editor's proposal
#
wilkie
tantek: I don't hear any objections
#
wilkie
eprodrom_: ok I'll just mark that as group resolved
#
wilkie
eprodrom_: next one is 290. it is around transitive activities.
#
wilkie
eprodrom_: the idea is to add one of the classes in vocab to core. james is fine with it. I'm fine with it. it is a reasonable thing to do.
#
cwebber2
sounds good to me
#
wilkie
eprodrom_: basically, transitive classes are an extended class and they are used often enough that it seems more useful in core.
#
wilkie
eprodrom_: any objections to that?
#
wilkie
eprodrom_: great
#
wilkie
eprodrom_: the last one [is 292] which is adding a deleted tag to objects
#
wilkie
eprodrom_: the idea is to add a deleted timestamp to provide a tombstone for objects
#
wilkie
eprodrom_: so you can have an image and they say this image has been deleted
#
wilkie
cwebber2: this seems useful because you were already talking about 410 GONE and this would be useful certainly in activitypub and media goblin right away
#
tantek
aaronpk, didn't #indiewebcamp recently discuss a dt-deleted? what was the conclusion?
#
wilkie
eprodrom_: there are cases where you want to say this object is deleted but valid
#
tantek
(or at list citation to prior discussion)
#
wilkie
dmitriz: it can be as useful or not depending on your server's retention policy
#
wilkie
dmitriz: if you are the kind of server that commits to sending 410s whenever possible you want this, if not you may want to garbage collect and 404
#
wilkie
dmitriz: so this is an option for those servers with permanent retention policies
#
wilkie
cwebber2: it seems this doesn't require people to do it
#
aaronpk
q+ to point out privacy implications of sharing the deleted timestamp
#
Zakim
sees aaronpk on the speaker queue
#
wilkie
eprodrom_: we have seen this before and then we pushed it to an extension but seeing it come up again we consider adding it to the spec
#
tantek
ack aaronpk
#
Zakim
aaronpk, you wanted to point out privacy implications of sharing the deleted timestamp
#
Zakim
sees no one on the speaker queue
#
Zakim
sees no one on the speaker queue
#
Zakim
sees cwebber on the speaker queue
#
wilkie
aaronpk: I think we should have a way to specify the deletion without the timestamp for when people want to delete but not disclose when
#
wilkie
cwebber2: since there is already the deleted flag
#
wilkie
aaronpk: what is the deleted flag
#
dmitriz
I think chris means the deleted timestamp?
#
tantek
per jasnell comment: "type": "Delete",
#
wilkie
cwebber2: the thing we are discussing. for instance we can send a 'delete' verb to servers and they might ask 'why is this gone' and people can do that but it is optional.
#
wilkie
eprodrom_: I think what aaronpk is saying is that it is good to have a delete property. but it being a timestamp there are privacy concerns.
#
Zakim
sees cwebber on the speaker queue
#
Zakim
sees cwebber on the speaker queue
#
tantek
ack cwebber
#
Zakim
sees no one on the speaker queue
#
wilkie
eprodrom_: people want to delete things because they don't want them to be published and thus may not want it there
#
wilkie
dmitriz: you can place the timestamp date but not return the data and just 404
#
wilkie
aaronpk: but the problem is when you want to propagate that
#
wilkie
cwebber2: then you can have a timestamp or date
#
wilkie
aaronpk: that would solve it
#
tantek
How does Twitter notify deletes?
#
cwebber2
s/or date/or boolean/
#
jasnell
this is why for Atom we came up with the deleted-entry
#
jasnell
atom tombstones rfc
#
wilkie
eprodrom_: and if that is good we can do that. the only problem is when implementations are only checking if it is truthy, but they will likely do that anyway.
#
eprodrom_
jasnell: so, deleted becomes a timestamp or boolean
#
eprodrom_
Sound OK?
#
jasnell
not sure I understand the privacy concerns around deleted being a date but ok
#
wilkie
tantek: I do think the timestamp is important especially for synchronization
#
jasnell
yes, having deleted as a timestamp is fairly critical for sync
#
wilkie
aaronpk: for the twitter api, the tweets generally come through as just the data on the tweets. there are some actions that come through for instance a scrub-geo action to remove location.
#
wilkie
tantek: so they are using keys as verbs sometimes
#
wilkie
aaronpk: yep
#
wilkie
tantek: what is the proposed solution?
#
wilkie
eprodrom_: to add a deleted property to the object and its range is either a timestamp or a boolean
#
wilkie
cwebber2: can I request we note that it is optional to handle cases where people prefer a 404
#
jasnell
eprodrom_: +1
nicolagreco joined the channel
#
wilkie
aaronpk: when there is a delete action in the stream, it should be required to have that flag to know it is deleted
#
jasnell
however, if deleted is a boolean, it should be noted that synchronization will be difficult
#
jasnell
it should also be noted that just because there's a deleted property in the object, it doesn't mean implementations have to delete the content
#
wilkie
aaronpk: I'm thinking when a system is pulling in a feed, how does it know to delete, so it needs to see that delete to know when to get rid of it
#
wilkie
cwebber2: there is a delete verb
#
wilkie
eprodrom_: cwebber2 is addressing the idea that there is a controversy between sending a 404 or 410
#
wilkie
aaronpk: that's pulling the individual object
#
wilkie
eprodrom_: yes
#
aaronpk
realizes he is getting confused by the use of "verb" since there are HTTP verbs and ActivityStreams verbs
#
jasnell
also keep in mind... {"type": "Delete", "object": {"id": "http://example.org"} work perfectly well for this too
#
wilkie
eprodrom_: if we don't have objections, I'm going to say this is our resolution
#
jasnell
without introducing a new property
#
wilkie
tantek: this is a new introduction
#
wilkie
eprodrom_: yeah, this is the first new property is a while
#
annbass
wonders if aaronpk's diff definitions of "verb" needs to be resolved?
#
wilkie
tantek: would you consider marking it as at-risk?
#
wilkie
cwebber2: we could but we are going to use it immediately in media goblin
#
ben_thatmustbeme
q+ to say that jasnell's option may be better
#
Zakim
sees ben_thatmustbeme on the speaker queue
#
wilkie
dmitriz: even though the field is optional
#
wilkie
tantek: that doesn't alter the fact that it is in the spec
#
wilkie
tantek: [to cwebber2] that is good to know. it is useful to know.
eprodrom joined the channel
#
wilkie
ben_thatmustbeme: jasnell says we can add a type "Delete"
#
jasnell
also, if you're going to go down the tombstone route, please make sure you take the additional security issues into consideration
#
wilkie
cwebber2: we already have a type "Delete"
#
wilkie
eprodrom: yeah, I think the idea there is that we have a "hole"
#
wilkie
cwebber2: you can still see the case where you have a Photo and you want that deleted
#
Zakim
sees no one on the speaker queue
#
wilkie
cwebber2: we could do this but it doesn't seem as interesting when the group came to some consensus around the property
#
wilkie
cwebber2: adding an object doesn't seem less tricky than adding the flag
#
wilkie
eprodrom: the reason I like this is say you have a naive implementation and it is looking at a collection of image objects.
#
annbass
wonders if jasnell is able to speak on talky?
#
wilkie
eprodrom: if it is not aware of tombstoning it may show an image that has been deleted. or its metadata.
#
wilkie
eprodrom: however if the type has changed, the tombstone will look foreign and it will skip it.
#
wilkie
eprodrom: basically, naive implementations will do the wrong thing with the flag
#
jasnell
please keep in mind that adding a tombstone does not compel anyone to actually delete anything
#
wilkie
dmitriz: the argument is essentially if somebody writes something and is wrong to the spec it will break
#
jasnell
if the content has been syndicated, the best you can do is distribute the *intent* for it to be deleted
#
wilkie
aaronpk: it is worth considering since doing it wrong leaks information
#
wilkie
tantek: it is good practice to assume partial implementations and decide if such a thing would do bad things for users
#
wilkie
dmitriz: so how does it work? it replaces the id?
#
wilkie
eprodrom: yes. it shares the id.
#
wilkie
dmitriz: is the worry about retrieving the collection? then it is up to the server to not send that deleted image.
#
tantek
what about undeleting?
#
wilkie
aaronpk: it is talking about synch. a server has already seen the image and now needs to remove it.
#
wilkie
cwebber2: tsyesika, how do we handle this?
#
wilkie
tsyesika: it is much like a tombstone. it is in a tombstone table and it is a field in that table.
#
wilkie
tantek: is there undeleting?
#
wilkie
cwebber2: there is an undelete verb but we don't handle that
#
wilkie
tantek: there seems to be an idea in social media: to delete and then undelete
#
wilkie
cwebber2: there is interest in undelete and undo actions but doesn't have bearing on this decision
#
wilkie
tantek: I'm just trying to see if the solution would be un-lossy for undeleting purposes
#
wilkie
cwebber2: I don't see how the structure of this would prevent the UI experience
#
wilkie
cwebber2: it seems more at the API or stream level
#
jasnell
this conversation is mixing two different things. (a) A server hosts it's own content, publishes at content at one point, then needs to indicate that it's been deleted. (b) A consumer has received content from someone and needs to be told that it's been deleted
#
wilkie
eprodrom: my experience is that deletion is something that gets implemented late and involves lots of bug squashing
#
wilkie
eprodrom: whereas every activity streams processor needs to handle types it doesn't recognize
#
annbass
s/solution would be un-lossy/solution would be lossy for privacy purposes, but un-lossy/
#
wilkie
dmitriz: do we say every consumer must ignore every type it doesn't recognize?
#
jasnell
for both, a {"type": "Delete", "object": "http://example.org"} is sufficient. For (a) the thing being deleted simply goes away and a new activity is published indicating what happened to it. For (b) the new activity is a signal that it ought to get rid of the thing that was deleted.
#
wilkie
eprodrom: let's not call it type "Delete" but rather "Tombstone" that has a formertype
#
wilkie
cwebber2: former type flag?
#
wilkie
eprodrom: yeah if you really need that
#
Zakim
sees no one on the speaker queue
#
wilkie
cwebber2: I'm more sold on this than I thought I would be
#
wilkie
cwebber2: in which case there is an optional field for the date. so two fields 'when' and 'formertype'
#
wilkie
or formerType ?? camel case doesn't work out at loud
#
jasnell
for undelete, if you assign an ID to the delete activity, {"id": "http://example.org/delete/1", "type": "Delete", "object": "http://example.org/note"}, you can easily follow that up with a {"type": "Undo", "object": "http://example.org/delete/1"}
#
wilkie
tantek: maybe we give jasnell some time to reflect on this
#
wilkie
eprodrom: ok I'll take an action to review this with jasnell this afternoon
#
cwebber2
we would probrably want to call it whenRemoved
#
cwebber2
the type
#
wilkie
tantek: maybe that will cause it to converge a little bit more
eprodrom_ joined the channel
#
cwebber2
mainly because properties can merge and "when" could appear unclear
#
cwebber2
between multiple type objects at least
#
cwebber2
and each property needs its own uri anyway
#
wilkie
tantek: how well does this mesh well with activity streams at large?
#
tantek
format vs protocol? overlap vs separation?
#
wilkie
eprodrom: the tombstone kind of blends in the noun or verb distinction
#
wilkie
tantek: many of these social web implementations have delete. I also like this tombstone approach.
#
wilkie
eprodrom: we have still a couple of questions
#
wilkie
eprodrom: name is a should not a must but it is not in many of our examples
#
wilkie
tantek: you could say the examples need to be fixed, or you could say the examples show that you don't need a name and should stay a SHOULD
#
eprodrom
Most of the "Activity"
#
eprodrom
"While all properties are optional (including the id and type), all Object instances SHOULD at least contain a name (or equivalent nameMap)."
#
Zakim
sees cwebber on the speaker queue
#
tantek
ack cwebber
#
Zakim
sees no one on the speaker queue
#
wilkie
cwebber2: I think SHOULD should be removed since we fold the title in to name and many don't have name. why should it be there if the biggest producer of AS doesn't have them.
#
wilkie
eprodrom: there are many objects that have a type but not a name. I think it should remain a SHOULD.
#
wilkie
aaronpk: if you are going to say things SHOULD have a name, I worry that people will just throw a name into things.
#
eprodrom
jasnell: for Activity and IntransitiveActivity types, does it makes sense to SHOULD a name?
#
wilkie
cwebber2: there are cases where you don't know exactly what to put for it.
#
wilkie
eprodrom: what I'd like to do is recommend we leave it as a SHOULD right now and get jasnell's feedback and follow up this afternoon
#
wilkie
tantek: when a SHOULD is good in a spec is when it is explicit about when it is used and when it is ok to not
#
wilkie
cwebber2: I think I would want to know the motivation for a SHOULD in the first place
#
wilkie
eprodrom: the idea is you could take a collection of objects and show them in a list
#
wilkie
tantek: it was required in Atom I think which is where it may be coming from
#
wilkie
eprodrom: how about we propose to explain the reasons for this being a SHOULD
#
eprodrom
PROPOSAL: explain the reasons for this being a SHOULD
#
wilkie
tantek: I've already seen this soak up a lot of discussion time
#
cwebber2
seems weird but no objections
#
wilkie
eprodrom: with Atom, yeah
#
wilkie
tantek: any objections to explaining why you should put a name and why you shouldn't in some other cases
#
wilkie
tantek: no objections, I think you are good to go on that proposal
#
wilkie
eprodrom: dmitriz, do you want to discuss 297?
#
jasnell
historically, with AS1, "displayName" was strongly recommended only when extension types were used, to give implementations something to use if they did not understand the type
#
wilkie
dmitriz: in as vocab, we have several types for representing polls and stack-overflow-like questions and answers
#
jasnell
"displayName" was not required, however, if the type was well known
#
jasnell
the same rule would apply here
#
wilkie
dmitriz: how do we handle closing polls or locking a question?
#
jasnell
if the object is using a core type from the vocabulary, then name is largely optional
#
wilkie
dmitriz: I believe jasnell's answer was "no we don't"
#
jasnell
if the object is using an uncommon type or an extension type, name should be provided
#
eprodrom
jasnell: Good example
#
wilkie
tantek: does anybody implement this for polls?
#
wilkie
s/implement this for/implement/
#
wilkie
eprodrom: statusnet
#
wilkie
tantek: should we mark polls at-risk
#
wilkie
tantek: this fits jasnell's answer that this can be done as extension
#
wilkie
eprodrom: I think it makes sense to have it be an extension
#
wilkie
tantek: any objections?
#
tantek
no objections. move Poll to an extension
#
wilkie
dmitriz: I have another issue. about 'scope' and 'context' properties in the vocabularity
#
jasnell
fwiw, closing a question is actually an activity. one could easily imagine {"type": "Close", "object": {"type": "Question", ... }
#
wilkie
dmitriz: it seems like the two are fairly similar
#
jasnell
dmitriz: they aren't
#
tantek
jasnell, any objection to moving Question / Poll to an extension?
#
jasnell
tantek: I see no reason to move it to an extension but whatever the WG decides
#
tantek
(evan said it would give us a chance to give them a more proper thorough treatment that implementations that care about those would like)
#
jasnell
dmitriz: scope deals with scoping the intended audience for the object and relates to the to/bto/cc/bcc fields
#
wilkie
dmitriz: 'context' seems like reply-to and useful for comments. 'scope' seems like access control and is this appropriate at this level?
#
tantek
(no current implementations - in the room - have intent to implement, hence it made sense to consider as an extension)
#
wilkie
dmitriz: it seems to fit the same purpose as the 'to' field
#
wilkie
cwebber2: do we have any known uses of 'scope'?
#
wilkie
eprodrom: no
#
wilkie
cwebber2: can we drop it?
#
wilkie
eprodrom: I would like to give time for jasnell to review and answer
#
wilkie
tantek: do we open the issue?
#
wilkie
eprodrom: yes
#
wilkie
cwebber2: I think dropping scope seems ok
#
jasnell
-1 to dropping scope
#
jasnell
-1 to dropping context
#
dmitriz
what is the use case for scope?
#
wilkie
tantek: can jasnell get on talky?
#
tantek
jasnell: can you get on the talky?
#
dmitriz
it seems to be overloading access control / to: field
#
jasnell
no I cannot, I'm on another call concurrently
#
wilkie
tantek: alright. open the issue and note we have some consensus at the meeting. we will have to come back to it.
#
tantek
but we have an important outstanding objection from jasnell so we will have to come back to it to better understand it
#
tantek
jasnell, no problem, we are capturing the current state for future discussion
#
wilkie
eprodrom: that means we are done
#
wilkie
tantek: you have a bunch of editor, not editorial, editor actions. we only have two after that?
#
wilkie
eprodrom: right
#
wilkie
tantek: do we want to consider publishing a new working draft of activity streams? even before CR draft.
#
wilkie
eprodrom: I think that makes sense. what does that mean for going to CR.
#
wilkie
tantek: it doesn't harm anything. it just puts another draft out such that the changes between that draft and CR are fewer.
#
wilkie
tantek: and it helps to get stuff like the conformance section to get more review
#
jasnell
to/bto/cc/bcc deal with notifications
#
jasnell
scope deals with scope the audience, it's a different role than to/bto/cc/bcc
#
wilkie
eprodrom: I should be able to have that by next telecon
#
jasnell
context is something else entirely... it describes a larger context in which the object exists
#
wilkie
tantek: you don't have to wait til the next telecon
#
wilkie
tantek: proposal is to publish new AS working drafts with outstanding edits completed
#
wilkie
eprodrom: great
#
eprodrom
+1
#
tantek
PROPOSED: publish new AS2 working drafts with outstanding (agreed, reviewed) edits completed
#
eprodrom
+1
#
dmitriz
+1
#
tantek
RESOLVED: publish new AS2 working drafts with outstanding (agreed, reviewed) edits completed
#
wilkie
tantek: that is completely in your camp. the sooner the edits are done, the sooner we get a new draft. so close to CR.
#
wilkie
tantek: we have 10 minutes but lunch is here so let's break for lunch. any objections?
#
jasnell
fwiw, I'm entirely -1 to removing Relationship
shevski, nicolagreco, eprodro34, nicolagreco_, melvster and Karli joined the channel
#
ben_thatmustbeme
scribenick: ben_thatmustbeme
#
tantek
chair: tantek
#
ben_thatmustbeme
(continuing from informal conversation during break)
#
ben_thatmustbeme
TOPIC: create update and delete of social objects
#
ben_thatmustbeme
rhiaro: I want to start with a demo of my own
#
ben_thatmustbeme
(the lunch conversation will be recapped soon)
#
tantek
DEMO: Activitypub posting to a site (Amy)
#
tantek
(setting up)
#
ben_thatmustbeme
rhiaro: i started building posting clients
#
ben_thatmustbeme
... the first i want to show is checkins. I made a checkin client, it authenticates with indieauth, and endpoint discovery the micropub way but its an activitypub client
#
ben_thatmustbeme
... (in terms of the data)
#
ben_thatmustbeme
(technical difficulties)
dmitriz joined the channel
#
ben_thatmustbeme
... creates an arrive activity on her site
#
ben_thatmustbeme
... backdated the checkin so it says she has been there for an amount of time
#
ben_thatmustbeme
... using another client I create an AS extension object of Consume activity with what i ate (Lunch - Free)
#
ben_thatmustbeme
rhiaro.co.uk/stuff?format=json
#
ben_thatmustbeme
... shows the AS objects that were just created
#
ben_thatmustbeme
shows another client for rsvps / travel plans / etc
#
ben_thatmustbeme
rhiaro: all of these are posting activitystreams json object through activitypub by a micropub discovery method (as i just reused the code for it for now)
#
ben_thatmustbeme
... the interesting thing was that i was able to do activitypub create without caring about the other parts of the activitypub spec
#
ben_thatmustbeme
... when i post with quill my micropub endpoint translates it to activity pub first
eprodrom_ joined the channel
#
ben_thatmustbeme
tsyesika: you said its to a micropub endpoint, do you also output the actities as microformats?
#
ben_thatmustbeme
rhiaro: there are some, but in my mind these are completely decoupled. The pages use accept-headers
#
ben_thatmustbeme
... it is different as if you visit my endpoint (in this case the equivalent) it shows nothing
#
ben_thatmustbeme
... in doing this is became really clear how close these two were together
#
ben_thatmustbeme
aaronpk: i can sort of summarize from break
#
tantek
aaronpk is giving a state of Micropub
#
ben_thatmustbeme
... the state of micropub is that when i created Micropub originally it was just create. That simplicity has led to many many clients.
#
ben_thatmustbeme
... the main goal of micropub is to allow many clients you didn't write to post to your site
#
ben_thatmustbeme
... for the majority of cases there already exists a way on your own system to edit and delete
#
tantek
(how many clients do create only?)
#
ben_thatmustbeme
... that said there is also a lot of value to being able to create and delete
#
Zakim
sees no one on the speaker queue
#
ben_thatmustbeme
... i'm not super happy with the version i have in MP now
#
ben_thatmustbeme
... it works, but i'm not tied to it.
#
ben_thatmustbeme
... right now it accepts form encoded or json for create
#
ben_thatmustbeme
... the form encoded is important for posting images and video at the same time by multipart
#
ben_thatmustbeme
... i was looking to see if there was a way to use non-form encoding for update & delete but still allow files
#
ben_thatmustbeme
(explains some examples from the spec)
#
ben_thatmustbeme
aaronpk: It would be more convenient if there were only one path for updates as it right now allows both
#
ben_thatmustbeme
... looking at the twitter API there are seperate endpoint for images
#
ben_thatmustbeme
... that returns an ID and then you have to just use that ID or it gets deleted in an hour
#
ben_thatmustbeme
... i like that method as it gets rid of form encoded
#
ben_thatmustbeme
... that simplifies the whole update and delete process for me
#
ben_thatmustbeme
... when you do that there is very little difference between that and activitypub
#
ben_thatmustbeme
... this is where i see the overlap
#
ben_thatmustbeme
... why should i bother making up this new type if activitypub already has this?
#
ben_thatmustbeme
... this is why rhiaro and I were talking about this earlier with the naming of "SocialPub" being the join of the two
#
ben_thatmustbeme
... if you look at it as just updates and deletes. micropub is a special case of create
#
ben_thatmustbeme
cwebber2: would that be for just notes or other things as well
#
ben_thatmustbeme
aaronpk: it could cover things as well, images, videos, events, etc
#
ben_thatmustbeme
... i also have the same for flights and legs of flights, thats super ugly as form encoded
nicolagreco joined the channel
#
ben_thatmustbeme
... for that one i would rather use a json object. There are plenty of cases for json format but i want that simple version for posting, thats the micro in micropub
#
ben_thatmustbeme
sandro: can i rephrase this? why not do it as micropub is the form encoded posting and "activity update" is the indirect way to modify the resource that has activity streams data on it? how does that not address your use case?
#
Zakim
sees no one on the speaker queue
annbass joined the channel
#
ben_thatmustbeme
aaronpk: i'm not creating acitivites i'm creating posts, so its a different vocabulary
#
ben_thatmustbeme
sandro: activity sreams gives us a patch for those
#
ben_thatmustbeme
aaronpk: thats what i could use
#
ben_thatmustbeme
... the other major difference between the specs, activity pub expects you send the entire object but i want to just modify single properties and i think activity pub would benefit from that
#
ben_thatmustbeme
cwebber2: do you think thats something that should go in to AS2 as an object
#
ben_thatmustbeme
aaronpk: i don't know
#
ben_thatmustbeme
cwebber2: i don't know either
#
ben_thatmustbeme
tantek: what if i gave you a week to discuss this asyncronously then maybe you can get consensus between you two and you can pitch it to the group
#
ben_thatmustbeme
cwebber2: we do also have some method of an undelete
#
tantek
tsyesika: we discussed some of this before lunch
#
ben_thatmustbeme
tsyesika: presumably this would be in both our specs we would refer to this social pub document. creating is still different. in activity pub we currently require you to always create posts in an activity
#
ben_thatmustbeme
... we could allow this to post a single object for client to server but not server to server
#
ben_thatmustbeme
aaronpk: i do support that idea, i think creating is the most important action and that should be as simple as possible
#
ben_thatmustbeme
... we would be looking for creating a CRUD syntax both specs could use
#
ben_thatmustbeme
... maybe you make that exception, but the idea is that there would be 1 way to create things that would be in common
#
ben_thatmustbeme
cwebber2: this sounds appealing of reaching concensus on something that has previously been very different on
nicolagreco joined the channel
#
ben_thatmustbeme
tsyesika: i think its a good idea to make use of this time tosee if we can resolve this as we have an open issue on activytpub now
#
ben_thatmustbeme
cwebber2: evan was a strong objector to seeing a "pure system" of always having activity wrapped objects go away
#
ben_thatmustbeme
... he didn't seem happy about it. i asked about the api only, and he didn't seem happy about it.
#
ben_thatmustbeme
aaronpk: i can see that making sense in the stream as well
#
ben_thatmustbeme
cwebber2: i think i'm ok with it, but i think its important that tsyesika be convinced since she is the main implementor
#
Zakim
sees cwebber on the speaker queue
#
tantek
(example of creating offline on a plane, and publishing later)
#
ben_thatmustbeme
tsyesika: i'm certainly in support of convergence. the create activity is useful in itself as it can contain information that is different from the object, say the offline creation is different from the publish date
#
tantek
(note: dt-created property has been discussed in other contexts for this reason too)
#
tantek
(separate from published or updated)
#
ben_thatmustbeme
tsyesika: i'm interested in seeing if on the micropub side you would be willing to have it so that the server can always accept the wrapped activity as well as the unwrapped format
#
ben_thatmustbeme
rhiaro: micropub doesn't say anything about what the server does with it when i gets the item, thats not part of the spec. all you have to do is have an endpoint that advertises itself as such
#
ben_thatmustbeme
aaronpk: we have a difference in authors, you could set the author in the object or the created date, so its assumed that the server will fill those in
#
ben_thatmustbeme
tsyesika: its the same in activity pub
#
Zakim
sees cwebber on the speaker queue
#
tantek
ack cwebber
#
Zakim
sees no one on the speaker queue
#
ben_thatmustbeme
cwebber2: it sounds like thats not so big a difference.
#
ben_thatmustbeme
... this seems like a minimalist create mode
#
ben_thatmustbeme
sandro: creation shortcut mode
#
ben_thatmustbeme
tsyesika: with a few caviats, i'm on board with this
#
tantek
s/caviats/caveats
#
ben_thatmustbeme
cwebber2: if our side supports that and your side supports the unwrapping activities
#
ben_thatmustbeme
aaronpk: whats left in micropub is having the file uploading endpoint, form encoding ..
#
ben_thatmustbeme
cwebber2: we might be able unify on the image endpoint too
#
ben_thatmustbeme
cwebber2: thats an easy collaboration endpoint
#
ben_thatmustbeme
tantek: i'd like to see that image endpoint written up
#
cwebber2
the out-of-band create mechanism
#
ben_thatmustbeme
rhiaro: there are a couple places where the two specs are unsure of things so this is great
#
ben_thatmustbeme
aaronpk: this would be great for me to keep micropub as simple as it should be
#
ben_thatmustbeme
cwebber2: if it is much smaller and we have a way to translate vocabularies
#
ben_thatmustbeme
... i can see it getting added to mediagoblin
#
ben_thatmustbeme
rhiaro: i was able to do that method to determine what data is being send
#
ben_thatmustbeme
tsyesika: i'm curious vocab convergence
#
ben_thatmustbeme
aaronpk: i think thats a seperate discussion that we could have
#
ben_thatmustbeme
... i tried to leave it out of micropub as much as possible
#
ben_thatmustbeme
... that way i can post to it without even knowing what its posting
#
ben_thatmustbeme
... i like the aspect of it
jtilles joined the channel
#
ben_thatmustbeme
tantek: what to most implementation support?
#
ben_thatmustbeme
aaronpk: most support only creating and most already have some other storage properties that they are matching to
#
ben_thatmustbeme
... when i built mine i specifically have the endpoint write directly to storage, so that it is sorted out when rendering
#
ben_thatmustbeme
cwebber2: i feel like where we are at a point where we are at a point where these are practically going to be shared but we need some idea of what mapping between the vocabularies means
#
Zakim
sees no one on the speaker queue
#
ben_thatmustbeme
aaronpk: the problem that keeps coming up in the indiewebcamp channel is how do we propogate changes to old posts
#
ben_thatmustbeme
... the readers are all based around new posts
#
ben_thatmustbeme
... this is where i'm seeing activity streams being useful for this, and while i might not have a mapping on my main site, but i might use it as a stream of whats going on
#
ben_thatmustbeme
cwebber2: rhiaro you were working on the mapping between the two at some point i think
#
ben_thatmustbeme
rhiaro: there is some pages and such, but the other important part is post type discovery
#
ben_thatmustbeme
rhiaro: so there are some properties that map directly but there are a few places where it takes some work
#
ben_thatmustbeme
cwebber2: so will microformats will reference this activitypub document
#
tantek
s/activitypub document/socialpub document
#
tantek
s/microformats/micropub
#
ben_thatmustbeme
... is there going to be a seperate socialpub document or will it be both specs take on some changes?
#
ben_thatmustbeme
rhiaro: i think since i've implemented this seperately as the create part, i'm in favor of breaking up activtypub into smaller docs
#
ben_thatmustbeme
tsyesika: i have to admit one of the things i want for activity pub is to break it up into smaller steps that are implementable seperately
#
ben_thatmustbeme
... so if i want to use only part of it, i can, but if some larger system wants to do all of it, they can
#
Zakim
sees no one on the speaker queue
#
ben_thatmustbeme
cwebber2: so heres a proposal kind of based off of what amy has done previously, would this be a reasonable restructuring of the document would be just "how to write a simple document" and then 'servers handling the client to server api' and then 3rd was server to server api
#
ben_thatmustbeme
rhiaro: i would see it as 'heres how to get data to the server' then 'heres what to do with it once it gets to the server'
#
ben_thatmustbeme
rhiaro: so if you wanted to do the second half you could do that seperately. you could do client to server just sending files for examples
#
ben_thatmustbeme
cwebber2: so maybe socialpub becomes client to server entirely and then activitypub becomes server to server
#
ben_thatmustbeme
... is that a proposal that we are willing to work towards?
#
ben_thatmustbeme
tsyesika: well there are more ways to break this up than just client to server and server to server
#
ben_thatmustbeme
... like posting an activity vs updating
#
ben_thatmustbeme
rhiaro: i think the client to server seperates very easily
#
ben_thatmustbeme
cwebber2: i think the simpler way is saying socialpub is client to server and activitypub becomes server to server
#
ben_thatmustbeme
tantek: i feel like there is part of it you are agreeing on some and others you are not
#
ben_thatmustbeme
... it seems like you are talking the same language now and thats a huge step
#
ben_thatmustbeme
... i want to capture this as a set of action items
#
ben_thatmustbeme
rhiaro: i could start with this as a section of social web protocols
#
ben_thatmustbeme
tantek: i also so a number of suggestions for next steps for activity pub that could be done
#
ben_thatmustbeme
... i'll trust you as editors to continue to converge on these proactively
#
ben_thatmustbeme
... but i'd like to see you not depend on each other.
#
ben_thatmustbeme
... amy you have a bunch of stuff written up, do you feel you can add that to social web protocols
#
ben_thatmustbeme
aaronpk: i can help with that
#
ben_thatmustbeme
tantek: for now you can add it and publish and iterate
#
ben_thatmustbeme
... so we can action you and then the rest can happen asyncronously
#
ben_thatmustbeme
... so that if anyone gets stuck on their document they are not stopping anyone else
#
ben_thatmustbeme
aaronpk: it sounds like the best thing i can do is replace the whole update and replace section and assume it will be moved to the social web protocols eventually
#
ben_thatmustbeme
tsyesika: i think the main this for us is to update our spec to allow this simple editing
#
ben_thatmustbeme
tantek: i think the other idea you had to update to do this seperate sections of incremental implementations that would be great
#
ben_thatmustbeme
action rhiaro to incorporate your work done in to the social web protocols document for the others in the group to review
#
trackbot
is creating a new ACTION.
#
trackbot
Created ACTION-88 - Incorporate your work done in to the social web protocols document for the others in the group to review [on Amy Guy - due 2016-03-24].
#
ben_thatmustbeme
tantek: both of you (aaron and tsyesika) to keep track of that on your githubs
eprodrom__ joined the channel
#
ben_thatmustbeme
ben_thatmustbeme: i would like to see outbox read and write seperated out
#
ben_thatmustbeme
cwebber2: i think there is some more discussion on that
#
ben_thatmustbeme
tantek: can you create an issue on social web protocols to capture that amy?
#
ben_thatmustbeme
tantek: we are not breaking for 15 minutes
#
tantek
s/not/now
#
tantek
resume at 14:30 EDT
#
Loqi
I added a countdown for 3/17 11:30am (#5819)
Karli_ joined the channel
#
Loqi
resume
#
Loqi
Countdown set by tantek on 3/17/16 at 11:15am
#
tantek
Thank you Loqi
#
KevinMarks_
I can see a tantek
jasnell joined the channel
#
aaronpk
KevinMarks_: can you hear?
#
ben_thatmustbeme
TOPIC: open issues for activitypub
#
KevinMarks_
yes i can
#
ben_thatmustbeme
eprodrom_: i think the idea was to put some time this afternoon in to resolving open issues
#
ben_thatmustbeme
cwebber2: i would like to proceed by first addressing issue 71
#
sandro
scribe: sandro
#
sandro
tsyesika: we have certain terms like inbox, outbox, ... and rhiaro suggested generalizing this as a stream array
#
sandro
.. also a way to achieve (something) about inbox and outbox
#
sandro
cwebber2: So the question is... Amy's suggestion is instead of followers, .... use types, ....
#
sandro
cwebber2: What could be true is we could have a term in activitypub that here's a term for ...
#
sandro
cwebber2: Amy's propositiyon soun ds interesting but I dont think object types is the right way to break it up
shevski joined the channel
#
sandro
cwebber2: c-s or s-s might have different streams, and maybe this is a way to do that
#
tantek
hey shevski you coming back for the afternoon?
#
shevski
i'll be back
#
sandro
cwebber2: so there could be a "likes" stream, maybe a subset of collection, or maybe it's own URI,
#
Zakim
sees aaronpk on the speaker queue
#
sandro
.. I'm not sure which, I'd like to open it for discussion
#
sandro
.. I think people do have arbitrary streams
#
sandro
aaronpk: I have struggled with this problem. I think I understand why you have these distinctions
eprodrom__ and annbass joined the channel
#
sandro
.. on my homepage I have some kinds of posts, but not others, and down at the bottom I have links to the others
#
sandro
.. I curate the collections based on how I want people to read it, NOT on types
#
sandro
.. so I have health
#
sandro
.. and travel
#
sandro
.. and events I'm going to that are not in Portland
#
sandro
.. so these are very much mixed types
#
KevinMarks_
q+ are these different semantically than tags?
#
Zakim
KevinMarks_, you typed too many words without commas; I suspect you forgot to start with 'to ...'
#
sandro
.. and I have my primary stream
#
eprodrom__
q?
#
Zakim
sees aaronpk on the speaker queue
#
eprodrom__
ack aaronpk
#
Zakim
sees no one on the speaker queue
#
KevinMarks_
q+ to ask are these different semantically than tags?
#
Zakim
sees KevinMarks_ on the speaker queue
#
sandro
.. In an old version of my site I had them by type, but that didn't work well
#
sandro
eprodrom__: Certain groups, like Chris' Friends, or Chris' main feed, or Things Chris Likes, ... a core set of five predefined
#
sandro
.. then have other unqualified streams
#
sandro
cwebber2: Because followers and likes have API specific purpose
#
sandro
eprodrom__: Right
#
sandro
.. So just have a relationship Stream might do this
#
sandro
cwebber2: WIth the addition of arbitrary labeling of these new streams
#
sandro
cwebber2: Sounds like have consensus, which I'm recording on the issue
#
sandro
"So we will have special API specific collections, like likes and followers and inbox, but streams should be supported as a general bucket for interesting collections."
#
sandro
cwebber2: This kind of moves into Who Do You Trust
#
sandro
.. I think we've agreed, you trust same origin, otherwise you link back and verify
#
sandro
.. the desire for supporting static sites
#
sandro
.. So I would point my endpoints off-server
#
sandro
.. in which case how do you know who has authority
#
sandro
.. Are there other origin scoping tools?
#
sandro
.. or do we just not want to permit that kind of static site thing
#
sandro
sandro: Doesn;t a link serve as delegation?
#
sandro
cwebber2: If the profile is on a static site, maybe we can trust what it points to, yes....
#
sandro
cwebber2: adding comment on issue
jasnell joined the channel
#
sandro
eprodrom__: ap.io gets an UpdateOn dustyclould, and it knows how to do it. I don't see why we need to proscribe server behavior
#
sandro
cwebber2: If you get a message from me that there's something new, and my endpoints are on another server, should you trust them
#
sandro
eprodrom__: If I remember how pump.io does it, it checks to see the authentication of the actor
#
sandro
cwebber2: In APub you can have an update that's an update of a blog on another site. And you'd trust the author.
#
sandro
cwebber2: Can you fake that you're someone else?
#
melvster
IMHO there's nothing specific about the same origin that implies you can trust it, that's just a typical pattern used together with centralized services
#
sandro
cwebber2: Assuming you want to support static sites, you'd need something like this
#
sandro
sandro: same origin isn't relevant here. It's following trust-bearing links
#
sandro
tantek: CSP - content-security-policy can help if you want to do this offline
#
sandro
harry: So for example you could trust ... (something)
nicolagreco joined the channel
#
sandro
cwebber2: I think I understand how to handle this
#
sandro
tantek: I'm happy to answer CSP questions, since I just implemented it for my site
jasnell_ and hhalpin joined the channel
#
hhalpin
CSP is here Sandro
#
sandro
cwebber2: The main challenge for us is how to do discovery
#
hhalpin
Typically, you want to use it when you are authorizing Javascript from outside the same origin.
#
hhalpin
Would be useful if the endpoint has a feed that has some JS, and should be recommended to use.
#
tantek
hhalpin: documentation of my experience with CSP: https://indiewebcamp.com/CSP
shevski joined the channel
#
hhalpin
CSP support works well in browsers now
#
hhalpin
So any SOP exceptions, particuarly if they involve javascript, should use CSP
#
KevinMarks_
if you separate the image upload from the post, and then use a URL, that implies you could use an external url for an image?
#
sandro
cwebber2: Is it useful to put on the user's profile page where I submit my photos
#
sandro
aaronpk: You see things like this on a multiuser system
nicolagreco joined the channel
#
sandro
tsyesika: Someone might want their media whereever they want it
#
sandro
cwebber2: It feels a bit silly to me
#
sandro
tsyesika: People might have multiple endpoints
#
sandro
eprodrom__: Discoverable endpoints for upload? Sounds great
#
sandro
cwebber2: okay, sounds good
#
sandro
cwebber2: This has come up a few times. It bothers me we still don't have this
#
sandro
.. the main challenge that was blocking this is what happens when activities represent other activities that don't exist any more
#
sandro
... transient activities, like IM or strawberry-watering.
#
sandro
.. one approach is to have activities with no id, and they get delivered through federation but other otherwise not interesting
#
sandro
.. or give them a UUID
#
tantek
Topic: Open issues for ActivityPub
#
tantek
Open issues for ActivityPub until 15:35
#
sandro
eprodrom__: We talked about the 'scope' property earlier today. Would that be a way to address this?
#
tantek
Open issues for Webmention at 15:35
#
Loqi
I added a countdown for 3/17 3:35pm (#5820)
#
sandro
.. maybe I put a scope of 'game update'
#
hhalpin
in general, you need an id or some kind for HTTP REST retrieval of ids from X to X1 in terms of polling, right?
#
tantek
!cancel #5820
#
Loqi
Ok, I cancelled it
#
aaronpk
q+ that sounds like a notification
#
Zakim
aaronpk, you typed too many words without commas; I suspect you forgot to start with 'to ...'
#
tantek
Open issues for Webmention at 15:35 EDT
#
Loqi
I added a countdown for 3/17 12:35pm (#5821)
#
tantek
aaronpk q+ to say that sounds like
#
aaronpk
q+ to say that sounds like a notification
#
Zakim
sees KevinMarks_, aaronpk on the speaker queue
#
Zakim
sees KevinMarks_, aaronpk on the speaker queue
#
Zakim
sees aaronpk on the speaker queue
#
sandro
eprodrom__: One of the problems with client-defined-expiry is that client lie and cheat and are bad. They say keep this forever, it's important.
#
aaronpk
Zakim is wayy to finicky
#
dmitriz
q+
#
Zakim
sees aaronpk, dmitriz on the speaker queue
#
sandro
.. Clients might have advisory info, but the server needs to decide.
#
sandro
.. IRC updates from the F2F, scope might be F2F
#
sandro
cwebber2: mauybe that's a fed only concern
#
hhalpin
q?
#
Zakim
sees aaronpk, dmitriz on the speaker queue
#
hhalpin
q+
#
Zakim
sees aaronpk, dmitriz, hhalpin on the speaker queue
#
sandro
eprodrom__: Once again you're trying to dictate server behavior. Also this might not be that important. identica has a lot of updates, but it's not that big really
#
sandro
aaronpk: It sounds like you're kind of talking about a Notification, which is not an activity
#
sandro
cwebber2: Yes, but also a chat that you don't want to keep around
eprodrom__ joined the channel
#
sandro
aaronpk: Off The Record messaging is a different thing, with its own set of considerations
#
sandro
.. Call these notifications, and it makes sense.
#
sandro
aaronpk: You probably don't want to casually throw OTR into the spec
Karli joined the channel
#
sandro
cwebber2: Yeah, if we just put OTR in here, we'll probably get it wrong
#
sandro
cwebber2: In this world, there's generally an expectation that people can retrieve things, so OTR wil be hard
#
sandro
cwebber2: How would we show notifications?
#
sandro
.. Some server-to-server notificaton, like your quota is reached
#
sandro
eprodrom__: Is that about too much data? I dunno what this is for.
#
sandro
dmitriz: This is misusing scope. James said it would be renamed to 'audience'. And access-control-like thing.
#
sandro
cwebber2: OpenFarmGame has its own type. So servers could garbage-collect them easily enough.
#
sandro
cwebber2: In an earlier version of the spec, it seemed like servers had to keep things around forever
#
sandro
.. that was also part of our motivation for tombstones
#
sandro
eprodrom__: That might be good to document. For example, twitter API only lets you go back 800 tweets, which is like a day.
#
hhalpin
Re OTR end-to-end encrypted messaging, there is a new protocol called Axolotl that is used by Signal/WhatsApp/(interest from Mozilla/Wire: https://en.wikipedia.org/wiki/Axolotl_%28protocol%29
#
hhalpin
That is a revision and fixes mpOTR issues
#
hhalpin
However, I agree that OTR is out of scope.
#
sandro
dmitriz: Agreed clients lie, but the client setting an expiry on a stream is useful.
jasnell joined the channel
#
hhalpin
However, happy to ask the nextleap folks (George and Karthik - https://nextleap.eu) to see if they can staple Axolotl on top of whatever comes out of ActivityPub, since folks are going to be working on that for the next 2.5 years
#
sandro
cwebber2: Could be via an extension
#
sandro
eprodrom__: Like 'earliest item in colleciton is X'
#
sandro
.. Most social systems don't go back very far now, so we shouldn't ask that of folks.
#
sandro
.. "This is everything in the inbox. Note some servers limit the number of pages you cna go back."
#
sandro
cwebber2: okay, resolved
#
hhalpin
+1 finding earliest item in collection
shevski joined the channel
#
hhalpin
Do we have some normative way of getting id numbers per feed in AS2.0 and ActivityPub?
#
hhalpin
[looking in spec]
#
sandro
"we won't support id-less notificaitons. Clarify that it's up to servers if they want to keep around objects as long as they want. If they want to delete objects, like maybe delete a bunch of game notifications, that's a-ok.
#
sandro
Perhaps a future extension will permit clarifying how long users might expect they can continue to access data."
#
sandro
tsyesika: Can we specify indieauth for authentication?
#
sandro
tsyesika: Or is that out-of-scope?
#
Zakim
sees aaronpk, dmitriz, hhalpin, sandro on the speaker queue
#
hhalpin
+1 OAuth 2.0, with a nonn-normative recommendation for use of rel="me" w/i IndieWeb
melvster joined the channel
#
cwebber2
q- aaronpk
#
Zakim
sees dmitriz, hhalpin, sandro on the speaker queue
#
eprodrom__
ack aaronpk
#
Zakim
sees dmitriz, hhalpin, sandro on the speaker queue
#
eprodrom__
ack dmitriz
#
Zakim
sees hhalpin, sandro on the speaker queue
#
dmitriz
q+
#
Zakim
sees hhalpin, sandro, dmitriz on the speaker queue
#
sandro
hhalpin: indieauth is oauth2 so ...
#
eprodrom__
q+
#
Zakim
sees hhalpin, sandro, dmitriz, eprodrom__ on the speaker queue
#
Zakim
sees hhalpin, sandro, dmitriz, eprodrom__, cwebber on the speaker queue
#
sandro
.. I feel like you should normatively require oath2 and suggest indieauth
#
Zakim
sees hhalpin, sandro, dmitriz, eprodrom__, cwebber, aaronpk on the speaker queue
#
eprodrom
q?
#
Zakim
sees hhalpin, sandro, dmitriz, eprodrom__, cwebber, aaronpk on the speaker queue
#
tantek
+1 to hhalpin
#
tantek
ack hhalpin
#
Zakim
sees sandro, dmitriz, eprodrom__, cwebber, aaronpk on the speaker queue
#
sandro
hhalpin: How do you do the REST call where you get X from Y
#
eprodrom
q?
#
Zakim
sees sandro, dmitriz, eprodrom__, cwebber, aaronpk on the speaker queue
#
hhalpin
Like without re-polling everything
#
hhalpin
That is something Objective8 from D-CENT hit
#
hhalpin
We can normatively refer to OAuth 2.0 - its an IETF rec
#
hhalpin
In fact, OAuth 2.0 does more or less give interop
#
hhalpin
OAuth 2.0 is Authorization
#
tantek
agreed that interop is the goal
#
tantek
reference something if it helps interop
#
sandro
sandro: oauth2 doesn't tell you what you need to make this work
#
hhalpin
+1 OAuth 2.0 and Bearer Token spec
#
tantek
+1 to that as well
#
dmitriz
bearer tokens in a federated context is not that easy
#
hhalpin
Authentication should be left out (WebAuth + password stuff)
#
sandro
aaronpk: Use oatuh2 and bearer-tokens, but that still leaves stuff underspecified
#
dmitriz
(this is something we've been struggling with in Solid, as well)
#
wilkie
identity in a federated context is not the easy
#
hhalpin
Identity, well, it's tough. There's some takeup of OpenID Connect (OAuth 2.0 profile)
#
sandro
aaronpk: Identity is what's really useful here
#
hhalpin
But it's not as universal in takeup as OAuth 2.0
#
Zakim
sees sandro, dmitriz, eprodrom__, cwebber, aaronpk on the speaker queue
#
sandro
.. So "just use oauth" doesn't sove the problems
#
Zakim
sees dmitriz, eprodrom__, cwebber, aaronpk on the speaker queue
#
Zakim
sees dmitriz, eprodrom__, cwebber, aaronpk, tantek on the speaker queue
#
sandro
eprodrom: So Use Auth2 with Bearer-Tokens, that's clear enough, but...
#
Zakim
sees dmitriz, eprodrom__, cwebber, aaronpk, tantek on the speaker queue
#
Zakim
sees dmitriz, eprodrom__, cwebber, tantek on the speaker queue
#
sandro
cwebber2: "This is a stub to be expanded"
#
hhalpin
JSON Web Signatures is just a way to sign the bearer token if bearer token is JWT
#
sandro
cwebber2: This was left in there as a to-be-worked-on
jasnell_ joined the channel
#
sandro
eprodrom: We keep saying don't do this :-)
#
hhalpin
I'm happy to take an action to review/edit that piece. We could make it non-normative but no guidance is kinda crazy
#
sandro
cwebber2: Is the right thing to do to say that Auth and Ident are left as an open question
#
hhalpin
q?
#
Zakim
sees dmitriz, eprodrom__, cwebber, tantek on the speaker queue
#
hhalpin
q+
#
Zakim
sees dmitriz, eprodrom__, cwebber, tantek, hhalpin on the speaker queue
#
eprodrom
q?
#
Zakim
sees dmitriz, eprodrom__, cwebber, tantek, hhalpin on the speaker queue
#
eprodrom
ack dmitriz
#
Zakim
sees eprodrom__, cwebber, tantek, hhalpin on the speaker queue
#
sandro
sandro: Leave it out of the spec, and put a best practice in a Note
#
sandro
dmitriz: In Solid, we've been looking at this, and IndieAuth is one of the things we considered.
#
sandro
.. but because of all the redirects, it's nice in a browser, but not so clear in an API
#
sandro
.. Facebook and others solve that by giving an API token, but that's non-trivial
#
eprodrom
q?
#
Zakim
sees eprodrom__, cwebber, tantek, hhalpin on the speaker queue
#
sandro
.. So lets get something working, but yeah, leave it not in the spec for now
#
sandro
eprodrom: My feeling is, if you need to, Auth2+BearerTokens, but I can see lots of other ways to do this, unauth, basic auth, client certs, etc
#
sandro
.. Telling me I have to use a certain kind of auth messes things up for me.
#
Zakim
sees eprodrom__, cwebber, tantek, hhalpin on the speaker queue
#
tantek
ack next
#
Zakim
sees eprodrom__ at the head of the speaker queue
#
Zakim
sees cwebber, tantek, hhalpin on the speaker queue
#
sandro
tsyesika: So we should say "folks SHOULD use OAuth2 + BT" ?
#
sandro
eprodrom: Pump.io isn't going to bother with indieauth. We'll stick with username and password.
#
sandro
.. we'll just generate our own tokens
barnabywalters joined the channel
#
sandro
.. so it's okay as a SHOULD or a best-practice. Don't require more than you can.
#
Zakim
sees cwebber, tantek, hhalpin on the speaker queue
#
eprodrom
ack cwebber
#
Zakim
sees tantek, hhalpin on the speaker queue
#
sandro
cwebber2: Implementations will probably do what the others do.
#
eprodrom
q+
#
Zakim
sees tantek, hhalpin, eprodrom on the speaker queue
#
eprodrom
ack tantek
#
Zakim
sees hhalpin, eprodrom on the speaker queue
#
sandro
tantek: tsyesika said goal should be interop
#
sandro
.. we can't normatively refer to indieauth, in part because of charter, but we can do an informative non-normative reference
#
sandro
.. one way would be to ask if there are any implementations that have an intent
#
cwebber2
aaronpk, is specification of indieauth as informative / non-normative currently the state in your standards?
#
aaronpk
in micropub?
#
cwebber2
aaronpk: yes
#
sandro
.. if no intends to implement both, then don't bother
#
eprodrom
q?
#
Zakim
sees hhalpin, eprodrom on the speaker queue
#
Zakim
sees hhalpin, eprodrom, cwebber on the speaker queue
#
sandro
amy: my site uses indieauth, but it delegates the work to indieauth.com
#
sandro
aaronpk: The interesting part here is starting from your URL and ending up getting a bearer token
jasnell joined the channel
#
sandro
tantek: So you have an implementation to compare against ( rhiaro's )
#
sandro
tantek: Just style it in a spec as NOTE
#
eprodrom
ack hhalpin
#
Zakim
sees eprodrom, cwebber on the speaker queue
#
sandro
hhalpin: A total stub then that's not going to work because no-one is going to read it.
#
sandro
hhalpin: So say O2 + BT and NOTE: try IndieAuth
#
tantek
BT = bearer token
#
sandro
hhalpin: But obviously it's not going to be usef by everyone
#
Loqi
Open issues for Webmention
#
Loqi
Countdown set by tantek on 3/17/16 at 12:05pm
#
Zakim
sees eprodrom, cwebber, aaronpk on the speaker queue
#
sandro
hhalpin: "SHOULD Oauth2 + Brearer-Token"
#
eprodrom
q?
#
Zakim
sees eprodrom, cwebber, aaronpk on the speaker queue
#
sandro
hhalpin: Happy to have relevant experts look over this text
#
tantek
ack eprodrom
#
Zakim
sees cwebber, aaronpk on the speaker queue
#
sandro
eprodrom: Does IndieAuth work in non-browser applications?
#
sandro
dmitriz: RIght, that's a problem
#
sandro
eprodrom: Also, not in server-to-server
#
hhalpin
I would also keep authentication out of scope, server to server is OAuth
#
sandro
eprodrom: We should define server-to-server method
#
hhalpin
in terms of authorization
#
hhalpin
happy to review that text
#
sandro
aaronpk: So I just say use Bearer-Token
#
sandro
aaronpk: MIcroPub has text like this
#
sandro
tantek: How do private webmentions work?
#
eprodrom
q?
#
Zakim
sees cwebber, aaronpk on the speaker queue
#
Zakim
sees cwebber on the speaker queue
#
sandro
ack cwebber2
#
Zakim
sees cwebber on the speaker queue
#
tantek
ack next
#
Zakim
sees cwebber at the head of the speaker queue
#
Zakim
sees no one on the speaker queue
#
sandro
cwebber2: Let's aim for the same text between micropub and activitypub
#
sandro
cwebber2 reads micropub spec parts aloud
#
sandro
sandro: that wouldn't allow client-certs that evan wants
#
sandro
eprodrom: Ah yes, I wouldn't want MUST
#
sandro
aaronpk: I definetely want multiple ways to get the token, so I leave that open.
#
sandro
aaronpk: I like the requirement of Bearer-Tokens, because it's what everyone does anyway.
#
eprodrom
q?
#
Zakim
sees no one on the speaker queue
#
sandro
aaronpk: Separate out authentication from authorization
#
sandro
aaronpk: Separate how you get the bearer token from how you use it.
#
sandro
eprodrom: Make the Bearer-Token a SHOULD
#
sandro
aaronpk: yep
#
melvster
you have to separate THREE parts not TWO : 1. identity 2. authentication 3. authorization
#
sandro
aaronpk: SHOULD use bearer-token, SHOULD use oauth2 to get it
#
sandro
sandro: let's go for MAY use oauth2 to get it
#
sandro
sandro: since there are other perfectly legit ways
#
melvster
this is why oauth is not a good fit for the social web, it doesnt do identity (or doesnt do it very well at least)
#
sandro
cwebber2, probably down to about 22 issues, and several more we can deal with among the editors
nicolagreco, jasnell and shevski joined the channel
#
Zakim
sees no one on the speaker queue
#
eprodrom
q?
#
Zakim
sees no one on the speaker queue
#
rhiaro
scribe: rhiaro
#
rhiaro
TOPIC: Webmention open issues
#
rhiaro
aaronpk: Source and target form parameters are not URIs, how can we convert them to URIs because it's important for some people
#
rhiaro
... My thoughts are it has not caused any issues with any implementations that these are not URIs, so unless anyone has a single sentence they can describe a solution right now we can do it, but if not I propose we close
#
rhiaro
sandro: prefix with http://.....#
#
rhiaro
... When people want to represent their data for archival or to pass to other systems they want to make unambiguous the notion of source and target
#
rhiaro
... These notions are things that reasonably could have URIs
#
rhiaro
... if they were in IANA we could use that, but they're not, so currently everyone has to make up their own uris for these
#
rhiaro
... It's a trivial problem to solve, and it's a problem some people have
#
rhiaro
tantek: an alternative is a registry for form encoded parameters, like rel values, which are not uris
#
rhiaro
sandro: there's no conjecture that people should use the same form encoded parameter
#
rhiaro
aaronpk: what is the easy solution?
#
rhiaro
eprodrom: the solution is, if you want this to be a URI, prefix them with http://w3c.org/ns/webmention#
#
rhiaro
tantek: isn't this an implementation detail?
#
rhiaro
sandro: not if you want interoperability with some protocol that isn't webmention
#
rhiaro
... people might in theory want to see where webmentions are
#
rhiaro
aaronpk: there's no definition of get on a webmention endpoint
#
rhiaro
sandro: you should get back webmentions you're allowed to see
#
rhiaro
tantek: if you were to publish an activity stream of webmentions, what would that look like
#
rhiaro
aaronpk: implementations currently just drop webmentions on the floor after they're processed
#
sandro
say that webmention source is equivalent to 'http://www.w3.org/ns/webmention#source'
#
rhiaro
... there is an idea of status urls, which can be GET to see status, so the webmention itself has url
#
KevinMarks_
an activity stream of webmentions would look like http://mention-tech.appspot.com/
#
rhiaro
... Implementations treat these as temporary and drop them. THere are so many that are spam that come in so they aren't kept
#
rhiaro
... but that's the resource
#
rhiaro
... but status is the description fo the webmention source and target and maybe what happened to it
#
rhiaro
tantek: if your implementation wishes to treat these terms as uris then it may use the following: http://www.w3.org/ns/webmention#
#
rhiaro
... anyone who wants to use that can
#
rhiaro
... anyone who doesn't can skip it
#
rhiaro
aaronpk: what section does that go in?
#
rhiaro
tantek: appendix?
#
rhiaro
aaronpk: it's own section?
#
rhiaro
tantek: anyone who wants a uri for this you can point them to that section, don't bury it
#
rhiaro
aaronpk: okay, I'll comment and close the issue when it's added
#
sandro
"URIs for form-encoding properties"
#
eprodrom
q?
#
Zakim
sees no one on the speaker queue
#
rhiaro
aaronpk: I've summarised my position at the bottom
#
rhiaro
... This is a description of an attack where somebody can send a webmention to a system, and if the system can cause actions to happen on a GET request, I can cause that system to make another GET request somewhere which might have undesireable requests
#
rhiaro
eprodrom: so I could use it for probing security holes in wordpress servers?
#
rhiaro
aaronpk: except the attacker doesnt' actually get a response
#
rhiaro
tantek: you could cause a side effect, not get information
#
rhiaro
aaronpk: all you can do is make the webmention receiver make a get request
#
rhiaro
... which is unfortunately possible but also something that is bad practice no matter what you're doing
#
rhiaro
... so it's not really something for the webmention spec: don't make your system vulnterable to get requests
#
rhiaro
sandro: Never install webmention if you're behind a firewall? You are endangering everything esle behind the firewall
#
rhiaro
aaronpk: only if yoru system has access to both sides of the firewall
#
rhiaro
tantek: we should call this out in the security and privacy?
#
rhiaro
aaronpk: what am I calling out? dont' put insecure systems on the internet?
#
rhiaro
... what am I supposed to say?
#
rhiaro
sandro: this is putting a system that is perfectly secure in a .. behind a firewall which may seem reasonable because it can't do anythign except webmention, but people might not realise that a putting a blog tha timplements webmention behind a firewall in a way that it has access to the internet
#
eprodrom
q?
#
Zakim
sees no one on the speaker queue
#
rhiaro
aaronpk: it has to have server access to the internet in order to receive a webmention in the firs tplace
#
rhiaro
... you'd have to put an http server inside your firewall that also listens publicly
#
KevinMarks_
"In particular, the convention has been established that the GET and HEAD methods SHOULD NOT have the significance of taking an action other than retrieval. These methods ought to be considered "safe""
#
Zakim
sees cwebber on the speaker queue
#
rhiaro
sandro: behind the firewall you have a simple blog and the blog does a post that happens to mention something else behind the firewall and does the webmention processing, dereferences the url that the user put in the post, and that thing out there says go to this url as my webmention endpoint, does that, that was behind the firewall..
#
rhiaro
aaronpk: oh okay
#
rhiaro
hhalpin: why is this not a problem for any system that lets you put arbitrary urls as input? not just webmention
#
rhiaro
aaronpk: sandro described the actual attack vector
shevski joined the channel
#
rhiaro
... blog inside firewall does not listen on internet, has no public endpoint
#
KevinMarks_
how is this different from a hyperlink in the browser that you click inside the firewall?
#
rhiaro
... a person behind firewall writes a post with a linkt o the attacker
#
rhiaro
... blog makes request to attacker
#
rhiaro
... attacker can then cause the internal system to make a request to another internal system, if the webmention endpoint of the attacker is inside the firewall
#
eprodrom
q?
#
Zakim
sees cwebber on the speaker queue
#
eprodrom
ack cwebber2
#
Zakim
sees cwebber on the speaker queue
Karli joined the channel
#
rhiaro
aaronpk: when I was addressing this it sounded like I was describing really basic security practices and didnt' want to sound condescending
#
eprodrom
ack cwebber
#
Zakim
sees no one on the speaker queue
#
annbass
q+ to ask same question that KevinMarks asked
#
Zakim
sees annbass on the speaker queue
#
rhiaro
cwebber2: would it be possible to post to localhost? cos that sounds like the biggest risk
#
eprodrom
q?
#
Zakim
sees annbass on the speaker queue
#
rhiaro
aaronpk: it could make the software that is verifying the webmention post to itself
#
rhiaro
cwebber2: can't post to anythign else on a different port on localhost?
#
rhiaro
aaronpk: the attackers url can advertise a webmention endpoint, which can be anything including localhost, a port, 0.0.0.1...
#
eprodrom
q+
#
Zakim
sees annbass, eprodrom on the speaker queue
#
rhiaro
cwebber2: there are definitely security things with servers that allow you to access..
#
rhiaro
aaronpk: it's only ever going to post source and target
#
rhiaro
... I would be willing to add an exception that says if it encounters localhost or 127.* then drop it
#
rhiaro
... I'd be happy to put that in security considerations
#
rhiaro
... Maybe not obvoius, definitely specific to webmention
#
rhiaro
eprodrom: and don't repeat failures?
#
hhalpin
This seems to be a generic problem for any spec that has an 1) input and then 2) takes URLs from that input and GETs them.
#
rhiaro
... could be DOS
#
rhiaro
... do exponential backoff if you need to
#
rhiaro
aaronpk: definitely will put in about not sending to localhost
#
hhalpin
I mean, not sending webmention to localhost makes sense
#
rhiaro
sandro: I'm thinking of basically saying don't allow a webmention system to cross the firewall
#
rhiaro
eprodrom: firewall is a loose term
#
rhiaro
tantek: someone can publish an html document that has img src="localhost.../dosomething" you load that and it accesses your localhost
#
rhiaro
... or you can check the html spec and see what it says about image loading and how they treat that problem
#
rhiaro
... because cross domain images obviously work
#
rhiaro
... so that's one anagolous example
#
rhiaro
... Also, rel=stylesheet
#
rhiaro
... well defined, interoperable, well hardened
#
rhiaro
... Those are two places you could look to see how they solve this and copy taht
#
sandro
+1 tantek this is like the browser fetching an image or stylesheet
#
rhiaro
... if it's good enough for a browser it's good enough for webmention
#
rhiaro
aaronpk: okay
#
eprodrom
q?
#
Zakim
sees annbass, eprodrom on the speaker queue
#
eprodrom
ack annbass
#
Zakim
annbass, you wanted to ask same question that KevinMarks asked
#
Zakim
sees eprodrom on the speaker queue
#
hhalpin
+1 (but worth further thinking about)
#
rhiaro
annbass: KM asked the same question - how is this different than a regular hyperlink going out through the firewall
#
rhiaro
aaronpk: a hyperlink a person has to click on
deiu joined the channel
#
hhalpin
The trick is that the link is automatically ran
#
hhalpin
by the webmention spec
#
rhiaro
... this is a side effect of writing a blog post that links to an attackers url, but the person doesn't have to click the link
#
tantek
hhalpin, just like an image is automatically loaded
#
rhiaro
annbass: i see
#
hhalpin
although lots of other possible apps outside webmention could do this
#
tantek
image, iframes, scripts, stylesheets
#
rhiaro
aaronpk: but similar to receiving a phishing email and having a person click the link
#
annbass
s/anagolous /analogous /
#
rhiaro
... The result then is I'm going to find that language and it should clear it up
#
wilkie
even sandboxed iframes can do cross-domain GETs for stylesheets and scripts
#
eprodrom
q?
#
Zakim
sees eprodrom on the speaker queue
#
eprodrom
q-
#
Zakim
sees no one on the speaker queue
#
rhiaro
... bengo had suggestion of discovery steps addition of having a 4th step checking a .well-known to find the webmention endpoint
#
rhiaro
... which lets you delegate an entire domain to a webmention endopint without having to add it as a link header
#
rhiaro
... Question is, is this worth it or is a http link header enough to support whole domain delegation
#
rhiaro
... One path forward is say: the http link header can be configured at the server level so that's enough to support server-wide delegation
#
rhiaro
... You're a large orgnaisation with many different subsystems, which is pretty common, wanting to have a single webmention endpoint across the whole thing
#
rhiaro
... the http link header can be configured at the server, not the software, so maybe that's enough
#
rhiaro
... Other option is to add this well-known and add it at-risk since ther eare no implementations right now
#
rhiaro
... See if anyone implements, and if not drop it
#
rhiaro
tantek: last time this came up we resolved to stick with follow your nose
#
rhiaro
... which this is not
#
rhiaro
aaronpk: I think bengos' arguement that this was new information is a use case that many different kinds of software installed that we hadn't considered when making that resolution
#
eprodrom
q?
#
Zakim
sees no one on the speaker queue
#
rhiaro
... My proposal to clos ethis with no action is justified by an http link header can be configured server wise
#
rhiaro
<rhiaro> DIdn't he also say something about not being able to configure the http header?
#
rhiaro
aaronpk: I think it's the same amount of work organisationally to add the .well-known path as it would to configure the link header
#
hhalpin
q+
#
Zakim
sees hhalpin on the speaker queue
#
rhiaro
eprodrom: the link rel is registered and defined right? So since there is host-meta, the link is already there in http
Karli joined the channel
#
rhiaro
... if someone wants to go sniffing around and wants to try some bottom of the barrel ways to try it, there are ways for them to do it already with the link-rel
#
rhiaro
... The worst would be to say if you still can't find it try other ways of turning a link-rel into an endpoint
#
rhiaro
aaronpk: I'd rather not recommend another way for senders to find endpoints, there are already 3 and they have to do ALL of them
#
rhiaro
... And if you add a 4th they'll have to do that also and it's a very different mechanism
#
rhiaro
... Now you're dealing with parsing link headers (already non trivial), parsing html, then you'd have to also parse xml, also parse json
#
rhiaro
hhalpin: what are the current ones?
#
rhiaro
aaronpk: http link header, html link tag and html a tag
#
rhiaro
hhalpin: not being able to modify the link header is common if you don't have full control
#
rhiaro
... but then the a tag should work
#
rhiaro
aaronpk: if you do have full control you're in the same position to add .well-known as to create link header
#
rhiaro
hhalpin: but if you can create directoreis and put files in you can't add a link header
#
rhiaro
... but then the a tag should be fine
#
rhiaro
... In the normal web development world, lots of people don't even know link headers exist
#
rhiaro
... but almost everyone knows how to parse html
#
rhiaro
... As long as there's a way of putting it in without link headers
#
rhiaro
aaronpk: totally
#
rhiaro
sandro: my question si do you ever want to be able to do webmention on a jpeg withotu a link header
#
rhiaro
... I think that's not worth worryign about, but I can see that someone might think it is
#
hhalpin
I'm going to note that this came up with Objective8 and D-CENT
#
hhalpin
I.e. problems with Link headers (i.e. their developers didn't know HTTP Link headers existed)
#
rhiaro
aaronpk: sounds like we're okay with slight limitations with current discovery
#
rhiaro
... Which support vast majority of use cases
#
hhalpin
However, it was easy to get folks to add to the HTML
#
rhiaro
sandro: anything about how you have to parse html?
#
rhiaro
aaronpk: I think it just says to look for the rel
#
rhiaro
sandro: html5?
#
rhiaro
aaronpk: normatively references http link header 5988 and also says ... no doesn't reference html in discovery
#
rhiaro
sandro: so test suite should have corner cases about how it appears in html
#
rhiaro
... and how they differ in closing angle bracket missing etc
#
rhiaro
aaronpk: I have a ton of that test data already
#
rhiaro
... waiting on IANA to accept
#
rhiaro
... paragraph added to spec
#
rhiaro
... Just need to add, tried to do last night, didnt' get to it, but tantek threw some ideas my way so I should be able to do that now
#
rhiaro
... And done.
#
rhiaro
tantek: so you have all issues with a resolution, outstanding editing to do
#
rhiaro
aaronpk: these three require editing that we agreed to already that I need to do
#
rhiaro
... And then conformance requiremetns sectiion I don't have anything we can review right now but we're not going to cr so
#
rhiaro
tantek: add by when?
#
rhiaro
aaronpk: if we can agree to publish a new draft I can add it in that process
#
rhiaro
tantek: if you commit to adding one we can say publish it with the edits we've agreed to
#
rhiaro
aaronpk: yep
#
rhiaro
tantek: do you have a path forward on all issues?
#
rhiaro
aaronpk: yes
#
rhiaro
TOPIC: Resolutions to publish
#
rhiaro
tantek: we already resolved to publish new AS2 drafts with edits in the pipeline
#
rhiaro
... So any of the others things that editors want to publish new drafts of?
#
rhiaro
aaronpk: yes webmention
#
rhiaro
... I do have a change on micropub to register with iana, queued up, however not a lot of other changes, so I still would like to publish but it's not a huge change
#
rhiaro
eprodrom: activitypub?
#
rhiaro
... Does it make sense to make a resolution right now to publish with discussed edits?
#
rhiaro
tantek: do you want to give the group a chacne to review your changes before doing another resolution to publish, or are there enough changes the group already agreed to that you can publish once you make them
#
rhiaro
... Or do you want more time for those changes plus any others?
#
rhiaro
cwebber2: Okay we'll make those changes first that the group agreed to
#
rhiaro
... Then do more after that
#
rhiaro
tsyesika: we fix the bugs the group agreed to and publish
#
rhiaro
cwebber2: right, yes
#
rhiaro
tantek: one proposal?
#
rhiaro
PROPOSAL: Resolve to publish webmention, micropub and activitypub pending changes agreed by the wg this face-to-face
#
eprodrom
+1
#
hhalpin
+1
#
rhiaro
RESOLVED: Resolve to publish webmention, micropub and activitypub pending changes agreed by the wg this face-to-face
#
rhiaro
TOPIC: any other business
#
rhiaro
eprodrom: we have spare time, so anything else for next 25 minutes?
#
rhiaro
sandro: hopefully quick..
#
rhiaro
... I thought more about github spec labels yesterday and cut down to 10
#
rhiaro
... from 16
#
rhiaro
... It has its own issues
#
hhalpin
Quick notes, we have assembled a group of security/privacy experts to look at decentralization https://nextleap.eu
#
hhalpin
And the W3C WebAuth group is likely to have one-factor cryptographic authentication in browsers end of this-year, early-next year
#
KevinMarks_
does the editor apply these or the commenter?
#
hhalpin
No changes needed by specs, but just resources and new W3C work
#
rhiaro
sandro: Editor, or someone with write access to repo
#
rhiaro
eprodrom: is there an action we can take now?
#
rhiaro
... Review them and deicde if we're going to apply them to our spec repos?
#
rhiaro
tantek: first 6 seems self explanatory
#
rhiaro
... What's process communiyt?
#
rhiaro
sandro: Where someone says "I don't understand how this group works"
#
rhiaro
... Not for the editors, but they come up
#
rhiaro
... "Let me speak to your manager"
#
rhiaro
tantek: I think we might need something stronger
#
rhiaro
... Like 'needs chair input' or something
#
rhiaro
cwebber2: what if it's just like "I'm not sure if this has somethign to do with it" and the editor doesn't know either
#
rhiaro
tantek: this is for the editor to say "this is not about my spec, this is a group issue, sending to chairs"
#
rhiaro
sandro: I like this being able to used by groups that aren't w3c, that's why I said 'process community' not chair, to generalise
#
rhiaro
annbass: but... your example where you said there were issues that were people saying they were being ignored, I was takign that to mean there's been some discomfort of different technical positions proposed and feeling like they're blown off
#
rhiaro
... THat's in a different category than waiting for management approval
#
hhalpin
q+
#
Zakim
sees hhalpin on the speaker queue
#
rhiaro
tantek: that's "commentors are unsatisfied by response", that's there
Karli joined the channel
#
rhiaro
... The director will look at each one of these and see if the commetnor has merit
#
rhiaro
hhalpin: Do we need to note this unless there's a formal objection?
#
rhiaro
sandro: the director does like to knwo who is satisfied and who is unsatisfied
#
rhiaro
hhalpin: I've always just listed formal objections
#
rhiaro
sandro: talked to Philippe about this
#
rhiaro
eprodrom: are we comfortable with these labels?
#
rhiaro
tantek: "waiting for commentor" could mean two different things
#
rhiaro
sandro: ther'es not a lot o you can do until you hear back
#
rhiaro
tantek: could be differnet for open vs closed
#
rhiaro
sandro: if it's closed you might be waiting to see if they're satisfied or not
#
rhiaro
tantek: 'waiting for group input' -> 'needs group input'
#
hhalpin
I think we should note that people were unhappy, but if someone (unsatisfied commenter) proposes a technical solution and it doesn't meet the group's requirements (i.e. its not implemented, has no interest from more than one implementer, or has known technical flaws) then the group can argue simply than the unsatisfied commenter did not satisfiy the groups requirement.
#
rhiaro
... Do we really need the last one?
#
rhiaro
sandro: james used that tag sometimes
#
rhiaro
... on as2
#
rhiaro
... standard github one
#
rhiaro
... ('help')
#
rhiaro
tantek: is that pr requested?
#
rhiaro
aaronpk: 'happy to have this in there but I'm not gonna do it'
#
rhiaro
sandro: so, needs volunteer?
#
rhiaro
tantek: stronger than that
#
rhiaro
wilkie: point of entry for new people too
#
rhiaro
tantek: I like that
#
rhiaro
... If we can phrase it in a way that makes it welcoming for new folks
#
rhiaro
sandro: 'needs volunteer'
#
rhiaro
everyone: k
#
rhiaro
tantek: can we collapse the first two? commentor needs no response and satisfied by response
#
rhiaro
sandro: just 'commentor satsified'
#
rhiaro
*bikeshedding about colors of labels*
#
KevinMarks_
as opposed to Commenter Generally Unsatisified With Life?
#
tsyesika
notes rhiaro's spelling of colour ;)
nicolagreco joined the channel
#
rhiaro
s/color/colour
#
rhiaro
tantek: do the editors understand these
#
rhiaro
aaronpk: what's the rule on timeout?
#
rhiaro
annbass: will there be a definition documented?
#
rhiaro
aaronpk: are there some I can't use without group consensus?
#
rhiaro
sandro: talk the group before doing a commentor timeout
#
rhiaro
... And expect that director will look at commentor satisifed and commentor not satisfied
#
rhiaro
aaronpk: and waiting for commentor?
#
rhiaro
sandro: before timeout, or waiting for more information before you can address the issue
#
rhiaro
eprodrom: resolved that, 3 minutes left
#
rhiaro
... AOB?
#
rhiaro
ben_thatmustbeme: if anyone wants to help co-write jf2 who knows more about writing specs?
#
KevinMarks_
I am happy to help
#
rhiaro
... Kevin had offered to help with it I think
#
KevinMarks_
jolly good
#
rhiaro
PROPOSED: make KevinMarks a coeditor of jf2
#
rhiaro
RESOLVED (by chairs): make KevinMarks a coeditor of jf2
#
rhiaro
eprodrom: no telecon next tuesday
#
rhiaro
... Next telecon 29th March
#
rhiaro
... Next f2f in Portland
#
rhiaro
... Any plans to do something social this evening?
#
KevinMarks_
good luck finding a quiet place tonight
#
wilkie
lol true
#
rhiaro
... End!
#
rhiaro
RRSAgent end meeting
#
rhiaro
why can I never remember how to end meetings
#
rhiaro
RRSAgent, please end meeting
#
RRSAgent
I'm logging. I don't understand 'please end meeting', rhiaro. Try /msg RRSAgent help
#
rhiaro
RRSAgent, end meeting
#
RRSAgent
I'm logging. I don't understand 'end meeting', rhiaro. Try /msg RRSAgent help
#
rhiaro
RRSAgent, please generate minutes
#
RRSAgent
I have made the request to generate http://www.w3.org/2016/03/16-social-minutes.html rhiaro
shevski, jasnell_, jasnell__ and nicolagreco joined the channel
#
ben_thatmustbeme
trackbot end meeting
#
trackbot
is ending a teleconference.
#
trackbot
Zakim, list attendees
#
Zakim
As of this point the attendees have been tantek, wilkie, dmitriz, rhiaro, aaronpk, shevski, ben_thatmustbeme, cwebber, tsyesika, sandro, Karli, AnnBass
#
trackbot
RRSAgent, please draft minutes
#
RRSAgent
I have made the request to generate http://www.w3.org/2016/03/16-social-minutes.html trackbot
#
trackbot
RRSAgent, bye
#
RRSAgent
I see no action items
#
ben_thatmustbeme
rhiaro: ^^ that way
#
Zakim
leaving. As of this point the attendees have been tantek, wilkie, dmitriz, rhiaro, aaronpk, shevski, ben_thatmustbeme, cwebber, tsyesika, sandro, Karli, AnnBass
jasnell, nicolagreco, dmitriz and jasnell_ joined the channel